当前位置:文档之家› 欧姆龙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亮。

Response

实验总结:

1、Socket Tool 中一定要将下面以显示十六进制值打钩,否则无法正确读到数据。

2、对为操作由于命令发送是按字节发送,故对单个字置1或0时要用01或者00。

3、注意ETN模块面板node number要和IP地址最后一位一样。

4、如果通讯建立之后又发送了一次握手信号,将会反馈错误代码00000003(该命令不支持)并且通讯将会中断;发送错误会反馈错误信息,一样会中断。

5、错误代码有如下:

相关主题