新聞中心

EEPW首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 基于μC/OS―II操作系統(tǒng)的數(shù)據(jù)采集控制系統(tǒng)

基于μC/OS―II操作系統(tǒng)的數(shù)據(jù)采集控制系統(tǒng)

作者: 時(shí)間:2009-05-05 來源:網(wǎng)絡(luò) 收藏

采集中共設(shè)計(jì)了三種模塊,模擬量采集模塊、狀態(tài)量/頻率采集模塊以及繼電器輸出控制模塊。每個(gè)模塊均以C8051F330單片機(jī)為核心。該單片機(jī)具有內(nèi)部A/D和一個(gè)串口以及定時(shí)器,管腳較少,價(jià)格低廉很適合做采集模塊的控制器。在模塊中,C805lF330單片機(jī)的串口通過跳線實(shí)現(xiàn)復(fù)用,通過NAX3221電平轉(zhuǎn)換芯片可以實(shí)現(xiàn)與PC機(jī)的通信,或者通過MAX485E轉(zhuǎn)換芯片實(shí)現(xiàn)RS一485總線通訊。

本文引用地址:http://www.butianyuan.cn/article/195879.htm

3 軟件設(shè)計(jì)
3.1 核心模塊軟件設(shè)計(jì)
μC/OS―II是個(gè)實(shí)時(shí)。它是一個(gè)完整、可移植、可固化及可剪裁的搶占式多任務(wù)內(nèi)櫳適合小型具有執(zhí)行效率高、占用空間小等特點(diǎn)。μC/OS-II系統(tǒng)內(nèi)核的核心是任務(wù)調(diào)度機(jī)制。μC/OS-II下每個(gè)任務(wù)可以有休眠、就緒、運(yùn)行以及中斷等狀態(tài)。μC/OS-II提供的任務(wù)間的通信力式有很多,如信號(hào)量、消息郵箱、消息隊(duì)列和事件標(biāo)志組等。
核心模塊內(nèi)嵌μC/OS―II實(shí)時(shí),根據(jù)所需要完成的功能和需求,將系統(tǒng)劃分為5個(gè)任務(wù):控制任務(wù),數(shù)據(jù)存儲(chǔ)任務(wù),遠(yuǎn)程網(wǎng)絡(luò)訪問任務(wù),用戶界面任務(wù)以及用戶應(yīng)用程序任務(wù)。為了保證系統(tǒng)的實(shí)時(shí)性,必須合理的設(shè)定任務(wù)的優(yōu)先級(jí)。為了簡化設(shè)計(jì),對(duì)于運(yùn)行任務(wù)較少的數(shù)控系統(tǒng)可以采用靜態(tài)任務(wù)優(yōu)先級(jí)分配。根據(jù)任務(wù)對(duì)響應(yīng)時(shí)間的敏感程度及重要性,任務(wù)的優(yōu)先級(jí)次序如下:
用戶應(yīng)用程序>控制任務(wù)>用戶界面任務(wù)>數(shù)據(jù)存儲(chǔ)任務(wù)>遠(yuǎn)程網(wǎng)絡(luò)訪問任務(wù),每個(gè)任務(wù)實(shí)現(xiàn)一種相對(duì)獨(dú)立的功能,系統(tǒng)任務(wù)流程圖如圖4所示。

數(shù)據(jù)采集控制任務(wù)主要完成數(shù)據(jù)的采集和對(duì)開關(guān)量的控制。核心模塊作為主機(jī),采集控制模塊作為從機(jī)。主機(jī)通過論詢的方式,每隔1秒向從機(jī)依次發(fā)送Modbus讀寄存器命令幀。從機(jī)收到命令后,向主機(jī)返回采集到的數(shù)據(jù)。當(dāng)程序控制邏輯或用戶通過觸摸屏需要開關(guān)量動(dòng)作時(shí),主機(jī)向從機(jī)發(fā)送寫寄存器命令幀,相應(yīng)的從機(jī)響應(yīng)并打開或關(guān)閉電磁閥。
數(shù)據(jù)存儲(chǔ)任務(wù)主要完成對(duì)采集到的數(shù)據(jù)的存儲(chǔ)。當(dāng)數(shù)據(jù)采集控制任務(wù)完成一次數(shù)據(jù)采集任務(wù)之后,數(shù)據(jù)存儲(chǔ)任務(wù)會(huì)在電子盤上建立txt文件,并將數(shù)據(jù)存儲(chǔ)到文件中。當(dāng)數(shù)據(jù)存儲(chǔ)任務(wù)檢測到有U盤插入時(shí),會(huì)將電子盤上的txt文件轉(zhuǎn)存到U盤,并刪除電子盤上的原文件。
遠(yuǎn)程網(wǎng)絡(luò)訪問任務(wù)主要實(shí)現(xiàn)用戶通過網(wǎng)頁瀏覽器實(shí)現(xiàn)對(duì)數(shù)據(jù)的查看和對(duì)開關(guān)的控制。遠(yuǎn)程網(wǎng)絡(luò)訪問任務(wù)一直監(jiān)控有沒有HTTP請(qǐng)求,當(dāng)有HTTP請(qǐng)求時(shí)任務(wù)會(huì)將數(shù)據(jù)以HTTP協(xié)議發(fā)送給瀏覽器客戶端。用戶對(duì)控制模塊的遠(yuǎn)程控制是通過提交表單的形式來實(shí)現(xiàn)的。
用戶界面任務(wù)主要完成用戶與系統(tǒng)的交互。通過大屏幕彩色液晶實(shí)時(shí)顯示采集到的數(shù)據(jù),并且可以顯示數(shù)據(jù)的實(shí)時(shí)曲線。用戶以通過觸摸屏可以對(duì)系統(tǒng)進(jìn)行設(shè)置和控制。
用戶應(yīng)用程序任務(wù)主要是根據(jù)實(shí)際系統(tǒng)的要求,提取和處理有用的數(shù)據(jù)完成一些邏輯控制功能。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