UCOS-II在基于C8051f060的壓裝監(jiān)測設(shè)備數(shù)據(jù)采集系統(tǒng)應(yīng)用
所以本數(shù)據(jù)采集系統(tǒng)采用能實現(xiàn)多任務(wù)同時運行的UCOS-II實時操作系統(tǒng)[11]。UCOS-II是有Micrium公司提供的一款可移植、可裁剪的小型多任務(wù)實時操作系統(tǒng),它具有執(zhí)行效率高、占用空間小、實時性優(yōu)良和擴展性良好的特點。雖然體積小但它包含了任務(wù)調(diào)度、任務(wù)管理、時間管理、內(nèi)存管理和任務(wù)間的通信和同步等功能。UCOS-II中最大可支持64個任務(wù),分別對應(yīng)優(yōu)先級為0—63,高優(yōu)先級任務(wù)可以搶占低優(yōu)先級CPU資源。多任務(wù)操作系統(tǒng)是把CPU的執(zhí)行分為多個很多個時間塊,任務(wù)A執(zhí)行完后它會把CPU的使用權(quán)交給任務(wù)B,而且高優(yōu)先級的任務(wù)每執(zhí)行會主動放棄一段CPU的使用時間,把使用權(quán)交給其它的任務(wù),這樣多個任務(wù)依次輪轉(zhuǎn)運行,由于時間塊很短,這些任務(wù)就好像是在同步并行運行了[12]。
本文引用地址:http://2s4d.com/article/266053.htm 本數(shù)據(jù)采集系統(tǒng)如圖3所示將其功能模塊劃分為四個任務(wù):數(shù)據(jù)采集任務(wù)、數(shù)據(jù)發(fā)送任務(wù)、PLC通信任務(wù)、串口讀寫任務(wù)。
(1)數(shù)據(jù)采集任務(wù):數(shù)據(jù)采集任務(wù)就是每次壓裝開始時,通過C8051f060單片機片內(nèi)的AD轉(zhuǎn)換器進行雙通道的數(shù)據(jù)采集,采集的速度為5kHz。并同時將采集到的數(shù)據(jù)通過DMA方式保存到片外RAM中去。壓裝停止時,停止采集。
(2)數(shù)據(jù)發(fā)送任務(wù):數(shù)據(jù)發(fā)送任務(wù)是將放在片外RAM中所采集的壓力和位移數(shù)據(jù),通過SPI協(xié)議傳輸給ARM處理器,ARM再對這些數(shù)據(jù)進行曲線圖繪制和壓裝結(jié)果的判斷等操作。在片外RAM沒有采集數(shù)據(jù)時,該任務(wù)會處于休眠等待狀態(tài)。
(3)PLC通信任務(wù):該系統(tǒng)通過在C8051f060上設(shè)置了14個I/O口與PLC通信,7個輸入和7個輸出。該任務(wù)是一方面監(jiān)測ARM傳送過來的指令,然后對7個輸出口進行操作,另一方面不斷監(jiān)測7個輸入I/O口,觀察PLC有沒有發(fā)送指令給ARM。
(4)串口讀寫任務(wù):串口讀寫任務(wù)簡單來講就是接收并讀取來自ARM經(jīng)過RS232發(fā)送過來的指令,然后發(fā)送PLC給ARM的一些信號。
其中最關(guān)鍵的核心任務(wù)是數(shù)據(jù)發(fā)送和數(shù)據(jù)采集這兩個任務(wù)。因為只有等運行采集任務(wù),在片外RAM中保存了數(shù)據(jù)之后,數(shù)據(jù)發(fā)送任務(wù)才能發(fā)送。所以在任務(wù)的調(diào)度上為了協(xié)調(diào)好兩者的關(guān)系,于是在這兩個任務(wù)之中加入了一個任務(wù)之間通信的信號量。開始時信號量為0表示RAM中沒有采集的數(shù)據(jù),即數(shù)據(jù)發(fā)送任務(wù)不能進行,當RAM中保存了一個數(shù)據(jù)之后,信號量置1,數(shù)據(jù)發(fā)送任務(wù)就可以運行了,當數(shù)據(jù)發(fā)送速度大于數(shù)據(jù)的采集速度時,即RAM中的數(shù)據(jù)為零時,這時候信號量又置0,使得數(shù)據(jù)發(fā)送任務(wù)等待數(shù)據(jù)采集任務(wù)。所以加入信號量之后就能保證任務(wù)之間能正常有秩序的運行。
3 總結(jié)
UCOS-II是一款實用性很強的小型嵌入式實時操作系統(tǒng)[13],隨著整個嵌入式行業(yè)的發(fā)展,它的應(yīng)用也越來越廣泛,優(yōu)越性也愈加明顯。在此壓裝監(jiān)測設(shè)備上,筆者把它移植到了功能強大的C8051f060單片機上,通過多任務(wù)并行執(zhí)行調(diào)度方式,實現(xiàn)了壓裝監(jiān)測設(shè)備的一個核心單元,即實時數(shù)據(jù)采集系統(tǒng)。UCOS-II與C8051f060的結(jié)合,使得該數(shù)據(jù)采集系統(tǒng)能實時準確地采集到壓力和位移數(shù)據(jù),并快速的發(fā)送給上層處理單元,使得整個壓裝監(jiān)測設(shè)備能正常穩(wěn)定地運行,并取得預(yù)期效果。
參考文獻:
[1]尹珊波.滾動軸承壓裝力與壓裝曲線的研究[D].長沙:中南大學(xué),2005.
[2]韓建斌.輪對壓裝曲線記錄及其自動判斷系統(tǒng)的研究[D].武漢:武漢理工大學(xué),2012.
[3]宋威巖,劉儉.新型位移一一壓力曲線軸承IE裝機的原理[J].哈爾濱鐵道科技,2000 (4):23-25.
[4]李明貴.面向壓裝設(shè)備的實時檢測系統(tǒng)的軟件功能設(shè)計[D].廣州:廣東工業(yè)大學(xué),2013.
[5]許偉,林彩娥.Linux基礎(chǔ)學(xué)習篇(第二版)[M].人民郵電出版社,2009.
[6]盧華偉,秦品健,鄭銳.基于Qt/Qwt的操作監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[J].微計算機信息.2010,26(1-1):72-75.
[7]韓小濤,張智杰.高精度模數(shù)轉(zhuǎn)換器AD676的原理及應(yīng)用[J].電測與儀表,2001,38(7):48-50.
[8]Silicon Lab Datasheet of C8051F Microcontroller C8051F060[M]. Silicon Lab oratories , 2001.
[9]鮑可進.C8051F單片機原來及應(yīng)用[M].北京:中國電力出版社,2006.
[10]鄧福偉,劉振興,周恒.多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計[J].微訃算機信息. 2008.24(9-1):148-150.
[11]任哲.嵌入式實時操作系統(tǒng)uC/OS-II 原理及應(yīng)用(第二版)[M].北京:北京航空航天大學(xué)出版社,2009.
[12]Jean J . Labrosse ,邵貝貝譯.uC/OS-II-源碼公開的實時嵌入式操作系統(tǒng)(第二版 ) [M].北京:北京航空航天大學(xué)出版社,2003.
[13]桑楠.嵌入式系統(tǒng)原理及應(yīng)用開發(fā)技術(shù)[M].北京:北京航空航天大學(xué)出版社,2002.
模數(shù)轉(zhuǎn)換器相關(guān)文章:模數(shù)轉(zhuǎn)換器工作原理
評論