当前位置:文档之家› 欧姆龙PLC以太网TCP命令FINS协议实验

欧姆龙PLC以太网TCP命令FINS协议实验

ETN21以太网fins/TCP命令
实验时间:2014年10月8日
实验设备:CP1H-XA40DR-A、CP1W-EXT01、CJ1W-ETN21、网线
实验目的:利用SOCKETTOOL发送fins/TCP命令,对CPU内存进行读取和写入。

实验步骤:
1、 IP地址设置:
①打开电脑本地连接查看IP地址如下:

②usb线连上电脑,打开I/O表,将ETN21模块的ip地址与电脑设置为同一
个网段不同节点,节点号跟硬件上的node number一样,下载重启模块,如
下:

2、 配置socketool软件
①软件选TCP Client,创建,输入ETN21的IP地址和端口号,端口号9600,如下:
点击连接,显示十六进制值打勾:
3、 握手信号
TCP方式客户端需要发给服务器握手信号,等待服务器正常反馈表示握手成
功,才能正常交流数据。客户端发出的命令格式如下:
服务器反馈的命令格式如下:
故sockettool发送命令为:
46494E53(FINS)0000000C(长度12字节)00000000(命令

代码)00000000(错误代码)000000D6(客户端节点号214),即:
46494E530000000C0000000000000000000000D6
46494E530000000C00000000000000000000003C
反馈是46494E53(FINS)00000010(长度16字节)00000001(命令代码)00000000(错误
代码)000000D6(客户端节点号)00000003(服务器节点号)
通讯建立成功。

4、TCP命令
①命令帧如下,ETN手册W421第7-4有相关介绍,如下:

Fins 命令格式:
实验现象:
1、勾选16进制,输入读取D1命令:发送Fins/TCP命46494E53(FINS)0000001A(数据长
度26)00000002(命令代码)00000000(错误代码)80000200030000D600000101820001000001
(FINS命令帧),即:
46494E530000001A000000020000000080000200030000D600000101820001000001
46494E530000001A0000000200000000800002000100003C00000101820001000001
写入命令,CIO区100.01和100.02置位:发送Fins/TCP命令46494E53(FINS)0000001C(数
据长度28)00000002(命令代码)00000000(错误代码)
80000200030000D6000001023000640100020101(FINS命令帧)
即:46494E530000001C000000020000000080000200030000D6000001023000640100020101

查看内存:
并可看到输出灯100.01和100.02亮。
上述FINS DATE:

80 00 02 00 03 00 00 D6 00 00
ICF RSV GCT DNA DA1 DA2 SNA SA1 SA2 SID

0101/0102 82/30 000000/006401 0001/0002 0101
读/写 D区字/CIO位 D0/CIO100.01 1个/2位 数据

Response
C0 00 02 00 D6 00 00 03 00 00
ICF RSV GCT DNA DA1 DA2 SNA SA1 SA2 SID
0101 0000 /1111
读内存 表示正常完成 /反馈D1为1111
实验总结:
1、 Socket Tool 中一定要将下面以显示十六进制值打钩,否则无法正确读到数
据。
2、对为操作由于命令发送是按字节发送,故对单个字置1或0时要用01或者
00。
3、注意ETN模块面板node number要和IP地址最后一位一样。
4、如果通讯建立之后又发送了一次握手信号,将会反馈错误代码00000003(该
命令不支持)并且通讯将会中断;发送错误会反馈错误信息,一样会中断。
5、错误代码有如下:

相关主题