如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
EIOLink协议编程说明1、与上位机通讯方式EIO支持和两种工作模式。下,EIO监听TCP/IP端口(默认为5100),等待远程主机建立连接。下,EIO根据设置,主动连接指定的或通过域名解析获得的远程主机地址。设备默认设置为。1)SocketTCP/IP通讯方式上位机软件通过Socket规范与EIO直接建立TCP/IP连接,在成功建立TCP/IP连接后,上位机与设备就可以进行数据通讯。2)虚拟串口通讯方式EIO支持虚拟串口技术,可以将EIOLink端口映射为本机的虚拟串口。上位机软件只需要按照常规的串口编程方式,使用EIOLink报文就可以与设备进行通讯,无需编写复杂的网络代码。2、功能描述为EIO专有协议,可以实时获得开关量输入状态。实时设置EIO开关量输出状态支持2个EIO配对,透传开关量输入/输出状态EIOLink支持TCP/IPServer、Client两种工作方式支持开关量输入状态变化主动发送Client模式下,支持动态域名解析7字节定长短包传输方式3、EIOLink协议报文1)报文说明报文数据样本(十六进制):0000FF00000000报文结构命令码状态码数据1数据2数据3数据4数据50000FF00000000命令码00:状态更新命令,定时发送的开关量输入状态报文。01:实时输入状态变化命令,当开关量输入状态发生变化时,EIO主动发送此命令码的报文。状态码00:说明报文正确,否则为报文为错误状态,由此字节指出错误码。数据1-数据51)EIO发出报文(上位机接收时)命令码为00时含义:8-40路开关量输入同步状态数据,EIO定时发送此报文。命令码为01时含义:8-40路开关量输入变化实时数据,EIO检测到8-40路开关量输入任意一路发生了变化(接通或断开),将主动向上位机发送开关量输入状态数据。例如EIO发出报文,上位机接收并解释为EIO的开关量输入发生了变化,第1组8路开关量输入中的1、2、3、4为接通状态,5、6、7、8为断开状态。例如EIO发出报文,上位机接收并解释为EIO定期发送的报文状态数据,当前第1组8路开关量输入中的1、2、3、4为接通状态,5、6、7、8为断开状态。如果长时间(默认为超过5秒)收不到此类型报文,上位机可判定网络故障或EIO已经丢失。2)EIO接收报文(上位机发送时)命令码为00或01时均解释为:8-40路开关量输出控制数据,数据1控制第1组8路开关量输出,数据2控制第2组8路开关量输出,以此类推。当数据的字节中的数据位置1时,对应的开关量输出为接通,或低电平状态。例如EIO收到报文后,将接通第1组输出中的1、2、3、4、8,或设置为低电平。而将5、6、7断开或设置成高电平。4、报文详解从EIO设备接收报文收到报文含义为:远程EIO设备的开关量输入状态。数据1至数据5,一共5个字节,每个字节对应EIO的1组8路开关量输入状态,数据1对应第1组8个开关量输入,以此类推。超过EIO输入路数的数据字节一直为0。置1的位,表示该路开关量输入为接通或低电平状态。置0的位,表示该路开关量输入为断开或高电平状态。EIO设备支持开关量状态变化主动发送,在与EIOLink端口(默认为5100)建立TCP/IP连接后,如果EIO设备的开关量输入状态发生改变,EIO将通过此连接,主动发送实时的开关量输入状态报文(命令码为01)。为了增强可靠性,即使开关量输入状态没有变化,EIO也会根据设置的间隔时间,一直发送当前开关量输入状态报文(命令码为00)。向EIO设备发送报文发送报文含义为:设置远程EIO设备的开关量输出为指定状态(命令码为00或01)。数据1至数据5,一共5个字节,每个数据字节的8个数据位,控制8路输出状态。超过最大输出路数的控制字节将被忽略。置1位,对应的输出为接通或低电平。置0位,对应输出为断开或高电平。5、更多示例从EIO收到报文收到:00001C00000000说明:EIO的开关量输入状态为1C=00011100,第1、2、6、7、8路输入为断开或高电平状态,第3、4、5路为接通或低电平状态。向EIO发送报文设置EIO的输出状态为指定状态发送:0000FF00000000说明:将EIO的第1组8路输出设置为全部接通或低电平状态。汁植垃睬俏夕植昭极摈