PLC论坛-全力打造可编程控制器专业技术论坛

 找回密码
 注册哦

QQ登录

只需一步,快速开始

微信扫码登录

查看: 92810|回复: 0

[西门子] AB PLC | LOGIX5000控制器与MICRO820/850以太网通信

[复制链接]
发表于 2024-1-24 10:34:55 | 显示全部楼层 |阅读模式


前言:近段时间事情比较多,无法及时更新文章,希望大家理解。在以前的文章写过Logix5000控制器之间,以及Logix5000控制器与MicroLogix控制器通过以太网通信,还差一个系列,那就是与Micro800系列的通信,那今天通过CompatLogix 1769-L18ER与Micro820为例,把这方面补充上。

01

测试环境

1. 操作系统:Windows 7 旗舰版 SP1 64位

2. 编程软件:CCW V12.00.00中文开发版

3. 编程软件:Studio 5000 V32.00.00中文专业版

02

硬件环境

1. 控制器分别为:Micro820和CompactLogix 1769-L18ER,使用网线直连,当然也可以用交换机连接.


2. Micro820的IP地址为:172.16.10.199,子网掩码255.255.254.0


3. 1769-L18ER的IP地址为:172.16.10.200,子网掩码255.255.254.0

03

在COMPACTLOGIX端

编程实现通信

1. 中型控制器CompactLogix与小型控制器Micro820通过EtherNet/IP以太网通信交换数据,可只在任意一端编程,另一端建立标签即可现实,先来看看只在CompactLogix端编程是如何实现的。在编程软件CCW中,组态好硬件,再创建2个全局变量,TO_CML和FROM_CML,数据类型均为REAL,维度[0..9].


2. 打开Stduio 5000 V32中文版,组态好硬件,在控制器标签中,创建4个标签:


    MSG_read_from_Micro820,数据类型为MESSAGE

    MSG_write_to_Micro820,数据类型为MESSAGE

    Rd_Data,数据类型为REAL[10]

    Wr_Data,数据类型为REAL[10]



3. 从创建的标签中,可以得出双方交换的数据为:


    TO_CML(Micro820)       ----> Rd_Data(1769-L18ER)

    FROM_CML(Micro820)  <---- Wr_Data(1769-L18ER)


4. 在Studio 5000中编写与Micro820交换数据的通信程序,使用指令MSG.



5. 发送数据到Micro820的MSG指令,其中配置和路径详见下图,其中路径为:2,172.16.10.199


6. 接收Micro820数据的MSG指令,其中配置和路径详见下图,其中路径为:2,172.16.10.199


6. 将CCW和Studio 5000项目分别下载到Micro820和1769-L18ER控制器中,在线测试,从下图的结果看,双方数据交换成功.


04

在MICRO820端

编程实现通信

1. 在第3段内容中测试了只在CompactLogix中编程实现通信,下面来看看只在Micro820编程如何实现通信,首先在Studio 5000中创建2个标签Rev_fr_Mic820,Send_to_Mic820,数据类型为SINT[10].


2. 在CCW中编写Micro820发送数据到1769-L18ER通信代码,需使用MSG_CIPSYMBOLIC(通用工业协议符号消息)指令,并在全局变量中创建指令引脚对应的标签,另外该指令的引脚IN需要为上升沿触发,故用定时器编写一个1S脉冲用于触发MSG_CIPSYMBOLIC通信指令.


3. 在全局变量中,对发送指令引脚标签进行初始化赋值,其中主要参数:


    Send_SymbolicCfg.Service,配置为1(发送数据)

    Send_SymbolicCfg.Symbol,配置为Rev_fr_Mic820[0]  (1769-L18ER接收Micro820数据的标签)

    Send_SymbolicCfg.Count,配置为10  (发送数据的数量)

    Send_SymbolicCfg.DataType,配置为194  (发送的数据类型为SINT)

    Send_TargetCfg.Path,配置为4,172.16.10.200  (4=端口号,172.16.10.200为1769-L18ER的IP地址)



4. 在CCW中编写Micro820接收1769-L18ER数据通信代码,同样使用MSG_CIPSYMBOLIC指令和上升沿触发,全局变量中创建指令引脚对应的标签.



5. 在全局变量中,对接收指令引脚标签进行初始化赋值,其中主要参数:


    Receive_SymbolicCfg.Service,配置为0  (接收数据)

    Receive_SymbolicCfg.Symbol,配置为Send_to_Mic820[0]  (1769-L18ER发送到Micro820的数据标签)

    其余参数和发送指令参数相同



6. 在线测试,双方互发数据,均能正确接收,说明CCW通信代码以及参数设置正确.



7. 本例通信参数初始化,其中Send_SymbolicCfg.DataType或Receive_SymbolicCfg.DataType,发送或接收的数据类型,均以十进制代码来表示,详见下图.



结语:综上所述,本文详细介绍了CompactLogix系列与Micro820以太网通信,可在任意一端开发程序来实现,从实现的复杂程度而言,在CompactLogix端编程相对简易些,不过也要根据实际情况选择。另外,本文内容同样适用于ControlLogix系列,以及Micro850,感兴趣的朋友可自行测试.


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册哦

本版积分规则

QQ|小黑屋|手机版|Archiver|PLC技术网-PLC论坛 ( 粤ICP备17165530号 )|网站地图

GMT+8, 2024-7-2 23:20 , Processed in 0.045206 second(s), 27 queries .

快速回复 返回顶部 返回列表