溫度照度監測儀控制器算法及上下位軟件設計
溫度照度監測儀以STC12C5A60S2作主控制器,該芯片自帶兩路PWM控制器、兩個定時器、十位AD轉換器等。溫度照度監測儀系統光照度調整使用增量式的PID算法,根據變換量按比例調整PWM定時器CCAP1L、CCAP1H的值,輸出不同占空比的PWM信號調節LED的照度。其中PID如式(10)式中:
Δuk為控制量的增量;k為采樣序號;ek為第k次采樣的輸入偏差值;ek-1為第k-1次采樣的輸入偏差值。
溫度照度監測儀對光照度監控分兩種狀態:1)如果當前值小于輸入的設定值,則PWM波形占空比增加,輸出光照度增大,直到輸出值等于設定值。2)如果輸出值大于或等于設定值,則PWM輸出占空比減小,輸出光照度減小,直到輸出值等于設定值。通過不斷的檢測與調整,讓光照度保持恒定。溫度照度監測儀中LED光源板的溫度通過溫度傳感器檢測,當檢測溫度高于設定溫度時,啟動降溫風扇。當檢測溫度低于或等于設定溫度時,停止降溫風扇。
溫度照度監測儀的系統軟件設計:本監測系統的軟件采用Labview編程,Labview是專為數據采集、儀器控制、數據分析與數據表達的圖形化編程環境,它是一個開放的開發環境,具有PCI、RS-232/485、USB等各種儀器通訊總線標準的所有功能函數,可以利用這些函數與不同總線標準接口的數據采集硬件交互工作。本系統采用NI_VISA串口Serial函數來訪問和控制串口,從而實現串口通信功能。首先,利用VISA Con2figureSerial Port. vi進行串口初始化,然后利用VISA write.vi向寫緩沖區發送數據讀取指令,最后利用VISAread. vi以字符串形式讀取數據緩沖區的8位二進制數,并利用HexadecimalString To Number節點將8位字符串數據轉變成數字型數據,提供給控制電路。上位機軟件完成如下功能:初始化系統;根據溫室控制要求向下位機發送控制指令;控制串口和下位機的收發;判斷下位機數據采集狀態并發送相應控制指令;讀取和解析來自下位機的數據;顯示實時或非實時數據;保存數據;根據環境需求控制系統狀態。下位機軟件設計下位機軟件采用C51語言編寫。完成的功能有:根據上位機控制指令控制下位機的光環境參數采集、環境參數的給定值;向上位機發送環境參數;根據環境參數與設定值調控光環境。
以上即為溫度照度監測儀的控制算法和上下位軟件的設計,希望對研究溫度照度監測儀等電子電器原件的人員有所幫助。