一、 Profinet协议简介
1.1 Profinet协议概述
c由PROFIBUS国际组织(PROFIBUS International,PI)推出,是基于工业以太网技术的自动化总线标准。
三类通信模式:
1. 标准TCP/IP通信
用于HMI/SCADA、IT交互,响应速度100ms+;依托通用TCP/IP协议,满足普通工厂监控交互需求。
2. RT实时通信
常规自动化产线控制,响应1~10ms;在以太网二层开辟专用实时通道,大幅缩减协议栈处理耗时,性能优于传统现场总线。
3. IRT同步实时通信
面向高速运动控制场景,100个节点下整体响应<1ms,抖动误差<1μs,保障运动控制时序精准稳定。

1.2 Profinet硬件连接
PLC与SC相机之间实现Profinet通信,PLC与相机通过网线与交换机连接,需满足相机与PLC的IP处于同一网段。
PN端口通过设备名确定连接,因此需要注意设备名不能重复。同时设备 IP 地址必须和 SCMVS 客户端中设备的 IP 地址不相同,否则会导致通信异常。

1.3 Profinet看门狗时间
看门狗时间(Watchdog):IO设备的看门狗时间以IO Update时间为基数,可以自动或手动调整,指定的看门狗时间内IO未更新则视为IO中断(具体表现为IO站点掉站)

二、 SC相机Profinet通信
2.1 6个组态模块介绍
SC相机Profinet通讯共6个可组态模块,具体如下;PLC实际组态后I/Q物理地址会自动偏移,以博图硬件组态界面为准。

1.Acquisition Status Module:状态区,可反馈设备当前状态,由相机发送到 PLC。该模块占用1字节。包括:trigger ready(触发准备),trigger ack(触发反馈)等。
2.Acquisition Control Module:控制区,可控制设备获取图像,由 PLC 发送到相机。该模块占用1字节。包括:trigger enable(触发使能),trigger(触发)等。

3.Reads Result 64 Bytes Module:结果区(64Bytes),结果输出数据,由相机发送到 PLC。该模块占用65字节。输出相机的算法结果数据,包括:result length(结果数据长度)和result data(结果数据)。

4.User Data 64 Bytes Module:用户数据区,由PLC发送到相机。该模块占用65字节。PLC发送给相机的命令字符,包括:user data length(命令字符长度)和user data(命令字符)。

5.Reads Result 128 Bytes Module:结果区(128Bytes):结果输出数据,由相机发送到 PLC。该模块占用129字节。
6.Reads Result 250 Bytes Module:结果区(250Bytes):结果输出数据,由相机发送到 PLC。该模块占用251字节。

2.2 GSD文件
1.什么是GSD文件?
GSD是英文“General Station Description”的缩写,即”通用站描述文件”。GSD文件的主要作用是对PROFINET子站的资源进行描述,以便组态工具能够正确对其进行解析。这些信息包括:用于组态的数据、参数、模块(软件层)、诊断、报警、制造商标识(Manufacturer ID)及设备标识(Device ID)等等内容。
2. 命名规则
PROFINET的GSD文件采用XML语言描述,后缀名为xml。按照约定,PROFINET I/O设备的GSD文件应遵循如下的命名规则:
GSDML-[版本号]-[设备厂商名称]-[设备家族名称]-[日期].xml
一般我们下载到的GSDML文件中还包含一些图片,如下图所示。这些图片就是我们在硬件组态中看到的站点的样子。

2.3 通讯时序
1.PLC设置Trigger Enable(地址I2.0),相机准备就绪后设置Trigger Ready(地址Q2.0);
2. PLC 检测到设备 Trigger Ready 信号后,发送 Trigger 信号 Q2.1 控制设备运行一次方案。
3. 当设备接收到 Trigger 信号后开始取图运行算法。
- 若正确输出算法工具结果,则设置 Results Available 信号 I2.4 并将配置结果内容放入到 IB68 开始的地址中;
- 若结果输出超时,则设置 Results Timeout 信号 I2.5 并将 IB68 开始地址清零。


三、连接测试步骤
3.1 相机端设置
1.通信设置——添加Profinet通讯,设置设备名称(必须与PLC端设置一致);模块结果根据实际结果字符串长度选择;
2.触发设置——设置为软件触发;
3.运行设置——点击连续运行;
4.切换方案设置——切换模式选择通信切换,通信字符串可根据用户需求自定义;


3.2 西门子S7系列PLC博图设置

1.项目新建——打开博图软件,创建新项目



2.安装GSD文件

3.添加对应型号SC相机

4.相机参数设置


5.PLC程序下载



6.通讯验证

7.PLC开启监控界面

8.1 触发拍照——PLC发送使能,相机触发准备

8.2 触发拍照——PLC设置触发,相机开始处理
9.1 获取结果——算法结果获取
9.2 获取结果——获取结果完成后,复位触发信号

10.切换方案

四、常见问题
4.1 PLC软件设置相机IP冲突导致登录异常
- 问题现象:连接Profinet通信情况下,登录SCMVS界面参数显示空白
- 原因分析:设备 IP 地址必须和 SCMVS 客户端中设备的 IP 地址不相同,否则会导致相机异常
- 解决方法:修改PLC软件中设置的相机 IP 地址,或 SCMVS 客户端中设备的 IP 地址即可

4.2 切换方案不成功
- 问题现象:填入相应命令字符后,执行Execute Command,但切换方案不成功

- 原因分析:
- 字符长度设置不正确。例如客户的通信字符串设置为“0”,方案名设置为“1”,则通信字符串为“0 1”,命令字符长度为3;
- 命令字符填写不正确。通信字符串“0 1”,中间的空格不知道如何填写。命令字符中的空格不应为byte类型的[00],应填入char类型的“ ”,或byte类型的[20];
- 结束符不正确。命令字符下一个地址无字符,默认应该位char类型的‘0’,但客户在Command Data_4变量对应的地址填入了‘ ’,这是一个空格。填入空格导致相机认为命令字符位“0 1 ”,此时字符长度与实际不符,导致切换不生效;
- 解决方法:注意命令字符的设置,包含字符长度,空格的填写和结束符的填写
4.3 切换方案成功/失败的信号
- 问题现象:切换方案成功/失败,返回相应信号,便于客户判断

- 原因分析:1.SC3000在V3.0维护固件中增加方案切换成功、失败的标志位如上
- 解决方法:需升级V3.0.4以上固件
4.4 获取到的结果第一位丢失
- 问题现象:结果数据实际为:”1030006…;”,但PLC中只显示”030006…”,第一位数据丢失

- 原因分析:由于客户这里将Result Length和Result Data定义成2个变量,博图软件中将第二个变量自行对齐,导致地址15.0丢失
- 解决方法:将Result Length和Result Dara合并成1个变量,参考右图
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:海康机器人丨SC相机工业协议详解——Profinet协议
文章链接:https://www.tiaoma.ren/technology-sharing-4414.html
本站资源均来源于互联网公开渠道,仅供网友学习交流使用,不用于任何商业用途。
微信扫一扫
支付宝扫一扫