基于PID的STM32恒溫控制系統(tǒng)設計(共11頁)_第1頁
基于PID的STM32恒溫控制系統(tǒng)設計(共11頁)_第2頁
基于PID的STM32恒溫控制系統(tǒng)設計(共11頁)_第3頁
基于PID的STM32恒溫控制系統(tǒng)設計(共11頁)_第4頁
基于PID的STM32恒溫控制系統(tǒng)設計(共11頁)_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選優(yōu)質文檔-傾情為你奉上成績評定序號成績評審項目指 標評分1學習態(tài)度遵守紀律,學習認真;作風嚴謹,踏實肯干;善于與他人合作。202設計作品所設計作品能夠運行,功能完整,設計指標符合要求,作品能體現(xiàn)學生對所學單片機知識的綜合運用,有一定的創(chuàng)新。403設計報告系統(tǒng)設計方案科學、合理;數(shù)據(jù)采集、計算、處理方法正確。10系統(tǒng)硬件、軟件設計正確,分析合理,且與描述相一致,程序可靠運行,結論正確。20設計報告文本質量符合要求,格式規(guī)范,文理通順。10成績專心-專注-專業(yè)基于PID的STM32恒溫控制系統(tǒng)設計摘 要研究基于STM32單片機和溫濕度傳感器的恒溫智能控制系統(tǒng)。溫度具有時變性、非線性和多變量耦合

2、的特點。在溫度控制過程中,溫度的檢測往往滯后于溫度的調控,從而會引起溫度控制系統(tǒng)的溫度出現(xiàn)超調、溫度振蕩的現(xiàn)象。在設計中提出了基于增量式PID算法控制溫度的模型,系統(tǒng)采用低功耗的STM32作為主控芯片、DHT11數(shù)字式溫度傳感器和半導體溫度調節(jié)器。實驗結果表明,該系統(tǒng)能夠有效地維持系統(tǒng)地恒溫狀態(tài)。通過將數(shù)字PID算法和STM32單片機結合使用,整個控制系統(tǒng)的溫度控制精度也提高了,不僅僅滿足了對溫度控制的要求,而且還可以應用到對其他變量的控制過程中。所以,在該溫度控制系統(tǒng)的設計中,運用單片機STM32進行數(shù)字PID運算能充分發(fā)揮軟件系統(tǒng)的靈活性,具有控制方便、簡單和靈活性大等優(yōu)點。關鍵詞:STM

3、32,PID算法,恒溫控制,DHT11 1緒論溫度控制系統(tǒng)具有滯后性,時變性和非線性的特點。無法建立精準的數(shù)學模型,因此使用常規(guī)的線性控制理論無法達到滿意的控制效果。在嵌入式溫度控制系統(tǒng)中的關鍵是溫度的測量、溫度的控制和溫度的保持,溫度是工業(yè)控制對象中主要的被控參數(shù)之一。因此,嵌入式要對溫度的測量則是對溫度進行有效及準確的測量,并且能夠在工業(yè)生產中得廣泛的應用,尤其在機械制造、電力工程化工生產、冶金工業(yè)等重要工業(yè)領域中,擔負著重要的測量任務。在日常工作和生活中,也被廣泛應用于空調器、電加熱器等各種室溫測量及工業(yè)設備的溫度測量。但溫度是一個模擬量,需要采用適當?shù)募夹g和元件,將模擬的溫度量轉化為數(shù)

4、字量,才生使用計算機進行相應的處理。2 設計方案為了對于交流負載做到溫度精確,升溫采用控制雙向可控硅導通角度進行升溫控制。降溫采用PWM電壓控制,因為當前降溫采用制冷片,風扇等降溫手段,采用直流電壓供電方式,選用PWM控制使降溫更加精確。溫度采集選用溫度傳感器DHT11,好處為可做到高精度,整體框圖如圖1所示。圖1 系統(tǒng)框圖3硬件設計3.1 DHT11溫度傳感器DHT11數(shù)字溫濕度傳感器是一款含有已校準數(shù)字信號輸出的溫濕度復合傳感器。它應用專用的數(shù)字模塊采集技術和溫濕度傳感技術,確保產品具有枀高的可靠性與卓越的長期穩(wěn)定性。傳感器包括一個電阻式感濕元件和一個NTC測溫元件,并與一個高性能8位單片

