基于CAN總線的多功能大型糧倉遠(yuǎn)程監(jiān)測系統(tǒng)
糧食的安全儲藏是國家為了備戰(zhàn)和預(yù)防災(zāi)荒的重要戰(zhàn)略決策,而糧庫儲糧監(jiān)測技術(shù)又是科學(xué)保糧的關(guān)鍵技術(shù)之一。目前國內(nèi)生產(chǎn)的糧情監(jiān)測系統(tǒng),品種繁多,系統(tǒng)結(jié)構(gòu)各異,但其監(jiān)測的內(nèi)容主要集中在糧庫內(nèi)外溫度和濕度,不能同時監(jiān)測蟲害情況;而且現(xiàn)場檢測電路和上位機的通訊大多采用RS-485,這就使整個系統(tǒng)抗干擾能力差,實時性和糾錯能力不強,增加節(jié)點困難,當(dāng)某一通信節(jié)點出現(xiàn)故障時,還會影響整個系統(tǒng)[1]。因此為了提高糧情監(jiān)測系統(tǒng)的可靠性,擴大糧情監(jiān)測的功能,我們提出了基于CAN總線的多功能大型糧倉遠(yuǎn)程監(jiān)測系統(tǒng)。
本文引用地址:http://m.butianyuan.cn/article/201612/329520.htm1系統(tǒng)總體結(jié)構(gòu)原理
糧食在儲藏期間,由于受環(huán)境、氣候和通風(fēng)條件等因素的變化,糧倉內(nèi)溫度或濕度會發(fā)生異常,這極易造成糧食的霉?fàn)€、或發(fā)生蟲害。那么針對糧食儲藏的特殊性,我們選擇了糧倉內(nèi)的溫度和濕度作為主要監(jiān)測參數(shù),把糧蟲發(fā)生情況作為輔助參數(shù)。
整個監(jiān)測系統(tǒng)由上位管理主機(HOST)、USB/CAN轉(zhuǎn)換器和多個智能節(jié)點組成。節(jié)點的數(shù)量由大型倉庫里的糧庫數(shù)量決定,一般在采用標(biāo)準(zhǔn)幀進(jìn)行CAN通信時,節(jié)點不超過110個;采用擴展幀CAN進(jìn)行CAN通信時,節(jié)點數(shù)量原則上無限制。整個監(jiān)測網(wǎng)絡(luò)采用總線式拓?fù)浣Y(jié)構(gòu),其結(jié)構(gòu)原理圖如圖1所示。
上位管理機采用PC機,主要完成整個監(jiān)測網(wǎng)絡(luò)系統(tǒng)的參數(shù)設(shè)置、糧庫的狀態(tài)查詢、數(shù)據(jù)處理、糧情分析、超限實時報警和報表打印等功能。下位智能節(jié)點由單片機、數(shù)據(jù)采集電路和CAN通控制驅(qū)動電路構(gòu)成。
下位機不僅要實時監(jiān)測本糧庫內(nèi)各個測試點的溫度、濕度和糧蟲發(fā)生情況,并保存和顯示結(jié)果,還要負(fù)責(zé)接收上位管理機的命令,根據(jù)上位機的要求上傳數(shù)據(jù)。
USB/CAN轉(zhuǎn)換器負(fù)責(zé)將上位機通過USB口輸出的命令轉(zhuǎn)換成CAN總線數(shù)據(jù)格式后,再下傳到CAN總線;或者將下位機通過CAN總線上傳的數(shù)據(jù)轉(zhuǎn)換成USB數(shù)據(jù)格式后,再送到PC機。
2 下位機硬件電路結(jié)構(gòu)
下位機以單片機AT89S52為核心,通過擴展顯示電路、數(shù)據(jù)采集電路和CAN通信模塊構(gòu)成一個完整硬件體系,如圖2所示。
2.1 數(shù)據(jù)采集電路
數(shù)據(jù)采集電路由溫度采集電路、濕度采集電路和糧蟲檢測電路構(gòu)成。溫度檢測采用Dallas公司生產(chǎn)的單總線數(shù)字溫度傳感器DS18B20,它不僅能直接輸出串行數(shù)字信號,而且具有微型化、低功耗、高性能、易于微處理器連接和抗干擾能力強等優(yōu)點。DS18B20數(shù)字溫度傳感器對于實測的溫度提供了9-12位的數(shù)據(jù)和報警溫度寄存器,它的測溫范圍為-55℃~+125℃,其中在-10℃~+85℃的范圍內(nèi)的測量精度為±0.5℃。由于每個DS18B20有唯一的一個連續(xù)64位的產(chǎn)品號,所以允許在一根電纜上連接多個傳感器,以構(gòu)成大型溫度測控網(wǎng)絡(luò)。圖2電路中,設(shè)計了兩條測溫單總線,每條單總線用一只場效應(yīng)管提供電源,每條總線上可并聯(lián)十幾只數(shù)字溫度傳感器DS18B20。
濕度檢測采用濕度傳感器HIH3610和DS2438組合模塊。HIH-3610是美國Honeywell公司生產(chǎn)的相對濕度傳感器,該傳感器具有精度高、響應(yīng)快速、高穩(wěn)定性、低溫漂、抗化學(xué)腐蝕性能強及互換性好等優(yōu)點。HIH-3610采用熱固聚酯電容式傳感頭,在芯片內(nèi)部集成了信號處理功能電路,可以完成將相對濕度值變換成電容值,再將電容傳轉(zhuǎn)換成線性的電壓輸出。因此它輸出的模擬濕度信號,不能直接送單片機處理,必須經(jīng)過A/D轉(zhuǎn)換。DS2438也是Dallas公司的單總線器件,具有A/D功能。
糧蟲檢測器采用文獻(xiàn)[3]所介紹的方法制作,當(dāng)檢測到糧食蟲害發(fā)生時,糧蟲檢測器輸出負(fù)脈沖,送微處理器記數(shù)和處理。系統(tǒng)采用一個8輸入與非門,可帶8臺糧蟲檢測器。
2.2 顯示電路
顯示電路和微控制器的連接采用I2C總線,由于AT89S52單片機內(nèi)部沒有集成I2C總線模塊,故采用軟件模擬的方法實現(xiàn)I2C通訊。顯示驅(qū)動器采用具有I2C總線的器件SAA1064,可動態(tài)驅(qū)動4位8段LED顯示器。它內(nèi)部具有顯存和自動刷新功能,可免去微控制器的頻繁刷新任務(wù),騰出大量時間做其他事情。
2.3 CAN通信模塊
CAN是現(xiàn)場總線中唯一被批準(zhǔn)為國際標(biāo)準(zhǔn)的現(xiàn)場總線。其信號傳輸介質(zhì)為雙絞線。通信速率最高可達(dá)1Mbps/40m,直接傳輸距離最遠(yuǎn)可達(dá)10Km/5Kbps。CAN協(xié)議采用CRC檢驗并可提供相應(yīng)的錯誤處理功能,保證了數(shù)據(jù)通信的可靠性。當(dāng)節(jié)點嚴(yán)重錯誤時,具有自動關(guān)閉的功能,以切斷該節(jié)點于總線的聯(lián)系,使總線上的其它節(jié)點及其通信不受影響,具有較強的抗干擾能力。
圖2中的CAN控制驅(qū)動模塊由CAN控制器SJA1000、光耦6N137模塊和CAN驅(qū)動器82C50構(gòu)成。SJA1000負(fù)責(zé)與微控制器進(jìn)行狀態(tài)、控制和命令等信息交換,并承擔(dān)網(wǎng)絡(luò)通信任務(wù);82C50為CAN控制器和總線接口,提供對總線的差動發(fā)送和對CAN控制器的差動接收功能。光耦6N137起隔離作用。
3 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件由上位機主程序和下位監(jiān)控程序構(gòu)成,上位機主程序用VB語言開發(fā),采用模塊化設(shè)計,具體的功能模塊如圖3所示。利用VB編寫的應(yīng)用軟件人機界面友好,便于維護和管理。
下位機的軟件由下位機主程序、溫度采集程序、濕度采集程序、糧蟲檢測中斷程序和CAN收發(fā)中斷服務(wù)程序等構(gòu)成。由于篇幅所限這里僅給出了下位機主程序和CAN通信中斷服務(wù)程序的流程圖,分別如圖4和圖5所示。在下位機主程序里,系統(tǒng)要首先進(jìn)行單片機的初始化、CAN的初始化、開外部中斷、開啟計數(shù)器和使能CAN接收中斷的過程,是系統(tǒng)處于就緒狀態(tài),然后調(diào)用數(shù)據(jù)采集程序和數(shù)據(jù)處理程序,實時采集糧庫現(xiàn)場的參數(shù)并予以處理,處理后的數(shù)據(jù)要保存起來供上位機隨時查詢,同時送顯示器顯示。
糧蟲檢測中斷程序主要完成糧庫發(fā)生糧蟲后的處理,一方面要判斷糧蟲計數(shù)器是否計滿,計滿清零并保存數(shù)據(jù);一方面設(shè)置糧庫發(fā)生蟲害標(biāo)志,并供上位機查詢和顯示。
CAN收發(fā)中斷服務(wù)程序負(fù)責(zé)上下位機的命令和數(shù)據(jù)傳送。當(dāng)上位機發(fā)送命令時,CAN接收一個報文,CAN的中斷使能標(biāo)志置1,產(chǎn)生接收中斷,CPU立即響應(yīng),進(jìn)入中斷服務(wù)程序,然后系統(tǒng)再根據(jù)上位機的具體命令,向上位機傳送該節(jié)點工作狀態(tài)或采集的數(shù)據(jù)。
4 結(jié)論
由于系統(tǒng)采用了全數(shù)字化的溫度、濕度傳感器,直接輸出的是表示溫度和濕度的數(shù)字信號,不存在由模擬量到數(shù)字量轉(zhuǎn)換的中間環(huán)節(jié),所以該系統(tǒng)具有穩(wěn)定可靠、測量精度高、一致性好、無需任何調(diào)整、信號線長短不會影響其性能等優(yōu)點,還有單總線也帶來安裝方便、線路清晰、節(jié)省線材等長處。上下位機通信采用CAN總線通信方式,提高了系統(tǒng)內(nèi)部的速率和實時性,降低了誤碼傳送的概率。糧蟲檢測器的設(shè)計使該系統(tǒng)除了能實時監(jiān)測溫度和濕度外,也能監(jiān)測糧食蟲害的發(fā)生情況。
評論