基于STM32和FreeRTOS的嵌入式太陽能干燥實時監(jiān)測和
3 嵌入式太陽能干燥監(jiān)測和控制系統(tǒng)軟件設計
太陽能干燥設備進行干燥作業(yè)時對干燥室內的溫濕度要求較高:溫度過高會影響干燥物料的品質,溫度過低或濕度過高又會降低干燥效率。這要求監(jiān)測和控制系統(tǒng)應具有高實時性和可靠的穩(wěn)定性,能夠快速反應并準確動作,使干燥室內溫度能夠維持恒定且保證濕度在限定范圍之內。基于此,將FreeRTOS實時操作系統(tǒng)移植到STM32嵌入式處理器以滿足設計需求。
FreeRTOS的實現主要由list.c、queue.c、croutine.c和tasks.c4個文件組成。list.c是一個鏈表的實現,主要供內核調度器使用;queue.c是一個隊列的實現,支持中斷環(huán)境與信號量控制;croutine.c和task.c是兩種任務的組織實現。對于croutine,各個任務共享同一個堆棧,使RAM的需求進一步縮小,也正因如此,他的使用受到相對嚴格的限制。而task則是傳統(tǒng)的實現,各個任務使用各自的堆棧,支持完全的搶占式調度。FreeRTOS在STM32的移植大致由3個文件實現,一個.h文件定義編譯器相關的數據類型和中斷處理的宏定義;一個.c文件實現任務的堆棧初始化、系統(tǒng)心跳的管理以及任務切換的請求;一個.s文件實現具體的任務切換,具體如圖5所示。
FreeRTOS下可實現創(chuàng)建任務、刪除任務、掛起任務、恢復任務、設定任務優(yōu)先級、獲得任務相關信息等功能,在嵌入式太陽能干燥實時監(jiān)測和控制系統(tǒng)的程序設計中調用xTaskCreate()函數創(chuàng)建監(jiān)測、通信、控制三個任務,程序任務按設定優(yōu)先級順序執(zhí)行實現既定功能。
監(jiān)測任務(vmonitorTask)實現對干燥室內溫濕度以及鼓風機轉速的實時監(jiān)測。嵌入式處理器將通過參數傳感器獲得的實時參數進行保存。
通信任務(vcommunicateTask)實現上位機與嵌入式處理器的實時通信。嵌入式處理器接收PC上位機發(fā)送的干燥溫度和濕度上限值,并將收集到的溫濕度以及鼓風機轉速參數發(fā)送至PC上位機進行實時顯示。
控制任務(vcontrolTask)實現干燥室內的溫濕度控制。PC上位機設定的干燥溫度作為系統(tǒng)控制目標量,參數傳感器測得的實時溫度作為輸入量調用PID算法,輸出量作為變頻器工作頻率調節(jié)鼓風機轉速實現干燥室的恒溫控制。當干燥室內濕度超過PC上位機設定的濕度上限時,繼電器控制排氣扇動作完成過濕廢氣的排空作業(yè)。
程序任務執(zhí)行框圖如圖6所示。
3.2 PID控制的應用
太陽能干燥設備運行時的系統(tǒng)參數無法通過有效的測量手段來獲得,從而無法建立精確的數學模型。因此,系統(tǒng)控制器的結構和參數必須依靠工程經驗和現場調試來確定。在綜合考慮多種控制理論可行性并參照工程實踐的基礎上,嵌入式太陽能干燥實時監(jiān)測和控制系統(tǒng)選用數字PID控制技術來實現干燥室的恒溫控制。
嵌入式處理器以上位機設定干燥溫度作為系統(tǒng)控制目標量,以干燥室內實時溫度作為輸入量調用PID算法。PID輸出量作為變頻器工作頻率對鼓風機轉速進行實時調節(jié),從而實時增減送入熱風量以完成對于燥室的恒溫控制。
考慮到溫度調節(jié)的特性要求,本系統(tǒng)采用PI控制。即先根據被控對象的特性和一般慣例確定比例系數和積分系數的整定范圍,再通過手動調節(jié)鼓風機轉速記錄干燥室內溫度變化曲線并進行分析,最終確定PID算法中比例系數為0.4,積分系數為6。
PID數字控制部分程序如下:
3.3 上位機軟件設計
本系統(tǒng)采用北京亞控公司的組態(tài)王軟件完成對上位機監(jiān)測和控制界面的設計。上位機軟件實現對干燥室內溫濕度等參數的實時顯示以及恒溫干燥溫度、濕度上限的設定,設計選用Access2010數據庫作為記錄的數據庫,便于數據的保存與分析。
應用組態(tài)王軟件新建一個太陽能干燥監(jiān)測和控制系統(tǒng),選用單片機通信協議并通過RS 485接口實現與嵌入式處理器的通信。上位機軟件界面采取分區(qū)設計,界面由顯示區(qū)和操作區(qū)構成。顯示區(qū)包括溫濕度、轉速、排氣扇狀態(tài)的實時顯示以及溫濕度變化趨勢圖。操作區(qū)可實現對恒溫干燥溫度和濕度上限的人工設定。上位機軟件界面如圖7所示。
4 運行測試結果與分析
目前本文設計的嵌入式太陽能干燥實時監(jiān)測和控制系統(tǒng)已經在某農場的牧草干燥作業(yè)中順利運行了6個多月的時間。在前期的干燥作業(yè)中,在通過設置不同的溫濕度條件并對系統(tǒng)采集到的溫濕度數據以及對干燥物料品質進行分析研究的基礎上,確定最佳的干燥溫度與濕度上限以供后期規(guī)?;稍镒鳂I(yè)參考。在系統(tǒng)實際運行過程中,干燥室內實際溫度值與設定值間的誤差能夠保持在0.5 ℃以內,較為理想。使用本系統(tǒng)進行干燥的牧草在干燥過程中為最佳溫濕度條件的恒溫適濕干燥,芳香性氨基酸以及蛋白質保存較好,因此干燥后的牧草適口性好、家畜的消化能攝入量高,即牧草的干燥品質較好,且單位耗電量僅為0.15 kW·h/kg。表1是系統(tǒng)在2013年6月7日干燥作業(yè)中采集到的部分數據,系統(tǒng)設定干燥溫度為51℃,設定濕度上限為48%。
評論