摘 要: 家禽養(yǎng)殖環(huán)境中的溫度,、濕度和空氣等因素直接影響著家禽的生產(chǎn)性能,,針對大型家禽養(yǎng)殖場環(huán)境監(jiān)控的需求,研究應(yīng)用CAN總線技術(shù)建立一種分布式多變量環(huán)境監(jiān)控系統(tǒng),,該系統(tǒng)由以ATmega128單片機(jī)為核心的監(jiān)控中心和以ATmega16單片機(jī)為核心的智能監(jiān)控終端組成,。工作時,監(jiān)控中心實時收集,、分析和處理各監(jiān)控終端采集到的環(huán)境信息,,根據(jù)用戶輸入的控制要求,結(jié)合數(shù)據(jù)處理結(jié)果,,向各終端發(fā)送控制參數(shù),,實現(xiàn)對養(yǎng)殖場內(nèi)多個禽舍的監(jiān)控。
關(guān)鍵詞: 禽舍,;CAN總線,;監(jiān)控;單片機(jī)
家禽的生存需要具備一定的環(huán)境條件,,理想的溫度與濕度,、空氣質(zhì)量和適當(dāng)?shù)墓庹帐翘岣咂浯婊盥省a(chǎn)蛋率和增重速度等生產(chǎn)性能的必備因素[1],。在實際養(yǎng)殖環(huán)境中,,可以通過供暖、蒸發(fā),、控制空氣流動和增加照明設(shè)備等方法來創(chuàng)造適合家禽生長的環(huán)境條件,。目前,我國的禽舍環(huán)境調(diào)控水平提高速度較快,,但與發(fā)達(dá)國家相比,,差距仍然明顯,管理水平不高,,環(huán)境因素之間缺乏必要的聯(lián)系,,且多數(shù)控制系統(tǒng)必須由飼養(yǎng)管理人員手動操作或機(jī)電式操作,自動化水平低,,難以適應(yīng)現(xiàn)代化生產(chǎn)管理的要求[2],。因此,建立一種智能化程度高,、通信可靠的低成本禽舍環(huán)境綜合監(jiān)控系統(tǒng)是進(jìn)一步提高家禽生產(chǎn)性能的重要途徑,。
1 系統(tǒng)組成
監(jiān)控系統(tǒng)采用分布式結(jié)構(gòu)[3],,上位機(jī)是以AVR單片機(jī)ATmega128為核心的監(jiān)控中心,下位機(jī)是以ATmega16單片機(jī)為核心的智能監(jiān)控終端,。監(jiān)控中心以一個LCD顯示器為監(jiān)控信息輸出環(huán)節(jié),,用戶可以通過由一個專用鍵盤構(gòu)成的控制參數(shù)輸入環(huán)節(jié)錄入監(jiān)控指令。智能監(jiān)控終端掛接氣體,、溫度和濕度傳感器,,定時采集禽舍環(huán)境的氨氣濃度、二氧化碳濃度,、溫度和濕度等有用信息,,當(dāng)接收到監(jiān)控中心發(fā)送過來的采集命令后立即通過CAN總線將相關(guān)信息發(fā)送到監(jiān)控中心,并且不斷監(jiān)聽監(jiān)控中心發(fā)送過來的執(zhí)行指令,,根據(jù)指令控制連接在該終端的執(zhí)行機(jī)構(gòu)進(jìn)行相關(guān)的動作,,實現(xiàn)對禽舍環(huán)境的監(jiān)控。整個系統(tǒng)的結(jié)構(gòu)如圖1所示,。
監(jiān)控中心放置在養(yǎng)殖場的監(jiān)控室內(nèi),,每間禽舍安裝一個監(jiān)控終端。由于場地占地面積大,,數(shù)據(jù)傳輸距離長,,多點連接組網(wǎng)時采用屏蔽雙絞線作為傳輸物理介質(zhì)以提高通信可靠性。
2 硬件部分設(shè)計
監(jiān)控系統(tǒng)在硬件方面主要包括CAN總線接口,、傳感器,、執(zhí)行機(jī)構(gòu)與單片機(jī)的接口、監(jiān)控中心的顯示器和鍵盤等幾部分,。
2.1 CAN總線接口電路
上述兩款A(yù)VR單片機(jī)內(nèi)部沒有CAN總線控制及接口的硬件資源,因此采用Microchip公司的CAN總線控制器芯片MCP2515[4]和物理接口芯片MCP2551[5]組建接口電路,。MCP2515有標(biāo)準(zhǔn)的SPI數(shù)據(jù)接口,,可以與AVR單片機(jī)的SPI接口直接相連,接口電路如圖2所示,。MCP2515的中斷信號輸出端與AVR單片機(jī)的一個外部中斷信號輸入引腳相連,。為了增強(qiáng)系統(tǒng)的抗干擾能力,使用高速光耦6N137實現(xiàn)控制部分與總線物理接口部分的電氣隔離,。
2.2 傳感器及執(zhí)行機(jī)構(gòu)接口
本研究的CO2傳感器選用Figaro公司的固體電可測型CO2氣體傳感器TGS4160,,其測量濃度范圍為0~3 000 mg/kg,與處理模塊AM-4配合使用,,工作電壓VDC 為5 V,,輸出0~3 V的電壓信號,與CO2濃度值呈線性關(guān)系,,可以直接接入ATmega16的ADC輸入通道AIN0,,由ATmega16內(nèi)部的ADC進(jìn)行模數(shù)轉(zhuǎn)換,。氨氣傳感器采用JB-QT-TON90ATN氨氣氣體傳感變送器,其輸出信號是4 mA~20 mA標(biāo)準(zhǔn)電流信號,,通過轉(zhuǎn)換電路轉(zhuǎn)換成電壓后接入單片機(jī)的其中一個ADC通道AIN1,。溫度傳感器采用DS18B20,其DQ線直接與ATmega16的PD6引腳連接,,利用單片機(jī)I/O口的內(nèi)部上拉電阻使以漏極開路形式輸出的DQ輸出正確幅值的脈沖信號,。濕度傳感器采用國產(chǎn)的HM1500,其輸出信號是與濕度成線性關(guān)系的1 V~4 V直流電壓信號,,可以直接接入單片機(jī)的ADC輸入通道AIN2,。
執(zhí)行機(jī)構(gòu)的主要部件是電機(jī),單片機(jī)輸出的數(shù)字控制信息通過數(shù)模轉(zhuǎn)換變成模擬控制量,,再經(jīng)過光耦進(jìn)行電氣隔離后接入電機(jī)驅(qū)動電路,,以實現(xiàn)對電機(jī)動作的控制。
2.3 監(jiān)控中心的顯示及鍵盤接口電路
監(jiān)控中心采用基于ST7290控制器的128×64點陣LCD作為顯示器,,ST7290內(nèi)嵌有中英文及阿拉伯?dāng)?shù)字字庫,,可以較方便地顯示出禽舍環(huán)境的各種信息量。ATmega128與ST7290之間采用8位并行方式進(jìn)行連接,,其接口電路如圖3所示,。
在系統(tǒng)運(yùn)行過程中,用戶可以通過鍵盤輸入或修改控制參數(shù),。鍵盤由14個按鍵組成,,分別是2個方向鍵、10個數(shù)字鍵,、1個返回鍵和1個確認(rèn)鍵,。鍵盤以獨立方式接入,即每個按鍵單獨占用一個I/O口,,一端通過單片機(jī)內(nèi)部的上拉電阻接VCC,,另一端接地。確認(rèn)鍵接到單片機(jī)的外部中斷輸入,,用戶要進(jìn)行輸入操作時需先按確認(rèn)鍵引起單片機(jī)中斷,,單片機(jī)響應(yīng)該中斷后進(jìn)入指令錄入狀態(tài),不斷查詢鍵盤各個按鍵的狀態(tài),,等待用戶輸入信息,。
3 軟件設(shè)計
系統(tǒng)軟件主要由監(jiān)控中心和終端軟件兩大部分組成,以模塊化的方式設(shè)計,,整體結(jié)構(gòu)如圖4所示,,按照系統(tǒng)的功能和硬件電路結(jié)構(gòu)分別把監(jiān)控中心程序和監(jiān)控終端程序各分為若干功能塊。
3.1 CAN總線通信協(xié)議設(shè)計
CAN總線控制器MCP2515工作在中斷數(shù)據(jù)操作模式,通信過程采用具有11位標(biāo)識符的標(biāo)準(zhǔn)幀格式進(jìn)行數(shù)據(jù)收發(fā),,接入總線的監(jiān)控中心和各監(jiān)控終端的總線標(biāo)識符各不相同,。物理層和數(shù)據(jù)鏈路層均按照CAN2.0B的規(guī)范進(jìn)行信號和信息傳輸,在應(yīng)用層采用主從應(yīng)答的方式通信,,監(jiān)控中心為主,,監(jiān)控終端為從,監(jiān)控中心周期性地輪詢各終端,,發(fā)出采集和控制指令,,收到指令的終端立即響應(yīng),進(jìn)行相應(yīng)的動作,。
3.2 監(jiān)控中心程序設(shè)計
監(jiān)控中心的主要任務(wù)是:(1)發(fā)送控制參數(shù)和指令,;(2)收集、處理和顯示各禽舍環(huán)境信息,;(3)根據(jù)用戶的輸入修改控制參數(shù),。其程序流程如圖5所示。
3.3 監(jiān)控終端程序設(shè)計
監(jiān)控終端在完成初始化工作后等待監(jiān)控中心發(fā)送指令,,根據(jù)指令進(jìn)行下一步的動作,;同時,監(jiān)控終端不斷采集環(huán)境信息,,按既定參數(shù)驅(qū)動執(zhí)行機(jī)構(gòu)動作,,實現(xiàn)對禽舍環(huán)境的監(jiān)控。其程序流程如圖6所示,。
本研究將CAN總線技術(shù)應(yīng)用到禽舍環(huán)境監(jiān)控領(lǐng)域中,,依靠CAN總線本身的優(yōu)點,增強(qiáng)了傳統(tǒng)禽舍監(jiān)控網(wǎng)絡(luò)的通信可靠性,、實時性和靈活性,,增長了通信距離(與485總線相比)。用戶可以根據(jù)實際需要在目前的系統(tǒng)硬件基礎(chǔ)上掛接其他傳感器模塊,,通過增加相應(yīng)的軟件功能模塊,,實現(xiàn)對更多模擬量的監(jiān)控,用于其他監(jiān)控領(lǐng)域,;也可以在監(jiān)控中心掛接GPRS或CDMA模塊,實現(xiàn)遠(yuǎn)程監(jiān)控,。
參考文獻(xiàn)
[1] 陳國雙,,歐世響.禽舍環(huán)境條件的控制措施[J].養(yǎng)殖技術(shù)顧問,2009(10):5-6.
[2] 崔和瑞,,李曼,高峰.基于模糊控制的畜禽舍環(huán)境監(jiān)控系統(tǒng)的研究[J].計算機(jī)工程,2006,,32(21):224-
225,228.
[3] 王麗麗,朱瑞祥,,隨順濤,,等.基于PC機(jī)和單片機(jī)的分布式禽舍環(huán)境監(jiān)控系統(tǒng)[J].農(nóng)機(jī)化研究,2009(2):74-76,,103.
[4] MCP2515 stand-alone CAN controller with SPITM interface[M].USA:Microchip Technology Inc.,2005.
[5] MCP2551 high-speed CAN transceiver[M].USA:Microchip Technology Inc.,,2002.