閱讀 | 訂閱
閱讀 | 訂閱
測試測量

基於μc/OS-II的多傳感器測控係統研究

星之球激光 來源:與(yu) 非網2012-04-20 我要評論(0 )   

1 引言 隨著嵌入式係統的廣泛應用 , 原來單一傳(chuan) 感器的嵌入式係統逐漸向嵌入式多傳(chuan) 感器係統發展。由此提出了多傳(chuan) 感器任務調度分配的問題。本文結合紅薯保鮮儲(chu) 藏工程涉及...

 

1 引言

隨著嵌入式係統的廣泛應用,原來單一傳(chuan) 感器的嵌入式係統逐漸向嵌入式多傳(chuan) 感器係統發展。由此提出了多傳(chuan) 感器任務調度分配的問題。本文結合紅薯保鮮儲(chu) 藏工程涉及到的溫度濕度氧濃度等參數要求,采用高性能16位單片機SPCE061A作為(wei) 控製芯片,移植可裁剪的多任務實時操作係統μc/OS-II管理多任務的處理,選用高精度溫度傳(chuan) 感器DS18B20、濕度傳(chuan) 感器HIH3605、氧濃度傳(chuan) 感器DW-02構建了一個(ge) 高精度高性能高可靠性的多傳(chuan) 感器嵌入式測控係統,各個(ge) 被控參數可調範圍寬,較好的滿足了工程要求。係統的主要參數:工作溫度:1014±0.5℃;工作濕度:8095%RH±5%;氧濃度:≮4.5%。同時,實現了溫濕度數據的顯示與(yu) 保存;可輸出溫度、濕度、氧濃度等調節的控製信號,具有故障和報警狀態提示等功能。

2 係統硬件設計

2.1 單片機係統設計

係統硬件電路原理框圖如圖1所示,主要由SPCE061A單片機、溫濕度傳(chuan) 感器、氧濃度度傳(chuan) 感器、LCD顯示電路、鍵盤電路、RS232通信電路、時鍾電路等組成。SPCE061A是一款基於(yu) μ'nSP內(nei) 核的16位單片機。

2.2 傳(chuan) 感器電路設計

溫度檢測電路選用Dalls公司生產(chan) 的三線式數字溫度傳(chuan) 感器DS18B20。該器件隻有3個(ge) 引腳,不需要外部元件,一條數據線進行通信。該電路的檢測溫度範圍設計為(wei) 0~+50℃;精度為(wei) 0.5℃;用9bit數字量來表示溫度;每次將溫度轉換成數字量需200ms。在單總線工作方式下,允許一條信號線上掛接多個(ge) DS18B20,DS18B20都有唯一的ROM代碼。在多點溫度測控係統中,ROM代碼是識別和操作DS18B20的基礎;無論讀取還是選擇對某一個(ge) 傳(chuan) 感器進行操作,SPCE061A必須發送64ROM代碼。

本係統用3DS18B20來實現對環境溫度的檢測,保證在被測環境範圍內(nei) ,溫度分布均勻,測量更加準確,使用時將DS18B20放置在被測環境的不同位置。獲得溫度信息時,先由SPCE061AIOB15腳發送一個(ge) 1ms的複位脈衝(chong) ,以使DS18B20複位後將向SPCE061A 發送一個(ge) 回應脈衝(chong) ,SPCE061A接到回應脈衝(chong) 後將發送讀DS18B20序列號的讀ROM命令,以分別讀取三個(ge) DS18B20#p#分頁標題#e#的序列號;然後,SPCE061A再發出定位命令以選擇在線的DS1820並進行溫度轉換。當溫度轉換完成後,SPCE061AIOB15腳會(hui) 發送DS1820的存儲(chu) 命令,從(cong) 而完成溫度信息數據的轉換和讀取。

2路濕度傳(chuan) 感器采用Honeywell公司生產(chan) 的HIH3605,它為(wei) 熱固性聚合物電容傳(chuan) 感器,帶集成信號處理電路,5 V恒壓供電, 放大線形電壓輸出0~5VDC對應0~100%RH(相對濕度),精度為(wei) ±3%RH。低功耗設計200μA驅動電流,寬工作溫度範圍-40~+85,穩定性好,低的溫度飄移,抗化學腐蝕性能優(you) 良。由於(yu) HIH3605為(wei) 大信號輸出且線性度良好,因此,可省去複雜的信號放大及整形電路,隻需經過CPU內(nei) 部的A/D轉換器將與(yu) 濕度值成正比的電壓值轉換成16位數字量,和標準進行比對,然後決(jue) 定是進行加濕還是通風(溫度適宜的風)

