新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于STM32和FreeRTOS的嵌入式太陽能干燥實時監測和

        基于STM32和FreeRTOS的嵌入式太陽能干燥實時監測和

        作者: 時間:2016-10-29 來源:網絡 收藏
        基于STM32和FreeRTOS的嵌入式太陽能干燥實時監測和控制系統設計

        3 監測和控制系統軟件設計

        3.1 上的移植

        設備進行干燥作業時對干燥室內的溫濕度要求較高:溫度過高會影響干燥物料的品質,溫度過低或濕度過高又會降低干燥效率。這要求監測和控制系統應具有高實時性和可靠的穩定性,能夠快速反應并準確動作,使干燥室內溫度能夠維持恒定且保證濕度在限定范圍之內。基于此,將實時操作系統移植到處理器以滿足設計需求。

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

        基于STM32和FreeRTOS的嵌入式太陽能干燥實時監測和控制系統設計

        FreeRTOS下可實現創建任務、刪除任務、掛起任務、恢復任務、設定任務優先級、獲得任務相關信息等功能,在實時監測和控制系統的程序設計中調用xTaskCreate()函數創建監測、通信、控制三個任務,程序任務按設定優先級順序執行實現既定功能。

        監測任務(vmonitorTask)實現對干燥室內溫濕度以及鼓風機轉速的實時監測。嵌入式處理器將通過參數傳感器獲得的實時參數進行保存。

        基于STM32和FreeRTOS的嵌入式太陽能干燥實時監測和控制系統設計

        通信任務(vcommunicateTask)實現上位機與嵌入式處理器的實時通信。嵌入式處理器接收PC上位機發送的干燥溫度和濕度上限值,并將收集到的溫濕度以及鼓風機轉速參數發送至PC上位機進行實時顯示。

        基于STM32和FreeRTOS的嵌入式太陽能干燥實時監測和控制系統設計

        控制任務(vcontrolTask)實現干燥室內的溫濕度控制。PC上位機設定的干燥溫度作為系統控制目標量,參數傳感器測得的實時溫度作為輸入量調用PID算法,輸出量作為變頻器工作頻率調節鼓風機轉速實現干燥室的恒溫控制。當干燥室內濕度超過PC上位機設定的濕度上限時,繼電器控制排氣扇動作完成過濕廢氣的排空作業。

        基于STM32和FreeRTOS的嵌入式太陽能干燥實時監測和控制系統設計

        程序任務執行框圖如圖6所示。

        基于STM32和FreeRTOS的嵌入式太陽能干燥實時監測和控制系統設計

        3.2 的應用

        太陽能干燥設備運行時的系統參數無法通過有效的測量手段來獲得,從而無法建立精確的數學模型。因此,系統控制器的結構和參數必須依靠工程經驗和現場調試來確定。在綜合考慮多種控制理論可行性并參照工程實踐的基礎上,嵌入式太陽能干燥實時監測和控制系統選用數字技術來實現干燥室的恒溫控制。

        嵌入式處理器以上位機設定干燥溫度作為系統控制目標量,以干燥室內實時溫度作為輸入量調用PID算法。PID輸出量作為變頻器工作頻率對鼓風機轉速進行實時調節,從而實時增減送入熱風量以完成對于燥室的恒溫控制。

        考慮到溫度調節的特性要求,本系統采用PI控制。即先根據被控對象的特性和一般慣例確定比例系數和積分系數的整定范圍,再通過手動調節鼓風機轉速記錄干燥室內溫度變化曲線并進行分析,最終確定PID算法中比例系數為0.4,積分系數為6。

        PID數字控制部分程序如下:

        基于STM32和FreeRTOS的嵌入式太陽能干燥實時監測和控制系統設計

        3.3 上位機軟件設計

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

        應用組態王軟件新建一個太陽能干燥監測和控制系統,選用單片機通信協議并通過RS 485接口實現與嵌入式處理器的通信。上位機軟件界面采取分區設計,界面由顯示區和操作區構成。顯示區包括溫濕度、轉速、排氣扇狀態的實時顯示以及溫濕度變化趨勢圖。操作區可實現對恒溫干燥溫度和濕度上限的人工設定。上位機軟件界面如圖7所示。

        基于STM32和FreeRTOS的嵌入式太陽能干燥實時監測和控制系統設計

        4 運行測試結果與分析

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



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 诏安县| 朔州市| 盐亭县| 桓仁| 澄城县| 塘沽区| 巧家县| 宝兴县| 柘荣县| 大足县| 澄城县| 庆城县| 咸阳市| 敖汉旗| 辽中县| 桦甸市| 侯马市| 普陀区| 河北区| 黄大仙区| 景泰县| 陈巴尔虎旗| 乡城县| 汝南县| 宁海县| 泾源县| 广饶县| 陈巴尔虎旗| 民勤县| 阳山县| 佛学| 龙门县| 板桥市| 望奎县| 翁源县| 秦安县| 喀什市| 裕民县| 宿州市| 卫辉市| 商丘市|