新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于STM32和FreeRTOS的嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)設(shè)計

基于STM32和FreeRTOS的嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)設(shè)計

作者: 時間:2018-09-06 來源:網(wǎng)絡(luò) 收藏

摘要:以ARM Cortex—M3處理器F103VBT6為核心,應(yīng)用AM2301溫濕度傳感模塊實(shí)現(xiàn)對室內(nèi)溫濕度參數(shù)的實(shí)時監(jiān)測,采用數(shù)字技術(shù)控制鼓風(fēng)機(jī)的轉(zhuǎn)速,保持干燥室內(nèi)的溫度穩(wěn)定,并通過繼電器控制排氣扇的啟停使干燥室內(nèi)濕度保持在設(shè)定上限之下。干燥室通過RS 485總線和上位機(jī)通信,上位機(jī)設(shè)定干燥室內(nèi)的目標(biāo)溫度和濕度上限,并實(shí)時顯示干燥室內(nèi)溫度、濕度、鼓風(fēng)機(jī)轉(zhuǎn)速、排氣扇開關(guān)狀態(tài)等參數(shù)。系統(tǒng)軟件采用實(shí)時操作系統(tǒng),保證了系統(tǒng)的實(shí)時性和可靠性,實(shí)現(xiàn)對室內(nèi)溫濕度的實(shí)時監(jiān)測與控制。經(jīng)現(xiàn)場應(yīng)用驗(yàn)證了系統(tǒng)運(yùn)行穩(wěn)定,控制精度高,響應(yīng)速度快。

本文引用地址:http://m.butianyuan.cn/article/201809/388564.htm

0 引言

太陽能是一種清潔可再生能源,應(yīng)用前景十分廣闊。近年來,利用太陽能進(jìn)行農(nóng)產(chǎn)品、藥品的加工也因其節(jié)能、干燥時間短、干燥品質(zhì)高等特點(diǎn)而發(fā)展十分迅速。為保證干燥物料的品質(zhì)與干燥效率,設(shè)備在進(jìn)行干燥作業(yè)時需要對干燥室內(nèi)的溫濕度進(jìn)行實(shí)時監(jiān)控。沈陽農(nóng)業(yè)大學(xué)王勝利、付立思等人研制的基于AT89C51的智能太陽能干燥控制系統(tǒng)沒有進(jìn)行實(shí)時操作系統(tǒng)的移植,監(jiān)測與控制的實(shí)時性要求無法得到妥善滿足,設(shè)備的干燥效果也因此受到影響。內(nèi)蒙古農(nóng)業(yè)大學(xué)徐明娜研制的基于PLC的苜蓿太陽能干燥控制系統(tǒng)雖然運(yùn)行也較穩(wěn)定,但整體造價較為昂貴,并不適宜大規(guī)模推廣應(yīng)用。針對太陽能干燥監(jiān)控系統(tǒng)實(shí)時性、穩(wěn)定性、宜推廣性的設(shè)計需求,本文開發(fā)研制了一套基于的實(shí)時太陽能干燥監(jiān)測和控制系統(tǒng),采用溫濕度傳感器AM2301對溫濕度進(jìn)行測量,并經(jīng)RS 485通信線路傳輸至PC上位機(jī),實(shí)現(xiàn)了對太陽能干燥室內(nèi)溫濕度的實(shí)時監(jiān)測;采用數(shù)字鼓風(fēng)機(jī)轉(zhuǎn)速與繼電器控制排氣扇啟停相配合完成對太陽能干燥室內(nèi)溫濕度的實(shí)時控制。上位機(jī)采用組態(tài)軟件編寫,具有適應(yīng)性強(qiáng)、開放性好、易于擴(kuò)展、經(jīng)濟(jì)、開發(fā)周期短等優(yōu)點(diǎn),監(jiān)測與控制界面簡潔明了易操作。經(jīng)測試表明整個系統(tǒng)具有運(yùn)行穩(wěn)定、反應(yīng)迅速、操作簡便等特點(diǎn),能夠?qū)崿F(xiàn)干燥作業(yè)中對干燥室內(nèi)溫濕度的實(shí)時監(jiān)測與控制。

1 太陽能干燥監(jiān)測和控制系統(tǒng)設(shè)計

嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)由PC上位機(jī)、嵌入式ARM處理器、AM2301溫濕度傳感器、RS 485通信電路、繼電器控制電路等組成。

