王志海
摘 要:本文敘述了一種多參數綜合測控方法,即應用ATmega128單片機通過傳感器技術,對植物的葉層溫濕度、冠層溫度、植物生長環境的土壤溫度、土壤水分、風速、光照度以及大氣和葉層的二氧化碳濃度進行測量,并對測量的數據進行簡單的處理和分析。
關鍵詞:ATmega128 多參數 綜合測控
本文介紹應用ATmega128單片機,根據多參數綜合測控系統的控制需求,進行軟件系統設計,整個系統簡單可靠、操作方便,較好地滿足了農業多參數綜合測控系統的需要。
一、系統程序結構
嵌入式多參數綜合測控系統采用模塊化程序設計方法,軟件設計主要包括主程序、八路葉層溫濕度采集程序、冠層溫度采集程序、風速采集程序、AD轉換驅動程序和RS-485通信程序。
二、主程序
系統主程序主要完成系統的初始化,通過各功能程序對個傳感器進行數據采集,并通過串行通信的方式控制液晶顯示,同時對外接按鍵進行檢測,并通過按鍵控制來查看液晶顯示的各個傳感器采集的數據。
本系統的總線通信采用RS-485接口。由于系統具有總線通信的功能,因此每一節點都應該有自己的地址,當本系統開始運行時,液晶顯示器上提示設置節點地址。如果在規定的時間沒有設置地址,系統將采用系統上次使用的地址作為節點地址,當設置節點完成后,單擊確定后系統自動存儲節點地址,同時把地址存入EEPROM中,以防止系統非法斷電后節點地址丟失。
主程序流程圖,如圖1所示。
三、八路葉層溫濕度采集程序
八路葉層溫濕度采集程序主要完成八路葉層溫濕度的采集和處理。通過單片機控制CD4051八路模擬開關,分別選通每一路葉層溫濕度傳感,并通過單片機分別讀取每一路的葉層溫濕度傳感器測量的數據,并對采集的溫濕度進行簡單的數據處理。
四、冠層溫度采集程序
冠層溫度采集程序主要完成冠層溫度的采集和處理。通過單片機內部集成的SPI同步串行通信功能與紅外測溫傳感器進行通信,當單片機PB7=0時,紅外測溫傳感器開始測溫,并對測量的冠層溫度通過ISP通信發送給單片機,單片機對接收到的數據進行求和校驗,校驗成功的數據進行數據處理,便計算出實際的冠層溫度。
五、風速采集程序
風速采集程序主要完成植物生長環境的風速的采集和處理。本系統采用單片機的定時器功能和計數器功能對脈沖信號進行采集,通過T0定時器進行定時中斷,當定時到1s時關閉定時中斷,同時計數器也關閉技術。此時計數器計數值為1s定時中的計數值,也就是輸出脈沖的頻率,通過公式就可以計算出實際風速。
六、AD轉換驅動程序
由于光照度、土壤溫度和濕度、大氣和葉層二氧化碳傳感器輸出是0~5V的模擬量,系統通過模數轉換器把模擬量轉換為數據量傳送給單片機,并把測量的數據轉換為傳感器測量的實際數據,并對數據進行簡單處理。
七、RS-485通信程序
RS-485通信程序主要完成系統節點與主站總線通信功能。每個節點在開機時會給主站發送該節點的地址并進入等待接收狀態,當節點接收到主站發送的數據時,對接收的數據進行校驗;當確認接收的數據正確后,對應接收數據中的地址與該節點的地址是否相等,如果節點地址相等則把該節點測量的多個參數及時間打包,通過RS-485通信方式發送給主站。
參考文獻:
[1]趙其國.我國現代農業發展中的若干問題[J].土壤學報,1997(34).