单片机与人机界面通信方法(工业标准的 Modbus RTU协议)

发布时间:2012-3-29 10:05    发布者:wqlcd_911
关键词: Modbus
单片机与人机界面通信方法


在工控行业里,经常需要采集一些数据和控制动作,通过PLC来实现的话不但成本昂贵,而且灵活度和扩展都是问题。如果需要独立开发一种特殊功能,又需要连接触摸屏通讯,工程师在这个方面往往需要花费很大功夫,单片机与人机界面触摸屏通讯的最简单,最有效的 2种方法,其实就是分为2种通讯协议,即工业标准的 Modbus RTU协议和工程师自己定义的自由协议。

我采用了广州微嵌公司(公司网站:555555">http://www.wqlcd.com)的人机界面作为参考,因为其提供了一些技术支持和单片机源代码,此人机界面可支持自由协议,开发工程比较方便。
方案比较:
方案一 modbus—rtu协议:
优点:工业标准通讯协议,具有通用性,,传输数据量大
缺点:需要时间去了解协议的格式和以及按照规定编写通讯程序

广州微嵌提供MODBUS-RTU源代码,直接移植就可以
方案二
自由协议:
优点:数据格式客户自己定义,灵活多变,定制性强,可以模拟任何已知报文的通讯协议
缺点:传输数据量不大,通用性不强,移植不方便

工程师可以根据以上两种通讯协议的优缺点来选择理想的方案;

现在先介绍微嵌公司的人机界面的modbus—rtu协议。

首先下载人机界面的组态软件: http://www.wqlcd.com/new/league.asp?keyno=34现在公司出来4.0的新版本,增加了不少新功能,所以我以此版本作介绍

下载安装好软件之后,新建一个工程文件,型号对应的是公司出产产品型号,
型号选择.jpg


然后点击下面的通道选择modbus—rtu协议:
通信方式选择.jpg


可以通过[新增]扩展通讯接口设置扩展数量由硬件决定,微嵌的人机界面串口既可以做RS232,又可以做RS485,根据客户工程需求接线,通讯协议对应的就是单片机工程师需要用的协议,其中有Modbus rtu协议,自由协议Free Protocol,当然还包括西门子200,台达PLC,欧姆龙,三菱等协议。

我们随便建一个比较简单实用的采集单片机的数据(AD采集)显示在组态软件的点阵数码管(单片机可以通过串口与计算机连接在线模拟,方便开发工程)

选择点阵.jpg


然后我们要给各通道指定一个寄存器地址,方法实现如下:
属性.jpg


所有的通道都设置好后把工程下载到人机界面显示屏里(或在线模拟)。
11.jpg


给单片机板烧录modbus—rtu协议及简单的四路模拟量采集功能:
12.jpg




附件内有部分单片机modbus—rtu协议源码及方案说明
单片机人机界面通信例程.rar (440.23 KB)





技术支持QQ315033726

本文地址:https://www.eechina.com/thread-87938-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表