AM2301采集到干燥室內(nèi)的實(shí)時溫濕度參數(shù),由嵌入式ARM處理器經(jīng)RS 485通信線路傳輸至PC上位機(jī)進(jìn)行顯示與保存。上位機(jī)人工設(shè)定的干燥溫度經(jīng)RS 485通信線路傳至嵌入式處理器作為系統(tǒng)控制目標(biāo)量,以干燥室內(nèi)實(shí)際溫度作為輸入量調(diào)用算法。PID控制算法輸出量作為變頻器工作頻率對鼓風(fēng)機(jī)的轉(zhuǎn)速進(jìn)行實(shí)時調(diào)節(jié),從而實(shí)時增減送入熱風(fēng)量以實(shí)現(xiàn)對干燥室的恒溫控制。當(dāng)監(jiān)測到太陽能干燥室內(nèi)的濕度高于上位機(jī)設(shè)定的上限值時,繼電器觸點(diǎn)吸合控制排氣扇開啟將干燥室內(nèi)的過濕廢氣排空,達(dá)到濕度控制的目的。系統(tǒng)結(jié)構(gòu)框圖如圖1所示。

2 嵌入式太陽能干燥監(jiān)測和控制系統(tǒng)硬件設(shè)計

2.1 嵌入式處理器選擇與應(yīng)用

嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)的主控處理器采用低功耗高速工業(yè)級芯片F103VBT6(意法半導(dǎo)體)。STM32系列具有專為高性能、低成本、低功耗嵌入式應(yīng)用設(shè)計的ARM Cortex-M3內(nèi)核,內(nèi)部集成了優(yōu)異的安全時鐘模式、帶喚醒功能的低功耗模式、內(nèi)部RC振蕩器、內(nèi)嵌復(fù)位電路等,大大簡化了外圍電路設(shè)計,性能也有較大提高。STM32系列單片機(jī)還可便捷的實(shí)現(xiàn)實(shí)時操作系統(tǒng)的移植,能夠滿足本嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)的設(shè)計需求。

2.2 AM2301溫濕度采集電路設(shè)計

嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)采用AM2301濕敏電容數(shù)字溫濕度模塊來獲取干燥室內(nèi)的實(shí)時溫濕度參數(shù)。AM2301包含有一個電容式感濕元件和一個高精度測溫元件,與一個高性能8位單片機(jī)相連接,具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性價比高等優(yōu)點(diǎn),并且每個傳感器都已在極為精確的濕度校驗(yàn)室中進(jìn)行校準(zhǔn)。AM2301采用標(biāo)準(zhǔn)總線接口使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達(dá)20 m以上。溫濕度采集電路如圖2所示。

AM2301傳感器的溫度測量范圍為-40~80℃,精度可達(dá)0.1 ℃;濕度測量范圍為0.1~99.9%RH,精度可達(dá)0.1%RH,完全能夠滿足本系統(tǒng)的設(shè)計需要。AM2301溫濕度傳感器測量分辨率為8位,單總線傳輸數(shù)據(jù)分為整數(shù)部分和小數(shù)部分,完整的一次數(shù)據(jù)傳輸為40位,具體數(shù)據(jù)格式如下所述:

32位數(shù)據(jù)位,其中8位濕度整數(shù)數(shù)據(jù)、8位濕度小數(shù)數(shù)據(jù)、8位溫度整數(shù)數(shù)據(jù)、8位溫度小數(shù)數(shù)據(jù);8位校驗(yàn)位,為8位濕度整數(shù)數(shù)據(jù)+8位濕度小數(shù)數(shù)據(jù)+8位溫度整數(shù)數(shù)據(jù)+8位溫度小數(shù)數(shù)據(jù)結(jié)果后8位。

AM2301溫濕度部分讀取程序如下:

2.3 繼電器控制電路設(shè)計

當(dāng)監(jiān)測到干燥室內(nèi)濕度超過上位機(jī)設(shè)定的上限值時,STM32單片機(jī)將繼電器控制引腳電平拉高,繼電器觸點(diǎn)吸合控制排氣扇開啟;當(dāng)監(jiān)測到干燥室內(nèi)濕度降低至上限值以下時,STM32單片機(jī)將繼電器控制引腳電平拉低,繼電器觸點(diǎn)分離控制排氣扇關(guān)閉,完成過濕廢氣的排空工作。繼電器控制電路如圖3所示。

2.4 RS 485通信電路設(shè)計

太陽能干燥設(shè)備需要長時間工作在露天環(huán)境下,對通信電路的距離和抗干擾要求較高。針對此項(xiàng)要求,實(shí)時嵌入式太陽能干燥監(jiān)測和控制系統(tǒng)采用SP485R芯片組建RS 485通信控制電路實(shí)現(xiàn)與PC上位機(jī)的通信。SP485R應(yīng)用電路如圖4所示。

3 嵌入式太陽能干燥監(jiān)測和控制系統(tǒng)軟件設(shè)計

