基于单片机控制的智能移动终端设计*
2019-09-07荆黎明孙德意田思庆
荆黎明,孙德意,田思庆
(1.佳木斯大学信息电子技术学院,黑龙江 佳木斯154007; 2.光大环保(中国)有限公司工程管理部,广东 深圳 518000)
0 引言
在现代农业中,智能设备越来越普及,而系统的操作难度也会越来越低,为了使无线传感器网络的节水灌溉控制系统便于使用,增加系统的适用性,降低用户操作的难度,本文设计了基于单片机控制的智能移动终端。该系统可以通过按键控制农田中的传感器、调节阀、注水泵、混合比例注肥泵和混合比例注药泵的启动和关闭,LCD显示屏可以实时显示调节阀、注水泵、混合比例注肥泵和混合比例注药泵的开关状态以及传感器的数据。
1 系统总体方案设计
智能移动终端是由单片机、ZigBee模块、按键、LCD显示屏等部分构成,系统采用STC89C52单片机作为控制器,ZigBee模块采用CC2430进行与上位机传输数据,显示屏采用LCD1602进行数据显示,按键采用轻触开关进行传感器和调节阀的选择并且进行注水泵、混合比例注肥泵和混合比例注药泵的启动和关闭,系统采用5V电源供电。系统总体结构框图如图1所示。
本系统的工作过程是:主控制器采集由用户操作的按键信号,然后通过ZigBee模块与上位机通信并发送相应的数据信号,上位机接收到信号后,通过无线传感器网络将指令发送到相应的设备(传感器、调节阀、注水泵以及混合比例注肥泵和混合比例注药泵)上,该设备立即执行移动终端的命令,上位机采集设备的状态信息并发送回移动终端,可供用户查看。
图1 系统总体结构框图
2 硬件组成及工作原理
2.1 硬件选型
本系统采用的主控制器为STC公司生产的89C52RC型号单片机,它不仅支持两线制的下载方式,下载程序方便快捷,而且支持6T模式,它内部集成了4KB容量的E2PROM,具有32个I/O口,程序存储器具有超过10万次的擦写寿命。该芯片具有优良的特性,能够满足本系统的需求,相比于其它51单片机,具有速度快、性能好、程序下载方便、功耗低等优点,是本系统首选微控制器[1]。
本系统采用与无线传感器网络的节水灌溉控制系统相同的ZigBee模块(CC2430),该芯片符合2.4 GHz的IEEE 802.15.4标准。它内部集成了8位微处理器、VCO、LNA、PA和内部电源稳压器。为了组成完整的ZigBee模块,外围电路需要提供32 MHz晶体振荡器XTAL1为其内部的微处理器提供时钟源,射频(RF)部分需要提供精准的电感、电容和PCB微波传输线,以匹配RF输入和输出的阻抗。CC2430的串行端口引脚连接到单片机的串行端口引脚P3.0和P3.1。
2.2 单片机最小系统设计
单片机最小系统是系统正常运行的必要条件,其所需要的硬件有单片机、晶振、按键和电容等,具体包含的电路有复位电路和晶振电路。
为了使系统能够稳定运行,需要采用上电复位和按键复位两种控制方式。
单片机复位的工作原理是使复位引脚(RST)上的电平为高电平并且持续2微秒即可。复位的作用是单片机正常运行受到环境干扰出现程序跑飞时,按下复位按钮,单片机内部的程序自动从头开始执行。晶振电路的作用是为系统提供基本的时钟信号,通常一个系统共用一个晶振,便于各部分保持同步。单片机最小系统原理图如图2所示。
图2 单片机最小系统原理图
2.3 ZigBee模块设计
ZigBee模块是本系统通信的重要部件,它不仅可以为上位机通信,而且可以为单片机传输数据,所需硬件有CC2430、电阻、电容、电感以及天线和晶振。
为了使系统良好运行,电路中的非平衡变压器要由电容C71(5.6pF)和电感L6(8.6nH)、L7(22nH)、L8(1.8nH)以及一个PCB微波传输线组成,整个结构需满足RF输入/输出匹配电阻(50Ω)的要求。R15(56kΩ)和R16(43kΩ)为偏置电阻,电阻R15是为32MHz晶振(XTAL2)提供合适的工作电流。32MHz的晶振电路是由C61(22pF)和C62(22pF)电容组成,32.769 kHz的晶振电路是由C51(15pF)和C52(15pF)电容构成。整个系统由3.3V电压供电,电路硬件原理图如图3所示。
图3 CC2430硬件原理图
在综合考虑发射天线、开关、滤波器、低噪放、功放、收发开关、微波收发网络、PCB布线等器件和电路产生的损耗,考虑实际影响传输距离的电路因素和传输路径等因素后,使用IEEE802.15.4a模型,推测出在户外的传输距离大约为2952.3m,该传输距离足以满足系统的设计需求[2]。
2.4 按键模块设计
综合考虑各种因素,本系统需使用矩阵按键,矩阵按键是由四个I/O线作为行线,四个I/O线作为列线,在行线和列线的交点上设置按键,这样会产生16个交点(按键),这种按键结构能够有效提高I/O口的利用率[3]。
它的工作原理是无按键闭合时,P1.0~P1.3与P1.4~P1.7之间开路,有按键闭合时,与闭合键相连的两条I/O口线之间短路。判断有无按键按下的方法是:第一步,设置P0口的高四位为输入状态,从P0口的低四位输出低电平(即P0=0XF0),读入高四位的数据,若某一位为低电平,则该行上有按键闭合;第二步,使P0口低四位轮流输出低电平,从高四位读入数据,若有某一行为低电平,则对应列线上有键按下。综合一二两步的结果可确定按键位置,矩阵按键的硬件原理图如图4所示。
图4 矩阵按键硬件原理图
2.5 显示模块设计
本模块采用LCD1602显示屏进行数据显示,使用大写字母“S”加传感器的编号作为传感器的显示名称,其后显示传感器实时的数据(如“S10 20℃”,表示10号传感器所测量的土壤数据为20℃),使用抽水泵、混合比例注肥泵、混合比例注药泵的拼音名称作为显示名称,其后使用大写字母“K”和“G”,表示设备的开关状态(如“ChouShuiBeng K”表示抽水泵的状态为开),使用大写字母“D”加电磁阀门的编号作为电磁阀门的显示名称,其后使用大写字母“K”和“G”,表示电磁阀门的开关状态(如“D25 K”表示25号电磁阀门状态为开)。其硬件原理图如图5所示。
图5 显示模块硬件原理图
2.6 供电系统设计
本系统中单片机需要5V电压进行供电, ZigBee模块需要3.3V电压进行供电,为给ZigBee模块进行供电,这里采用AMS1117-3.3三端稳压电源模块进行电压分配,供电硬件原理图如图6示。
图6 供电硬件原理图
3 系统软件设计
单片机系统程序采用keil C语言编写,主要实现基于ZigBee技术短距离无线收发功能,按键信号采集,数据显示等功能。设备状态可由按键自由切换,状态数据自动在LCD1602上显示,可供用户查看和控制。系统通过ZigBee模块可以远距离访问上位机并发送相应的控制指令,上位机进行应答并通过无线传感器网络控制相应的设备和收集相应设备的状态数据,然后上位机通过ZigBee模块发送给移动终端。程序流程图如图7所示。
图7 程序流程图
4 结论
智能移动终端由单片机、CC2430、LCD1602和矩阵键盘构成,它可以搭配无线传感器网络的节水灌溉控制系统,共同为用户提供良好的使用体验,可以为用户提供方便。该系统可以远距离与上位机通信并获取农田设备状态信息,能够帮助用户在农田随意启用相应的设备,查看土壤数据信息,关闭危险的带电设备,更改水流方向,能够显著降低用户操作智能化设备的难度,增强了灌溉设备的适用性,提升了系统的自动化程度。