μC/OSIIåµŒå…¥å¼æ“作系統在機電控制ä¸çš„æ‡‰ç”¨
時間:2008-03-24 14:59:00來æºï¼šmahaiyan
導語:?嵌入å¼ç³»çµ±åŠå…¶æ‡‰ç”¨å·²æˆç‚ºç•¶å‰ç ”究和應用的熱點,采用嵌入å¼ç³»çµ±çš„æ©Ÿé›»æŽ§åˆ¶ç³»çµ±è¼ƒå‚³çµ±æŽ§åˆ¶ç³»çµ±åœ¨å¯é 性ã€é«”ç©ã€åŠŸè€—ã€æ€§åƒ¹æ¯”ç‰æ–¹é¢éƒ½å…·æœ‰æ˜Žé¡¯çš„優勢
引言
ç¾Žåœ‹è‘—åæœªä¾†å¸å®¶å°¼è‘›æ´›é¾å¸1999å¹´1æœˆè¨ªè¯æ™‚é 言,4~5å¹´åŽåµŒå…¥å¼æ™ºèƒ½ï¼ˆé›»è…¦ï¼‰å·¥å…·å°‡æ˜¯PCå’Œå› ç‰¹ç¶²ä¹‹åŽæœ€å‰å¤§çš„發明。事實æ£å¦‚尼葛洛é¾å¸å…ˆç”Ÿæ‰€é 料的那樣,嵌入å¼ç³»çµ±åŠå…¶æ‡‰ç”¨å·²æˆç‚ºç•¶å‰ç ”究和應用的熱點,國際上大牌公å¸å¦‚Intelã€Microsoft(微軟)ç‰ç´›ç´›æŠ•入巨資,分別推出了具有技術優勢的基于Xsaleæ¡†æž¶çµæ§‹çš„嵌入å¼ç¡¬ä»¶å¹³è‡ºå’ŒWindows CE 4.0軟件平臺,為嵌入å¼ç³»çµ±çš„發展注入了強大的活力。今天,嵌入å¼ç³»çµ±å·²æ»²é€åˆ°æ—¥å¸¸ç”Ÿæ´»çš„æ–¹æ–¹é¢é¢ï¼Œå¸¶ä¾†çš„å·¥æ¥å¹´ç”¢å€¼å·²è¶…éŽ1è¬å„„ç¾Žå…ƒï¼Œåœ¨å·¥æ¥æŽ§åˆ¶ã€æ¶ˆè²»é›»åç‰é ˜åŸŸçš„æ‡‰ç”¨èŒƒåœä¸æ–·æ“´å¤§ï¼Œè€Œæ©Ÿé›»æŽ§åˆ¶æ˜¯åµŒå…¥å¼ç³»çµ±æŠ€è¡“的一個典型應用,采用嵌入å¼çš„æ©Ÿå™¨äººã€SONY 機器狗åŠ1997å¹´ç¾Žåœ‹ç™¼å°„çš„â€œç´¢ç´æ°â€ç«æ˜Ÿè»Šå°±æ˜¯ç¶“典的實例。就嵌入å¼ç³»çµ±çš„組æˆã€ç‰¹é»žï¼Œé–‹ç™¼æ‰€é‡‡ç”¨çš„主æµè»Ÿä»¶å¹³è‡ºã€ç¡¬ä»¶å¹³è‡ºä½œè©³ç´°çš„介紹,并通éŽStewartå¹³è‡ºå°ˆç”¨ä¼ºæœæŽ§åˆ¶å™¨çš„è¨è¨ˆï¼Œä»‹ç´¹äº†åµŒå…¥å¼æŠ€è¡“在機電控制系統ä¸çš„æ‡‰ç”¨åŠå…·é«”實ç¾ã€‚
1 嵌入å¼ç³»çµ±
嵌入å¼ç³»çµ±æ˜¯ä»¥æ‡‰ç”¨ç‚ºä¸å¿ƒã€ä»¥è¨ˆç®—機技術為基礎ã€è»Ÿç¡¬ä»¶å¯è£å‰ªã€é©æ‡‰æ‡‰ç”¨ç³»çµ±å°åŠŸèƒ½ã€å¯é æ€§ã€æˆæœ¬ã€é«”ç©ã€åŠŸè€—ç‰æœ‰åš´æ ¼è¦æ±‚的專用計算機系統。由于嵌入å¼ç³»çµ±å…·æœ‰å¾®å…§æ ¸ã€ç³»çµ±ç²¾ç°¡ã€é«˜å¯¦æ™‚性ã€å°ˆç”¨æ€§å¼·ç‰ç‰¹é»ž,å› æ¤éžå¸¸é©åˆæ‡‰ç”¨äºŽæ©Ÿé›»æŽ§åˆ¶ç³»çµ±ã€‚有別于傳統的控制系統,嵌入å¼ç³»çµ±ç”±åµŒå…¥å¼å¾®è™•ç†å™¨/微控制器ã€å˜å„²å™¨ã€è¼¸å…¥è¼¸å‡ºï¼ˆI/O)和軟件組æˆ,這里的軟件是指基于RTOS開發的且和RTOS密切çµåˆçš„æ‡‰ç”¨è»Ÿä»¶ã€‚這種æ“作系統和應用軟件緊密çµåˆç‚ºä¸€é«”æ£æ˜¯åµŒå…¥å¼ç³»çµ±å’ŒåŸºäºŽWindows應用系統的主è¦å·®åˆ¥æ‰€åœ¨,也是其å¯é 性和實時性的é‡è¦ä¿è‰ã€‚
2 嵌入å¼å¾®è™•ç†å™¨
ç›®å‰æœ‰è¨±å¤šæ¬¾åµŒå…¥å¼å¾®è™•ç†å™¨ï¼Œå¦‚Intelå…¬å¸çš„StrongARMã€Xscale,ATMELçš„AT91系列,IBMçš„PowerPC,Motorolaçš„68K,三星的S3C4x系列ç‰ï¼Œå…¶ä¸åŸºäºŽè‹±åœ‹ARMå…¬å¸çš„ARMå…§æ ¸çš„åµŒå…¥å¼å¾®è™•ç†å™¨æ˜¯ç›®å‰çš„主æµã€‚ARM是典型的32ä½RISC芯片——ä¸è«–是在PDAã€STBã€DVDç‰æ¶ˆè²»é¡žé›»å產å“ä¸ï¼Œé‚„是在機電ã€GPSã€èˆªç©ºã€å‹˜æŽ¢ã€æ¸¬é‡ç‰è»æ–¹ç”¢å“ä¸éƒ½å¾—åˆ°äº†å»£æ³›çš„æ‡‰ç”¨ã€‚è¶Šä¾†è¶Šå¤šçš„èŠ¯ç‰‡å» å•†æ—©å·²çœ‹å¥½ARMçš„å‰æ™¯ï¼Œå¦‚Intelã€NSã€Atemlã€Samsungã€Philipsã€NECã€CirrusLogicç‰å…¨çƒè‘—åå…¬å¸éƒ½æœ‰ç›¸æ‡‰çš„基于ARM處ç†å™¨çš„產å“。ARM處ç†å™¨çš„主è¦ç‰¹é»žæ˜¯ï¼šå°é«”ç©ã€ä½ŽåŠŸè€—ã€ä½Žæˆæœ¬ã€é«˜æ€§èƒ½ã€16/32ä½é›™æŒ‡ä»¤é›†ã€å…¨çƒçœ¾å¤šçš„åˆä½œä¼™ä¼´ã€‚事實上ARMå·²æˆç‚ºåµŒå…¥å¼è§£æ±ºæ–¹æ¡ˆçš„RISC標準,æˆç‚ºæ¥ç•Œçš„é¾é 。
æ–‡ä¸é‡‡ç”¨ATMELçš„AT91x40[2],è¨è¨ˆäº†ç”¨äºŽStewartå¹³è‡ºçš„ä¼ºæœæŽ§åˆ¶å™¨ã€‚AT91系列微控制器是基于ARM7TDMI嵌入å¼å¾®è™•ç†å™¨çš„16/32ä½æŽ§åˆ¶å™¨ï¼Œç”¨é«˜å¯†åº¦çš„16使Œ‡ä»¤å¯¦ç¾äº†é«˜æ•ˆçš„32ä½RISCçµæ§‹ï¼Œéžå¸¸é©åˆå¯¦æ™‚控制應用。ATMELå…¬å¸é‡‡ç”¨é«˜å¯†åº¦CMOS技術,通éŽç‰‡ä¸Šé›†æˆARM7TDMI和大é‡çš„FLASHã€ç‰‡å…§RAM以åŠå„種外åœåŠŸèƒ½æ¨¡å¡Šä½¿å…¶æˆç‚ºå¼·æœ‰åŠ›çš„å¾®æŽ§åˆ¶å™¨ï¼Œç‚ºè¨±å¤šéœ€è¦åŠ å¼·é‹ç®—çš„åµŒå…¥å¼æ‡‰ç”¨æä¾›äº†é«˜åº¦çš„éˆæ´»æ€§å’Œé«˜æ€§åƒ¹æ¯”的解決方案。AT91x40的主è¦ç‰‡ä¸ŠåŠŸèƒ½ï¼š
*帶8KBç·©å˜çš„ARM7TDMI ARM ThumbCPUæ ¸ï¼›
*完全å¯ç·¨ç¨‹çš„外部總線接å£ï¼Œæ”¯æŒ64Må°‹å€ç©ºé–“ï¼›
*8優先級ã€å¯å–®ç¨å±è”½çš„å‘é‡ä¸æ–·æŽ§åˆ¶å™¨ï¼Œ4å€‹å¤–éƒ¨ä¸æ–·æºï¼›
*3通é“16ä½å®šæ™‚ã€è¨ˆæ•¸å™¨ï¼›
*5個PWM定時器åŠ1個內部定時器;
*å¯ç·¨ç¨‹çš„看門狗定時器;
*兩個ç¨ç«‹çš„USARTï¼›
*先進的çœé›»ç‰¹æ€§ã€‚
3 嵌入å¼RTOSçš„é¸æ“‡
ç›®å‰åµŒå…¥å¼å¯¦æ™‚æ“作系統RTOS分為兩類:商用型和å…費型。其ä¸å•†ç”¨åž‹å…¸åž‹çš„RTOS有:Windows CE 4.0(é©åˆäºŽæ¶ˆè²»é¡žé›»å產å“);VxWork(é©åˆäºŽç¶²çµ¡ã€äº¤æ›è¨å‚™ç‰ï¼‰ï¼›Palm OS(é©åˆäºŽPAD產å“)。å…費型RTOS有Linux(包括uLinuxå’ŒRT-Linux)和μC/OSII。綜åˆè€ƒæ…®ï¼Œé€™é‡Œé¸æ“‡Î¼C/OSII作為本系統的RTOS。
μC/OSII(å³Î¼C/OS的最新版)主è¦ç‰¹é»žå¦‚下:
(1)公開æºç¢¼ï¼šæ˜¯ç‚ºæ•¸ä¸å¤šçš„公開æºç¢¼çš„RTOS,çµ¦äºŒæ¬¡é–‹ç™¼å’Œç§»æ¤æä¾›äº†å¯èƒ½ï¼›
(2)å¯ç§»æ¤æ€§å¼·ï¼šÎ¼C/OSII絕大多數æºç¢¼ç”¨ANSI C編寫,少é‡ç”¨åŒ¯ç·¨èªžè¨€ç·¨å¯«ï¼Œå…·æœ‰è¼ƒå¼·çš„ç§»æ¤æ€§ï¼›
(3)å¯å›ºåŒ–:微å°å…§æ ¸ï¼Œå¯ä»¥å’Œæ‡‰ç”¨ç¨‹åºä¸€èµ·å›ºåŒ–到FLASHROMä¸ï¼›
(4)å¯è£å‰ªï¼šé€šéŽæ¢ä»¶ç·¨è¯å³å¯å¯¦ç¾è£å‰ªï¼Œå分方便;
(5)å å…ˆå¼ï¼šæ˜¯å¯¦æ™‚性的é‡è¦ä¿è‰ï¼›
(6)多任務:多é”64個任務管ç†ï¼Œå¯ä»¥æ»¿è¶³å¤§å¤šæ•¸æŽ§åˆ¶ä»»å‹™ï¼›
(7)å¯ç¢ºå®šæ€§ï¼šå…¨éƒ¨çš„函數調用與æœå‹™åŸ·è¡Œçš„æ™‚間是å¯çŸ¥çš„ï¼›
(8)系統æœå‹™ï¼šæä¾›çœ¾å¤šçš„系統æœå‹™ï¼Œå¦‚:消æ¯éšŠåˆ—ã€ä¿¡è™Ÿé‡ã€å…§å˜ç®¡ç†ç‰ã€‚
(9ï¼‰ä¸æ–·ç®¡ç†ï¼šå¤šé”255å±¤çš„ä¸æ–·ç®¡ç†ã€‚
(10)穩定性和å¯é 性:自1992å¹´ä»¥ä¾†å·²ç¶“æœ‰å¥½å¹¾ç™¾å€‹å•†æ¥æ‡‰ç”¨ã€‚å…¶ä¸NationalOptronics公叿ˆåŠŸå°‡Î¼C/OS用于三軸é‹å‹•控制å¡ä¸ï¼Œè©²ä¸‰è»¸é‹å‹•控制å¡ä¸»è¦ç”¨äºŽé«˜ç²¾åº¦çš„光電ååˆ¶é€ æ¥ã€‚
4 基于Stewartå¹³è‡ºçš„ä¼ºæœæŽ§åˆ¶å™¨è¨è¨ˆî€ƒ
4.1 ç³»çµ±ç¡¬ä»¶çµæ§‹
Stewart平臺是6腿(桿)機械手,在大射電望é 顿Œ‡å‘è·Ÿè¹¤ç³»çµ±ä¸æ˜¯åˆ©ç”¨Stewart平臺作饋æºè‰™çš„精調å系統。在該系統ä¸è¦æ±‚Stewart平臺系統實ç¾é«˜ç²¾åº¦ã€é«˜å¯¦æ™‚性é‹å‹•,其控制精度直接決定著饋æºçš„定ä½ç²¾åº¦ï¼Œè€Œä¸”å°Stewart平臺控制器的å¯é 性ã€é«”ç©éƒ½æœ‰è¼ƒé«˜çš„è¦æ±‚。
Stewart平臺控制系統基于ATMELå…¬å¸çš„AT9140800嵌入å¼å¾®è™•ç†å™¨ç‚ºæ ¸å¿ƒã€‚其它主è¦ç¡¬ä»¶éƒ¨åˆ†æœ‰ï¼š
(1) å˜å„²å™¨ï¼šç³»çµ±é…以2MBSDRAM,1MB線性FlashROM用于å˜å„²RTOS和應用軟件。
(2) 編碼器接å£ï¼šè¨è¨ˆ6è·¯ç¨ç«‹ç·¨ç¢¼å™¨æŽ¥å£ï¼ŒåŒ…括脈沖細分é‚輯和辨å‘電路。
(3) DA接å£ï¼š6è·¯ç¨ç«‹çš„12ä½DA接å£é›»è·¯ï¼Œå…¶è¼¸å‡ºçš„æ¨¡æ“¬é‡ä½œç‚ºä¼ºæœæ”¾å¤§å™¨çš„輸入。
(4) 兩個標準RS232接å£ï¼šå¯ä»¥é€šéŽRS232æŽ¥å£æŽ¥æ”¶ä¸»æ©Ÿçš„æŒ‡ä»¤ã€‚
(5) æä¾›ISA總線接å£ï¼šå¯ä»¥å°‡æœ¬åµŒå…¥å¼ç³»çµ±æ’å…¥PCçš„ISAæ§½ä¸ï¼Œé€šéŽISA總線接收PC的指令,用于標準的工控模å¼ã€‚
(6) å„種狀態指示燈,指示系統的工作狀æ³å’Œæ¯å€‹é€šé“çš„å·¥ä½œç‹€æ…‹ã€‚å„æŽ¥å£çš„é€šè¨Šæ ¼å¼å…¨éƒ¨é‡‡ç”¨å¸¶æ ¡é©—çš„è‡ªå®šç¾©æ ¼å¼ã€‚
4.2 系統軟件
該系統軟件是基于μC/OS為RTOS開發的專用軟件。主è¦åŒ…括以下幾部分:
(1) 多任務管ç†ï¼›
(2) å…§å˜è³‡æºç®¡ç†ï¼›
(3ï¼‰ä¸æ–·ç®¡ç†ï¼›
(4)UART接å£ç®¡ç†ï¼›
(5) ISA接å£ç®¡ç†ï¼›
(6) 電機控制ADRC算法。
å…¶ä¸ï¼ˆ1)ã€ï¼ˆ2)ã€ï¼ˆ3)由μC/OS實ç¾ï¼ˆèˆ‡æŽ¥å£æœ‰é—œçš„䏿–·æœå‹™ç¨‹åºéœ€ç”¨æˆ¶ç·¨å¯«ï¼‰ï¼Œå…¶ä½™ç‚ºç”¨æˆ¶ç·¨ç¨‹å¯¦ç¾ã€‚傳統的å„類電機控制器ä¸å¤§å¤šé‡‡ç”¨å„ç¨®å„æ¨£çš„PID,如éžç·šæ€§PID,模糊PIDç‰,這里電機控制采用自抗擾控制ADRC(auto_disturbance rejector controller)算法。為了æé«˜ç®—法的效果,å°åŽŸä¾†ADRC算法進行了é©ç•¶çš„æ”¹é€²ï¼Œé‡‡ç”¨è®Šåƒæ•¸æ€æƒ³ï¼Œç¨±ä¹‹ç‚ºæ¨¡ç³ŠADRC。
4.3 μC/OS的移æ¤è»Ÿä»¶
μC/OS的移æ¤å·¥ä½œä¸»è¦åŒ…括:
(1ï¼‰è²æ˜Ž10個數據類型。在文件OS_CPU.H ä¸å®šç¾©9å€‹æ•¸æ“šé¡žåž‹å’Œä¸€å€‹å †æ£§å¯¬åº¦ã€‚
(2)用#defineè¨ç½®ä¸€å€‹è¡¨ç¤ºå †æ£§å¢žé•·æ–¹å‘的常é‡OS_STK_GROWTH x 。
(3)用#defineè²æ˜Žä¸‰å€‹å®ã€‚
(4)用C語言編寫å…個簡單的函數。
由于μC/OS是æºç¢¼å…¬é–‹çš„å…費型RTOS,其上有許多æˆåŠŸçš„ç§»æ¤å¯¦ä¾‹å…±äº«ã€‚按照上述嵌入å¼è»Ÿç¡¬ä»¶è¨è¨ˆæ€æƒ³ï¼Œæˆ‘們è¨è¨ˆäº†Stewartå¹³è‡ºå°ˆç”¨ä¼ºæœæŽ§åˆ¶å™¨?ï¼Ÿåˆ‚ç ´é«‚èŠŽèŠŽçŽ«é¦—îŒªæ«°è°•î½ç›˜?,并能在很çŸçš„æ™‚間內消除干擾的影響。
5 çµæŸèªž
嵌入å¼ç³»çµ±åŠå…¶æ‡‰ç”¨å·²æˆç‚ºç•¶å‰ç ”究和應用的熱點,采用嵌入å¼ç³»çµ±çš„æ©Ÿé›»æŽ§åˆ¶ç³»çµ±è¼ƒå‚³çµ±æŽ§åˆ¶ç³»çµ±åœ¨å¯é 性ã€é«”ç©ã€åŠŸè€—ã€æ€§åƒ¹æ¯”ç‰æ–¹é¢éƒ½å…·æœ‰æ˜Žé¡¯çš„優勢,相信ä¸ä¹…的將來嵌入å¼ç³»çµ±æœƒå»£æ³›æ‡‰ç”¨äºŽå„類機電控制ä¸ï¼Œå¹¶èƒ½å–å¾—æ›´å¥½çš„æŽ§åˆ¶æ•ˆæžœå’Œæ›´å¥½çš„ç³»çµ±ç¶œåˆæ€§èƒ½ã€‚
標簽:
ä¸åœ‹å‚³å‹•網版權與å…è²¬è²æ˜Žï¼šå‡¡æœ¬ç¶²æ³¨æ˜Ž[來æºï¼šä¸åœ‹å‚³å‹•ç¶²]的所有文å—ã€åœ–片ã€éŸ³è¦–å’Œè¦–é »æ–‡ä»¶ï¼Œç‰ˆæ¬Šå‡ç‚ºä¸åœ‹å‚³å‹•ç¶²(www.hysjfh.com)ç¨å®¶æ‰€æœ‰ã€‚如需轉載請與0755-82949061è¯ç³»ã€‚任何媒體ã€ç¶²ç«™æˆ–å€‹äººè½‰è¼‰ä½¿ç”¨æ™‚é ˆæ³¨æ˜Žä¾†æºâ€œä¸åœ‹å‚³å‹•ç¶²â€ï¼Œé•å者本網將追究其法律責任。
本網轉載并注明其他來æºçš„稿件,å‡ä¾†è‡ªäº’è¯ç¶²æˆ–æ¥å…§æŠ•稿人士,版權屬于原版權人。轉載請ä¿ç•™ç¨¿ä»¶ä¾†æºåŠä½œè€…ï¼Œç¦æ¢æ“…自篡改,é•è€…è‡ªè² ç‰ˆæ¬Šæ³•å¾‹è²¬ä»»ã€‚