3.1 在STM32上的移植

太陽能干燥設(shè)備進(jìn)行干燥作業(yè)時對干燥室內(nèi)的溫濕度要求較高:溫度過高會影響干燥物料的品質(zhì),溫度過低或濕度過高又會降低干燥效率。這要求監(jiān)測和控制系統(tǒng)應(yīng)具有高實(shí)時性和可靠的穩(wěn)定性,能夠快速反應(yīng)并準(zhǔn)確動作,使干燥室內(nèi)溫度能夠維持恒定且保證濕度在限定范圍之內(nèi)?;诖?,將FreeRTOS實(shí)時操作系統(tǒng)移植到STM32嵌入式處理器以滿足設(shè)計需求。

FreeRTOS的實(shí)現(xiàn)主要由list.c、queue.c、croutine.c和tasks.c4個文件組成。list.c是一個鏈表的實(shí)現(xiàn),主要供內(nèi)核調(diào)度器使用;queue.c是一個隊(duì)列的實(shí)現(xiàn),支持中斷環(huán)境與信號量控制;croutine.c和task.c是兩種任務(wù)的組織實(shí)現(xiàn)。對于croutine,各個任務(wù)共享同一個堆棧,使RAM的需求進(jìn)一步縮小,也正因如此,他的使用受到相對嚴(yán)格的限制。而task則是傳統(tǒng)的實(shí)現(xiàn),各個任務(wù)使用各自的堆棧,支持完全的搶占式調(diào)度。FreeRTOS在STM32的移植大致由3個文件實(shí)現(xiàn),一個.h文件定義編譯器相關(guān)的數(shù)據(jù)類型和中斷處理的宏定義;一個.c文件實(shí)現(xiàn)任務(wù)的堆棧初始化、系統(tǒng)心跳的管理以及任務(wù)切換的請求;一個.s文件實(shí)現(xiàn)具體的任務(wù)切換,具體如圖5所示。

FreeRTOS下可實(shí)現(xiàn)創(chuàng)建任務(wù)、刪除任務(wù)、掛起任務(wù)、恢復(fù)任務(wù)、設(shè)定任務(wù)優(yōu)先級、獲得任務(wù)相關(guān)信息等功能,在嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)的程序設(shè)計中調(diào)用xTaskCreate()函數(shù)創(chuàng)建監(jiān)測、通信、控制三個任務(wù),程序任務(wù)按設(shè)定優(yōu)先級順序執(zhí)行實(shí)現(xiàn)既定功能。

監(jiān)測任務(wù)(vmonitorTask)實(shí)現(xiàn)對干燥室內(nèi)溫濕度以及鼓風(fēng)機(jī)轉(zhuǎn)速的實(shí)時監(jiān)測。嵌入式處理器將通過參數(shù)傳感器獲得的實(shí)時參數(shù)進(jìn)行保存。

通信任務(wù)(vcommunicateTask)實(shí)現(xiàn)上位機(jī)與嵌入式處理器的實(shí)時通信。嵌入式處理器接收PC上位機(jī)發(fā)送的干燥溫度和濕度上限值,并將收集到的溫濕度以及鼓風(fēng)機(jī)轉(zhuǎn)速參數(shù)發(fā)送至PC上位機(jī)進(jìn)行實(shí)時顯示。

控制任務(wù)(vcontrolTask)實(shí)現(xiàn)干燥室內(nèi)的溫濕度控制。PC上位機(jī)設(shè)定的干燥溫度作為系統(tǒng)控制目標(biāo)量,參數(shù)傳感器測得的實(shí)時溫度作為輸入量調(diào)用PID算法,輸出量作為變頻器工作頻率調(diào)節(jié)鼓風(fēng)機(jī)轉(zhuǎn)速實(shí)現(xiàn)干燥室的恒溫控制。當(dāng)干燥室內(nèi)濕度超過PC上位機(jī)設(shè)定的濕度上限時,繼電器控制排氣扇動作完成過濕廢氣的排空作業(yè)。

程序任務(wù)執(zhí)行框圖如圖6所示。

3.2 PID控制的應(yīng)用

太陽能干燥設(shè)備運(yùn)行時的系統(tǒng)參數(shù)無法通過有效的測量手段來獲得,從而無法建立精確的數(shù)學(xué)模型。因此,系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須依靠工程經(jīng)驗(yàn)和現(xiàn)場調(diào)試來確定。在綜合考慮多種控制理論可行性并參照工程實(shí)踐的基礎(chǔ)上,嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)選用數(shù)字PID控制技術(shù)來實(shí)現(xiàn)干燥室的恒溫控制。

