溫箱溫度控制設計
3 系統軟件設計
本文設計的軟件部分主要包括實(shí)現溫度的采集、顯示和控制三大部分。本文引用地址:http://dyxdggzs.com/article/159310.htm
如圖8所示,當采集溫箱溫度的時(shí)候,系統通過(guò)驅動(dòng)程序設置好溫度傳感器的轉化公式來(lái)實(shí)現對溫度的采集。當采集的溫度低于目標溫度的時(shí)候,通過(guò)對加熱絲進(jìn)行加熱,實(shí)現加熱操作;當采集的溫度高于目標溫度的時(shí)候,通過(guò)控制壓縮機,實(shí)現降溫操作;并將溫箱的溫度顯示出來(lái),從而使溫箱的溫度達到設定的目標值,實(shí)現溫箱溫度控制。
3.1 溫度的采集
當將要采集溫度數據時(shí),MSP430F149將通過(guò)溫度傳感器采集溫度,所用到的函數有:
(1)函數名稱(chēng):ReadTemp,功能:從溫度傳感器的ScratchPad讀取溫度轉換結果,返回值:讀取的溫度數值。
(2)函數名稱(chēng):uint DolConvert(void),功能:控制溫度傳感器完成一次溫度轉換,返回值:測量的溫度數值。
3.2 溫箱的溫度控制
在實(shí)現溫度控制的時(shí)候根據PID控制算法,計算出控制量,具體實(shí)現過(guò)程中所要用到的部分函數如下:
char Read_Temperature(void)//讀取溫度
void delay(unsigned char time)//延時(shí)時(shí)間以12M晶振為準,延時(shí)時(shí)間為30us×time
void write_bit(unsigned char bitval)//寫(xiě)一位數據子程序
unsigned char read_bit()//讀一位數據子程序
void get_temper()//獲取溫度子程序
unsigned int PIDCalc(struct PID*PP,unsignedint NextPoint)//PID計算
compare_temper()//溫度比較處理子程序
void display()//將占空比溫度轉化為單個(gè)字符顯示占空比和測得到的溫度
3.3 溫度的顯示
在溫度的顯示過(guò)程中所要用到的函數有:
Void WriteCommand(unsigned char wdata)//向數碼管寫(xiě)入命令;
Void WriteData(unsigned char wdata)//向數碼管寫(xiě)入數據;
顯示溫度的函數:
WriteDataLcd(0x30+ADC_CH0%1 000/100);//顯示百位;
WriteDataLcd(0x30+ADC_CH0%100/10);//顯示十位;
WriteDataLcd(0x30+ADC_CH0%10);//顯示個(gè)位;
WriteDataLcd(0x30+ADC_CH0%1);//顯示十分位;
4 結論
基于單片機MSP430F149的溫箱溫度采集和控制系統是以單片機為核心的軟硬件平臺的嵌入式系統。通過(guò)使用單片機、PT100溫度傳感器、數碼管顯示電路搭建硬件平臺,使用IAR Embedded Workbench開(kāi)發(fā)環(huán)境,C語(yǔ)言編程實(shí)現,設計出了一個(gè)基于嵌入式技術(shù)的溫箱溫度控制系統。系統體積小巧,電路連接簡(jiǎn)單,擴展性良好,可以方便地進(jìn)行后續開(kāi)發(fā),增加用戶(hù)所需功能。從而提高了設備的智能化程度,具有較高的工程實(shí)用價(jià)值。
評論