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