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