5、機相連接。DHT11電路圖如圖2所示。圖2 HT11電路圖DHT11是通過單總線與微處理器通訊,只需要一根線,一次傳送40位數(shù)據(jù),高位先出。數(shù)據(jù)格式:8bit濕度整數(shù)數(shù)據(jù) + 8bit濕度小數(shù)數(shù)據(jù) + 8bint溫度整數(shù)數(shù)據(jù) + 8bit溫度小數(shù)數(shù)據(jù) + 8bit校驗位校驗算法:將濕度、溫度的整數(shù)小數(shù)累加,只保留低8位。微處理器(M0)與DHT11通信約定:主從結構,DHT11為從機,M0作為主機, 只有主機呼叫從機,從機才能應答。詳細流程:M0發(fā)送起始信號 -> DHT響應信號 -> DHT通知M0準備接受信號 -> DHT發(fā)送準備好的數(shù)據(jù) -> DHT結束信號-&g

6、t; DHT內部重測環(huán)境溫濕度數(shù)據(jù)并記錄數(shù)據(jù)等待下一次M0的起始信號。由流程可知,每一次M0獲取的數(shù)據(jù)總是DHT上一次采集的數(shù)據(jù),要想得到實時的數(shù)據(jù),連續(xù)兩次獲取即可,官方不建議連續(xù)多次讀取DHT,每次讀取的間隔時間大于5秒就足夠獲取到準確的數(shù)據(jù),上電時DHT需要1S的時間穩(wěn)定。3.2LCD屏幕顯示TFT-LCD 又叫做薄膜晶體管液晶顯示器,其管腳圖如圖3所示,其管腳在STM32F103中有相應的管腳對應。常用的液晶屏接口很多種,8 位、 9 位、16位、18 位都有。而常用的通信模式呢,主要有 6800 模式和 8080 模式兩種,今天呢,我們來講的是 8080 模式。如果大家接觸過 LCD

7、1602 或者 LCD12864 等,那么就會發(fā)現(xiàn) 8080 模式的時序呢,其實跟 LCD1602 或者 LCD12864 的讀寫時序是差不多的。8080 接口有 5 條基本的控制線和多條數(shù)據(jù)線,數(shù)據(jù)線的數(shù)量主要看液晶屏使用的是幾位模式,有 8 根、9 根、16 根、18 根四種類型。圖3 LCD引腳圖3.3 STM32單片機在STM32F105和STM32F107互連型系列微控制器之前,意法半導體已經推出STM32基本型系列、增強型系列、USB基本型系列、互補型系列;新系列產品沿用增強型系列的72MHz處理頻率。內存包括64KB到256KB閃存和 20KB到64KB嵌入式SRAM。新系列采用

8、LQFP64、LQFP100和LFBGA100三種封裝,不同的封裝保持引腳排列一致性,結合STM32平臺的設計理念,開發(fā)人員通過選擇產品可重新優(yōu)化功能、存儲器、性能和引腳數(shù)量,以最小的硬件變化來滿足個性化的應用需求。內核:ARM32位Cortex-M3 CPU,最高工作頻率72MHz,1.25DMIPS/MHz。單周期乘法和硬件除法。存儲器:片上集成32-512KB的Flash存儲器。6-64KB的SRAM存儲器。時鐘、復位和電源管理:2.0-3.6V的電源供電和I/O接口的驅動電壓。上電復位(POR)、掉電復位(PDR)和可編程的電壓探測器(PVD)。4-16MHz的晶振。內嵌出廠前調校的8

9、MHz RC振蕩電路。內部40 kHz的RC振蕩電路。用于CPU時鐘的PLL。帶校準用于RTC的32kHz的晶振。低功耗:3種低功耗模式:休眠,停止,待機模式。為RTC和備份寄存器供電的VBAT。調試模式:串行調試(SWD)和JTAG接口。DMA:12通道DMA控制器。支持的外設:定時器,ADC,DAC,SPI,IIC和UART。3個12位的us級的A/D轉換器(16通道):A/D測量范圍:0-3.6V。雙采樣和保持能力。片上集成一個溫度傳感器。2通道12位D/A轉換器:STM32F103xC,STM32F103xD,STM32F103xE獨有。最多高達112個的快速I/O端口:根據(jù)型號的不同

