基于单片机的蔬菜大棚农业自动化灌溉系统研究设计
摘要:随着农业自动化水平的提高.农业灌溉逐步发展到自动灌溉系统。为此,介绍一种基于单片机和射频模块nRF24Lol来实现无线数据传输,利用多点湿度传感器检测环境湿度的蔬菜大棚自动灌溉控制系统。系统由主站和分站组成,主站和分站可以通过无线射频模块交换实时湿度数据,并由主站处理后发送控制信号控制分站的电磁阀实现自动灌溉。
关键词:农业自动化灌溉系统;AvR单片机;无线射频技术 O引言
随着我国农业自动化水平的提高,农业灌溉由以往的人工灌溉发展到现在的自动灌溉,并且在多种地形和条件下使用,效果都非常不错。但是,这种灌溉系统也有不少缺点,如不能检测当前环境的湿度,只是按照灌溉时间间隔来进行控制;遇到比较大的种植面积,布线非常复杂,电缆需要做防水保护,制作成本和维护成本都非常高。所以,考虑到农业灌溉的特殊性,本文提出了一种新型的自动灌溉系统,适用于多种农业种植环境,以蔬菜大棚自动灌溉系统为例,从硬件和软件设计方面分析:首先,布线方面不采用传统的线路铺设,而采用无线射频模块传输数据和接收数据,具有较大的灵活性,并节约成本;其次,通过利用高性能AVR单片机具有的sPI方式,来控制发送和接收无线传输模块传输的数据,并可靠地控制电磁阀动作,利用单片机控制具有较强的实时性,并且可以移植到各种实时操作系统中实现;最后,蔬菜大棚室外降雨等因素可以忽略,使程序更加稳定,并能有效的节约维护成本。 1系统硬件设计
本系统由主站和分站组成点对多点的无线数据传输网络,其中1个主站,多个分站,本设计中以3个分站为例,每个分站上其他电路由一个湿度传感器、电磁阀驱动电路和电磁阀构成。主站与分站之间距离理论不超过l km,实际50m即可。主站和分站的核心都是利用AVR单片机控制操作,主站单片机:主要接收湿度数据并处理,然后发送数据到相应分站,分站的单片机接收到数据后响应主站命令,从而控制电磁阀动作。 1.1 AVR单片机
本设计中采用ATMEL公司8位单片机AT.m89a8L。该单片枧是ATMEL公司2002
年第一季度推出的一款新型AVR高档单片机,ATmega8L后面的“L”代表的是一款可以工作在低电压状态的单片机,工作电压范围在2.7~5,5V,ATmega8L内部集成了8kB在系统自编程FLAsH,可擦写次数达到了10000次,具有独立的锁定为可选Boot代码区‘,这可以通过片上Boot程序实现系统内编程实现读写的同时性。片上还集成了512字节的EEPROM,擦写次数也达到了10 000次,lkB片内的sRAM可以大幅提高编程的可靠性,用户可以通过对锁定为进行编程以实现用户对程序的加密,使程序难以破解。ATmega8L具有丰富的硬件接口电路,具有硬件sPI和IsP接口,AT.mega8L是基于先进的RIsc结构的8位单片机,由130条指令构成,大多数指令执行的时问为单个时钟周期,内部具有32个8位通用工作寄存器构成,AT—mega8L单片机主要是将32个通用寄存器和130条指令结合在一起,所有的通用寄存器都与ALu(算术逻辑单元)直接相连,实现了在一个时钟周期内执行的一条指令同时访问(读写)两个独立寄存器的操作。这种结构提高了代码效率,使得大部分指令的执行时间仅为一个时钟周期。因此,AThega8在16MHz的工作状态下可以达到16MIPs的性能,运行速度比过去基于cIsc结构的5l单片机高出近10倍。由于AT—mega8L是不带ⅡAG接口的,所以要对ATmega8L在线仿真另接一个仿真器或者采用ATmega88来做前期的开发。批量生产时可将程序移植到A1hega8,并在程序中的寄存器名称做修改。A1hega8/88最小系统及下载电路如图1所示。
本电路中的电源部分是根据nR砣4LDl的典型电压3.3V匹配电源,即单片机部分和无线射频模块供电也是通过3.3V供电。另外,IsP下载电路部分是提供程序下载调试用的,方便系统开发设计及日后升级用。 1.2 nRF24LJDl及接口电路
nRF24加l是Nordic公司的一款无线芯片,该模块特点是在2.4GHz全球开放IsM频段免许可证使用,即该频段一般为民用通讯、遥控和数传等不需要申请许可证就可以使用的。该芯片最高工作速率达到了2Mbps,高效G聆K调制,抗干扰能力较强,适合工业控制场合,因为是免许可证的频段,所以在同一地区使用该频段的设备也相对多一些,为了避免误操作,芯片内部固有126个频道,满足多点通信和跳频通信的需要,并且内置硬件的cRC检错和点对多点路由地址控制。该芯片最大的特点还是采用软件设定地址的功能,即收到本机地址才会有输出数据,这个过程是通过中断源的形式完成的,可以直接接在各种单片机使用,特别是支持硬件sPI的单片机,编程更加方便,其引脚分布及功能如图2所示。 cE:发射模式和接收模式使能引脚;
csN,scK,M0sI,MIs0:sPI功能定义端,主要通过该4位端口与AVR单片机通信;
IRQ:中断标志位; VDD:芯片电源3.3V; VSS:GND:
xc2,xcl:外接晶体振荡器引脚,典型值为16MH2; VDD—PA:芯片内部功放供电端,输出电压为1.8 V; ANTl,ANl2:ANT天线输人端; IREF:基准电流参考端;
以上需要和单片机通信的引脚分别是cSN,scK,M0sI,MIs0及IRQ,注意芯片的VDD电源电压不要超过3.3V,电流也不要过高,超过3.6V会造成芯片永久烧毁。nRF24L0l的时序图如图3和图4所示。
可以看出,在发送模式下,数据的高位在前,低位在后,每写一位都要返回一个状态字,每次写操作都可以读回一个完整的状态字,保证最大限度地不丢包。 nRF24LDl的工作模式发送接收模式、系统配置模式、空闲状态模式以及关机模式等4种,如表1所示。
表l nRF24IDl配置为发射、接收、空闲及掉电4种工作模式表
其中,发送接收模式有Enhanced shockBurstTM模式、shockburstTM模式和直接发送接收模式3种。在本设计中,采用Enhanced sho&BurstTM模式。这种模式下,软件编程会稍微简单,系统稳定性更高。nR砣4加1的应用原理如图5所示。