基于单片机的水质监测系统的设计

2012-07-18 14:38:43 来源:山西电子技术

摘要:  提出了一种基于单片机的水质监测仪系统,系统与上位机采用Modbus协议进行通信。介绍了基本的功能模块的电路设计,并给出了软件程序流程图。实际应用表明:系统运行稳定,功耗低,有一定的应用价值。

关键字:  水质监测仪系统,  

提出了一种基于单片机的水质监测仪系统,系统与上位机采用Modbus协议进行通信。介绍了基本的功能模块的电路设计,并给出了软件程序流程图。实际应用表明:系统运行稳定,功耗低,有一定的应用价值。

水质监测是水资源管理与保护的重要基础,液体的含氧量、温度、酸碱度、电导率等特性参数可以反映液体的许多物理、化学特性,因此测量液体的特性参数可以有效地监测水质,具有重要的现实意义。本文设计了一种结合单片机与RS485总线的多点水质检测系统,理论上在上位机(PC机或者触摸屏)可以监测255点的水质情况,系统的总体结构如图1所示。

1 系统硬件设计

监测系统的硬件框图如图2所示,系统主要包括单片机模块、电源模块、时钟模块、传感器模块、RS485接口模块以及键盘/显示模块等。水质监测系统工作过程如下:传感器模块定时采集水质参数,然后存入存储器并且在显示模块显示,在特定的控制信号作用下,通过RS485接口上传到上位机,完成水质监测。作为控制核心的单片机选择C8051F040,该芯片是完全集成的混合信号系统级MCU芯片,具有与MCS-51指令集完全兼容的内核,在一个芯片内集成了构成一个单片机数据采集或控制系统所需要的几乎所有模拟和数字外设及其他功能部件,有利于简化电路设计。

1.1 电源模块

系统的输入电压是直流5 V,由外部提供,由于C8051F040需要3.3 V的电源供电,考虑到系统的功耗较低。电流不大,所以可以通过电源转换芯片SPX1117将+5 V转换为3.3 V,电路如图3所示。电源的滤波电路由电容、电感和电阻构成,在制版的时候需要将它们尽可能地靠近芯片。

1.2 传感器模块

传感器模块就是利用各种传感器测量水质参数,由于系统采用的是多机通信,为了简化数据通信要求,提高通信的可靠性,在系统设计中将测量的水质参数首先存储到双口RAM DS1609。DS1609是具有256字节的双端口随机存取存储器,它在一个存储器器件上连接了两个可异步操作的地址总线数据总线,两个端口都有各自独立的RAM控制信号,可以无限制地访问所有256字节的存储单元。DS1609与C8051F040接口如图4所示。

1.3 RS485接口模块

本系统通信采用RS485总线技术,接口电路采用MAX483E作为收发器。MAX483E采用单一的5 V电源供电,是适用于工业现场环境下RS485通信的低功率收发器,它包括一个驱动器和一个接受器。每一个驱动器输出和接受器输入都具有保护,能抗15 kV静电放电,在高达250 kbps速率下可实现无误差的数据传输。

2 系统软件设计

2.1 Modbus通信协议

设计的水质监测系统通信方式是采用RS-485总线的Modbus协议。Modbus是一种串行通信协议,此协议定义了一个消息结构。在应用层上,Modbus是一个请求/应答协议,并且提供功能码规定的服务。Modbus分为两种传输模式,ASCII和RTU模式。Modbus协议在一个网络上的所有设备,都必须选择相同的传输模式和串口参数,本系统的数据通信模式采用RTU模式。

2.2 监测系统软件流程

上电后,上位机主动发送握手帧给下位机。如果连接正确,上位机会收到下位机的握手应答帧,收到后进入正常的通讯模式。如果收不到或者出错,上位机在连续发送10次后产生报警信息,说明通信出故障了。在正常的通信模式,上位机根据地址依次查询各监测机的状态,当监测机处于联机状态时,则发送操作指令,否则转去查询下一台监测机的联机状态。在监测系统平台上,软件流程图如图5所示。

2.3 监测系统地址确认

主从机在进行数据通信之前,需要进行地址确认,目的就是让上位机知道采集的水质参数来自哪一个监测系统。

上位机首先发送地址编号到所有监测系统,各监测系统核对地址,若地址不匹配,就继续等待上位机的呼叫,若地址匹配,则向上位机发送应答地址。

3 结束语

本文结合单片机技术和RS485总线技术实现了对多点水质进行监测,在实验调试中验证了本系统采集数据的准确性和通信的可靠性。本系统具有较强的实用性和可扩展性,而且系统稳定可靠,功耗较低,易于实现,具有一定的应用价值。

本文为哔哥哔特资讯原创文章,未经允许和授权,不得转载,否则将严格追究法律责任;
Big-Bit 商务网

请使用微信扫码登陆

x
凌鸥学园天地 广告