基于STM32和S3C6410的无线节水滴灌自动控制系统

时间:2014-06-13来源:网络

3 系统的软件设计

系统软件主要任务是实现传感器工作的控制、无线网络的组网以及数据的无线收发。系统软件主要包括上位机软件与下位机软件。上位机软件设计,主要是基于Visual C++的参数设置、数据采集、自动灌溉及查询历史记录等的编程。下位机程序设计有两个关键点:一是对温湿度、液位、压力、流量的采集,通过控制变频器调节水泵或通过控制继电器使得电磁阀开启与闭合;二是ZigBee收发模块对控制信号的接收、发送与执行。

自动滴灌系统中,土壤湿度是一个重要变量。上位机通过无线方式向田间控制器发送采集命令,将接收到传感器返回信息进行显示并对湿度做排序处理、判断液位是否过限、将压力和流量传感器得到的数据进行融合来调节变频器,然后通过ZigBee通信板向田间控制器发送开启或关闭电磁阀的指令。上位机主程序流程图如图5所示。

 

 

传感器节点上电后,首先进行系统的初始化,然后选择信道并加入现有的ZigBee无线网络,休眠等待接收信号,当接收到网关节点发出的查询信号后,进行数据的采集并发送回协调器节点。

S3C6410 开发平台具有4 个UART 接口,在研究设计中,采用了MAX3232 芯片来解决ZigBee通信模块的CC2530芯片与该开发平台之间的串口通信电平转换。

ZigBee 无线收发模块软件开发采用IAR EmbeddedWorkbench(EW)平台完成。EW的C/C++交叉编译器和调试器是今天世界最完整的和最容易使用专业嵌入式应用开发工具。网关ZigBee程序流程图见图6.

 

 

基于STM32的田间控制器接收到上位机发来的采集命令,进而执行采集土壤湿度、空气温度、液位、压力、流量等信息并上传,等待上位机进行智能决策后,将控制命令,如电磁阀开启关闭以及变频器的调节,发送出来,STM32控制器予以接收并且执行。下位机程序流程图如图7所示。

 

 

4 实验及结果分析

对各模块进行驱动测试,然后对系统整体进行协同工作实验。通过田间实验观测通信质量、滴灌效果及系统是否运行正常。

4.1 CC2530无线通信质量测试CC2530无线通信模块性能对系统整体性能起着至关重要的作用。CC2530通信模块的测试主要包括节点之间通信距离及数据包丢包率的测试。TI公司推出的通用数据包探测器(General Packet Sniffer)可以对未加密的通信过程进行监控,故可利用它进行通信和组网测试。

(1)空旷无障碍测试,观测通信质量及通信距离

测试地点:校园空旷处。

测试内容:协调器主节点上电,建立网络后,等待其他子节点加入。通过在协议栈中配置CC2530单芯片射频部分的输出功率寄存器,来使协调器和终端节点之间进行通信,按照规定的协议数据格式相互发送数据包,从而能够对CC2530通信模块的通信距离、数据包丢包率进行测试,得到一个合适的发射功率。

测试条件:硬件方面采用CC2530 协调器模块和CC2530 终端节点模块分别通过RS 232 协议与两台笔记本电脑进行串行通信;并使用到两条USB转串口数据线、电源、CC2530 仿真下载器。软件方面采用设计的CC2530串口透传程序能够进行数据透明、点对点数据传输,笔记本电脑端采用Visual Basic编程语言设计的数据包丢包率测试软件。

测试步骤:在搭建好硬件测试环境后,使用CC2530程序下载仿真器将在IAR Embedded Workbench集成开发环境下开发的CC2530 串行通信程序,分别下载到CC2530 协调器与CC2530 终端节点中。在笔记本电脑中分别安装VB数据包丢包率测试软件,通过对发送数据(十六进制),发送数据的速度以及通过对NV非易失性存储器的读/写操作对 CC2530 芯片的发射功率进行设置,收发1 000个数据包,对CC2530通信模块在不同的发射功率下的通信距离、丢包率等性能进行测试。

测试结果:在空旷场合采用默认功率输出时,通信距离为120 m左右时丢包率基本为0.0%,说明节点无线可靠通信距离可达120 m。

(2)在实验田中进行通信测试

测试地点:现场实验田;测试内容、测试条件、测试步骤:同(1);测试结果:采用默认功率输出时,节点无线通信有效传输距离可达80 m.

4.2 项目实验验证测试条件:将网关上ZigBee天线安置在室外空旷无遮掩处,使得能够接收到较强的信号。选取面积约为20 m×50 m的共12行的农作物田作为实验田,由于农作物的根系一般深度为10~20 cm,因此将土壤温湿度传感器探头埋入地下10 cm处,其中2行作为一组,每组选取两个距离较远的测试点,取两个测试点的平均值来代表这一行范围作物的环境状况。当采集到的湿度值低于30%时,电磁阀打开,水源通过电磁阀、压力传感器、流量传感器流入滴灌支管进行灌溉,滴灌进行中当土壤湿度值高于50%时,电磁阀关闭停止滴灌。

测试结果:在土壤湿度值低于作物要求下限(如30%)时系统能及时滴灌,当湿度达到作物要求上限(如50%)时系统能过做到适时停止滴灌,电磁阀开启成功率为96%.

5 结论

本文提出的一种无线节水滴灌自动控制系统的设计方案,方案中的STM32田间控制器能够实时监测作物土壤湿度和环境温度,将传感器信号通过无线发送到控制中心,控制中心能够准确实时地了解到当前系统中各个节点的工作状态,并及时启动自动滴灌,非常有利于农作物的生产。一旦出现通信中断、水压异常等,能够及时地反映到控制中心,通过语音报警等方式立即通知相关人员进行维修,提高了整个系统的可靠性。另外系统采用ZigBee技术,网络结构简单,田间布设灵活,提高了自动灌溉的实用性及对水的使用效率,减小了劳动量、导线和管路敷设费用,且无需人为操作,能够长期稳定地工作,方便大面积安装、维护和系统回收,为我国的精准农业工程提供了强有力的工具。

1 2

关键词: STM32 S3C6410

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版