欧姆龙E4CP1H-E PLC与仪表MODBUS通讯

        FC5(AG——SEND)块既可以用于PROFIBUS FDL(现场总線数据链路层通信协议)(发送数据到PROFIBUS用于在一个已经组态的FDL连接上进行数据传输),也可以将数据传送到以太网CP上用于在一个已经組态的ISO传输连接上进行传输。所选择的数据区可以是一个位存储区或一个数据区

       同样,FC6(AG——RECV)既可以接收从在以及组态的PROFIBUS FDL也可以以太網CP在已组态的连接上传输的数据为数据接收指定的数据区可以是一个位存储区或一个数据块区。

下面以S7-300与S7-400以以太网为例来说明如何编写發送FC5指令和接收指令要想实现S7-300通过FC5和FC6与S7-400进行数据传输,首先必须进行硬件组态如果PLC没有自带PN接口,需要以太网模块CP343-1和CP443-1并通过带水晶接头的8芯双绞线(网络线)连接起来;在组态第一站如SIMATIC300(1)时,插入以太网模块CP343-1时打开其“属性”界面,设置网络参数(IP地址和子网掩碼);同样方法建立第二个站SIMATIC300(2)选择同样网络Ethernet(1),但IP地址不同;组态以太网连接在一个站中添加一个TCP连接,并记下组态时连接号ID(如1)和模块硬件组态地址LADDR(如为W#16#0100)用于FC5和FC6的编程用;如果需要双方进行数据传输,那么双方都需要编写FC5和FC6指令在调用FC5和FC6的方法如下:如果在OB1(主循环组织块)中调用FC5(把SIMATIC(1)中信息发送到SIAMTIC(2)中)和FC6(将SIMATIC(2)中相应信息接收到SIMATIC(1)中)。打开OB1块在LAD/STL/FBD编辑器中,在左边依次展开New Network(新网络)/Libraries(库)/SIMATC_ET_P双击FC5或FC6,或者直接把它拖到右边块中然后填写相应参数:在FC5中,参数ID为组态时连接号(这里为1)LADDR为模块硬件组态地址(这里为W#16#100),SEND是发送的数据区(如位存储器MW30)LEN为发送数据长度,其他参数EN(使能)ACT(发送请求),ERROR(错误代码)STATUS(返囙数值),DONE(发送是否完成);同样接收功能FC6中主要参数如下:RECV(接收数据区)NDR(接收数据确认),LEN(接收数据长度)其他参数ID、LADDR、ERROR、STATUS与FC5一致。

}

    最近项目需要用上位机通讯Omron PLC使鼡无线网络的Fins协议,经测试通过后代码如下:

4、读取写入操作(读位数据写位数据,读字数据写字数据  四个函数都有说明);

注意:讀字数据 和 写字数据时,一个字 = 两个字节注意字节数组长度应该是字的两倍,还有高低位变化

/// Fins协议Tcp连接的构造函数(PLC的IP地址、PLC端口号、本机节点) /// 读取PLC上的位数据(内存地址、读取结果) /// 写入PLC上的位数据(内存地址、写入数据) /// 读取PLC上的位数据(内存地址、读取结果) /// 寫入PLC上的位数据(内存地址、写入数据)
}
Dim k As Integer '按钮操作判断 k=1为发自动操作命令、k=2为发手动操作命令、k=3为发手动喷命令、k=4为发手动滴命令
If Text3.Text = "自动" Then '如果目前为自动状态手动“喷”“滴”控制按钮失效
'@:固定格式,"00":站号"KS/KR":根據置/复位命令返回相对应的字符,"00":正确处理时的结束码FCS:校验和,"*"+CHR(13):固定格式
这个得看说明书了,一般正规大厂的东西资料都很齐全的.
}

我要回帖

更多关于 欧姆龙E4 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信