国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于STM32及PID-PWM的智能水溫監(jiān)控系統(tǒng)設(shè)計(jì)

2019-07-16 07:13曾鳳施明朝王艷萍陳應(yīng)松田亞鈴
關(guān)鍵詞:STM32單片機(jī)

曾鳳 施明朝 王艷萍 陳應(yīng)松 田亞鈴

摘要:以STM32F407ZGT6單片機(jī)作為控制核心,設(shè)計(jì)以集成DS18B20芯片的防水型水溫探測(cè)溫線作為溫度反饋傳感器,采用積分分離的比例(Proportional)、積分(Integral)、微分(Derivative)算法,即PID算法控制脈沖寬度調(diào)制(PWM)占空比進(jìn)行智能水溫閉環(huán)控制,同時(shí)用TFT液晶屏監(jiān)控控制過程。實(shí)驗(yàn)結(jié)果表明該系統(tǒng)能快速、準(zhǔn)確地進(jìn)行水溫控制,系統(tǒng)穩(wěn)定性良好。系統(tǒng)控制精度達(dá)到0.1 ℃,溫度波動(dòng)小于0.5 ℃。

關(guān)鍵詞:STM32單片機(jī);PID;PWM;水溫閉環(huán)控制

中圖分類號(hào):TP273文獻(xiàn)標(biāo)志碼:A

文章編號(hào):2095-5383(2019)02-0024-05

Abstract:STM32F407ZGT6 micro controller unit was used in this design as the control core, and a waterproof temperature sensitive device integrated with DS18B20 was used as the temperature feedback sensor. The separation integral PID control algorithm was used to adjust duty cycle of PWM for intelligent closed-loop control of water temperature, and the TFT LCD screen was used to monitor process. The experimental results show that the system can control the water temperature quickly and accurately, and it has good system stability. The accuracy of the system is up to 0.1 ℃,and the temperature shift is less than 0.5 ℃.

Keywords: STM32 micro controller unit; PID; PWM; closed-loop control of water temperature

水溫控制受外界環(huán)境影響大,精確模型難建立[1],由于加熱設(shè)備余熱及環(huán)境散熱等因素,加熱和制冷均為非穩(wěn)定過程[2]。趙娜等利用51單片機(jī)采用斷續(xù)ON-OFF控制水溫[3],王博實(shí)現(xiàn)了仿真條件下的PID算法水溫控制[4],文波等基于51單片機(jī)PID控制繼電器進(jìn)行溫度控制[2]。溫度控制環(huán)節(jié)是純滯后的一階大慣性環(huán)節(jié)[5],在要求控制精度、溫度上升速度及下降速度可控的情況下,51單片機(jī)片內(nèi)資源及運(yùn)行速度有限,不能滿足要求。ON-OFF控制系統(tǒng)振蕩大,穩(wěn)定性差。本系統(tǒng)以STM32單片機(jī)為控制核心,采用PID算法及PWM控制,以提高控制精度及穩(wěn)定性。

1 PID-PWM算法

1.1 PID算法

1.2 PWM算法

脈沖寬度調(diào)制(Pulse Width Modulation,PWM)是利用微處理器的數(shù)字輸出來對(duì)模擬電路進(jìn)行控制的一種有效的技術(shù),其原理圖如圖1所示[7]。本系統(tǒng)利用STM32的定時(shí)器14通道1的PWM輸出模式。設(shè)置定時(shí)器的計(jì)數(shù)頻率為1 MHz,重裝載置寄存器ARR的值設(shè)置為5 000,因而PWM周期為200 Hz。利用PID算法改變捕獲/比較寄存器CCRx的值,便可以改變PWM占空比。占空比為CCRx的值除以ARR的值。利用PMW輸出的IO邏輯便可以實(shí)時(shí)調(diào)節(jié)加熱器功率,實(shí)時(shí)加熱功率為PWM占空比乘以加熱器功率。

2 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)

本設(shè)計(jì)由STM32單片機(jī)最小系統(tǒng)、按鍵目標(biāo)溫度設(shè)置模塊、防水型DS18B20溫度檢測(cè)模塊、3.5 in(8.89 cm)TFT液晶顯示屏控制模塊、MOSFET控制的防水型加熱器模塊、串口通信模塊構(gòu)成。本系統(tǒng)是集水溫信號(hào)采集、處理、顯示、調(diào)節(jié)為一體的智能水溫閉環(huán)控制系統(tǒng),結(jié)構(gòu)框圖如圖2所示。

2.1 控制器選型

2.2 前向通道

本系統(tǒng)的前向通道主要由兩部分組成,由加、減兩個(gè)按鍵電路構(gòu)成的目標(biāo)溫度設(shè)定模塊以及以DS18B20傳感器為核心器件的溫度測(cè)量模塊。

2.2.1 目標(biāo)溫度設(shè)定模塊