2路氧濃度檢測選用 DW-02型氧濃度傳(chuan) 感器,該傳(chuan) 感器是一種化學式的氣體(ti) 擴散型燃料電池,廣泛應用在環保節能、航天等領域,用以小環境氧濃度監測。主要特點是體(ti) 積小、響應快、線性好、溫漂小等特點,穩定。主要技術指標: 響應時間≤30(滿量程的90%) ;測量範圍050% O2 ;溫度係數>0.003% O2/;線性誤差+0.2%-0.1% O2 ;使用溫度範圍-20+50;輸出電流1.1mA+15% 本係統測定的含氧量不得低於(yu) 4.5%

由於(yu) 是冬季,當儲(chu) 藏室環境溫度高於(yu) 14℃或濕度大於(yu) 95%RH、或氧濃度低於(yu) 4.5%設定值時,不能直接將冷空氣送入儲(chu) 藏室,必須將室外空氣加熱到12℃送入,否則,會(hui) 造成紅薯受冷變質。三個(ge) 參數中,最主要的是溫度值,然後是濕度。


2.3
鍵盤、顯示電路及通信接口設計

係統鍵盤電路由3根線連接至SPCE061AIOA0~IOA2組成,它們(men) 分別是功能鍵,增加鍵,減少鍵,用來實現溫、濕度氧濃度的上、下限及控製時間的設置功能。測控儀(yi) 采用HT1621驅動128LCD顯示器,用於(yu) 顯示現場的溫、濕度值、O2#p#分頁標題#e#濃度以及故障和報警狀態。HT1621是一個(ge) 128(32×4)段、內(nei) 存映射、多功能、I2C接口的LCD驅動器。這裏利用其兩(liang) 線串行模式與(yu) 單片機接口,簡化了與(yu) 單片機的接口電路設計,並減少了硬件資源的占用。

為(wei) 了將實時采集的氧濃度、溫濕度數值保存下來,SPCE061A通過IOB7/10 RS232總線將氧濃度溫濕度值傳(chuan) 輸給上位PC,以便於(yu) 主計算機完成數據存儲(chu) 。

3 軟件設計

3.1 係統任務分配

為(wei) 了充分發揮操作係統在任務調度、任務管理、任務通信、時間管理和內(nei) 存管理等方麵的優(you) 勢,首先必須根據需要實現的功能,合理的劃分任務和分配任務的優(you) 先級。按溫濕度測控係統所要求實現的功能,將整個(ge) 係統劃分為(wei) 並行存在的任務層和中斷程序。

多任務係統在運行時每個(ge) 任務好像獨立占用CPU一樣,因此係統必須為(wei) 每個(ge) 任務開辟一塊內(nei) 存空間作為(wei) 該任務的任務堆棧。該堆棧的作用是保存任務被切換前時CPU各寄存器的值以及係統堆棧的數據。在進行任務切換時需要完成工作的主要步驟如下:①將當前任務CPU所有的寄存器壓棧;②將CPU係統堆棧的數據全部拷貝到當前任務的任務堆棧中;③得到下一個(ge) 處於(yu) 運行態優(you) 先級最高的任務的任務堆棧的指針;④恢複下一個(ge) 任務的CPU寄存器的值;⑤恢複下一個(ge) 任務的係統堆棧中的數據;⑥通過中斷返回指令或函數返回指令,間接修改PC寄存器的值來進行任務切換。在為(wei) μC/OS-II編寫(xie) 任務切換代碼時需要注意的是:μC/OS-II在每次發生中斷後都會(hui) 產(chan) 生任務調度,但在中斷結束後進行的任務切換,不能調用普通任務切換函數,這是因為(wei) 在中斷過程中往往伴隨將CPU的狀態寄存器壓棧操作。

任務切換方法:淩陽SPACE061A單片機有R1-R5 五個(ge) 通用寄存器,還有1個(ge) SRCPU狀態寄存器),再加上PC,總共有7個(ge) CPU內(nei) 部寄存器在任務切換時需要保存。μC/OS-II係統調用OSCtxSw( )來實現任務的切換。係統中並行存在的幾個(ge) 任務按優(you) 先級從(cong) 高到低依次是:係統監視任務、數據采集任務、數據處理任務、數據輸出任務、顯示任務。在實際係統中,每個(ge) 任務都是無限循環的,分別實現某一特定的功能,μC/OS-II內(nei) 核來進行調度。係統監視任務主要完成係統可靠性的監管;數據采集任務主要完成溫度濕度氧濃度的檢測和A/D轉換;數據處理任務主要完成采集數據和設定數據的比較判定;數據輸出任務主要完成數據輸出給LCD、通過RS232傳(chuan) 輸給主機、以及輸出控製信號給繼電器電路,完成通風、加熱、加濕等功能;顯示任務主要完成溫度濕度氧濃度參數的顯示。

