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