新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于機智云的STC單片機水溫智能控制系統的設計與實現

        基于機智云的STC單片機水溫智能控制系統的設計與實現

        作者:張吉圭(貴州城市職業學院,貴陽 550025) 時間:2021-11-26 來源:電子產品世界 收藏
        編者按:隨著物聯網技術的不斷發展,信息化水平不斷提高,傳統控制結合現代化的智能網聯技術是現代智能物聯網控制技術的發展方向。設計一種物聯網的水溫控制系統,包括機智云物聯網平臺,DS18B20水溫傳感器、水溫主控制器和通信模塊STC單片機、ESP8266無線模塊等。系統通過采集當前水溫的狀態和按鍵的控制狀態,采用PID算法得到控制值,輸出信息給加熱驅動和直流電機模塊,實現水溫的加熱,同時通過并口和通信模塊連接,通信模塊通過串口和ESP8266連接,ESP8266通過WiFi連接物聯網平臺,實現溫度的遠程監測和控制。

        作者簡介:張吉圭(1987—),男,侗族,貴州貴陽,講師,工程師,研究方向:嵌入式技術,物聯網技術。

        本文引用地址:http://www.104case.com/article/202111/429916.htm

        摘要:在實際的應用案例中,抗干擾性和穩定性好,控制精度達到0.1度,產生了工程意義。

        隨著控制技術、測量儀器、物聯網技術的發展,在石油、能源、電力及化工生產過程中,應用了越來越多先進的方法、設備和控制測量技術。在眾多的先進測量控制技術中,如何高精度控制水溫成為焦點課題之一,為越來越多的機構所重視。在環境惡劣或溫度較高等場景,為了保證生產過程正常安全進行,提高產品的質量和數量,同時減輕工人的勞動強度和節約能源,及時準確地得到溫度信息并對其進行適時的控制,是許多工業場合重要的環節。一種典型的STC 單片機控制系統結合物聯網技術實現溫度的遠程監測和控制,為實現水溫的智能化控制提供了可能。

        1   系統總體設計

        系統硬件包括STC 單片機控制電路、通信電路、液晶顯示電路、加熱驅動電路、溫度均勻攪拌裝置和無線WiFi 模塊組成的系統硬件裝置。系統硬件模塊連接如圖1 所示。系統軟件主要采用C 語言編寫,通過C語言和Keil 搭建軟件編程環境,物聯網平臺和硬件電路開發板作為調試工具來完成系統設計。

        1637905985341771.png

        2   關鍵電路設計

        2.1系統主控模塊和通信模塊

        在智能化控制方案中,系統采用兩個STC 單片機搭建方案,一個STC 單片機作為主控制器,負責信號的處理、顯示、輸出控制等。另一個STC 單片機作為通信控制器和 無線WiFi 連接,解決通信中通信協議數據量大和控制器RAM 小的問題。其中 無線WiFi 器件為核心的數據傳輸模塊,連接物聯網平臺,數據通過通信鏈路實現傳輸,在物聯網平臺上或終端進行數據監測。其硬件原理圖如圖2所示。

        image.png

        圖2 主控模塊和通信模塊硬件原理圖

        2.2 系統工作電源及最小系統工作原理圖

        系統工作電源采用直流穩壓電源,利用變壓器把220 V 交流變直流,通過橋式鎮流、濾波、穩壓器件LM7805 和LM1117RS-3.3 分別得到5 V 和3.3 V 的工作電源。直流加熱電源采用集成24 V/200 W 的開關電源供電。5 V 和3.3 V 的電源分別為STC 單片機最小系統和 無線WiFi 模塊供電,其中STC 單片機最小系統包括電源電路、復位電路、時鐘電路及下載電路。硬件原理圖如圖3 所示。

        1637906116274943.png

        圖3 系統工作電源及最小系統工作原理圖

        2.3 信號采集及電機攪拌原理圖

        溫度采集采用DS18B20 傳感器對水溫進行采集,加熱系統采用直流加熱棒進行加熱。在整個加熱和水溫采集環節,發現采集的溫度點不一樣,得出溫度控制參數不一致,經過不斷實驗和發現,溫度在加熱過程中存在不均勻現象,會有不同溫區存在。為解決水溫不均勻的現象,設計一種攪拌裝置,在水溫加熱過程中周期性對加熱區的水進行攪拌,使得DS18B20 能夠采集到較準確的水溫值,在整定PID 過程中能夠得到更為準確的PID 參數,進而提高系統穩定性和可靠性。硬件原理圖如圖4 所示。

        1637906173777314.png

        圖4 信號采集及電機攪拌硬件原理圖

        2.4 信號輸出驅動及液晶顯示電路原理圖

        系統采用24 V/200 W 直流電對加熱棒進行加熱,加熱棒的溫度直接影響水的溫度,因此控制加熱棒溫度就能控制水的溫度。設計一種PWM(脈寬調制)信號對直流加熱棒的驅動電壓加熱時間進行控制,進而控制加熱的熱能,PWM 信號是實際溫度與設定溫度的差值通過PID 計算得到的一個控制值,能夠精確控制溫度信號。為使控制器的PWM 輸出能夠控制24 V/200 W 的驅動信號,用SSR 單項固態繼電器設計了輸出驅動電路,經反復實驗表明,該驅動電路能夠滿足系統的要求。其顯示部分用帶中文字庫的字符液晶ST7920 控制的12864 顯示溫度數據和溫度設定,并實現溫度曲線的實時繪制和溫度控制時間的顯示。其硬件原理圖如圖5所示。

        1637906251531899.png

        圖5 信號輸出驅動及液晶顯示電路原理圖

        3   軟件流程架構及算法

        隨著通信技術的發展,的功能越來越強大,有代表性的編譯軟件有Keil、IAR、CodeWarrior 等。代碼語言有匯編語言、C 語言、Java 語言等。C 語言具有良好的邏輯及功能性,本次設計選擇作為主控制器,編程語言選用C 語言,編譯軟件選用軟件Keil。

        3.1 系統軟件設計總體流程圖

        整體系統軟件設計是由系統中不同功能模塊整合在一起實現系統功能。系統中包括PWM 輸出程序設計、PID 溫度控制程序、按鍵掃描程序、液晶顯示驅動程序、WiFi 模塊通信程序、報警電路、DS18B20 溫度傳感驅動程序及電機驅動攪拌裝置。根據軟件框架圖,設計程序流程圖,為程序的功能實現、算法編碼、軟硬件調試、后期維護提供條件。程序總體流程圖如圖6 所示。

        1637906319536873.png

        圖6 程序總體流程圖

        3.2 系統核心控制和通信算法理論

        PID 溫度控制是一種成熟技術,具有結構簡單、易于理解和實現的特點。在工業控制中90% 以上的控制系統回路都具有PID 結構。PID 調節將設定值W 與實際值y 進行比較構成偏差,并將其比例、積分、微分通過線性組合構成控制量。采用PID 控制效果的好壞很大程度上取決于PID 三個控制參數的確定。PID 控制主要構成如圖7 所示。

        1637906386511288.png

        圖7 模擬PID控制

        PID控制的動態方程為:

        1637906450614378.png

        其中,Kp 為調節器的比例放大系數;Ki 為積分時間常數;Kd 為微分時間常數。

        水溫系統的智能控制采用PID 增量式算法,根據實驗結果和數據,采用先比例再積分,最后微分的實驗湊試法進行PID 參數整定。比例系數的整定取消積分和微分的作用,采用純比例控制,將比例系數從小到大調節,觀察系統的響應,直到響應速度快且有一定范圍的超調,得出比例系數。積分部分的整定,如果系統的靜態差達不到系統要求,這時需加入積分,整定時積分系數由大到小逐漸遞減,觀察輸出,直至系統靜態誤差減小或消除,得出積分系數。微分系數的整定,如系統通過比例和積分調節都不能達到要求,需加入微分系數,同樣,整定時使微分系數從小到大逐漸增加,觀察超調量和穩定性,同時微調比例系數和微分系數,觀察系統的輸出響應、超調量和穩定性。通過不斷實驗和整定,電源為200 W 直流加熱系統,加熱0.5 升的純凈水,在溫度變化為20 ℃時,超調量不超過0.1 ℃,得出PID 的比例系數為19,積分系數為0.036,微分系數為0.8,能夠使PWM 輸出達到系統控制要求。

        智能系統,通信部分主要是STC 單片機之間的通信、STC 單片機和ESP8266 WiFi 的通信,以及ESP8266 WiFi 和機智云之間的通信。由于STC 單片機模擬了PWM 的定時輸出,如果利用串口進行通信,會出現不穩定現象,為避免這種現象,STC 單片機之間的通信采用并行口,結合P15、P16 實現并口通信協議,協議內容如表1 所示。STC 單片機通信控制從P0 端口接收到溫度控制器傳輸的數據后,用串口連接ESP8266WiFi 模塊,ESP8266 WiFi 模塊連接當前環境的路由器熱點,與機智云服務器建立TCP 連接,進行數據傳輸。同時,手機終端或WEB 終端發送控制命令,通過命令數據→機智云服務器→ ESP8266 WiFi → STC 單片機通信控制→ STC 單片機控制系統的通信流程,對溫度進行遠程監控。

        1637906556683441.png

        4   實驗數據結果

        根據軟硬件測試,系統自檢正常,溫度顯示正常,通信正常。設定STC 單片機控制水溫在一定范圍內,對整體系統進行測試,在20 ~ 60 ℃范圍內實現多組設定,溫度控制實驗效果如圖8 所示。

        1637906600889161.png

        圖8 溫度控制實驗效果

        通過實驗結果分析,每個測試的目標溫度反映實際和誤差,在相同測試環境下,將溫度計和溫度采集模塊所測得溫度進行比對,將數值記錄得到表2,從而得到標度誤差。

        1637906677299477.png

        5   結束語

        設計以STC 單片機結合增量式PID、PWM 脈寬輸出、機智云物聯網平臺,完成了系統軟硬件設計,經過綜合調試和測試,驗證了該遠程控制系統軟硬件設計結構合理,性能可靠,操作方便。由于時間和實驗條件限制,該系統設計仍有一些缺點和不足,沒有采用更高性能的處理器來完成硬件和軟件設計,未來有待進一步完善。

        參考文獻:

        [1] 劉紅梅,譚傳武.基于AVR單片機的監測系統設計[J].電子設計程,2021,13(29):66-71.

        [2] 郝結來 ,王子權.基于STM32的多通道溫濕度測量儀設計[J].電子設計工程,2021,11(29):74-79.

        [3] 李杉,庹先國,張貴宇,等.基于STM32的多路溫度采集系統設計[J].四川理工學院學報(自然科學版),2018,31(3):49-53.

        [4] 田二林,朱付保,張永霞,等.基于DSP的農田土壤信息采集器的改進設計[J].農機化研究,2020(6): 216-219.

        [5]張軍,李亞民.基于無人機的空氣質量監測系統設計[J].電子設計工程,2019,27(21):85-88.

        [6] 張興超.智能灌溉遠程監控系統設計[J].中國科技信息,2019(24):58-59.

        [7] 張鑫,許曉平.基于STM32的花園遠程智能灌溉監控系統[J].信息技術,2020,44(8):89-92,97.

        [8] 劉悅婷,李曉斌,孫偉剛,等.基于單片機多功能抽水灌溉系統的設計[J].軟件,2020,41(12):42-44.

        [9] 王立剛.一種基于STC89C52和AD590的溫度測控系統設計[J].物聯網技術,2019,9(6):20-21.

        (本文來源于《電子產品世界》雜志2021年10月期)



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 衢州市| 喜德县| 陈巴尔虎旗| 修文县| 龙川县| 浙江省| 锦州市| 白朗县| 高平市| 鄄城县| 白河县| 沽源县| 建湖县| 东阳市| 白城市| 渑池县| 涪陵区| 临邑县| 博爱县| 鹤岗市| 疏勒县| 鲁甸县| 柳州市| 平舆县| 濮阳市| 邯郸县| 嘉义市| 比如县| 遂平县| 礼泉县| 洛阳市| 尖扎县| 许昌县| 石景山区| 罗定市| 德昌县| 陇南市| 乌拉特中旗| 甘孜县| 马边| 沈阳市|