3.2 μc/OS-II的移植

μC/OS-II是一種專(zhuan) 門為(wei) 微控製器設計的搶占式實時多任務操作係統,它以源代碼的形式給出。其內(nei) 核主要提供進程管理、時間管理、內(nei) 存管理等服務。係統最多支持56個(ge) 任務,每個(ge) 任務均有一個(ge) 獨有的優(you) 先級。由於(yu) 其內(nei) 核為(wei) 搶先式#p#分頁標題#e#,所以總是處於(yu) 運行態最高優(you) 先級的任務占用CPU。係統提供了豐(feng) 富的API函數,實現進程之間的通信以及進程狀態的轉化。

μC/OS-II的軟件體(ti) 係結構如圖4所示。從(cong) 圖4中可以看到,如果要使用μC/OS-II, 必須為(wei) 其編寫(xie) OS_CPU.HOS_CPU_C.COS_CPU_A.ASM三個(ge) 文件。這三個(ge) 文件是與(yu) 芯片的硬件特性有關(guan) 的,它們(men) 主要提供任務切換與(yu) 係統時鍾的功能。其它文件用C寫(xie) 成,它們(men) 為(wei) 係統提供任務管理、任務之間通信、時間管理以及內(nei) 存管理等功能。

4 μC/OS-II 軟件體(ti) 係結構示意圖

μC/OS-II係統時鍾:以淩陽SPCE061A單片機的TMB2時基信號作為(wei) 係統時鍾,每經曆一個(ge) 時鍾節拍的時間將產(chan) 生一次中斷,在中斷服務子程序中會(hui) 調用OSTickISR()函數。

移植工作的主要內(nei) 容:用#define 設置一個(ge) 常量值(OS_CPU.H;聲明10個(ge) 數據類型(OS_CPU.H; #define 聲明3個(ge) 宏(OS_CPU.H);用C語言編寫(xie) 6個(ge) 簡單的函數(OS_CPU_C.C);編寫(xie) 4個(ge) 匯編語言函數(OS_CPU_A.ASM)。

4 結論

μC/OS-II RTOS是當今嵌入式應用的熱點之一,應用RTOS提高了測控係統係統的可靠性、實時性,降低了研發周期。本文基於(yu) μC/OS-II構建的測控係統應用在漯河農(nong) 業(ye) 局2000萬(wan) 公斤紅薯儲(chu) 藏保鮮工程項目中,完全達到了設計的控製指標:溫度10-14±0.5 ,濕度80—95%RH±2%,氧濃度≮4.5%。降低了紅薯因為(wei) 溫度濕度氧濃度不正常造成的變質,完好率100%,與(yu) 不使用本係統的倉(cang) 儲(chu) 對比減少損耗25%,500萬(wan) 公斤,直接經濟效益500多萬(wan) 元,同時也取得了較好的社會(hui) 效益。另外,該係統具有較好的可擴展性,很容易擴展到其它對溫度、濕度或者氧濃度有一定要求的領域。經試驗,溫度測定範圍可以達到-20-85±0.5;濕度20—98%RH±2%;氧濃度≮1.5%。所以,該測控係統具有較廣的應用前景。

本文創新點:采用高性能SPCE061A單片機和高精度溫度傳(chuan) 感器、濕度傳(chuan) 感器和氧濃度傳(chuan) 感器,通過移植μC/OS-II多任務實時操作係統,構建了高精度、高可靠性的多傳(chuan) 感器嵌入式測控係統。實際工程應用表明,係統擴展性好、測控精度高、性能穩定。

 

轉載請注明出處。

免責聲明

① 凡本網未注明其他出處的作品,版權均屬於(yu) fun88网页下载,未經本網授權不得轉載、摘編或利用其它方式使用。獲本網授權使用作品的,應在授權範圍內(nei) 使 用,並注明"來源:fun88网页下载”。違反上述聲明者,本網將追究其相關(guan) 責任。
② 凡本網注明其他來源的作品及圖片,均轉載自其它媒體(ti) ,轉載目的在於(yu) 傳(chuan) 遞更多信息,並不代表本媒讚同其觀點和對其真實性負責,版權歸原作者所有,如有侵權請聯係我們(men) 刪除。
③ 任何單位或個(ge) 人認為(wei) 本網內(nei) 容可能涉嫌侵犯其合法權益,請及時向本網提出書(shu) 麵權利通知,並提供身份證明、權屬證明、具體(ti) 鏈接(URL)及詳細侵權情況證明。本網在收到上述法律文件後,將會(hui) 依法盡快移除相關(guan) 涉嫌侵權的內(nei) 容。

網友點評
0相關評論
精彩導讀