一種嵌入式的太陽(yáng)能干燥實(shí)時(shí)監(jiān)控系統(tǒng)的設(shè)計(jì)方案
2.4 RS 485通信電路設(shè)計(jì)
太陽(yáng)能干燥設(shè)備需要長(zhǎng)時(shí)間工作在露天環(huán)境下,對(duì)通信電路的距離和抗干擾要求較高。針對(duì)此項(xiàng)要求,實(shí)時(shí)嵌入式太陽(yáng)能干燥監(jiān)測(cè)和控制系統(tǒng)采用SP485R芯片組建RS 485 通信控制電路實(shí)現(xiàn)與PC 上位機(jī)的通信。
SP485R應(yīng)用電路如圖4所示。
3 嵌入式太陽(yáng)能干燥監(jiān)測(cè)和控制系統(tǒng)軟件設(shè)計(jì)
3.1 FreeRTOS在STM32上的移植
太陽(yáng)能干燥設(shè)備進(jìn)行干燥作業(yè)時(shí)對(duì)干燥室內(nèi)的溫濕度要求較高:溫度過(guò)高會(huì)影響干燥物料的品質(zhì),溫度過(guò)低或濕度過(guò)高又會(huì)降低干燥效率。這要求監(jiān)測(cè)和控制系統(tǒng)應(yīng)具有高實(shí)時(shí)性和可靠的穩(wěn)定性,能夠快速反應(yīng)并準(zhǔn)確動(dòng)作,使干燥室內(nèi)溫度能夠維持恒定且保證濕度在限定范圍之內(nèi)?;诖耍瑢reeRTOS實(shí)時(shí)操作系統(tǒng)移植到STM32嵌入式處理器以滿足設(shè)計(jì)需求。
FreeRTOS的實(shí)現(xiàn)主要由list.c、queue.c、croutine.c和tasks.c4個(gè)文件組成。list.c是一個(gè)鏈表的實(shí)現(xiàn),主要供內(nèi)核調(diào)度器使用;queue.c是一個(gè)隊(duì)列的實(shí)現(xiàn),支持中斷環(huán)境與信號(hào)量控制;croutine.c和task.c是兩種任務(wù)的組織實(shí)現(xiàn)。對(duì)于croutine,各個(gè)任務(wù)共享同一個(gè)堆棧,使RAM的需求進(jìn)一步縮小,也正因如此,他的使用受到相對(duì)嚴(yán)格的限制。而task則是傳統(tǒng)的實(shí)現(xiàn),各個(gè)任務(wù)使用各自的堆棧,支持完全的搶占式調(diào)度。FreeRTOS在STM32的移植大致由3個(gè)文件實(shí)現(xiàn),一個(gè)。h文件定義編譯器相關(guān)的數(shù)據(jù)類型和中斷處理的宏定義;一個(gè)。c文件實(shí)現(xiàn)任務(wù)的堆棧初始化、系統(tǒng)心跳的管理以及任務(wù)切換的請(qǐng)求;一個(gè)。s文件實(shí)現(xiàn)具體的任務(wù)切換,具體如圖5所示。
FreeRTOS 下可實(shí)現(xiàn)創(chuàng)建任務(wù)、刪除任務(wù)、掛起任務(wù)、恢復(fù)任務(wù)、設(shè)定任務(wù)優(yōu)先級(jí)、獲得任務(wù)相關(guān)信息等功能,在嵌入式太陽(yáng)能干燥實(shí)時(shí)監(jiān)測(cè)和控制系統(tǒng)的程序設(shè)計(jì)中調(diào)用xTaskCreate()函數(shù)創(chuàng)建監(jiān)測(cè)、通信、控制三個(gè)任務(wù),程序任務(wù)按設(shè)定優(yōu)先級(jí)順序執(zhí)行實(shí)現(xiàn)既定功能。
監(jiān)測(cè)任務(wù)(vmonitorTask)實(shí)現(xiàn)對(duì)干燥室內(nèi)溫濕度以及鼓風(fēng)機(jī)轉(zhuǎn)速的實(shí)時(shí)監(jiān)測(cè)。嵌入式處理器將通過(guò)參數(shù)傳感器獲得的實(shí)時(shí)參數(shù)進(jìn)行保存。
通信任務(wù)(vcommunicateTask)實(shí)現(xiàn)上位機(jī)與嵌入式處理器的實(shí)時(shí)通信。嵌入式處理器接收PC上位機(jī)發(fā)送的干燥溫度和濕度上限值,并將收集到的溫濕度以及鼓風(fēng)機(jī)轉(zhuǎn)速參數(shù)發(fā)送至PC上位機(jī)進(jìn)行實(shí)時(shí)顯示。
程序任務(wù)執(zhí)行框圖如圖6所示。
3.2 PID控制的應(yīng)用
太陽(yáng)能干燥設(shè)備運(yùn)行時(shí)的系統(tǒng)參數(shù)無(wú)法通過(guò)有效的測(cè)量手段來(lái)獲得,從而無(wú)法建立精確的數(shù)學(xué)模型。因此,系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須依靠工程經(jīng)驗(yàn)和現(xiàn)場(chǎng)調(diào)試來(lái)確定。在綜合考慮多種控制理論可行性并參照工程實(shí)踐的基礎(chǔ)上,嵌入式太陽(yáng)能干燥實(shí)時(shí)監(jiān)測(cè)和控制系統(tǒng)選用數(shù)字PID控制技術(shù)來(lái)實(shí)現(xiàn)干燥室的恒溫控制。
嵌入式處理器以上位機(jī)設(shè)定干燥溫度作為系統(tǒng)控制目標(biāo)量,以干燥室內(nèi)實(shí)時(shí)溫度作為輸入量調(diào)用PID算法。PID 輸出量作為變頻器工作頻率對(duì)鼓風(fēng)機(jī)轉(zhuǎn)速進(jìn)行實(shí)時(shí)調(diào)節(jié),從而實(shí)時(shí)增減送入熱風(fēng)量以完成對(duì)干燥室的恒溫控制。
考慮到溫度調(diào)節(jié)的特性要求,本系統(tǒng)采用PI 控制。即先根
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論