利用單片機實現多路溫度測量
在孵化設備的科研過程中,常常用多路溫度測試儀來對孵化機器內部的溫度場進行測量,而我們以前用的多路溫度測試儀是用兩片16選1的模擬開關來完成對32路溫度的測量, 溫度的采樣時間受模擬開關開通關斷時間的限制,開關信號對溫度采樣也造成了一定的干擾。在實際使用過程中還常受到溫度采樣路數(如8路、20路、64路、70路,128路等)的限制,為能更靈活的應用該多路溫度測試儀,我們采用了主從機RS-485通訊的模式來完成多路溫度的測量。每個從機采樣8路溫度并作為一個模塊,每個從機有獨立的地址,這樣我們就可以在主機通訊負載能力范圍內靈活的配置從機模塊的數量,并且能提高溫度采集的及時性和準確性,為科研實驗提供便利工具。
本文引用地址:http://www.104case.com/article/201611/323539.htm硬件設計
總線式主從機結構框圖如圖1。
主機我們采用Atmel公司的高性能8位處理器ATMEG128L-8AI,該芯片具有128k的ISP-FLASH、4k的EEPROM、4k的SRAM,該芯片容量大、可重復在系統編程、指令豐富并且執行速度快。
主機主要完成以下功能:從機地址識別、與從機的通訊、實時溫度顯示、按鍵處理、溫度軟校準以及從機擴張選擇,主機功能框圖如圖2。實時溫度顯示采用19264單色點陣液晶,該液晶沒有背光時仍能正常查看,只是為了在夜間查看,我們增加了液晶背光功能。溫度軟校準功能是為了保證多路溫度測量的準確性,消除系統誤差。在實際測量過程中,很難保證用來測量的不同的溫度探頭的一致性,電路結構、探頭線長度、以及每個溫度傳感元件本身的不一致性都最終影響溫度測量的準確性。為了方便校準,我們可利用軟件對單個溫度探頭或全部溫度探頭進行軟件校準。這樣盡量減小各個溫度探頭的不一致而帶來的測量差值。為保證主機的可靠工作,在電路中還增加了處理器監控芯片MAX706,用來監控電源電壓和系統是否正常工作,否則發出復位信號使系統恢復正常。從機擴展功能主要是用來選擇從機模塊的數量,如果從機數量為1,則在該功能選項中選擇“1路采樣模塊”,依次類推,考慮到實際應用過程中對溫度探頭數量的要求,本系統中最大的從機模塊配置數量為8,也就是最多可以測量64路溫度信號。
從機采用Atmel公司的ATMEG16L-8AI作為處理器,該芯片具有16k的ISP-FLASH、512B的EEPROM、1k的SRAM,該芯片同樣可以在系統編程,該芯片具有8路10位A/D轉換器,當采樣的基準電壓為5V時,系統的采樣精度可達到5毫伏每字,即基準電壓變化5毫伏,采樣的數字量變化1個字。
從機模塊主要完成8路溫度采樣、與主機的通訊、硬件地址編碼,從機功能框圖如圖3。每個從機模塊有個地址編碼跳線器,由硬件完成對該模塊的地址編碼。這樣在擴張時,將每個模塊的地址唯一確定,不會由于通訊地址的重復造成通訊的不成功。我們采用的RS-485芯片最多可以負載32個從機模塊,RS-485芯片采用Maxim公司的MAX483CPA。不同的RS-485芯片,其負載能力不同,有的RS-485芯片如MAX487可以帶120個負載,MAX1487能夠將負載數量擴大到230個。
RS-485串行通訊
在工程實踐當中,多點數據采集系統的網絡拓撲一般采用總線方式,傳送數據采用主從機結構的方法。
RS-485采用平衡發送和差分接收方式來實現通信:在發送端TXD將串行口的TTL電平信號轉換成差分信號A、B兩路輸出,經傳輸后在接收端將差分信號還原成TTL電平信號。兩條傳輸線通常使用雙絞線,又是差分傳輸,因此有極強的抗共模干擾的能力,接收靈敏度也相當高。同時,最大傳輸速率和最大傳輸距離也大大提高。如果以10kb/s速率傳輸數據時傳輸距離可達12m,而用100kb/s時傳輸距離可達1.2km。如果降低波特率,傳輸距離還可進一步提高。本系統的波特率設置為2400b/s。
評論