关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 基于MODBUS协议智能控制系统设计

基于MODBUS协议智能控制系统设计

作者: 时间:2010-09-02 来源:网络 收藏

3.系统软件设计
3.1 MODBUS通信协议
软件Modbua协议包括ASCII、RTU、TCP等,标准的Modbus采集器使用RS232C实现串行的Modbus。Modbus的ASCII、RTU协议规定了消息、命令和应答的方式,数据通讯采用Maser/Slave方式,Master端发出数据请求消息,Slave端接收到正确消息后就可以发送数据到Master端以响应请求;Master端也可以直接发消息修改Slave端的数据,实现双向读写。Modbus协议需要对数据进行校验,串行协议中除有奇偶校验外,ASCII模式采用LRC校验,RTU模式采用16位CRC校验。
在上位机监控界面上建立ADOData控件,ID为IDC_ADODCl,在通用属性的连接中输入服务器名称COMPUTER,选择数据库MASTER,点击测试连接,如果显示测试成功,表示连接SQLsever2000数据库成功。再在数据库中新建一个TABLEI表,表中包括时间,实际数据,设定数据字段,记录源的命令文本中SQL命令为select*from TABLEl;其次在监控界面上建立DataGrid控件,在datasource属性中选择IDC_ADODCl,与ADOData控件建立起联系,通过以上的步骤就实现了VC++6.O监控界面对数据库的访问。在VC++6.0环境完成程序编写,运行得到控制系统的数据显示界面如图4。

3c.jpg


当上位机MODBUS串口程序把下位机的实际上来并显示界面中后,就可以对实际数据绘制动态曲线图。动态曲线横坐标是时间,纵坐标是实际数据值,两个坐标确定一个动态点。动态曲线的显示过程是把动态的数据值放到一个数组中,每采集一个新的数据值存放在数组的最低位,数组中的所有数据位向前移一位,最高的数据位移出;在MSCOMM控件OnOnCommMscomm函数中得到当前具体的时、分、秒,再将具体时间显示在横坐标相应位置,然后把数组中的所有数字以及每个数字所对应的时间的坐标点用线连接起来就构成了动态曲线图,动态曲线图如图5所示。

3d.jpg

4 结束语
本系统由模块,控制电路三部分组成。下位机采用C语言编程,上位机采用VC++6.O编程,以SQLever2000作为后台数据库,上位机与下位机之间采用RS-485总线通讯,研究并编写基于MODBUS协议的工控软件。实验测试表明,本系统实现了上下位机基于MODBUS协议的RS-485总线通讯,在下位机LCD和上位机VC界面显示数据值,在数据库中保存实际数据值,并且绘制实际数据曲线,实时显示数据误差不超过l℃。本控制系统符合工业控制系统设计的要求,有较好的扩展性和多功能的特点,可以扩展到255个设备多点的温度、湿度、压力、流量等数据监测控制,在橡胶、石油、冶金、食品加工、环境监测等工业自动化控制系统中可以取代工控仪表和PLC的检测和控制作用,开发具有自主知识产权产品并降低成本具有重要的现实意义,本文提出的方法对于采用MODBUS协议的系统的研究与开发也具有一定的理论研究和实用价值。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