作者: 邵伟栋
上海市江场三路市北工业园区
163号5楼(200436) TEL: 021-******** FAX: 021-********
日期: 2016-5-25 版本: V1.1
E_mail : w.shao@https://www.sodocs.net/doc/71329784.html,
CX1000或PC 作为modbus master 与modsim32通讯
概 述
本例可作为工控机的串口或嵌入式PC 的串口作为Modbus-rtu 主站和modsim 软件通讯编程参考。
文档中包含的文件
备 注
关键字:cx1000,modbus 通讯, master
免责声明
我们已对本文档描述的内容做测试。但是差错在所难免,无法保证绝对正确并完全满足您的使用需求。本文档的内容可能随时更新,也欢迎您提出改进建议。
文档内容可能随时更新
如有改动,恕不事先通知
一、本例软、硬件配置:
1、硬件:CX1001-0122(嵌入式PC)。
2、软件:TwinCat 2.11.2232 modsim32
Library:ModbusRTU.lib,standard.lib
二、本例具体实施步骤:。
将笔记本上的Modsim32软件作为Modbus从站,嵌入式PC CX1001-0122上的串口模块CX1000-N005上的COM3口作为Modbus主站接口。
将电脑IP地址设为与CX相同的网段(169.254.X.X)
打开Twincat System Manager,单击“New”新建一个项目。
单击“Choose Target,出现一个Choose Target System对话框。
单击“Search(Ethernet)”出现一个对话框,单击“Broadcast Search”,搜索到很多控制器名称及其地址。
选择我们所需要连接的嵌入式PC:CX_1715CA, 先选择左下角的IP Address, 单击“Add Route”。当该PC“Connected”显示“X”时,表明已经连接上了,说明Add Route成功。
弹出一个“Logon Information”对话框,输入“administrator”用户名,无需密码,单击“OK”。
单击“Close”,关闭“Add Route Dialog”对话框。
在“Choose Target System”窗口,选中你所需要控制的嵌入式PC,单击“OK”。
打开样例程序“modbus测试.pro”,单击“Rebuild all”,对程序进行编译,编译过后生成tpy格式的文件,用于进行TwinCAT System Manager中的Append PLC project的操作。
右键单击“PLC-Configuration”,单击“Append PLC project…”。(提供的配置文件已经做好变量链接,也可以按照文档重新配置)
做一定的讲解。
单击Action菜单下面的“Set/Reset TwinCAT to Config Mode”
弹出对话框“TwinCAT System Manager”,单击“确定”。
如果弹出其他对话框,都单击“是”或“确定”。
右键单击“I/O Device”,弹出下拉列表,单击“Scan Device”
会出现一系列对话框,都单击“确定”即可。
弹出“3 new I/O devices found”对话框,单击“OK”。
弹出对话框,单击“是”。
弹出对话框,单击“是”。
由于beckhoff有些设备不能通过自动扫描设备的方式找到并自动建立,比如串口硬件设备。因此必须通过手动添加的方式。右键单击“I/O Device”,弹出下拉列表,单击“Append Device …”。
弹出对话框,选择“Miscellaneous”——>”Serial Communication Port”, 单击“OK”。
单击“Device4 (COM Port)”,选中“Serial Port”,根据所要连接的嵌入式PC上的实际串口号进行选择,该案例中所连接的是CX1000-N005模块中的COM2口。
单击“Communication Properties”,对参数进行如下设置,下面的波特率、奇偶校验、停止位以及串口类型都必须和ModSim32中的串口设置保持一致。
参数进行正确设置后,单击MAIN.ModbusRTUMaster_PcCOM.InData
选中“All Types”以及“Continuous”复选框。
将Device4(COM Port)中的变量Status以及Data1~ Data64选中,左键单击“OK”。
单击MAIN.ModbusRTUMaster_PcCOM.OutData
选中“All Types”以及“Continuous”复选框。
将Device4(COM Port)中的变量Ctrl以及Data1~ Data64选中,单击“OK”。
将该TwinCAT System Manager配置文件进行保存。
单击Actions菜单下的“Activate configuration”,弹出一系列对话框,都单击“确定”。最后将Twincat重启为运行模式,完成系统的配置。
现在将plc程序进行下载运行,首先选择“Choose Run-Time System…”
弹出对话框,找到先前所连接上的嵌入式PC——CX-1715CA,选中“Run-Time1(Port 801)”。单击“Login”。
单击“Run”。
打开ModSim32的软件,单击“Connection-Connect”.选择对应的com口
根据先前在TwinCAT System Manager中对串口进行的设置,进行正确的设置。设置完成后单击OK。下图是正确的设置。
我们将Address设置成“0001”,将MODBUS Point Type中类型选择为“03:HOLDING
“0001”地址对应Inputs 。
我们切换到PLC软件,给变量com_dod赋值TRUE,在Main里可以看到Data变量数组的变化。下图所示:
通过ModbusRtuMaster_pccom.ReadRegs功能块,我们将modsim软件中的变量读取了出来。
同理也可以通过ModbusRtuMaster_pccom.WriteRegs去修改modsim软件中的变量,以下不再赘述。注:1.modbus rtu 需要安装modbusrtu.lib库文件,此库文件需要另外购买