关于OMRONCIP通信的编程
关于OMRON CIP通信的编程
CLASS通信编程总结
注:1、本⼿册不适⽤于标准APP的开发,只能作为编程⽅法使⽤参考。
2、本⼿册⾯向有需求的编程爱好者。
3、本⼿册主要讲解C#的编程⽅法。
4、查看本⼿册时,默认使⽤者有⼀定的C#开发经验,基础不进⾏讲解。
Yanhobey制作
⽼婆给的零花钱得存着…
⽬录
⽬录......................................................................................................................................................... -
1 -图表⽬录................................................................................................................................................ - 4 -前⾔......................................................................................................................................................... - 5 -编程注意事项....................................................................................................................................... - 6 -第⼀部分、SYSMAC Gateway介绍.............................................................................................. - 7 -1、SYSMAC Gateway五⼤功能:............................................................................. - 7 -
1.1 Message通信(显式*)功能 ..................................................................................... - 7 -
1.2 周期通信(隐式*)功能................................................................................................. - 7 -
1.3标签............................................................................................................................... - 7 -
1.4应⽤程序开发 ............................................................................................................ - 7 -
1.5与FINS通信共存...................................................................................................... - 7 -
2、SYSMAC Gateway相关信息................................................................................. - 8 -
2.1Sysmac Gateway产品配置图............................................................................... - 8 -
2.2Sysmac Gateway Console主⾯板介绍.............................................................. - 9 -
3、Sysmac Gateway使⽤⼿册链接....................................................................................... - 9 -
3.1、安装Sysmac Gateway后的路径................................................................................ - 9 -
3.2、本⼿册路径........................................................................................................................ - 9 -
3.3、CX-Compolet⼿册......................................................................................................... - 9 -第⼆部分、动态链接库介绍......................................................................................................... - 10 -
1、Sysmac Gateway安装⽬录.............................................................................................. - 10 -
2、CX-Compolet安装⽬录 ................................................................................................... - 10 -
3、动态链接库⽬录...................................................................................................... - 10 -
4、⽰例程序⽬录 .......................................................................................................... - 10 -
4.1所有sample程序,⽤户可按照需求打开:........................................................... - 10 -
4.2常⽤CIP通信⽬录,⽬录中包含所有CIP通信程序⽰例:.................... - 10 -
4.3 Class3(CIPCompolet)通信⽰例路径.................................................................. - 10 -
4.4 Class1(VariableCompolet)通信⽰例路径 ................................................. - 10 -
4.5CIPCore服务打开⽰例路径................................................................................ - 10 -
4.6EIP PORT⼝打开⽰例路径 .................................................................................. - 11 -第三部分、CIPCore服务启动编程............................................................................................. - 12 -
1、SysmacGatewayCompolet.dll库⽂件 .............................................................. - 12 -
2、SysmacGatewayCompolet完整使⽤⽅法Sample程序和⼿册............... - 12 -
2.1Sample程序参考.................................................................................................... - 12 -
2.2使⽤⼿册 ................................................................................................................... - 12 -
3、编程⽅法讲解 .......................................................................................................... - 13 -
3.1引⽤动态链接库...................................................................................................... - 13 -
五大编程app3.2命名空间 ................................................................................................................... - 13 -
3.3实例化变量............................................................................................................... - 13 -
3.4使⽤⽅法介绍 .......................................................................................................... - 13 -
3.5代码解释 ................................................................................................................... - 14 -第四部分、Port⼝启动和停⽌编程........................................................................................... - 15 -
1、CIPPortCompolet.dll库⽂件............................................................................... - 15 -
2、CIPPortCompolet完整使⽤⽅法程序和⼿册................................................ - 15 -
2.1Sample程序............................................................................................................. - 15 -
2.2使⽤⼿册 ................................................................................................................... - 15 -
3、编程⽅法讲解 .......................................................................................................... - 16 -
3.1引⽤动态链接库...................................................................................................... - 16 -
3.2命名空间 ................................................................................................................... - 16 -
3.3实例化变量............................................................................................................... - 16 -
3.4使⽤⽅法介绍 .......................................................................................................... - 16 -
3.5代码解释 ................................................................................................................... - 16 -第五部分、CLASS3通信编程(CIPCompolet).................................................................... - 17 -
1、CIPCompolet.DLL库⽂件..................................................................................... - 17 -
2、CIPCompolet完整使⽤⽅法程序和⼿册 ........................................................ - 17 -
2.1 Sample程序.................................................................................................................... - 17 -
2.2 使⽤⼿册.......................................................................................................................... - 17 -
3、编程⽅法讲解 .......................................................................................................... - 18 -
3.1 引⽤动态链接库............................................................................................................... - 18 -
3.2 命名空间 ............................................................................................................................ - 18 -
3.3 实例化变量........................................................................................................................ - 18 -
3.4 使⽤⽅法介绍................................................................................................................... - 18 -第六部分、CLASS1编程(VariableCompolet)................................................................... - 19 -
1、⽹络架构 ................................................................................................................... - 19 -
2、VariableCompolet.DLL库⽂件........................................................................... - 19 -
2.1 Sample程序....................................................................................................................... - 19 -
2.2 使⽤⼿册 ............................................................................................................................ - 19 -
3、编程⽅法讲解 .......................................................................................................... - 20 -
3.1 引⽤动态链接库............................................................................................................... - 20 -
3.2 命名空间 ............................................................................................................................ - 20 -
3.3 实例化变量........................................................................................................................ - 20 -
3.4 使⽤⽅法介绍................................................................................................................... - 20 -结论....................................................................................................................................................... - 2
1 -
图表⽬录
图1 Class1和Class3架构图 .......................................................................................................... - 5 -错误线程编辑图.................................................................................................................................. - 6 -正确线程编辑图.................................................................................................................................. - 6 -图3 SGW操作⾯板图....................................................................................................................... - 9 -图4 Sysmac Gateway Service使⽤⽅法⼿册图...................................................................... - 12 -图5程序引⽤图............................................................................................................................... - 13 -图6 PortCompolet操作⼿册........................................................................................................ - 15 -图7 CIPCompolet操作⼿册......................................................................................................... - 17 -图8 VariableCompolet通信⽰意图........................................................................................... - 19 -图9 VariableCompolet操作⼿册................................................................................................ - 20 -
前⾔
此⽂档的所有内容都是基于PC上安装了OMRON SYSMAC Gateway的前提下进⾏的描述。
SYSMAC Gateway是⼀种在计算机上提供FA⽹络环境的通信中间控件。您可以使⽤⽀持Ethernet/IP?的SYSMAC Gateway,来构建⼀个开放的、符合由ODV A?定义的CIP?(Common Industrial Protocol,通⽤⼯业协议)的⼯业以太⽹环境。⽬前OMRON SYSMAC Gateway⽀持Fins、Class1和Class3的通信⽅式。
OMRON的Class1通信是指通过标签配置进⾏的Datalink通信,此通信使⽤到的⼯具有Network Configurator,如需了解,请参考附件中的PPT。通信对象可以是任何拥有标准的EDS⽂件的设备。上位可通过VariableCompolet来进⾏通信编程。OMRON的Class3通信是指安装了Sysmac Gateway的电脑与OMRON PLC直接进⾏的通信。上位可通过CIPCompolet来进⾏通信编程。
OMRON 的FINS协议是⼀个公开协议,适合第三⽅OPC等通信软件配合使⽤,当然OMRON的SYSMAC Gateway也包含Fins Gateway的使⽤⽅法,⽤户同样也可以使⽤动态链接库进⾏APP的开发。
本⽂将会详细说明如何使⽤C#调⽤OMRON动态链接库来进⾏上位机的编程。
本⽂的实例讲解都是根据OMRON_APP_Sample中的解决⽅案进⾏讲解。
图1 Class1和Class3架构图
编程注意事项
⼀、错误的线程编辑⽅法
由于控制器是单线程通信,所以请不要使⽤多线程的编辑⽅式处理通信,这样会造成通信阻塞,进⽽产⽣通信超时。
错误线程编辑图
⼆、正确的线程编辑⽅式
1、请使⽤单线程的⽅式进⾏编程;
2、如果已经使⽤多线程编程,请添加线程互锁;
3、Compolet的实例化建议每个控制器对应⼀个,如果需要实例化另外⼀个,请执⾏Close
前⼀个Active,再执⾏Open新的Active;
4、⼀个APP控制多个控制器时,每个Compolet实例化互不⼲扰,但是PC的性能会对APP
的处理速度有影响,并且所有实例化需要做互锁(共⽤⼀个CIPCore)。
5、每个实例化中的Read和Write请按顺序执⾏,如果Read和Write是使⽤的双线程,请
执⾏线程互锁。
正确线程编辑图
第⼀部分、SYSMAC Gateway介绍
1、S YSMAC Gateway五⼤功能:
1.1 Message通信(显式*)功能
⽀持CIP?的标准显式报⽂通信。您可以向各种Ethernet/IP?设备发送和接收数据。
1.2 周期通信(隐式*)功能
⽀持CIP?的标准隐式报⽂通信。您可以使⽤Ethernet/IP?设备执⾏周期循环通信。
计算机和plc之间能够进⾏⾼速、⼤容量的数据通信。在本⽂中,使⽤这种隐式
通信的标签数据循环通信称为“Tag Data Link”。通过Tag Data Link获得的数据存储在“EventMemory”的共享内存中,这样其他应⽤程序也可以进⾏数据调⽤。
1.3标签
SYSMAC Gateway还⽀持与PLC相同的变量。变量(定义了数据类型和地址)可以通过变量名称从应⽤程序中访问。
变量的数据实际上是保存在分配好的“EventMemory”中。变量通信⽤于在不考虑数据地址或数据类型的情况下的应⽤程序开发。
1.4应⽤程序开发
使⽤CX-Compolet(OMRON提供的应⽤程序开发包)可以进⾏简单的应⽤程序开发。CX-Compolet⽀持Microsoft Visual Basic 和C#两种编程语⾔进⾏编程,⽀持在不考虑协议的情况下构建PLC通信程序。
既可以通过使⽤指定的物理地址进⾏传统的⽅式通信,也可以通过标签(⽹络节点中的变量)进⾏变量的数据交互。
1.5与FINS通信共存
SYSMAC Gateway可以与Fins Gateway在同⼀台计算机上运⾏,两者可以同时建⽴在同⼀个⽹络环境中互不⼲涉,客户可以使⽤两种通信⽅式建⽴⼀个灵活的APP系统。
由于数据是存储在“EventMemory”中,所以Tag Data Link也可以通过FINS进⾏读取,从⽽可以提供⽆缝的系统配置连接。
*CIP报⽂分两种:
显式报⽂:包含解读该报⽂所需要的信息,⽤于对传输时间没有苛求的数据
隐式报⽂:含义在⽹络配置时确定,⽤于传输对时间有苛求的数据。
Ethernet/IP:隐式UDP,显式TCP。
2、S YSMAC Gateway相关信息
2.1Sysmac Gateway产品配置图
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论