微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于AT89S52的水情遥测终端设计与实现

基于AT89S52的水情遥测终端设计与实现

时间:03-17 来源:互联网 点击:

随着水文现代化进程的不断推进,水情测报作为水文工作的重要手段也在迅速发展。水情测报应用遥测、计算机、控制和通信等先进科技对水文信息进行实时遥测、传送和处理,其系统主要由遥测站、中继站和中心站3部分组成。遥测站利用水情遥测终端(RTU)完成各种水文传感器数据的采集和处理,最终与中心站进行双向通信,实现水情的预报或调度决策。遥测终端是整个测报系统的信息和决策依据来源,因此如何构建功能完善、可靠性高、通用灵活、易维护的遥测终端成为设计的关键。
目前,水情遥测终端的设计基本采用MCS51、MSP430及ARM等系列单片机作为控制芯片,配置各种外围电路实现系统功能。本文设计了一种基于AT89S52单片机的低功耗水情遥测终端,其功能完善、性能稳定,能为控制中心提供准确、综合全面的水情信息。

1 系统总体设计
系统采用模块化设计,根据功能,整个遥测终端可分为单片机模块、数据采集模块、数据通信模块、人机交互模块和电源供电模块等部分,该系统结构如图1所示。

系统工作流程:单片机读取雨量、水位、闸位等参数,进行处理、存储和编码,在自报或召报方式下,经调制解调器后通过无线数传电台发送至中继站或中心站。该系统具有良好的人机交互功能,可通过键盘操作实现参数的设置和数据实时动态显示。

2 系统硬件电路设计
从遥测终端的功能需求、成本、接口电路及程序复杂度等方面综合考虑,选用ATMEL公司的AT89S52单片机为控制核心,它带有8 kB的Flash存储器和256字节RAM,支持全静态操作及空闲、掉电两种可选节电模式。整个系统在硬件逻辑结构上由数据采集接口电路、通信接口电路、人机接口电路、实时时钟电路、存储扩展电路及电源电路组成。
2.1 数据采集接口电路设计
本文仅以雨量、水位的数据采集为例。
雨量采集采用翻斗式雨量计,当降雨量达到1 mm,雨量计翻动1次发出1个脉冲信号触发中断0,唤醒处于低功耗状态的单片机,对雨量进行累加、存储和即时发送。由于雨量计的干簧管开关吸合会出现抖动现象,为了确保雨量记录的准确无误,雨量计输出脉冲信号须经过脉冲整形方能送入后继单元进行处理。整形电路如图2所示,MC14538是可重复触发和复位的单稳态触发器件,R2、R3为保护电阻。在非跳变期间,脉冲的不规则变化保持在一定范围,VD1、VD2的比较结果相同,触发器不工作,使输出脉冲保持稳定。


系统设计2路水位采集,浮子式水位计的输出为12位并行格雷码,为节省单片机I/O口资源,经两片MC14021移位寄存器锁存,将并行数据转换为串行数据后逐位输出至单片机进行处理。串并转换电路如图3所示,接上拉保护电阻以增强电路的稳定性。

2.2 通信接口电路设计
遥测终端的最终目标是将采集的水情数据处理成帧,利用无线数传电台进行远距离传输后传送至中心站。使用RS-232作为与电台连接的接口,它亦可连接SMS/GSM、GPRS等通信模块,以满足不同应用环境下的需求,提高了系统的通用性。
调制解调采用全双工低速MODEM芯片MC145442,它含有完整的频率变换调变(FSK)调制器、解调器和滤波器,提供300波特率的FSK信号的双向数据传输,支持呼叫模式和应答模式。通信接口电路结构如图4所示,串口电平转换使用MAX232芯片,MC145442的RXD、TXD、RXA1/RXA 2、TXA端口分别为数据接收端、数据发送端、载波接收端和载波发送端。

2.3 人机接口电路设计
为体现系统友好的人机接口界面,便于输入和显示控制参数等,采用1602字符型液晶显示模块作为输出显示器件。1602显示模块内置控制驱动器HD44780,显示和驱动工作均由此控制器和外围电路完成。配置4x4键盘,负责快速、准确、方便地设置参数和实现各种控制功能。键盘直接由P1口的高、低字节构成,采用中断输出,即列线连接与门器件接外部中断1,置行线和列线分别为高电平和低电平,当有键按下时,电路输出低电平,触发中断后进入中断例程,判断哪个键被按下。
2.4 其他扩展电路
本系统选用低功耗的CMOS AT24C08芯片作为扩充存储器,该芯片是带有I2C总线接口的8 kB的串行EEPROM,电路上将P2.3、P2.4与SCL和SDA相连。该存储器中保存设置参数、历史水情数据和数据采集的时间标记,用户可通过按键进行显示、查阅。
数据采集的时间标记和报平安时间间隔计算则采用DS1302实时时钟芯片来实现。DS1302提供年、月、周、日、时、秒的数据信息,采用SPI与CPU进行通信,接口简单,只需RST复位、I/O数据线、SCLK串行时钟线分别于P2.5、P2.6、P2.7相连。
遥测终端安装在野外,没有持续的电力供给,为实现长期无人值守环境下的自动监测,采用20 W/12 V的太阳能板和蓄电池供电系统。

3 系统软件设计
遥测终端实现的主要功能有:根据规约(产生1 mm雨量:水位每变化1 cm,且满足时间间隔5 min)采集各种传感器数据和电源状态参数信息,并进行存储和发送;无参数发送时终端处于值守状态下,按自报周期(缺省值为8 h)向中心站全量发送数据,以指示遥测站正常工作,实现报平安功能:招报方式下,响应中心站的数据要求指令,采集各种数据并全量发送:响应键盘指令,接收和更新参数的设置与修改,动态显示水情数据、终端状态信息等;通话功能,工作人员可现场通过电台与中继站或中心站联系,为指挥调度、现场维护提供话务功能。
系统软件的主程序流程如图5所示:系统初始化,确保系统处于正常工作状态:默认进入休眠模式,以降低终端系统功耗;等待外部中断唤醒系统,进行数据采集、传送,实现各种控制功能。实现功能的硬中断例程主要包括雨量中断例程、定时器中断例程(图5)、键盘中断例程(图5)。雨量中断例程完成雨量的累加、存储和发送。定时器中断例程首先采集水位数据,检查测量值变化是否超过1 cm,是则存储数据并重新采集雨量、水位、闸位等水情数据及电源电压参数后发送;否则读取实时时钟的值,计算时间间隔,若达报平安周期,则进行各种数据的采集和发送。键盘中断例程主要负责接受键盘命令,进行相应处理,包括实时显示和参数设置。例程中定时器的作用是规定最大按键操作时间(一般2~3 min),即在按键超时后强行进入低功耗状态,防止无操作而无限的键盘扫描循环。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top