【工控老马】欧姆龙PLC Socket发送Fins/TCP命令解析 |
您所在的位置:网站首页 › plc的l和n接错 › 【工控老马】欧姆龙PLC Socket发送Fins/TCP命令解析 |
欧姆龙Socket tool发送Fins/TCP命令 实验设备:CJ2M-CPU33(PLC) 实验目的:发送Fins/TCP命令读写CJ2M-CPU33的数据 实验步骤: 1、 系统概述,硬件搭建和接线: 图1.1 2、软件设置 ①首先在PLC里通过CX-Programmer设置CJ2M-CPU33模块的IP地址和子网掩码,传送IO表设置,如下图所示: 图1.2 ②修改电脑的IP地址: CJ2M-CPU33的IP地址要与电脑同网段。 图1.3 ③Socket tool设置如下 选择TCP Client,点击创建 图1.4 点击连接 图1.5 ④发送握手信号 从客户端发送给服务器的握手信号格式: 图1.6 从服务器发送给客户端的握手信号格式: 图1.7 本实验是从客户端发命令到PLC,故发送命46494E53(FINS)0000000C(长度12字节)00000000(命令代码)00000000(错误代码)00000003(客户端节点号) 图1.8 反馈是46494E53(FINS)00000010(长度16字节)00000001(命令代码)00000000(错误代码)00000003(客户端节点号)00000001(服务器节点号) 通讯建立成功。 TCP命令格式 图1.9 FINS FRAME格式 图1.10 3、实验现象: A、读取W100的数据 给CJ2M-CPU33的W100赋值#1234 图1.11 发送Fins/TCP命46494E53(FINS)0000001A(数据长度26)00000002(命令代码)00000000(错误代码)800002000100000300000101B10064000001(FINS命令帧) 图1.12 反馈是46494E53(FINS)00000018(数据长度24)00000002(命令代码)0000 0000(错误代码)C0 00 02 00 03 00 00 01 00 00 01 01 00 00 12 34 (FINS反馈帧1234是反馈数据) B、往D0中写入数据#1234 发送Fins/TCP命令46494E53(FINS)0000001C(数据长度28)00000002(命令代码)00000000(错误代码)8000020001000003000001028200000000011234(FINS命令帧) 反馈如下46494E53(FINS)00000016(数据长度22)00000002(命令代码)00 000000(错误代码)C0 00 02 00 03 00 00 01 00 00 01 02 00 00(FINS反馈帧0000是反馈代码表示通讯正常) 在CX-Programmer中监控D0可以看到值是#1234 4、实验总结: A、如果通讯建立之后又发送了一次握手信号,将会反馈错误代码00000003(该命令不支持)并且通讯将会中断 B、错误代码是 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |