0 ÒýÑÔ
Êý¿ØϵͳÖ÷ÒªÊÇÓÉÓ²¼þºÍÈí¼þÁ½´ó²¿·Ö×é³É¡£ÏµÍ³¿ØÖÆÈí¼þÅäºÏÓ²¼þºÏÀíµÄ×éÖ¯¡¢¹ÜÀíÊý¾ÝϵͳµÄÊäÈë¡¢Êý¾Ý´¦Àí¡¢²å²¹ºÍÊä³öÐÅÏ¢Óë¿ØÖÆÖ´Ðв¿¼þ£¬Ê¹Êý¿Ø¾í°å»ú°´ÕÕ²Ù×÷ÕßµÄÒªÇó£¬ÊµÏÖ¾íÖÆ¡£
1 Êý¿ØϵͳµÄÓ²¼þÉè¼Æ
¸Ãϵͳ²ÉÓòã´Î»¯CNCϵͳ˼Ï룬¼´PC¹¤¿Ø»úµÄCPU×÷ΪºËÐĹÜÀíÕߣ¬Íê³É¶Ôµ×²ãÉ豸µÄ¹ÜÀíºÍºê¹Û¿ØÖÆ¡£¶ø¾í°å»úµÄλÖÿØÖÆPLC ¿ØÖÆÓÉPMAC Programmable Multiple-Axes Controller µÄרÓÃCPUÀ´¿ØÖÆ¡£¸ù¾ÝÒÔÉÏÓ²¼þÉè¼ÆÔÔò£¬½áºÏ¾í°å»úÊý¿ØϵͳµÄÌص㣬Ìá³öÁËÒ»ÖÖÒÔPMACÔ˶¯¿ØÖÆÆ÷Ϊ¿ØÖƺËÐÄ£¬¹¤¿Ø»úΪϵͳ֧³Åµ¥ÔªµÄË«CPU¿ª·ÅʽÊý¿Øϵͳ¡£
Ó²¼þÉè¼ÆÓ¦ÓÃÁËPCÓ²¼þ¼¼Êõ¡£Õû¸öϵͳµÄ»ù´¡ÊÇPentium III 400 ¹¤Òµ¿ØÖÆ»ú£¬²ÉÓù¤¿Ø»úµÄCPU ×÷ΪϵͳµÄÖ÷´¦ÀíÆ÷£¬Íê³ÉϵͳµÄ¹ÜÀí¡¢ÈË»ú½»»¥¶¯Ì¬ÏÔʾ¡¢Ô¤´¦Àí¡¢²Î¿¼¼ÆË㼰ͼÏñ´¦Àí¡£²ÉÓñê×¼×ÜÏß¼¼Êõ(ISA ×ÜÏß)£¬ÓÐЧµÄ½â¾öÁËÒò×ÜÏß²»Í¬Ëù´øÀ´µÄÓ²¼þ²»Äܹ«ÓÃÎÊÌâ¡£
¾ßÓÐÇ¿´óµÄÈË»ú½»»¥²Ù×÷¹¦ÄÜ¡£»ú´²²Ù×÷ÈËÔ±¿ÉÒÔͨ¹ýÈíÅÌÔÚI/O É豸ÊäÈë¼Ó¹¤ËùÐèÐÅÏ¢£¬Ò²¿ÉÒÔͨ¹ýϵͳËùÌṩµÄ±à¼¹¦ÄÜ£¬ÊäÈë¼Ó¹¤ÐÅϢϵͳÔËÐÐʱ£¬ÏÔʾÆ÷ÉϵÄͼÏñºÍÊý¾Ý·´Ó³¸÷¸öλÖô«¸ÐÆ÷·´À¡µÄ¼Ó¹¤ÐÅÏ¢¡£¿ÉÒÔͨ¹ý¼üÅÌ»ò²Ù×÷Ãæ°å½øÐпØÖÆ¡£ºáÒƵÈλÖüì²â´«¸ÐÆ÷²ÉÓôÅÕ¤R£¬Æ侫¶ÈΪ0.05mm¡£Ö÷ÖáλÖüì²â´«¸ÐÆ÷ΪÐýת±àÂëÆ÷£¬1048Ïß¡£Í¨¹ýλÖô«¸ÐÆ÷·´À¡´ïµ½°ë±Õ»·¿ØÖÆ£¬ÒÔ±£Ö¤»ú´²µÄ¶¨Î»¾«¶ÈºÍÔ˶¯¾«¶È¡£Ç¿´óµÄ¿ª·Åʽģ¿é»¯Ó²¼þ½á¹¹¡£CNC ϵͳ°üÀ¨ÒÔÏÂÄ£¿é£ºÔ˶¯¿ØÖÆÄ£¿é¡¢PLC Ä£¿é¡¢»ù±¾ÊäÈëÊä³öÄ£¿é¡¢Í¨Ñ¶Ä£¿é¡£Ô˶¯¿ØÖÆÄ£¿éÊǶÀÁ¢Íê³ÉÔ˶¯¹¦ÄܵÄÄ£¿é£¬ÊÇÓ²¼þºÍÈí¼þµÄ¼¯ºÏÌ壬¿ØÖÆÄ¿±êÊÇËÙ¶ÈλÖü°×ª¾Ø¡£PMAC Êǹ¦ÄÜÇ¿´óµÄÔ˶¯¿ØÖÆÆ÷£¬ÔÚϵͳÖÐÆð׏ؼü×÷Óã¬ÊǼ«ÆäÖØÒªµÄÒ»¸öÄ£¿é¡£
PMAC×Ô´ø¸ßËÙCPU£¬ÊÇÒ»¸ö¾ßÓжÀÁ¢ÄÚ´æ¡¢¶ÀÁ¢ÔËËã²Ù×÷ÄÜÁ¦µÄ¼ÆËã»ú£¬¿É½ÓÊÜPCÖ÷»úµÄÃüÁî½øÐй¤×÷£¬Ò²¿ÉÍÑ»úÔËÐжÀÁ¢¹¤×÷¡£ÏµÍ³¿ª·¢ÁËPMACÔ˶¯¿ØÖÆÆ÷µÄÈçϹ¦ÄÜ£º1£¬ÓÃÔöÁ¿Ê½A/BÕý½»±àÂëÆ÷ʵÏÖλÖúÍËٶȷ´À¡£¬Ò²¿ÉÒÔÁ¬½ÓһЩÊʵ±µÄ¸½¼þʵÏÖ·´À¡¡£2£¬ÔËÓÃPMACÔ˶¯¿ØÖÆÆ÷µÄDSP°å¾ßÓеÄÇ¿´óµÄ¼ÆË㹦ÄÜ£¬¶Ô±äÁ¿¡¢³£Á¿½øÐÐËãÊõ¡¢Âß¼ÒÔ¼°³¬Ô½ÔËËã²Ù×÷£¬½ø¶ø±ÜÃâÁËÖ÷»úÔÚ½øÐÐÕâЩ²Ù×÷ʱËùÔì³ÉµÄ¼ÆËãÑÓ³ÙºÍͨѶÑÓ³Ù¡£3£¬ÀûÓÃPMACµÄ¶àÖáÔ˶¯³ÌÐò¹ÜÀí¹¦ÄÜ¡£PMACÔ˶¯¿ØÖÆÆ÷µÄÄÚ´æ¿ÉÒÔ´æ´¢¶à´ï256 ¸öÔ˶¯³ÌÐò¡£ÔÚPMACÔ˶¯¿ØÖÆÉÏÖ´ÐеÄÔ˶¯¿ØÖÆÓïÑÔ¾ßÓÐBASIC»òCµÈ¸ß¼¶¼ÆËã»úÓïÑÔµÄÌص㣬ͬʱËüÓëG´úÂë»ú´²¼æÈÝ£¬²¢ÇÒ¿ÉÖ±½Ó½ÓÊÜG´úÂëÃüÁî¡£¼ÆËã½á¹¹ºÍÂß¼½á¹¹Óë¼ÆËã»úÓïÑÔÏàËÆ£¬²¢ÇÒÔ˶¯¹æ·¶Óë»ú´²¹¤ÒµÖÐËùʹÓõÄÏàËÆ¡£4£¬ºǫ́PLC¹¦ÄÜ¡£µ±Ô˶¯³ÌÐòÔÚǰ̨ÓÐÐòµØÔËÐÐʱ£¬PMAC Ô˶¯¿ØÖÆÆ÷¿ÉÒÔÔÚºǫ́ÔËÐжà´ï32²»Í¬PLC¹¦ÄÜ¡£Í¬Ê±PMACÌṩÁË·ÇרÓõÄÊý×ÖÊäÈëºÍÊä³ö¿Ú¡£ÀûÓÃÕâЩI/O¿Ú£¬³ÌÐò¿ÉÒÔÍê³ÉPLC¹¦ÄÜPLC³ÌÐòÓëÔ˶¯³ÌÐò¹²ÏíͬһÖÖÂß¼½á¹¹£¬µ«²»ÄÜ¿ØÖÆÔ˶¯Öá¡£
PMAC½Ó¿ÚµÄÉè¼Æ¡£¾í°å»úÊý¿ØϵͳµÄÖ´ÐÐÔª¼þ²¢²»ÊÇËÅ·þµç»ú£¬ÆäλÖÿØÖÆÊÇͨ¹ý´ÅÕ¤ºÍÐýת±àÂëÆ÷À´ÊµÏÖλÖ÷´À¡£¬Ê¹ÓÃMACHI¿ÚÁ¬½ÓÁË4×é´«¸ÐÆ÷£¬ÓÃÀ´¼ì²âλÖÃʵÏÖλÖÿØÖƾí°å»ú¿ØÖÆϵͳÖÐËùÓÐ״̬¼ì²âºÍËùÓÐÔªÆ÷¼þ¿ØÖƶ¼ÊÇÓÉPMACµÄÊäÈë¡¢Êä³ö¿ØÖÆ°å¿ØÖƵÄÆäÔÀíÈçͼ2Ëùʾ¡£
²ÉÓÃË«¶Ë¿ÚRAM(DPRAM)×÷ΪÖ÷»úºÍPMACÖ®¼äͨѶµÄÇÅÁº¡£DPRAMÊÇPMACµÄ±¸Ñ¡¼þ£¬ÎªÖ÷»úºÍPMACÖ®¼äµÄ¿ÉÒÔ¹²ÏíµÄ¸ßËÙÄÚ´æÇø¡£ÀûÓÃDPRAM£¬PMAC ºÍÖ÷»úÖ®¼ä¿ÉÒÔʵÏÖ¸ßËÙÖظ´²»Ðè¡°ÎÕÊÖ¡±µÄÊý¾ÝͨѶ£¬ÊµÊ±·½±ãµØ½øÐÐÊý¾Ý½»»»¡£ÀýÈ磬Ö÷»ú¿ÉÒÔ½«Î»Öá¢ËÙ¶ÈÐÅϢʵʱµØAM·¢Ë͵½PMAC£¬ÓÉPMAC ½øÐÐλÖÿØÖÆ£»Í¬Ê±£¬Ö÷»ú»¹¿ÉÒÔ¶ÁÈ¡PMAC ´æ·ÅÔÚDPRAMÖеĻú´²×´Ì¬ÐÅÏ¢¡£
´ËÊý¿Øϵͳ²ÉÓüÆËã»ú×ÜÏߺÍPMAC ½øÐÐͨѶ£¬ÊµÏÖÖ÷»úµÄʵʱÖжϣ¬½ø¶øÓÐЧµØÌá¸ßÁËͨѶЧÂʺÍͨѶËٶȡ£µ±PMAC²úÉúµÄÖÕ¶ËÐźųöÏÖÔÚÖ÷»úµÄ×ÜÏßÉÏʱ£¬Ö÷»ú¿ªÊ¼¼ÆËãеĿØÖÆÊý¾Ý²¢½«Êý¾ÝдÈëµ½DPRAMÖУ¬PMAC Ôò´ÓDPRAMÖжÁ³öÊý¾Ý¶Ôµç»ú½øÐпØÖÆ£»Í¬Ê±Ö÷»ú´ÓDPRAM ÖжÁ³ö·´À¡Êý¾Ý£¬½øÐд¦Àí£¬Íê³ÉʵʱÏÔʾ»ú´²Î»Öûú´²×´Ì¬¼à¿ØµÈ¹¦ÄÜ¡£
2 Êý¿ØϵͳµÄÈí¼þÉè¼Æ
ΪÁ˱£³ÖËù¿ª·¢ÏµÍ³µÄ¼¼ÊõÏȽøÐÔ£¬Í¬Ê±Ê¹ÏµÍ³ÓÐÒ»¶¨µÄ¹¦ÄÜ¿ÉÀ©Õ¹ÐÔ£¬ÏîÄ¿Ñ¡ÔñÁË¿ª·ÅʽÊý¿ØϵͳµÄÉè¼Æ˼ÏëÓë·½·¨¡£ÆäϵͳµÄ×ÜÌå·½°¸Èçͼ3Ëùʾ¡£
ϵͳÉè¼ÆÓ뿪·¢²ÉÓÃÁËÃæÏò¶ÔÏóµÄ·½·¨ÒòΪÕâÖÖ·½·¨Ä£ÄâÁËÈËÀàÈÏÖª¿Í¹ÛÊÀ½çµÄ¹ý³Ì£»¾ßÓзâ×°ÐÔ£¬¼¯³ÉÐÔ£¬ÒÔ¼°ÏûÏ¢Çý¶¯µÈһϵÁÐÌØÐÔ£¬Ê¹µÃ¸ÄÔìµÄϵͳģ¿éÇåÎú¡¢×éװά»¤·½±ã£¬¿ÉÀ©³äÐÔ¿ÉÖØ×éÐÔÇ¿£»ÃæÏò¶ÔÏóÄ£Ðͽ«¸ÅÄîÄ£ÐÍ¡¢Â߼ģÐͺÍÎïÀíÄ£ÐÍͳһµ½Ò»Æ𣬼«´óµÄ½µµÍÁËϵͳµÄÀí½âÄѶȡ£
²ÉÓÃPMAC¿É±à³Ì¶àÖá¿ØÖÆÆ÷£¬ÒòΪËüµÄ¿ª·¢½çÃæ·Ç³£ÓѺá£ËüÌṩµÄPWIN ±à³Ì¹¤¾ßÍêÈ«ÔÚWindows »·¾³£¬ÔËÐбà¼Ð޸ķdz£ÈÝÒס£
×ñÕÕÃæÏò¶ÔÏóµÄϵͳÉè¼ÆÓë·ÖÎöµÄÖ÷µ¼Ë¼Ï룬ϵͳÉè¼Æ³ÉÈô¸É¸ö¶ÔÏóÄ£¿éµÄÓлú×éºÏ¡£ºê¹ÛÉÏ¿´ÏµÍ³·ÖΪϵͳ²ã¡¢Ó¦ÓòãºÍÎïÀí²ãÈý¸ö²ãÃ棬Èçͼ4Ëùʾ¡£Ö÷Òª½â¾öIPC ÓëPMAC£¬FlyVideo¼Ì³ÐµÄһϵÁм¼ÊõÎÊÌ⣬ÒòΪPMAC ÓÐ×Ô¼ºµÄCPU ºÍRAM »¹ÓÐEPROM; FlyVido Ò²ÓÐ×Ô¼ºµÄRAMºÍÏàÓ¦µÄÔËËãÆ÷£¬¶øPMACºÍFlyVideo¶¼ÊÇÒÔ×ÜÏß·½Ê½ÓëIPCÏàÁ¬£¬IPCÒª½«ÕâЩ×ÊÔ´ºÍ×ÔÉí×ÊÔ´¼¯³Éµ½Ò»ÆðÐγÉÍêÕûµÄ¿ØÖÆϵͳ£¬±ØÐëÓÐÓÐЧµÄ¼¯³ÉÊֶΡ£Ó¦ÓòãÊÇϵͳµÄÖ÷Ì岿·Ö£¬ÓÉÈô¸É¸ö¹¦ÄÜÄ£¿é×é³É¡£ÔÚϵͳ²ãµÄÖ§³ÖÏ£¬¸÷¹¦ÄÜÄ£¿é¶ÀÁ¢Íê³ÉÒ»²¿·ÖÈÎÎñ£¬´Ó¶øʵÏÖϵͳµÄËùÓпØÖÆÄ¿±ê¡£ÎïÀí²ãÊÇÓëÎïÀí¿Õ¼äÏà¶ÔÓ¦µÄ»úÖÆ£¬ÓÉÈô¸ÉºÍ´æ´¢Îļþ½á¹¹¶ÔÓ¦µÄÊý¾Ý½á¹¹×é³É£¬ÓÃÀ´Âú×ãÈË»ú½»»¥ºÍ·ÃÎÊÊý¾Ý¿âµÄÐèÇó¡£
Èí¼þÉè¼Æ¹ý³ÌÖл¹±ØÐëʵÏÖÏÂÃæÕâЩ¼¼ÊõÒªÇó£º
(1) ÉÏλ»úÓëÏÂλ»úµÄʵʱͨѶ£ºÉÏλ»úÓëÏÂλ»úµÄʵʱͨѶÊÇÀûÓÃDELTA TAU DATASYSTEM ¹«Ë¾ÌṩµÄÓëPMACÏàÅäÌ×µÄPtalkDTÀàʵÏֵġ£PtalkDTÀàͨ¹ýÌí¼ÓActiveX µÄ·½Ê½¼ÓÒÔʵÀý»¯£¬²¢ÓÉÆäÖеÄGetResponse()·½·¨Íê³ÉË«ÏòͨѶ¡£ÉÏλ»úÓëÏÂλ»úͨѶµÄËÙ¶ÈÈ¡¾öÓÚÖ÷¼ÆËã»úµÄÖ÷Ƶ¡¢PMAC CPU µÄËٶȣ¬ÒÔ¼°ÏµÍ³³ÌÐòºÍÏÂλ»ú¿ØÖƳÌÐòµÄ´óС¡£
(2) ÊÓƵÏÔʾ£ºÊÓƵÐźŵĴ¦Àí¼°Í¼ÏñÏÔʾ¿ØÖÆÊÇͨ¹ý¶ÔÊÓƵ¿¨µÄ¶þ´Î¿ª·¢ÊµÏֵġ£FlyVideoÊÓƵ¿¨ÌṩÁËOCX±ê×¼¿Ø¼þCapwndÓëÓ¦ÓÃϵͳ½øÐм¯³É¡£¸Ã¿Ø¼þµÄ16 ¸öÖ÷Òª·½·¨ºÍ7 ¸öÊôÐÔÓÉMFC42.DLL ºÍMSVCRT.DLLÁ½¸ö¶¯Ì¬Á¬½Ó¿âÖ§³Ö£¬½èÖúÕâÁ½¸ö¶¯Ì¬Á¬½Ó¿âÖ§³Ö£¬ÏµÍ³¿ª·¢ÁËOverlay ºÍPeview Á½ÖÖͼÏñÏÔʾģʽ£¬ÒÔ·½±ãÏÖ³¡µÄ²»Í¬ÒªÇó¡£
(3) ÎÈѹµçÔ´£º´óÐ;í°åÉ豸¹¤×÷»·¾³¶ñÁÓ£¬ÓÈÆäÊǵçÍøµçѹ¼«²»Îȶ¨£¬ºÜÈÝÒ׳å»÷Êý¿Øϵͳ£¬Ôì³ÉËÀ»ú¡£Æä½á¹ûÇáÔò²úÆ·×÷·Ï£¬ÖØÔòËð»µÉ豸£¬ËðʧÄÑÒÔ¹ÀÁ¿¡£ÎªÁË·ÀÖ¹Êý¿ØϵͳÒòµçÔ´¸ÉÈŶø²úÉú¿ØÖÆʧÎó£¬ÏµÍ³×¨ÃÅÅäÖÃÁËÏìÓ¦ËÙ¶ÈСÓÚ0.1ms µÄÔÚÏß²»¼ä¶ÏÎÈѹµçÔ´¡£³ý´ËÖ®Í⣬ϵͳ»¹ÔÚÈí¼þÉè¼ÆÉϽøÐÐÁ˱ØÒªµÄ´¦Àí£¬ÎªÃ¿¸ö¶¯×÷±àÖÆÁËÂ˲¨³ÌÐò¡£
(4) ¿ØÖÆʱÖÓ£ºÏµÍ³¿ØÖÆʱÖÓÖ÷ÒªÊÇ´Ó±£Ö¤ÏµÍ³Õý³£ÔËÐеĽǶȣ¬ÖÜÆÚɨÃèÏÂλ»úI/O ¿Ú¡¢ÊÓƵÐźÅ״̬£¬ÒÔ¼°ÖжÏÇëÇóÐÅÏ¢£¬ÊµÏÖÉÏλ»úÓëÏÂλ»úµÄʵʱͨѶ£»»ñÈ¡Ô˶¯×ø±êµ±Ç°Öµ£»¶¯Ì¬¹ÜÀíÊý¾Ý¿â£»ÔÚÏß¾ö²ß³ÌÐò½ø³ÌµÈ¡£´ËÄ£¿éÓɱê×¼¿Ø¼þTimer ʵÏÖ¡£ÎªÁËÌá¸ß¿É¿¿ÐÔ£¬ÏµÍ³²ÉÓõ¥Ê±ÖÓÇý¶¯Ê±ÖÓ£¬É¨ÃèÖÜÆÚ80ms¡£
3 ½áÂÛ
¾¹ýÉú²úʵ¼ùµÄ¼ìÑ飬17000kNx3000mmÉϹõÍòÄÜʽ¾í°å»úÊý¿ØϵͳµÄÈí¼þºÍÓ²¼þÉè¼ÆÍêÈ«·ûºÏÉú²ú¡£ÔÚÉú²ú¹ý³ÌÖУ¬ÏµÍ³¿ØÖÆÈí¼þÅäºÏÓ²¼þ˳ÀûµØ½øÐÐÊý¾ÝÊäÈë¡¢Êý¾Ý´¦Àí¡¢ÐÅÏ¢Êä³öÒÔ¼°¶ÔÖ´Ðв¿¼þµÄ¿ØÖÆ£¬Ê¹Êý¿Ø¾í°å»ú°´ÕÕÉè¼ÆÒªÇ󣬰²È«¿É¿¿µØÔËÐÐ×Ô¶¯¾íÖƹ¤ÒÕ¹ý³Ì¡£
²Î¿¼ÎÄÏ×
[1] Àî¼Ñ.´óÐ;í°åÉ豸Êý¿ØϵͳÉè¼Æ [J].ÖØÐÍ»ú£¬2001£¬6.
[2] ÀîÖ¾¼á.²¢Áª»ú´²¿ª·ÅʽÊý¿Øϵͳ [J].»úе¹¤³Ì£¬2001(3).
[3] Solving some discrepancy problems in NC [J].Algorithmica£¬2001(3).
|