10、,有26,37,51,80,和112的I/O端口,所有的端口都可以映射到16個外部中斷向量。除了模擬輸入,所有的都可以接受5V以內的輸入。最多多達11個定時器:4個16位定時器,每個定時器有4個IC/OC/PWM或者脈沖計數(shù)器。2個16位的6通道高級控制定時器:最多6個通道可用于PWM輸出。2個看門狗定時器(獨立看門狗和窗口看門狗)。Systick定時器:24位倒計數(shù)器。2個16位基本定時器用于驅動DAC。最多多達13個通信接口:2個IIC接口(SMBus/PMBus)。5個USART接口(ISO7816接口,LIN,IrDA兼容,調試控制)。3個SPI接口(18 Mbit/s),兩個和IIS

11、復用。CAN接口(2.0B)。USB 2.0全速接口。SDIO接口。ECOPACK封裝:STM32F103xx系列微控制器采用ECOPACK封裝形式。4 軟件設計4.1 軟件流程圖 寫出軟件流程圖,并附加文字說明。本次軟件的編寫是在keil5上進行,界面如圖X,并在編寫后生成.Hex文件,然后用燒寫軟件FlyMcu(界面如圖X)將.Hex文件燒寫在開發(fā)版上,流程如圖X。圖X keil5軟件界面圖X 燒寫流程圖圖X 燒寫軟件本程序軟件功能是使用DHT11溫濕度檢測模塊檢測溫濕度,將檢測到的溫濕度送到STM32單片機,和單片機的攝入設定值進行比較,當檢測溫度高于設定值時,風扇開啟,同時可以用按鍵去

12、查看LCD屏幕上的溫濕度值及風扇轉速,程序結構如圖X。圖X 程序功能框架圖4.2 軟件程序主程序如下:#include "main.h"#include"lcd.h"#include"key.h"#include"delay.h"#include"zi.h"extern const unsigned char gImage_111;int main(void)static u8key;u8 yd;Delay_Init();/嘀嗒時鐘延時初始化Led_Init(); /LED燈初始化Beep_In

13、it();/蜂鳴器初始化Key_Init(); /按鍵初始化Uart_Init();/串口初始化/定時器3 PWM模式1初始化-周期1ms,占空比50%TIM3_PWMConfig(1000,72,500);LCD_Init();/LCD初始化/定時器4初始化-定時時間為1秒TIM4_Config(10000,72);/LCD顯示Draw_Text_8_16_Str(50,50,WHITE,BLACK,"姓名 學號");Draw_Text_8_16_Str(50,70,WHITE,BLACK,"李燕輝 ");Draw_Text_8_16_Str(50,9

14、0,WHITE,BLACK,"孟舒展 ");Draw_Text_8_16_Str(50,110,WHITE,BLACK,"王義濤 ");while(1)key= Get_Key_Val();if(key)yd = key;switch (yd)case1:Paint_Bmp(0,0,240,320,gImage_111); break;case2:PID_Ctrl(DHT11_ShowTAndH();break;case3:drawpidline(0x1111); Draw_Text_8_16_Str(50,50,RED,BLACK,"溫濕度機

15、轉速"); break; / drawpidline(0x1111);case 4:LCD_Clear(WHITE); break;default: ;5 實物調試與結果在調試時我們也是遇到了很多問題,在剛開始沒有緩存按鍵導致數(shù)據(jù)無法傳遞,在顯示溫度時發(fā)現(xiàn)溫度穩(wěn)定在某一數(shù)值保持不變,經程序檢查發(fā)現(xiàn)將按鍵的值緩存到寄存器中進行連續(xù)發(fā)送,此問題解決。在顯示圖片和文字時發(fā)現(xiàn)顯示效果不理想,圖片模糊、字體亂碼,排除問題時發(fā)現(xiàn)是字體取模方式以及圖片格式不對,將文字橫向取模調整成縱向取模和圖片格式改成.jpg后再次顯示,效果良好。最終調試結果如圖X,圖X,圖X,圖X,圖X,圖X 上電初始圖圖X 清屏圖溫濕度顯示及轉速波形溫度低于設定值時風扇停止轉動總 結 本次實訓持續(xù)兩周左右,在這期間我們對更高一級的單片機STM32的認知從無到有,學習了這種單片機的編程思路

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論