[AB] ABB机器人怎样与西门子PLC进行通信?

[复制链接]
查看80653 | 回复0 | 2024-10-7 08:13:05 | 显示全部楼层 |阅读模式
1 智嵌物联串口服务器与PLC通信原理

智嵌物联的串口服务器可以配置为服务器模式,也可以配置为客户端模式。具体使用哪种工作模式,可根据用户的PLC的工作模式来确定。若PLC作为客户端,则串口服务器须配置为服务器模式;若PLC作为服务器,则串口服务器须配置为客户端模式。

https://zqwl.tmall.com/category-1592766359.htm?spm=a1z10.5-b-s.w5002-23653425866.3.7e3c5185YUnVda&search=y&catName=%B4%AE%BF%DA%B7%FE%CE%F1%C6%F7
1.1 串口服务器作为客户端,PLC作为服务器

串口服务器工作在TCP客户端(TCP Client)模式下,串口服务器设备作为TCP客户端,将主动向“目标IP/域名”和“目标端口”所指定的PLC发起连接请求。如果连接不成功,TCP客户端将会根据设置的连接条件不断尝试与TCP服务器建立连接。在与TCP服务器端建立TCP连接后即可进行双向数据通信。

1. 串口服务器主动向PLC发送建立连接请求。需将串口服务器的目标IP设置为PLC的IP地址,串口服务器的目标端口设置为PLC的本地端口号。

2. 连接一旦建立,串口服务器与PLC之间即可进行数据传输。



串口服务器的配置方法如图所示。


1.2 串口服务器作为服务器,PLC作为客户端

串口服务器工作在TCP服务器(TCP Server)模式下,串口服务器设备始终等待PLC的连接,在与客户端建立TCP连接后即可进行双向数据通信。数据传输步骤如下:

1. 建立连接。PLC作为客户端主动向串口服务器设备发送建立连接请求。需将PLC的目标IP设置为串口服务器的IP地址,PLC的目标端口设置为串口服务器的本地端口号。

2. 连接一旦建立,PLC与串口服务器之间即可进行数据的双向传输。



串口服务器的配置方法如图所示。


2. 串口服务器与西门子PLC(S7-1200)通信

串口服务器可以与西门子不同系列的PLC进行通信,如S7-200 Smart、S7-1200、S7-1500等,本章以S7-1200为例,详细阐述PLC与串口服务器建立TCP通信的步骤。
2.1 PLC作为Modbus Server(主站)

如果用户的串口设备是Modbus主站,PLC S7-1200就要作为Modbus从站。下面以S7-1200与智嵌物联的串口服务器之间进行 Modbus TCP 通信为例,详细阐述PLC如何编程及串口服务器的配置过程。

实验效果:使用Modbus Poll软件模拟用户的串口设备,来主动采集PLC的数据。

软件准备:Modbus Poll(模拟用户串口设备)、智嵌物联串口服务器配置软件、博途TIAV16。

硬件准备:智嵌物联串口服务器、S7-1200、USB转RS485串口线、电脑。

硬件接线:串口服务器、PLC、电脑三个设备的网口,同时接到交换机上;USB转RS485线分别接到串口服务器的串口和电脑的USB接口上。



1. 打开TIAV16软件,新建项目,并根据S7-1200的具体型号添加新硬件。如图所示。



2. 添加一个函数FC数据块,并在该函数数据块内添加一个MB_SERVER单个实例数据块。







该功能块各个引脚定义:

DISCONNET0:代表被动建立与客户端的通信连接;1:代表终止连接
MB_HOLD_REG指向Modbus保持寄存器的指针
CONNECT指向连接描述结构的指针,TCON_IP_v4(S7-1200)
NDR0:代表无数据,1代表从Modbus客户端写入的新数据
DR0:代表无读取的数据。1:代表从Modbus客户端读取的数据
ERROR0:无错误;1:出现错误,错误原因查看STATUS
STATUS指令的详细状态信息


3. 创建一个保持寄存器的数据块,Modbus Poll软件会读取这个数据块里的数据。





4. 添加一个全局数据块,作为CONNECT引脚的指针类型,TCON_IP_V4。





各个引脚定义说明如下

InterfaceId硬件标识符,在设备组态中查询
ID连接ID,取值范围1~4095
Connection Type连接类型,TCP连接默认为L6#0B
ActiveEstablished建立连接。主动为1(客户端),被动为0(服务器)
ADDR服务器侧的IP地址
RemotePort远程端口
LocalPort本地端口


5. 设置FC函数块,实现被客户端读取保持寄存器的值



6. 在主程序中调用FC函数块,并编译。



7. 设置PLC的IP地址,PLC的IP地址要和串口服务器的IP地址在同一个网段,且不冲突。



8. 创建一个监控表,并将整个项目下载到PLC中



9. 配置串口服务器

串口服务器的工作模式为TCP CLIENT,目标IP即为PLC的IP地址,目标端口即为PLC的本地端口,设置完成后,串口服务器作为客户端,会主动向PLC发起TCP连接。具体配置如所示。



10. 配置Modbus Poll软件



11. 通信成功



2.2 PLC作为Modbus Client(从站)

