运动控制器EMAC200与触摸屏通讯运用技术.pdf
EMAC200与触摸屏通讯
关键词:开放式运动控制器;触摸屏;组态软件;ModbusTCP通讯协议
一、问题提出
触摸屏及组态软件与外部设备通讯,通常的解决方案是在触摸屏及组态软件中
集成了外部设备的协议,这样直接就可以使用该协议可以开发触屏程序了。但是通
用的运动控制器协议却很难在触摸屏中找到,因此我们没有办法采用传统的解决办
法来建立通讯。
二、解决方案构想
北京元茂兴控制设备技术有限责任公司的EMAC200运动控制器是一款开放式
ed
的多轴运动控制器。EMAC200提供了PMDPeriphReceivPMDPeriphReceive和PMDPeriphSenPMDPeriphSend函数,
使用者两个函数可以接收物理通道中的数据及发送数据到物理通道。基于这个功能,
我们可以选择触摸屏中集成了的开放式协议,使用PMDPeriphReceive函数接收触
摸屏发送的数据报文,在EMAC200的CME中进行处理,并调用PMDPeriphSenPMDPeriphSendd
函数将触摸屏需要的回应报文返回给触摸屏。
EMAC200有多个通讯接口,所有这些接口都可以收发数据。因为以太网传输
速率快,协议相对透明,在触摸屏及组态软件中支持比较好,因此我们优先选择
EMAC200的以太网接口作为其与触摸屏的通讯接口。
三、通讯协议的选择
Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相
互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为一
通用工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监
控。
由于Modbus协议的开放性,通用性及可靠性,我们选择了Modbus协议作为
EMAC200与触摸屏的通讯协议。Modbus在以太网上的协议被称为Modbus/TCP协
议。
四、协议实现基础
Modbus/TCP协议采用客户机/服务器模型,如图1所示:
客户机服务器
启动请求
功能码数据请求执行操作
启动响应
接收响应
操作码数据响应
图1
1Modbus/TCP/
在图中,我们看到采用一种请求应答的处理方式,即客户机发
送请求数据,服务器接受请求,处理请求,并发送应答数据给客户机。
在EMAC与触摸屏通讯系统中,触摸屏相当于客户机的功能,EMAC200担任
服务器的角色。因此,要实现通讯,我们需要在EMAC200中编写一个ModbusServer
程序。
该Server程序主要完成以下功能:
1、接受客户机发送的请求数据报文
2、从接收的请求数据报文中,分解出客户机提出的不同功能。
3、针对不同的功能,调用EMAC200的函数进行处理。
4、发送应答报文给客户机。
五、协议的具体实现
5.1请求报文分类
触摸屏发送的请求报文,我们可以将其分为四类。
1()
、离散变量布尔变量读
2、离散变量(布尔变量)写
3、整形变量读
4、整形变量写
Modbus/TCP协议提供了很多功能用于参数的读写,其中最常用的是功能3:读多个
寄存器及