- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《用_VB_实现施耐德小型PLC_Twido_的Modbus_TCP-IP_的通讯实例精讲》.docx
用 VB 实现Twido 的Modbus TCP/IP 的通讯实例精讲!!
2009-12-25 11:02
?? Twido系列PLC(twido为施耐德小型PLC,与西门子200PLC极为相似)支持TCP Modbus的通讯,尤其是TWDLCAE40DRF提供了内置的以太网接口,能实现?? 下图所示的结构;通过HUB,不仅能对Twido进行编程,也能对Twido PLC中的数据进行读写。对于上位机,我们利用VB 的WinSock 套接字控件能很容易的进行编程。新建 1 个套接字对象,设定其属性如右,注意其远程主机的IP 就是以上TWDLCAE40DRF 的IP 地址:1. 建立网络连接Private Sub Command2_Click()On Error Resume NextWinsock1.CloseWinsock1.Connect , 502If Err ThenMsgBox 网络连接时发生错误: Err.Description, vbCritical, 网络连接Err.ClearEnd IfEnd Sub
2. 读多个字的命令(本例表示从PLC读%MW3和%MW4两个字):Private Sub cmdSend_Click()On Error GoTo ErrProcDim SendStr(11) As ByteDim RcvStr() As ByteSendStr(0) = 0 交换识别号高字节,通常为0SendStr(1) = 0 交换识别号低字节,通常为0SendStr(2) = 0 协议识别号高字节,为0SendStr(3) = 0 协议识别号低字节,为0SendStr(4) = 0 字节长度高字节SendStr(5) = 6 以下字节长度低字节SendStr(6) = 255 单元识别号,确省为255SendStr(7) = H3 读多个字命令代码SendStr(8) = 0 读数据的起始地址高字节SendStr(9) = 3 读数据的起始地址低字节SendStr(10) = 0 数据长度高字节SendStr(11) = 2 数据长度低字节Dim aStr As StringDim i As IntegerFor i = 0 To 11aStr = aStr Chr(SendStr(i))NextWinsock1.SendData aStrExit SubErrProc:MsgBox 传输数据失败, vbCritical, 网络传输End Sub3. 写多个字的命令(本例表示写%MW3、%MW4、%MW5三个字到PLC 中):Private Sub cmdwrite_Click()On Error GoTo ErrProcDim SendStr(18) As ByteDim RcvStr() As ByteSendStr(0) = 0 交换识别号高字节,通常为0SendStr(1) = 0 交换识别号低字节,通常为0SendStr(2) = 0 协议识别号高字节,为0SendStr(3) = 0 协议识别号低字节,为0SendStr(4) = 0 字节长度高字节SendStr(5) = 13 以下字节长度低字节SendStr(6) = 255 单元识别号,确省为255SendStr(7) = H10 写多个字命令代码SendStr(8) = 0 写数据的起始地址高字节SendStr(9) = 3 写数据的起始地址低字节SendStr(10) = 0 数据长度字数的高字节SendStr(11) = 3 数据长度字数的低字节SendStr(12) = 6 数据长度的字节数SendStr(13) = HA 写的第1 个字的高字节SendStr(14) = HB 写的第1 个字的低字节SendStr(15) = HC 写的第2 个字的高字节SendStr(16) = HD 写的第2 个字的低字节SendStr(17) = HE 写的第3 个字的高字节SendStr(18) = HF 写的第3 个字的低字节Dim aStr As StringDim i As IntegerFor i = 0 To 18aStr = aStr Chr(SendStr(i))NextWinsock1.SendData aStrExit SubErrProc:MsgBox 传输数据失败, vbCritical, 网络传输End Sub4. 通讯数据处理(本例是得到4 个字节的数据):Private Sub Winsock1_DataArrival(ByVal bytes
您可能关注的文档
- 《清软英泰产品数据管理系统--PDM白皮书》.pdf
- 《清远市技工学校PLC培训教材》.pdf
- 《渗透iso3452-3》.pdf
- 《渝三峡A2016年报生产运营排名_薪酬报告(石油化学制品业现金流量表)重庆三峡油漆股份有限公司_@九舍会智库》.pdf
- 《渝三峡A招聘薪酬待遇(石油化学制品业人力资源薪酬福利)重庆三峡油漆股份有限公司_@九舍会智库》.pdf
- 《渥太华保健品和食品部对没有水果和坚果成分的外来烘焙产品的测定1997-04ExFLP-22(英文)》.pdf
- 《港口MSC》.ppt
- 《湖北宜化2016年报生产运营排名_薪酬报告(石油化学制品业资产负债)湖北宜化化工股份有限公司_@九舍会智库》.pdf
- 《湖南大学2016MTI英译汉模拟》.ppt
- 《湖南海利2016年报生产运营排名_薪酬报告(石油化学制品业营业利润)湖南海利化工股份有限公司_@九舍会智库》.pdf
文档评论(0)