如果用户的串口设备是ModbusRTU从站站,PLC S7-1200就要作为Modbus主站。下面以S7-1200与智嵌物联的串口服务器之间进行 Modbus TCP 通信为例,详细阐述PLC如何编程及串口服务器的配置过程。

实验效果:使用Modbus Slave软件模拟用户的串口设备,PLC将会读取Modbus Slave软件的数据。

软件准备:Modbus Slave(模拟用户串口设备)、智嵌物联串口服务器配置软件、博途TIAV16。

硬件准备:智嵌物联串口服务器、S7-1200、USB转RS485串口线、电脑。

硬件接线:串口服务器、PLC、电脑三个设备的网口,同时接到交换机上;USB转RS485线分别接到串口服务器的串口和电脑的USB接口上。



1. 将智嵌物联的串口服务器配置为TCP SERVER模式,等待PLC建立连接。



2. 打开Modbus Slave软件,并按照图中配置,等待PLC读取。



3. 打开TIAV16软件,新建项目,并根据S7-1200的具体型号添加新硬件。如图所示。



4. 创建一个全局数据块(MB_REV),用于存放从Modbus Slave软件中读取的数据。



5. 添加一个全局数据块,作为CONNECT引脚的指针类型,TCON_IP_V4。





6. 在主程序中调用“MB CLIENT”功能块,并为各个引脚赋值。



7. 修改从站地址,此处的值要修改为与Modbus Slave软件上设置的Slave ID一致。



8. 将整个工程进行编译并下载到PLC中,监控数据块MB_REV中的数据。



至此,PLC已经将Modbus Slave中的数据读出来了。
2.3 PLC自由通信协议与串口服务器通信之间双向透明传输

如果用户的串口设备的通信协议不是ModBus协议,比如扫码枪,则可以参考该小节的介绍来配置串口服务器。

https://detail.tmall.com/item.htm?spm=a1z10.5-b-s.w4011-23653425892.46.7e3c5185YUnVda&id=673255313649&rn=5dddbd1e9edb0557713dfb080108bb29&abbucket=20

2.3.1 PLC作为客户端,串口服务器作为服务器

如果用户的PLC作为TCP客户端,则智嵌物联的串口服务器设备就要配置为TCP SERVER模式。下面以S7-1200与智嵌物联的串口服务器之间进行TCP 通信为例,详细阐述PLC如何编程及串口服务器的数据透明传输。



实验效果:使用串口调试助手软件模拟用户的串口设备,实现串口调试助手发数据,经串口服务器转发到PLC;PLC发送数据,经串口服务器转发到串口调试助手上。

软件准备:串口调试助手、智嵌物联串口服务器配置软件、博途TIAV16。

硬件准备:智嵌物联串口服务器、S7-1200、USB转RS485串口线、电脑。

1. 硬件接线

串口服务器、PLC、电脑三个设备的网口,同时接到交换机上;USB转RS485线分别接到串口服务器的串口和电脑的USB接口上。

2. 将智嵌物联串口服务器配置为TCP SERVER模式



3. 打开串口调试助手

串口调试助手用来模拟用户的串口设备,串口调试助手可接收来自PLC的数据,也可发送数据到PLC。

4. 打开TIA Portal V16,创建一个新项目,并根据用户的PLC型号添加新硬件,并设置CPU的IP地址。





5. 创建发送数据的数据块:发送数据DB,用户缓存要发送的数据





6. 创建接收数据的数据块:接收数据DB,用户缓存要接收的数据





7. 添加FC函数块,在该函数块内分别调用建立TCP连接的功能块“TCON”、发送数据的功能块“TSEND”、接收数据的功能块“TRCV”。



8. 调用建立TCP通信的功能块“TCON”,并对通信进行组态。伙伴IP及伙伴端口即为串口服务器的IP及本地端口号。





9. 分别调用发送数据的功能块“TSEND”、接收数据的功能块“TRCV”



10. 在主函数中调用FC函数块



11. 将整个工程编译,并下载到PLC中,然后监控发送数据DB块和接收数据DB块中的数据。

PLC发送数据到串口服务器,串口服务器收到数据后,将数据透明转发到对应的串口上,串口调试助手就会接收到PLC发来的数据。如图所示。



串口调试助手发送数据到串口服务器,串口服务器收到数据后,将数据透明转发到网口上的PLC上,PLC就会收到串口调试助手发来的数据。



2.3.2 PLC作为服务器,串口服务器作为客户端 1. 在上一节的基础上,只需要将串口服务器配置为客户端模式、PLC配置为服务器模式即可,其他操作步骤和上一节一样。

赵志华:PLC自由通信协议与串口服务器通信之间双向透明传输---PLC作为客户端

2. 将串口服务器配置为TCP CLIENT模式,目标IP即为PLC的IP地址,目标端口即为PLC的本地端口。



3. 将PLC设置为服务器,对“TCON_DB”进行组态。



4. 将整个工程编译,并下载到PLC中,然后监控发送数据DB块和接收数据DB块中的数据。

PLC发送数据到串口服务器,串口服务器收到数据后,将数据透明转发到对应的串口上,串口调试助手就会接收到PLC发来的数据。如图所示。



串口调试助手发送数据到串口服务器,串口服务器收到数据后,将数据透明转发到网口上的PLC上,PLC就会收到串口调试助手发来的数据。



本帖子中包含更多资源

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

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

本版积分规则