基于μC/OS-Ⅱ農田信息采集系統的研究與設計
3.2 任務(wù)優(yōu)先級及任務(wù)關(guān)聯(lián)設計
在本項目中,為實(shí)現農田信息采集系統的功能要求,在μC/OS-Ⅱ中設計以下任務(wù):時(shí)鐘節拍任務(wù)、鍵盤(pán)任務(wù)、顯示任務(wù)、數據采集任務(wù)(土壤水分、土壤養分、土壤壓實(shí)、多點(diǎn)溫度數據采集)、數據處理及存儲任務(wù)、串口通訊任務(wù)。數據采集任務(wù)、數據處理與存儲任務(wù)設置為周期性任務(wù)。在這些任務(wù)中,μC/OS-Ⅱ時(shí)鐘節拍服務(wù)是通過(guò)中斷服務(wù)子程序調用時(shí)鐘節拍函數來(lái)實(shí)現的。因而采用定時(shí)器1產(chǎn)生中斷,定時(shí)周期10ms。除此以外,該函數還要啟動(dòng)A/D轉換以及每隔一段時(shí)間發(fā)送消息給相應的任務(wù),從而觸發(fā)相應的任務(wù)執行等。因此,優(yōu)先級最高;數據采集任務(wù)、串口接收任務(wù)和串口發(fā)送任務(wù)實(shí)時(shí)性要求比較高。其中,串口接收任務(wù)是關(guān)鍵任務(wù)和緊迫任務(wù),遺漏接收內容是不允許的;數據采集任務(wù)是緊迫任務(wù),但不是關(guān)鍵任務(wù),遺漏一個(gè)數據還不至于發(fā)生重大問(wèn)題;在串行口發(fā)送任務(wù)中,CPU是主動(dòng)方,慢一些也可行,只要將數據發(fā)出去就可以。顯示任務(wù)和鍵盤(pán)任務(wù)是人機接口任務(wù),實(shí)時(shí)性要求較低。由于顯示任務(wù)要等數據處理及存儲任務(wù)所得的數據,故數據處理及存儲任務(wù)的優(yōu)先級可安排得比鍵盤(pán)任務(wù)和顯示任務(wù)高一些。農機設備控制任務(wù)的實(shí)時(shí)性要得到保證,因此要設為較高優(yōu)先級。
由于系統的實(shí)際運行效果是各個(gè)任務(wù)配合運行的結果,這種配合過(guò)程又是通過(guò)操作系統的管理來(lái)實(shí)現的,即通過(guò)調用操作系統服務(wù)函數來(lái)實(shí)現的。“何時(shí)調用系統服務(wù)”和“調用什么系統服務(wù)”是任務(wù)設計中的關(guān)鍵問(wèn)題,這個(gè)問(wèn)題與任務(wù)之間的相互關(guān)聯(lián)程度有關(guān),需要通過(guò)分析這種關(guān)聯(lián)關(guān)系才能確定。為了進(jìn)行任務(wù)設計,必須把這些任務(wù)之間的相互關(guān)系搞清楚。本文引用地址:http://dyxdggzs.com/article/194066.htm
根據農田信息采集系統功能需求,設計任務(wù)關(guān)聯(lián)圖如圖3所示。系統應用軟件包含10個(gè)任務(wù):傳感器數據采集任務(wù)為周期性任務(wù),以一定的時(shí)間間隔采集數據,通過(guò)消息隊列將所采集數據傳輸給LCD顯示任務(wù),并通過(guò)郵箱1#傳遞給數據處理與存儲任務(wù),同時(shí),GPS接收的位置信息通過(guò)郵箱2#及時(shí)插入采集的數據當中;數據處理與存儲任務(wù)以信號量1#將數據通過(guò)串口通訊任務(wù)傳遞給計算機,并在計算機上生成田間土壤水分分布圖、養分分布圖和溫度變化圖等數據,計算機生成的數據又經(jīng)串口通訊任務(wù)由信號量2#發(fā)給擴展CAN總線(xiàn)任務(wù),以此來(lái)控制農田機械設備執行相應的程序,完成自動(dòng)變量施肥、變量噴灑農藥等;鍵盤(pán)掃描任務(wù)、數據處理與存儲任務(wù)等和顯示任務(wù)同步,以消息隊列1#通知顯示任務(wù)更新顯示。
4 結束語(yǔ)
本文以嵌入式微處理器S3CA4B0X芯片為主體,構建農田信息采集系統的軟硬件平臺,分析了μC/OS-Ⅱ操作系統的特點(diǎn),并在嵌入式微處理器S3C44B0X芯片內嵌入μC/OS-Ⅱ實(shí)時(shí)操作系統,闡述了基于μC/OS-Ⅱ操作系統的農田信息采集系統的設計與實(shí)現方法。由此開(kāi)發(fā)的農田信息采集系統的實(shí)時(shí)響應速度快,并實(shí)現軟件設計模塊化,可大大提高系統的穩定性和實(shí)時(shí)響應能力,增強系統的可靠性、可擴展性、可移植性,有著(zhù)廣泛的應用前景。
評論