摘 要:家禽养殖环境中的温度、湿度和空气等因素直接影响着家禽的生产性能,针对大型家禽养殖场环境监控的需求,研究应用CAN总线技术建立一种分布式多变量环境监控系统,该系统由以ATmega128单片机为核心的监控中心和以ATmega16单片机为核心的智能监控终端组成。工作时,监控中心实时收集、分析和处理各监控终端采集到的环境信息,根据用户输入的控制要求,结合数据处理结果,向各终端发送控制参数,实现对养殖场内多个禽舍的监控。
关键词:禽舍;CAN总线;监控;单片机
家禽的生存需要具备一定的环境条件,理想的温度与湿度、空气质量和适当的光照是提高其存活率、产蛋率和增重速度等生产性能的必备因素[1]。在实际养殖环境中,可以通过供暖、蒸发、控制空气流动和增加照明设备等方法来创造适合家禽生长的环境条件。目前,我国的禽舍环境调控水平提高速度较快,但与发达国家相比,差距仍然明显,管理水平不高,环境因素之间缺乏必要的联系,且多数控制系统必须由饲养管理人员手动操作或机电式操作,自动化水平低,难以适应现代化生产管理的要求[2]。因此,建立一种智能化程度高、通信可靠的低成本禽舍环境综合监控系统是进一步提高家禽生产性能的重要途径。
1 系统组成
监控系统采用分布式结构[3],上位机是以AVR单片机ATmega128为核心的监控中心,下位机是以ATmega16单片机为核心的智能监控终端。监控中心以一个LCD显示器为监控信息输出环节,用户可以通过由一个专用键盘构成的控制参数输入环节录入监控指令。智能监控终端挂接气体、温度和湿度传感器,定时采集禽舍环境的氨气浓度、二氧化碳浓度、温度和湿度等有用信息,当接收到监控中心发送过来的采集命令后立即通过CAN总线将相关信息发送到监控中心,并且不断监听监控中心发送过来的执行指令,根据指令控制连接在该终端的执行机构进行相关的动作,实现对禽舍环境的监控。整个系统的结构如图1所示。
监控中心放置在养殖场的监控室内,每间禽舍安装一个监控终端。由于场地占地面积大,数据传输距离长,多点连接组网时采用屏蔽双绞线作为传输物理介质以提高通信可靠性。
2 硬件部分设计
监控系统在硬件方面主要包括CAN总线接口、传感器、执行机构与单片机的接口、监控中心的显示器和键盘等几部分。
2.1 CAN总线接口电路
上述两款AVR单片机内部没有CAN总线控制及接口的硬件资源,因此采用Microchip公司的CAN总线控制器芯片MCP2515[4]和物理接口芯片MCP2551[5]组建接口电路。MCP2515有标准的SPI数据接口,可以与AVR单片机的SPI接口直接相连,接口电路如图2所示。MCP2515的中断信号输出端与AVR单片机的一个外部中断信号输入引脚相连。为了增强系统的抗干扰能力,使用高速光耦6N137实现控制部分与总线物理接口部分的电气隔离。
2.2 传感器及执行机构接口
本研究的CO2传感器选用Figaro公司的固体电可测型CO2气体传感器TGS4160,其测量浓度范围为0~3 000 mg/kg,与处理模块AM-4配合使用,工作电压VDC 为5 V,输出0~3 V的电压信号,与CO2浓度值呈线性关系,可以直接接入ATmega16的ADC输入通道AIN0,由ATmega16内部的ADC进行模数转换。氨气传感器采用JB-QT-TON90ATN氨气气体传感变送器,其输出信号是4 mA~20 mA标准电流信号,通过转换电路转换成电压后接入单片机的其中一个ADC通道AIN1。温度传感器采用DS18B20,其DQ线直接与ATmega16的PD6引脚连接,利用单片机I/O口的内部上拉电阻使以漏极开路形式输出的DQ输出正确幅值的脉冲信号。湿度传感器采用国产的HM1500,其输出信号是与湿度成线性关系的1 V~4 V直流电压信号,可以直接接入单片机的ADC输入通道AIN2。
执行机构的主要部件是电机,单片机输出的数字控制信息通过数模转换变成模拟控制量,再经过光耦进行电气隔离后接入电机驱动电路,以实现对电机动作的控制。
2.3 监控中心的显示及键盘接口电路
监控中心采用基于ST7290控制器的128×64点阵LCD作为显示器,ST7290内嵌有中英文及阿拉伯数字字库,可以较方便地显示出禽舍环境的各种信息量。ATmega128与ST7290之间采用8位并行方式进行连接,其接口电路如图3所示。
在系统运行过程中,用户可以通过键盘输入或修改控制参数。键盘由14个按键组成,分别是2个方向键、10个数字键、1个返回键和1个确认键。键盘以独立方式接入,即每个按键单独占用一个I/O口,一端通过单片机内部的上拉电阻接VCC,另一端接地。确认键接到单片机的外部中断输入,用户要进行输入操作时需先按确认键引起单片机中断,单片机响应该中断后进入指令录入状态,不断查询键盘各个按键的状态,等待用户输入信息。
3 软件设计
系统软件主要由监控中心和终端软件两大部分组成,以模块化的方式设计,整体结构如图4所示,按照系统的功能和硬件电路结构分别把监控中心程序和监控终端程序各分为若干功能块。
3.1 CAN总线通信协议设计
CAN总线控制器MCP2515工作在中断数据操作模式,通信过程采用具有11位标识符的标准帧格式进行数据收发,接入总线的监控中心和各监控终端的总线标识符各不相同。物理层和数据链路层均按照CAN2.0B的规范进行信号和信息传输,在应用层采用主从应答的方式通信,监控中心为主,监控终端为从,监控中心周期性地轮询各终端,发出采集和控制指令,收到指令的终端立即响应,进行相应的动作。
3.2 监控中心程序设计
监控中心的主要任务是:(1)发送控制参数和指令;(2)收集、处理和显示各禽舍环境信息;(3)根据用户的输入修改控制参数。其程序流程如图5所示。
3.3 监控终端程序设计
监控终端在完成初始化工作后等待监控中心发送指令,根据指令进行下一步的动作;同时,监控终端不断采集环境信息,按既定参数驱动执行机构动作,实现对禽舍环境的监控。其程序流程如图6所示。
本研究将CAN总线技术应用到禽舍环境监控领域中,依靠CAN总线本身的优点,增强了传统禽舍监控网络的通信可靠性、实时性和灵活性,增长了通信距离(与485总线相比)。用户可以根据实际需要在目前的系统硬件基础上挂接其他传感器模块,通过增加相应的软件功能模块,实现对更多模拟量的监控,用于其他监控领域;也可以在监控中心挂接GPRS或CDMA模块,实现远程监控。
参考文献
[1] 陈国双,欧世响.禽舍环境条件的控制措施[J].养殖技术顾问,2009(10):5-6.
[2] 崔和瑞,李曼,高峰.基于模糊控制的畜禽舍环境监控系统的研究[J].计算机工程,2006,32(21):224-
225,228.
[3] 王丽丽,朱瑞祥,随顺涛,等.基于PC机和单片机的分布式禽舍环境监控系统[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.