嵌入式處理器以上位機(jī)設(shè)定干燥溫度作為系統(tǒng)控制目標(biāo)量,以干燥室內(nèi)實(shí)時溫度作為輸入量調(diào)用PID算法。PID輸出量作為變頻器工作頻率對鼓風(fēng)機(jī)轉(zhuǎn)速進(jìn)行實(shí)時調(diào)節(jié),從而實(shí)時增減送入熱風(fēng)量以完成對于燥室的恒溫控制。

考慮到溫度調(diào)節(jié)的特性要求,本系統(tǒng)采用PI控制。即先根據(jù)被控對象的特性和一般慣例確定比例系數(shù)和積分系數(shù)的整定范圍,再通過手動調(diào)節(jié)鼓風(fēng)機(jī)轉(zhuǎn)速記錄干燥室內(nèi)溫度變化曲線并進(jìn)行分析,最終確定PID算法中比例系數(shù)為0.4,積分系數(shù)為6。

PID數(shù)字控制部分程序如下:

3.3 上位機(jī)軟件設(shè)計

本系統(tǒng)采用北京亞控公司的組態(tài)王軟件完成對上位機(jī)監(jiān)測和控制界面的設(shè)計。上位機(jī)軟件實(shí)現(xiàn)對干燥室內(nèi)溫濕度等參數(shù)的實(shí)時顯示以及恒溫干燥溫度、濕度上限的設(shè)定,設(shè)計選用Access2010數(shù)據(jù)庫作為記錄的數(shù)據(jù)庫,便于數(shù)據(jù)的保存與分析。

應(yīng)用組態(tài)王軟件新建一個太陽能干燥監(jiān)測和控制系統(tǒng),選用單片機(jī)通信協(xié)議并通過RS 485接口實(shí)現(xiàn)與嵌入式處理器的通信。上位機(jī)軟件界面采取分區(qū)設(shè)計,界面由顯示區(qū)和操作區(qū)構(gòu)成。顯示區(qū)包括溫濕度、轉(zhuǎn)速、排氣扇狀態(tài)的實(shí)時顯示以及溫濕度變化趨勢圖。操作區(qū)可實(shí)現(xiàn)對恒溫干燥溫度和濕度上限的人工設(shè)定。上位機(jī)軟件界面如圖7所示。

4 運(yùn)行測試結(jié)果與分析

目前本文設(shè)計的嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)已經(jīng)在某農(nóng)場的牧草干燥作業(yè)中順利運(yùn)行了6個多月的時間。在前期的干燥作業(yè)中,在通過設(shè)置不同的溫濕度條件并對系統(tǒng)采集到的溫濕度數(shù)據(jù)以及對干燥物料品質(zhì)進(jìn)行分析研究的基礎(chǔ)上,確定最佳的干燥溫度與濕度上限以供后期規(guī)模化干燥作業(yè)參考。在系統(tǒng)實(shí)際運(yùn)行過程中,干燥室內(nèi)實(shí)際溫度值與設(shè)定值間的誤差能夠保持在0.5 ℃以內(nèi),較為理想。使用本系統(tǒng)進(jìn)行干燥的牧草在干燥過程中為最佳溫濕度條件的恒溫適濕干燥,芳香性氨基酸以及蛋白質(zhì)保存較好,因此干燥后的牧草適口性好、家畜的消化能攝入量高,即牧草的干燥品質(zhì)較好,且單位耗電量僅為0.15 kW·h/kg。表1是系統(tǒng)在2013年6月7日干燥作業(yè)中采集到的部分?jǐn)?shù)據(jù),系統(tǒng)設(shè)定干燥溫度為51℃,設(shè)定濕度上限為48%。

5 結(jié)語

本文詳細(xì)介紹了基于STM32和FreeRTOS的嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)的設(shè)計與實(shí)現(xiàn)。采用具有Contex-M3內(nèi)核的STM32嵌入式微處理器,使系統(tǒng)小型化,且便于提高性能以及與各種外設(shè)連接擴(kuò)展。將嵌入式實(shí)時操作系統(tǒng)FreeRTOS移植到STM32,使系統(tǒng)運(yùn)行更加穩(wěn)定,具有高實(shí)時性、抗干擾能力強(qiáng)等特點(diǎn)。系統(tǒng)整體造價較為低廉,宜于推廣使用,且經(jīng)實(shí)際生產(chǎn)應(yīng)用驗(yàn)證:采用本嵌入式太陽能干燥實(shí)時監(jiān)測和控制系統(tǒng)的干燥設(shè)備更加節(jié)能高效,干燥物料的品質(zhì)也有所提高。



評論


相關(guān)推薦

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

關(guān)閉