当前位置:
modbus新起点连载--台达PLC的modbusTCP客户端程序
回复 | 人气 | 打印
we9322025 个人主页 给TA发消息 加TA为好友 发表于:2018-07-21 17:11:11 楼主

之前章节链接

modbus新起点1--基础篇:http://bbs.gongkong.com/d/201807/764982_1.shtml 

modbus新起点连载2--modbus台达篇:http://bbs.gongkong.com/d/201807/765040_1.shtml

modbus的新起点连载3——台达PLC的modbus主站:http://bbs.gongkong.com/d/201807/765110_1.shtml

modbus新起点连载4--台达PLC以太网的数据交换:http://bbs.gongkong.com/D/201807/765957_1.shtml 

modbus新起点连载5--台达PLC的modbusTCP客户端程序:http://bbs.gongkong.com/D/201807/765961_1.shtml 

modbus新起点连载6——西门子200的modbusRTU: http://bbs.gongkong.com/D/201807/766167_1.shtml 

上一章节的分享,主要是基于台达PLC的以太网的资料交换功能。资料交换挺方便的,速度蛮快,但是只支持H03(读取多个寄存器)、H10(写入多个寄存器)、H17(读写多个寄存器),如果需要用到其他功能码的比如01功能(读线圈),02功能(读取输入点)就显得无能为力了。

为此给大家分享一下台达modbus tcp客户端的使用方法。

在这里的我这边依然采用台达12SEPLCModbus TCP指令为ETHRW

说明如下:

  image.png

S1的区域占用5个寄存器,S2区域作为协议装置的地址。

在这里用PCmodbus slave工具模拟了一个数值。IP地址为192.168.1.55PLCIP地址为192.168.1.99),我对2048之后的一些地址进行赋值如下图:

image.png

在这里指令各个参数含义就并不介绍了,直接进入编程环节。程序如下:

image.png

可以看出,由于TCP的请求超时默认是3S,基本不用修改,所以第一步忽略,剩下3步。

第一部分 通讯指令填写

image.png

S1赋值D0连续5个寄存器,分别存储了IP、模块编号、通讯站号和功能码四个内容。参见程序的第二步。

S2地址:目前modbus slave中赋值的参数从2048(十六进制H0800)开始。

D:读写的数据,如果是读取,存放读取的内容,如果是写入,则存放写入的内容。

第二步 IP、通讯口、读写参数设定

image.png

可以看到IP地址占用了一个32位的存储D0,内容为HC0A80127,按八位的拆开后,C0(十进制192),A8(十进制168),01(十进制01),37,(十进制55)。PCIP正好是192.168.1.55。这样就很明白了。

D2为模块编号,EH3的通讯卡编号和SE的主机固定为K108;当有连接左侧Ethernet模块时,其通讯口分别依其连接台数(最靠近主机的为第1)编号定义为K100(1) ~ K107(8)

D3为站号:站号我习惯默认为1。在modbus TCP中这个参数本身意义不大,只是用来转换RTUASCII中才有用。

D4功能码:在这我用读取的指令,使用常用的03的功能码

第三步 判断通讯读取的结果

image.png

D1395为存放接收完成时的状态旗标,其bit0~8分别表示哪一个模块的通讯口已经完成接收,也即是bit0~7分别表示左侧第1~8台的通讯口,bit8表示Ethernet 通讯卡;例如EH312SE主机) Ethernet通讯卡接收完成,则输入条件判断指令BLD  D1395  k8 就会成立。

D1396为存放接收错误的状态旗标,其bit0~8分别表示哪一模块已经发生错误;例如左侧模块第1EN01的通讯口有接收错误发生,则输入条件判断指令BLD  D1396  k0 就会成立。

在这里12SE的主机的通讯均有Bit8决定,所以用其生成了通讯的标志位。

最后看下我们当M0使能后,读取回D50的内容存的是什么。

image.png

在把之前的模拟数据拿出来。(因为只读取了5个数,所以D56显示为0

image.png


PS:到这里经历了两周的时间,到台达的章节已经完成,附件是modbus TCP客户端的样例。下一章节的1200部分,由于软件装起来比较费劲。所以可能会稍微慢一点。

在这里分享这么多,只想聚集一群在通信上摸爬滚打的兄弟们,欢迎志同道合的同志们加我微信we9322025.




正在下载,请等待……
下载附件需1积分!

分享到: 关注收藏 邀请回答 回复 举报
丨丶灬迷失er丨 个人主页 给TA发消息 加TA为好友 发表于:2018-07-24 08:56:09 1楼
 

楼主好人..谢谢楼主分享

  回复 引用 举报
丨丶灬迷失er丨 个人主页 给TA发消息 加TA为好友 发表于:2018-07-24 08:56:22 2楼
 

楼主好人..谢谢楼主分享

  回复 引用 举报
丨丶灬迷失er丨 个人主页 给TA发消息 加TA为好友 发表于:2018-07-24 08:56:40 3楼
 

楼主好人,谢谢楼主分享

  回复 引用 举报
okma11 个人主页 给TA发消息 加TA为好友 发表于:2018-08-06 05:24:53 4楼
 

感谢楼主分享

  回复 引用 举报
海涛 个人主页 给TA发消息 加TA为好友 发表于:2018-09-10 10:42:32 5楼
 

感谢楼主分享

  回复 引用 举报
silky_56 个人主页 给TA发消息 加TA为好友 发表于:2019-01-02 11:59:59 6楼
 

学习学习,谢谢楼主分享

  回复 引用 举报
hanliy 个人主页 给TA发消息 加TA为好友 发表于:2019-01-03 21:17:24 7楼
 

学习学习,谢谢楼主分享!


  回复 引用 举报
scofieldwxf 个人主页 给TA发消息 加TA为好友 发表于:2019-02-21 23:39:22 8楼
 

楼主好人,赶紧下载学习

  回复 引用 举报
liujiseng 个人主页 给TA发消息 加TA为好友 发表于:2019-02-22 08:12:12 9楼
 

楼主好人..谢谢楼主分享

  回复 引用 举报
allenlhr 个人主页 给TA发消息 加TA为好友 发表于:2019-03-25 15:04:18 10楼
 

感谢楼主分享,学习学习

  回复 引用 举报
涅灭 个人主页 给TA发消息 加TA为好友 发表于:2019-06-28 17:26:50 11楼
 

楼主好人..谢谢楼主分享


  回复 引用 举报
yaomingbrueelii 个人主页 给TA发消息 加TA为好友 发表于:2019-07-04 21:41:41 12楼
 
楼主好人..谢谢楼主分享
楼主好人..谢谢楼主分享

  回复 引用 举报
涅灭 个人主页 给TA发消息 加TA为好友 发表于:2019-07-07 13:34:43 13楼
 

学习学习,谢谢楼主分享!

  回复 引用 举报
天赋 个人主页 给TA发消息 加TA为好友 发表于:2019-09-23 01:08:42 14楼
 

谢谢刘竹 感谢你

  回复 引用 举报

周点击排行
周回复排行
最新求助