微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于RS-485总线的温度监控系统

基于RS-485总线的温度监控系统

时间:11-19 来源:互联网 点击:

温度值的显示。最后采用中断方案,每隔10ms进入中断程序,循环选通各个数码管,分时显示对应的数字值。三是A/D采样数据的处理,为避免因干扰而造成A/D采样数据不稳定,这里采用软件滤波的方法以滤除可能的尖峰干扰。方法是连续采样七次,去掉最高值和最低值,其余五次取平均值来获得A/D采样的数字量。

经测量,0V对应的温度为0℃,,5V时对应的温度为1 25℃,则比例因子K=0.04V/℃。每个数字量对应的电压值为20mV,则数字量变化与温度变化比例关系K1=2数字量/℃,利用此比例因子就可由数字量得到当前温度。

上位机软件设计

本系统为主从式监控系统,主机(即上位机)在向下位机发预置温度启动下位机后,轮询不同地址码的从机,获得温度值,存入数据库并在主界面显示。从机接收到主机预置温度后启动,每次主机询问温度值时回送测量温度值。如出现掉电后重启的情况,从机向主机发出重置请求,要求主机重发预置温度。上位机的通信软件开发采用Borland公司的C++Builder5.O,它的集成RAD开发环境可以帮助开发人员快速高效地开发出高质量的程序。在C++Builder中对串口进行编程可以使用Mscomm控件加快开发进度。它是一个ActiveX组件,不在C++Builder。安装中提供,可以在装有VC6.0的PC 上获得,拷贝到本机上注册后,在C++ B u il d e r下,先是在菜单的Compotlent选项中导入ActiveX控件,再Install Packages后就可以在ActiveX面板中看到并使用它了。

数据库采用微软的ACC:ESS数据库,使用ADO数据引擎;C++Builder在ADO面板中提供了完备的ADO开发控件,实现了通过鼠标操作就能实现连接数据库、编辑数据内容、显示数据等一些基本数据库操作功能。程序还可以绘制温度变化历史曲线便于操作员管理。

总线通信格式设置

上位机和下位机之间的串行通信采用RS一485标准接口,PC端接一个RS232/     485的转换器,就实现RS485总线控制了。在通信频率1200bps 的情况下,有效通信距离为1.2km。由于有多个从设备并联在485总线上,所以要制定严格的通信格式,表1是用到的通信协议。

结语

笔者设计了一种基于RS485总线的温控系统。此系统投资少,架设简单、可扩展性强,大大减轻管理者的负担,实现了工业控制自动化。目前在多个场所得到了具体应用,其测温精度在0.5℃以内,系统工作可靠稳定,无通信故障。

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

网站地图

Top