目標(biāo)溫度設(shè)定模塊由兩個(gè)獨(dú)立按鍵控制,與STM32單片機(jī)的接口電路如圖3所示。其中,KEY1連接單片機(jī)的PE3口、KEY2連接單片機(jī)的PE2口。

目標(biāo)溫度設(shè)定采用軟件加硬件的方式,在軟件初始化程序中設(shè)定一個(gè)基準(zhǔn)溫度,兩個(gè)硬件按鍵KEY1、KEY2分別作為目標(biāo)溫度加、減鍵。每按一次“加鍵”,設(shè)定的目標(biāo)溫度值在基準(zhǔn)溫度上加0.1 ℃,并作為當(dāng)前的基準(zhǔn)溫度。每按一次“減鍵”,目標(biāo)溫度值就減0.1 ℃。目標(biāo)水溫最高可設(shè)置成100 ℃,最低可設(shè)置成0 ℃。

2.2.2 溫度測(cè)量模塊

采用DS18B20作為溫度傳感器。其測(cè)溫范圍為-55~125? ℃。在溫度為-10~85 ℃范圍內(nèi)的精度為±0.5? ℃。該傳感器采用單總線接口、僅需要一條口線即可實(shí)現(xiàn)微處理器與該芯片的雙向通信,抗干擾性強(qiáng)。其供電電壓范圍為3.0~5.5 V。測(cè)量結(jié)果以9~12位數(shù)字方式串行傳送。本系統(tǒng)配置為12位精度模式,最大轉(zhuǎn)換時(shí)間為750 ms。同時(shí)考慮到水溫控制的防水要求,采用了Raisym公司的不銹鋼防水型封裝的DS18B20溫線,如圖4(a)所示??刂齐娐啡鐖D4(b)所示,傳感器的數(shù)據(jù)線端口2連接單片機(jī)的PG9口。

2.3 后項(xiàng)通道

本系統(tǒng)的后項(xiàng)通道由供電電源、加熱器控制電路及加熱器組成。加熱器供電電源選用大疆悟1 V 2.0 TB47可充電電池,可供電壓為22.2~26 V??刂齐娐分饕?SD601A型號(hào)的NPN三極管與SUM110P0607L型號(hào)的MOSFET管組成,其中三極管的基級(jí)與單片機(jī)的F9端口相連,端口復(fù)用為TIM14_CH1 PWM模式。加熱器為防水U型24 V 500 W電阻絲。由于加熱器供電電源為24? V,單片機(jī)工作在3.3 V,所以采用PWM信號(hào)輸出控制NPN三極管的通斷,利用三極管集電極電壓控制大功率MOS管通斷作為加熱器的驅(qū)動(dòng)控制,進(jìn)而控制加熱功率。加熱器實(shí)物如圖5(a)所示,控制電路如圖5(b)所示。

2.4 人機(jī)交互通道

本系統(tǒng)的人機(jī)交互通道包括TFT液晶顯示模塊及利用STM32串口通信發(fā)送數(shù)據(jù)串口至PC端利用調(diào)試助手軟件顯示。本設(shè)計(jì)中采用兩種顯示,即用TFT液晶屏顯示設(shè)定溫度和當(dāng)前實(shí)際溫度,或使用串口打印方式監(jiān)測(cè)數(shù)據(jù)。用串口通信發(fā)送信息到上位機(jī)(PC),顯示目標(biāo)水溫、當(dāng)前溫度、溫度的偏差,PID的比例項(xiàng)、積分項(xiàng)、差分項(xiàng)輸出,PWM輸出。TFT顯示實(shí)物如圖6所示。使用串口打印方式監(jiān)測(cè)數(shù)據(jù)如圖7所示。

3 系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)

控制程序在Keil μVision5集成開發(fā)環(huán)境中編寫,用C語言編程。軟件程序包括系統(tǒng)初始化,按鍵信息采集處理,水溫采集、處理、顯示,控制信號(hào)調(diào)整輸出,其流程圖如圖8所示。

程序功能主要由以下幾部分組成:

1)系統(tǒng)初始化:TFT初始化、按鍵初始化、溫度傳感器初始化、PID參數(shù)初始化、目標(biāo)溫度初始化、PWM 輸出初始化,即將定時(shí)器14通道1配置為定時(shí)器PWM模式。

2)目標(biāo)溫度按鍵信息采集:定時(shí)采集兩個(gè)按鍵接口PE2、PE3口的電平信號(hào),當(dāng)有對(duì)應(yīng)鍵按下時(shí),修改目標(biāo)溫度。

3)溫度數(shù)據(jù)采集:定時(shí)采集溫度傳感器接口PG9的溫度信號(hào),獲得實(shí)時(shí)水溫。

4)大功率MOS管控制:根據(jù)設(shè)定的目標(biāo)溫度及溫度傳感器采集到的當(dāng)前溫度,利用PID控制算法,控制PWM信號(hào)的占空比,通過PF9口輸出PWM波控制加熱器電路。

