μC/OSII嵌入式操作系統(tǒng)在機(jī)電控制中的應(yīng)用
時(shí)間:2008-03-24 14:59:00來(lái)源:mahaiyan
導(dǎo)語(yǔ):?嵌入式系統(tǒng)及其應(yīng)用已成為當(dāng)前研究和應(yīng)用的熱點(diǎn),采用嵌入式系統(tǒng)的機(jī)電控制系統(tǒng)較傳統(tǒng)控制系統(tǒng)在可靠性、體積、功耗、性價(jià)比等方面都具有明顯的優(yōu)勢(shì)
引言
美國(guó)著名未來(lái)學(xué)家尼葛洛龐帝1999年1月訪華時(shí)預(yù)言,4~5年后嵌入式智能(電腦)工具將是PC和因特網(wǎng)之后最偉大的發(fā)明。事實(shí)正如尼葛洛龐帝先生所預(yù)料的那樣,嵌入式系統(tǒng)及其應(yīng)用已成為當(dāng)前研究和應(yīng)用的熱點(diǎn),國(guó)際上大牌公司如Intel、Microsoft(微軟)等紛紛投入巨資,分別推出了具有技術(shù)優(yōu)勢(shì)的基于Xsale框架結(jié)構(gòu)的嵌入式硬件平臺(tái)和Windows CE 4.0軟件平臺(tái),為嵌入式系統(tǒng)的發(fā)展注入了強(qiáng)大的活力。今天,嵌入式系統(tǒng)已滲透到日常生活的方方面面,帶來(lái)的工業(yè)年產(chǎn)值已超過(guò)1萬(wàn)億美元,在工業(yè)控制、消費(fèi)電子等領(lǐng)域的應(yīng)用范圍不斷擴(kuò)大,而機(jī)電控制是嵌入式系統(tǒng)技術(shù)的一個(gè)典型應(yīng)用,采用嵌入式的機(jī)器人、SONY 機(jī)器狗及1997年美國(guó)發(fā)射的“索納杰”火星車就是經(jīng)典的實(shí)例。就嵌入式系統(tǒng)的組成、特點(diǎn),開(kāi)發(fā)所采用的主流軟件平臺(tái)、硬件平臺(tái)作詳細(xì)的介紹,并通過(guò)Stewart平臺(tái)專用伺服控制器的設(shè)計(jì),介紹了嵌入式技術(shù)在機(jī)電控制系統(tǒng)中的應(yīng)用及具體實(shí)現(xiàn)。
1 嵌入式系統(tǒng)
嵌入式系統(tǒng)是以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。由于嵌入式系統(tǒng)具有微內(nèi)核、系統(tǒng)精簡(jiǎn)、高實(shí)時(shí)性、專用性強(qiáng)等特點(diǎn),因此非常適合應(yīng)用于機(jī)電控制系統(tǒng)。有別于傳統(tǒng)的控制系統(tǒng),嵌入式系統(tǒng)由嵌入式微處理器/微控制器、存儲(chǔ)器、輸入輸出(I/O)和軟件組成,這里的軟件是指基于RTOS開(kāi)發(fā)的且和RTOS密切結(jié)合的應(yīng)用軟件。這種操作系統(tǒng)和應(yīng)用軟件緊密結(jié)合為一體正是嵌入式系統(tǒng)和基于Windows應(yīng)用系統(tǒng)的主要差別所在,也是其可靠性和實(shí)時(shí)性的重要保證。
2 嵌入式微處理器
目前有許多款嵌入式微處理器,如Intel公司的StrongARM、Xscale,ATMEL的AT91系列,IBM的PowerPC,Motorola的68K,三星的S3C4x系列等,其中基于英國(guó)ARM公司的ARM內(nèi)核的嵌入式微處理器是目前的主流。ARM是典型的32位RISC芯片——不論是在PDA、STB、DVD等消費(fèi)類電子產(chǎn)品中,還是在機(jī)電、GPS、航空、勘探、測(cè)量等軍方產(chǎn)品中都得到了廣泛的應(yīng)用。越來(lái)越多的芯片廠商早已看好ARM的前景,如Intel、NS、Ateml、Samsung、Philips、NEC、CirrusLogic等全球著名公司都有相應(yīng)的基于ARM處理器的產(chǎn)品。ARM處理器的主要特點(diǎn)是:小體積、低功耗、低成本、高性能、16/32位雙指令集、全球眾多的合作伙伴。事實(shí)上ARM已成為嵌入式解決方案的RISC標(biāo)準(zhǔn),成為業(yè)界的龍頭。
文中采用ATMEL的AT91x40[2],設(shè)計(jì)了用于Stewart平臺(tái)的伺服控制器。AT91系列微控制器是基于ARM7TDMI嵌入式微處理器的16/32位控制器,用高密度的16位指令實(shí)現(xiàn)了高效的32位RISC結(jié)構(gòu),非常適合實(shí)時(shí)控制應(yīng)用。ATMEL公司采用高密度CMOS技術(shù),通過(guò)片上集成ARM7TDMI和大量的FLASH、片內(nèi)RAM以及各種外圍功能模塊使其成為強(qiáng)有力的微控制器,為許多需要加強(qiáng)運(yùn)算的嵌入式應(yīng)用提供了高度的靈活性和高性價(jià)比的解決方案。AT91x40的主要片上功能:
*帶8KB緩存的ARM7TDMI ARM ThumbCPU核;
*完全可編程的外部總線接口,支持64M尋址空間;
*8優(yōu)先級(jí)、可單獨(dú)屏蔽的向量中斷控制器,4個(gè)外部中斷源;
*3通道16位定時(shí)、計(jì)數(shù)器;
*5個(gè)PWM定時(shí)器及1個(gè)內(nèi)部定時(shí)器;
*可編程的看門狗定時(shí)器;
*兩個(gè)獨(dú)立的USART;
*先進(jìn)的省電特性。
3 嵌入式RTOS的選擇
目前嵌入式實(shí)時(shí)操作系統(tǒng)RTOS分為兩類:商用型和免費(fèi)型。其中商用型典型的RTOS有:Windows CE 4.0(適合于消費(fèi)類電子產(chǎn)品);VxWork(適合于網(wǎng)絡(luò)、交換設(shè)備等);Palm OS(適合于PAD產(chǎn)品)。免費(fèi)型RTOS有Linux(包括uLinux和RT-Linux)和μC/OSII。綜合考慮,這里選擇μC/OSII作為本系統(tǒng)的RTOS。
μC/OSII(即μC/OS的最新版)主要特點(diǎn)如下:
(1)公開(kāi)源碼:是為數(shù)不多的公開(kāi)源碼的RTOS,給二次開(kāi)發(fā)和移植提供了可能;
(2)可移植性強(qiáng):μC/OSII絕大多數(shù)源碼用ANSI C編寫,少量用匯編語(yǔ)言編寫,具有較強(qiáng)的移植性;
(3)可固化:微小內(nèi)核,可以和應(yīng)用程序一起固化到FLASHROM中;
(4)可裁剪:通過(guò)條件編譯即可實(shí)現(xiàn)裁剪,十分方便;
(5)占先式:是實(shí)時(shí)性的重要保證;
(6)多任務(wù):多達(dá)64個(gè)任務(wù)管理,可以滿足大多數(shù)控制任務(wù);
(7)可確定性:全部的函數(shù)調(diào)用與服務(wù)執(zhí)行的時(shí)間是可知的;
(8)系統(tǒng)服務(wù):提供眾多的系統(tǒng)服務(wù),如:消息隊(duì)列、信號(hào)量、內(nèi)存管理等。
(9)中斷管理:多達(dá)255層的中斷管理。
(10)穩(wěn)定性和可靠性:自1992年以來(lái)已經(jīng)有好幾百個(gè)商業(yè)應(yīng)用。其中NationalOptronics公司成功將μC/OS用于三軸運(yùn)動(dòng)控制卡中,該三軸運(yùn)動(dòng)控制卡主要用于高精度的光電子制造業(yè)。
4 基于Stewart平臺(tái)的伺服控制器設(shè)計(jì)
4.1 系統(tǒng)硬件結(jié)構(gòu)
Stewart平臺(tái)是6腿(桿)機(jī)械手,在大射電望遠(yuǎn)鏡指向跟蹤系統(tǒng)中是利用Stewart平臺(tái)作饋源艙的精調(diào)子系統(tǒng)。在該系統(tǒng)中要求Stewart平臺(tái)系統(tǒng)實(shí)現(xiàn)高精度、高實(shí)時(shí)性運(yùn)動(dòng),其控制精度直接決定著饋源的定位精度,而且對(duì)Stewart平臺(tái)控制器的可靠性、體積都有較高的要求。
Stewart平臺(tái)控制系統(tǒng)基于ATMEL公司的AT9140800嵌入式微處理器為核心。其它主要硬件部分有:
(1) 存儲(chǔ)器:系統(tǒng)配以2MBSDRAM,1MB線性FlashROM用于存儲(chǔ)RTOS和應(yīng)用軟件。
(2) 編碼器接口:設(shè)計(jì)6路獨(dú)立編碼器接口,包括脈沖細(xì)分邏輯和辨向電路。
(3) DA接口:6路獨(dú)立的12位DA接口電路,其輸出的模擬量作為伺服放大器的輸入。
(4) 兩個(gè)標(biāo)準(zhǔn)RS232接口:可以通過(guò)RS232接口接收主機(jī)的指令。
(5) 提供ISA總線接口:可以將本嵌入式系統(tǒng)插入PC的ISA槽中,通過(guò)ISA總線接收PC的指令,用于標(biāo)準(zhǔn)的工控模式。
(6) 各種狀態(tài)指示燈,指示系統(tǒng)的工作狀況和每個(gè)通道的工作狀態(tài)。各接口的通訊格式全部采用帶校驗(yàn)的自定義格式。
4.2 系統(tǒng)軟件
該系統(tǒng)軟件是基于μC/OS為RTOS開(kāi)發(fā)的專用軟件。主要包括以下幾部分:
(1) 多任務(wù)管理;
(2) 內(nèi)存資源管理;
(3)中斷管理;
(4)UART接口管理;
(5) ISA接口管理;
(6) 電機(jī)控制ADRC算法。
其中(1)、(2)、(3)由μC/OS實(shí)現(xiàn)(與接口有關(guān)的中斷服務(wù)程序需用戶編寫),其余為用戶編程實(shí)現(xiàn)。傳統(tǒng)的各類電機(jī)控制器中大多采用各種各樣的PID,如非線性PID,模糊PID等,這里電機(jī)控制采用自抗擾控制ADRC(auto_disturbance rejector controller)算法。為了提高算法的效果,對(duì)原來(lái)ADRC算法進(jìn)行了適當(dāng)?shù)母倪M(jìn),采用變參數(shù)思想,稱之為模糊ADRC。
4.3 μC/OS的移植軟件
μC/OS的移植工作主要包括:
(1)聲明10個(gè)數(shù)據(jù)類型。在文件OS_CPU.H 中定義9個(gè)數(shù)據(jù)類型和一個(gè)堆棧寬度。
(2)用#define設(shè)置一個(gè)表示堆棧增長(zhǎng)方向的常量OS_STK_GROWTH x 。
(3)用#define聲明三個(gè)宏。
(4)用C語(yǔ)言編寫六個(gè)簡(jiǎn)單的函數(shù)。
由于μC/OS是源碼公開(kāi)的免費(fèi)型RTOS,其上有許多成功的移植實(shí)例共享。按照上述嵌入式軟硬件設(shè)計(jì)思想,我們?cè)O(shè)計(jì)了Stewart平臺(tái)專用伺服控制器??刂破髂芎芎玫馗櫰谕盘?hào),并能在很短的時(shí)間內(nèi)消除干擾的影響。
5 結(jié)束語(yǔ)
嵌入式系統(tǒng)及其應(yīng)用已成為當(dāng)前研究和應(yīng)用的熱點(diǎn),采用嵌入式系統(tǒng)的機(jī)電控制系統(tǒng)較傳統(tǒng)控制系統(tǒng)在可靠性、體積、功耗、性價(jià)比等方面都具有明顯的優(yōu)勢(shì),相信不久的將來(lái)嵌入式系統(tǒng)會(huì)廣泛應(yīng)用于各類機(jī)電控制中,并能取得更好的控制效果和更好的系統(tǒng)綜合性能。
標(biāo)簽:
中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。