5)數(shù)據(jù)顯示:編程將目標(biāo)溫度及實(shí)時(shí)溫度顯示在TFT上。利用printf()函數(shù)將溫度調(diào)節(jié)信息顯示在PC端串口助手軟件中。

4 系統(tǒng)調(diào)試與結(jié)構(gòu)分析

本系統(tǒng)在電路制作過程中采用模塊化硬件焊接調(diào)試方法,以提高制作效率。

實(shí)驗(yàn)對(duì)500 mL溫度低于設(shè)定溫度的自來水進(jìn)行實(shí)驗(yàn)。設(shè)定目標(biāo)溫度分別為30、50、70、80 ℃。設(shè)置系統(tǒng)PID比例系數(shù)KP為700、積分系數(shù)KI為300、微分系數(shù)KD為300。系統(tǒng)水溫控制的實(shí)驗(yàn)統(tǒng)計(jì)結(jié)果如圖9所示。實(shí)驗(yàn)結(jié)果表明溫度控制平滑,滿足控制要求。

實(shí)驗(yàn)結(jié)果表明:目標(biāo)溫度為30、50、70、80 ℃的超調(diào)量σ%分別為6.70%、2.00%、0.43%、0.00%,溫度越高超調(diào)量越低。分析其原因有:1)當(dāng)溫度達(dá)到或超過目標(biāo)溫度時(shí),雖然加熱器控制電路輸出為0,但是由于加熱器的余熱,會(huì)使水溫繼續(xù)上升,產(chǎn)生超調(diào);2)由于環(huán)境的影響,加熱過程中也伴隨著熱傳遞。水與環(huán)境溫度差越高、散熱越快。加熱棒余熱加熱與熱傳遞會(huì)相互抵消一部分,因而設(shè)定目標(biāo)溫度越高超調(diào)會(huì)慢慢降低。

5 結(jié)束語

本設(shè)計(jì)可以實(shí)現(xiàn)目標(biāo)水溫的設(shè)定、水溫的實(shí)時(shí)監(jiān)測(cè)、水溫的自動(dòng)化控制?,F(xiàn)采用自然冷卻的方式,冷卻速度較慢,今后可增加降溫控制電路,如半導(dǎo)體制冷。本控制方案適用于對(duì)溫度控制穩(wěn)定性高、要求超調(diào)量小的場(chǎng)景中,如家用熱水器控制、養(yǎng)殖魚池水溫控制等。

參考文獻(xiàn):

[1]王冠龍,崔靚,朱學(xué)軍.基于數(shù)字PID算法的溫度控制系統(tǒng)設(shè)計(jì)[J].傳感器與微系統(tǒng),2019,38(1):86-88,96.

[2]文波,孟令軍,張曉春,等.基于增量式PID算法的水溫自動(dòng)控制器設(shè)計(jì)[J].儀表技術(shù)與傳感器,2015(12):113-116.

[3]趙娜,方圓.基于51單片機(jī)的智能水溫控制系統(tǒng)的設(shè)計(jì)[J].電腦迷,2018,112(11):150.

[4]王博,曾方,程一哲.基于PID算法的水溫控制系統(tǒng)[J].電腦知識(shí)與技術(shù),2018,14(27):242-243.

[5]劉向東,高軍,楊樂民.一種新的一階系統(tǒng)自調(diào)整模糊控制器[J].哈爾濱理工大學(xué)學(xué)報(bào),2003,8(5):75-79.

[6]姜學(xué)軍,劉新郭,李曉靜.計(jì)算機(jī)控制技術(shù)[M].2版.北京:清華大學(xué)出版社,2009.

[7]張洋,劉軍,嚴(yán)漢宇,等.精通STM32F4(庫函數(shù)版)[M].北京:北京航空航天大學(xué)出版社,2015.

[8]ST Microelectronics Corporation.STM32F407xx/STM32F407xx Datasheet [EB/OL].(2016-09-01)[2018-1230].https://www.st.com/resource/en/datasheet/stm32f407zg.pdf.

猜你喜歡
STM32單片機(jī)
基于STM32芯片的移動(dòng)機(jī)器人的避障研究
基于STM32的兩輪自平衡遙控小車設(shè)計(jì)
寻乌县| 稷山县| 奉新县| 彭山县| 安仁县| 宁海县| 建平县| 伊吾县| 名山县| 阿鲁科尔沁旗| 崇左市| 抚松县| 蓬安县| 长治县| 定结县| 昭苏县| 池州市| 文登市| 三亚市| 徐水县| 汾阳市| 综艺| 淮安市| 高陵县| 贡觉县| 珠海市| 安义县| 黄骅市| 大邑县| 即墨市| 佛教| 城口县| 苏尼特左旗| 沈阳市| 巫溪县| 高雄市| 徐汇区| 津市市| 郁南县| 临夏县| 庐江县|