ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

KUKA KR C4与S7-1200 Profinet通讯配置全攻略

KUKA KR C4与S7-1200 Profinet通讯配置全攻略 做自动化的同行这几年应该都有一个体感中小型项目的通讯方案越来越标准化了。KUKA工业机器人配上西门子S7-1200PLC十个项目里有七八个都是走Profinet。也正因为常见群里问的人特别多——机器人怎么往TIA Portal里加WorkVisual里那些参数怎么填为什么两边都配好了还是通讯不上我在产线上前后调过几十套这个组合从KR C3到KR C4都摸过今天把KUKA KR C4与S7-1200走Profinet的完整步骤、参数细节和排查经验一次性梳理出来给正在接线和组态的你一份能直接照着做的参考。1. 先弄明白方案谁当主站、谁当从站1.1 项目要解决的通讯需求一条典型的机器人工作站PLC和机器人之间需要交换的无非三类信号状态类、指令类、数据类。状态类比如机器人是否在自动模式、有没有报警、当前程序有没有跑起来指令类比如PLC发出的启动循环、暂停、复位故障数据类比如工件编号、节拍计数、工艺参数。这些信号以前很多项目用硬接线IO点或者DeviceNet、CC-Link来做现在新项目基本统一到Profinet上。S7-1200是西门子中小型PLC里的主力CPU本体自带Profinet口不需要额外买通讯模块。KUKA机器人KR C4控制柜配了Profinet选项之后也直接带一个Profinet网口。两边用一根工业以太网线连起来在软件里组态一下就能实现几十个字节的双向数据交换替代一大束硬接线。这篇讲的方案就是S7-1200作为Profinet IO控制器主站KUKA机器人作为Profinet IO设备从站。1.2 主从关系与协议上的区别很多人第一次接触会搞混一个问题主站从站到底怎么分。在Profinet里IO Controller是主站IO Device是从站。所以S7-1200是IO ControllerKUKA机器人是IO Device。数据方向也对应清楚PLC发给机器人的数据叫输出Output在PLC侧是Q区地址在机器人侧显示为输入信号机器人发给PLC的数据叫输入Input在PLC侧是I区地址在机器人侧对应输出信号。这个关系理顺了后面映射地址才不会乱。我在现场遇到过不止一次调试师傅把Q区地址和I区地址填反结果机器人收到一堆乱码信号查了半天才发现是方向反了。用一句话记PLC的Q永远是发给对方的PLC的I永远是对方发来的。1.3 为什么选Profinet而不是其它通讯方式有些老工程师习惯用DeviceNet或者Profibus DP但这几年新建项目里Profinet的优势非常明显。首先是速度百兆工业以太网周期最短可做到1ms左右对于机器人上下料、码垛、焊接这类场景完全够用其次是组态可视化TIA Portal的网络视图里拖拽连线设备状态一目了然再就是诊断信息丰富断线、丢站、数据不一致都能直接读出来不用拿万用表一根根量。比起硬接线IOProfinet最大的好处是省线、省IO模块、信号可扩展。以前做一套机器人上下料至少要拉十几根信号线现在一根网线全搞定后续想加信号改个组态就行。当然Profinet也有前提机器人侧必须买KUKA的Profinet选项PLC侧必须用TIA Portal组态两边软件版本要匹配。这些我在下一节详细说。2. 硬件与软件准备清单2.1 硬件清单及接口位置先说硬件。PLC侧用西门子S7-1200系列最常见的1214C DC/DC/DC订货号6ES7 214-1AG40或1HG40系列都行看你手头的具体型号。CPU本体左上角有一个Profinet端口通常标着X1 P1标准的RJ45接口。如果现场设备多、需要环形拓扑或者交换机扩展再考虑1215C双网口版本单连一台机器人1214C完全够。机器人侧是KUKA KR C4控制柜。注意控制柜前面板上有好几个网口别插错。X66是专门给Profinet IO用的口走机器人侧PN通讯就用它X65是KUKA以太网口用于WorkVisual连接、远程维护和上层MES通讯。两个口功能不同组态的时候别混。Profinet通讯用的就是X66WorkVisual联网更新程序用X65。连接电缆上两个设备之间用一根带屏蔽的工业以太网线至少超五类Cat5e推荐Cat6长度别超过100米。别图省事用办公室里那种细网线现场干扰大变频器、焊机一启动就容易掉线。如果是近距离直连走过去直接插牢如果要过滑轨、坦克链记得用高柔性拖链电缆普通网线芯线细折几次就断。2.2 软件版本对照软件这块是很多新手卡住的地方。PLC侧用西门子TIA Portal博途V13 SP1以上的版本都支持安装第三方GSDML文件但V15、V16、V17对Profinet规范的支持更好建议至少V15起。机器人侧用KUKA WorkVisual你手头KSS系统版本不同对应WorkVisual版本也不一样。KSS 8.3配WorkVisual 4.0/5.0KSS 8.5配WorkVisual 5.0/6.0具体对应关系在KUKA官方文档里有对照表。另外GSDML文件一定要和机器人实际配置匹配。KUKA的Profinet从站GSDML文件可以从KUKA官网支持中心下载也可以从WorkVisual安装目录里找。安装GSDML之前先确认文件版本别拿一个旧的GSDML配新系统组态出来可能有莫名其妙的问题。2.3 IP与设备名规划表Profinet通讯里有两个东西必须提前规划好IP地址和设备名称。IP地址不用多说两个设备必须在同一网段设备名称是Profinet特有的每个IO Device必须有唯一的名字这个名字在TIA Portal组态和机器人侧配置必须完全一致。我习惯的规划是这样的设备IP地址子网掩码Profinet设备名S7-1200 PLC192.168.1.1255.255.255.0不需要控制器KUKA KR C4192.168.1.2255.255.255.0kuka_rc4_pn设备名称的命名规则要记住大小写敏感、不能有空格、不能有特殊字符、建议全小写、中间可以用下划线。我见过有人在TIA里填“KUKA_Robot_01”机器人侧填“kuka_robot_01”差一个大写结果通讯建立不起来查了一下午。Profinet设备名是严格字符串匹配一个字符都不能差。3. S7-1200侧组态TIA Portal里的完整操作3.1 新建项目并配置PLC网络打开TIA Portal新建项目在“添加新设备”里选你的PLC型号。以1214C为例控制器 → SIMATIC S7-1200 → CPU → 6ES7 214-1AG40-0XB0确认订货号和你手头实物一致版本号选对然后确认。添加之后双击设备进入设备组态选中CPU上的Profinet接口在属性 → 以太网地址里设置IP地址和子网掩码。我按上面的规划填192.168.1.1子网掩码255.255.255.0。这一步就一个要求别选“自动获取IP地址”Profinet主站用固定IP这是现场设备通讯的基本要求。设置完记得在属性里确认Profinet接口已启用很多新项目下载后通讯不成功查下来是CPU的PN接口默认没启用网络。这个选项在设备组态界面右侧属性窗口里“启用该接口的Profinet”勾上。3.2 安装KUKA的GSDML文件这是整篇的关键步骤之一。TIA Portal里选菜单“选项” → “管理GSD文件”在弹出的对话框里通过“源路径”指定GSDML文件所在文件夹然后点击“安装”。安装过程几秒钟左侧状态列会显示“已成功安装”的绿色提示。安装完成后右侧“目录”窗口里刷新在“其他现场设备” → “PROFINET IO”下面就能找到KUKA相关设备条目。不同GSDML版本显示的名称不一样常见的是“KUKA KR C4”或者“KUKA-PROFINET”一类的名字你对照着自己下载的GSDML文件名选对应条目就行。这里有个操作细节GSDML安装失败通常是因为文件本身损坏或者版本不兼容。TIA对GSDML的版本有要求太老的GSDML可能报“该GSDML文件基于的GSDML规范版本不受支持”。如果遇到这个提示去KUKA官网下载对应机器人KSS版本的新GSDML文件不要硬装。3.3 添加KUKA从站并设置设备名与IPGSDML装好之后在网络视图左侧目录里找到KUKA设备直接拖到右侧网络视图的空白处。这时画面上会出现一个代表KUKA机器人的小图标选中PLC的Profinet接口和KUKA设备的接口两个接口之间拖一条连线TIA会自动创建Profinet IO系统。点中KUKA设备在属性 → PROFINET接口 → 以太网地址里设置IP为192.168.1.2子网掩码255.255.255.0。然后在属性 → PROFINET接口 → 设备名称里填kuka_rc4_pn。注意TIA里也可以通过“分配设备名称”功能从电脑端给支持DCP的设备分配名字但KUKA从站在断电状态下有时DCP扫描不到所以我更习惯直接在属性里填好再在机器人侧WorkVisual里填一样的名字。设备名和IP填好后编译并下载到PLC。下载完成后网络视图里如果一切正常KUKA设备图标上应该显示连接状态。如果通讯尚未建立图标会是灰色或者带黄色感叹号这个后面联调环节再细说。3.4 配置I/O模块与地址KUKA从站添加之后选中它在设备组态视图里能看到GSDML自带的一组I/O模块。常见配置是输入输出各16字节或者各32字节具体看你机器人侧WorkVisual里开了多大的数据区两边必须一致。双击设备概览里的I/O模块设置起始地址。按我上面表格里的习惯把输出起始地址设成QB0输入起始地址设成IB0。这样从PLC侧看QB0字节对应发给机器人的第一个字节IB0字节对应机器人发回来的第一个字节。后续在梯形图里直接用I0.0、Q0.0这样的位地址或者IB0、QB0这样的字节地址访问即可。模块参数里还有一个“诊断地址”选项可以不管默认就行。如果TIA提示I/O模块的数据长度和设备实际配置不匹配编译时会有警告这时候先去确认两边字节数。我踩过的坑是PLC侧添加了32字节输入输出模块机器人侧WorkVisual里只激活了16字节编译能过但通讯红灯后来把PLC侧模块改成16字节才正常。4. KUKA机器人侧配置WorkVisual的操作要点4.1 确认Profinet选项已激活机器人侧第一步不是填参数是确认这台机器人装了Profinet选项。KUKA的Profinet IO功能不是标配是需要购买授权并激活的选项包。打开WorkVisual连接机器人或者打开机器人的备份项目在项目树里展开控制器节点找到“已安装选项”或者“Options”目录看看里面有没有Profinet相关条目。如果没找到说明这台机器人没装这个选项。这时候只能找KUKA官方购买授权码通过官方渠道安装激活。千万不要去网上找那种来路不明的“激活文件”工业控制器不是玩具装错了东西轻则系统起不来重则影响产线安全。正规流程是联系KUKA售后提供机器人序列号官方会把授权发过来然后在WorkVisual或者机器人系统上按官方操作步骤激活。确认选项存在之后在WorkVisual项目树里找到Profinet节点右键启用。有的版本需要把选项激活之后重新生成项目并下载才会生效下载之后机器人控制柜会重启这个正常提前把机器人程序备份好就行。4.2 设置机器人控制器网络参数在WorkVisual里展开控制器 → 网络设置或者对应的Profinet配置页面找到机器人侧的网络地址配置。把IP设成192.168.1.2子网掩码255.255.255.0设备名称填kuka_rc4_pn。设备名大小写、字符和TIA Portal里填的一模一样这是通讯建立的核心条件。在WorkVisual激活项目并下载到机器人的时候机器人控制柜会重启启动过程中X66口的Profinet会尝试向网络注册。建议下载激活前先把X66口的网线插好连到PLC那一侧确保上电就有物理链路。如果网线都没插机器人侧虽然有IP但TIA那边永远显示“无法访问”这个低级错误我见过好几次检查顺序永远是先物理、再网络、后组态。4.3 输入输出信号映射机器人侧数据区配好之后还要做一步信号映射把Profinet通讯的数据字节对应到KUKA机器人程序里的$IN和$OUT信号上。在WorkVisual的I/O节点下能找到输入输出映射表左侧是Profinet通讯区右侧是机器人逻辑信号区。按默认方式映射Profinet输入区来自PLC的数据第一个字节对应$IN[1]到$IN[8]这8个位信号第二个字节对应$IN[9]到$IN[16]以此类推。Profinet输出区发往PLC的数据第一个字节对应$OUT[1]到$OUT[8]第二个字节对应$OUT[9]到$OUT[16]。这里有个KRL里很实用的技巧可以在程序开头用SIGNAL指令把连续的位信号组合成一个整数看SIGNAL START_CMD $IN[1] TO $IN[8] ; 字节0组合信号 SIGNAL JOB_NO $IN[9] TO $IN[16] ; 字节1组合信号这样PLC发过来的一个字节数据在KRL里直接当成一个整数变量读做配方号、工件计数特别方便。反向也一样把$OUT信号组合成字节发给PLC。4.4 KRL握手程序示例信号映射做好之后写一个最简单的握手程序验证通讯。下面这段是标准的上下料循环握手DEF CYCLE() ; 初始置位告诉PLC机器人已就绪 $OUT[1] TRUE ; 等待PLC启动指令 WAIT FOR $IN[1] AND $IN[2] ; 应答PLC开始执行 $OUT[2] TRUE ; 执行动作 PTP HOME ; 动作完成通知PLC $OUT[2] FALSE $OUT[3] TRUE ; 等待PLC再次复位 WAIT FOR NOT $IN[1] $OUT[3] FALSE END这里$OUT[1]是“机器人就绪”$IN[1]是“循环启动”$IN[2]是“允许运行”$OUT[2]是“运行中”$OUT[3]是“循环完成”。这五个信号加上一个PLC侧的“机器人故障”读取就能支撑起一个基础的手自动上下料流程。写KRL程序的时候注意WAIT等待的是信号状态如果PLC那边信号一直在程序就不会往下卡。所以建议在PLC和机器人两侧都做好信号保持与复位的逻辑形成握手协议机器人做完动作释放信号PLC收到后复位启动信号机器人确认复位后再回到初始等待状态。这一套做顺了后面扩展工艺逻辑都很省事。5. 联调步骤与通讯验证方法5.1 上电联调的先后顺序两边都组态好、程序都下载完之后联调千万不要乱按顺序来能省一上午。第一步把PLC和机器人之间的网线插好确认X66口和PLC的PN口物理连接牢固。第二步先给机器人上电让机器人系统完全启动X66口的Profinet状态灯应该正常亮。第三步再给PLC上电PLC启动后会自动去连接已组态的IO设备。这个先后顺序不是绝对的但如果机器人还在启动过程中、Profinet服务还没起来PLC那边就会报“IO设备无响应”。等机器人完全起来之后PLC一般会自动重连但有些工况需要手动在TIA里触发一次“重新建立连接”。所以我的习惯是机器人先起来PLC后起来最省事。设备启动之后先确认网络连通性。在电脑的命令提示符里ping 192.168.1.2如果能ping通说明物理链路和IP都正常Profinet注册问题基本只可能在设备名上。如果ping不通老老实实查网线、查IP、查防火墙别往下走。5.2 三处确认通讯状态的技巧确认通讯建立成功我有三处必看的地方。第一处是TIA Portal网络视图KUKA设备的图标上如果设备名和IP都生效且与PLC建立IO连接图标会显示正常的连接状态如果设备图标是灰的或者带黄色叹号鼠标放上去会有诊断提示显示“IO设备无响应”或“设备名不正确”之类。第二处是TIA的诊断缓冲区在PLC设备组态里打开“在线和诊断” → “诊断缓冲区”里面会记录Profinet连接的建立和断开事件。看到“IO设备kuka_rc4_pn已成功连接”或者类似描述就说明从站注册成功。第三处是KUKA机器人示教器界面。在机器人显示IO状态的面板上能看到$IN和$OUT的实时变化。这时候在TIA里用监控表强制一个Q点比如把Q0.0强制为TRUE机器人示教器上对应$IN[1]应该马上变TRUE。反过来在示教器上改变一个$OUT信号TIA监控表里I区对应位也会变。双向都验证过通讯就是真通了。6. 常见问题与排查技巧实录6.1 快速排查速查表把几年里遇到的高频问题整理成一个速查表你联调的时候对着查能省不少时间现象排查方向解决方法TIA里设备显示无响应KUKA状态灯不亮网线没插好、IP网段不对先ping通再查组态IPping得通但通讯建立不起来设备名不一致或大小写不同核对TIA与WorkVisual设备名完全一致通讯时通时断、频繁掉线网线质量差、距离过长、干扰换屏蔽工业网线控制距离在100米内编译TIA时报I/O长度不匹配两侧数据区长度不一致把PLC侧模块长度改成机器人侧一致KUKA侧$IN信号收不到信号映射表没生效WorkVisual里重新激活项目并重启机器人PLC数据高低字节反了字节顺序约定不一致改用字节型信号传输并约定高位在前WorkVisual连接不上机器人X65口IP不在同一网段把电脑网卡IP改成与X65同网段6.2 独家避坑心得这些是常规文档里不会写的但每家产线都可能遇到的坑。第一个是数据的字节顺序问题。Profinet传输多字节数据的时候比如要传一个16位的整数PLC侧是以高字节在前的顺序组包的KUKA侧不同版本的解析逻辑可能不一样。早期我吃过亏PLC发的工件号机器人读出来数字完全不对。后来的做法是能用字节型就绝不传整数或者两端确认好字节顺序再传省得来回试。第二个是WorkVisual激活项目的风险。WorkVisual项目激活本质上是用配置数据覆盖机器人的当前配置激活过程中机器人控制柜会重启。如果机器人里有正在调试、还没备份的程序激活完发现程序没了那时候哭都来不及。我的习惯是任何一次WorkVisual激活前必做两件事——导出一份机器人程序备份拍一张当前配置截图。万一出问题至少能恢复现场。第三个是Profinet的组态文件名规范。GSDML文件安装后TIA的目录里可能同时出现多个KUKA条目对应不同版本或不同接口。选错条目也能编译但通讯就是不通。我建议安装GSDML前先看文件名里的版本号和适用控制器型号跟你的机器人对上号再装装完把不相关的旧版本清掉避免混淆。第四个是现场干扰问题。机器人工作站里往往有大功率变频器、电焊机、伺服驱动器这些设备对Profinet通讯的干扰非常大。如果你发现通讯正常但偶尔掉线而且掉线常发生在某个电机启动的瞬间大概率是干扰。对策是用带屏蔽层的工业以太网线屏蔽层两端接地网线走独立的线槽离动力电缆至少20厘米以上。别信什么“短距离不用屏蔽”的说法现场环境跟实验室完全不同。6.3 一个容易忽略的小细节最后补一个经常被忽略的细节Profinet设备名的大小写。KUKA侧设备名在WorkVisual里填好后TIA侧最好通过“设备名”属性直接复制粘贴过来不要手打。手打的时候特别是O和0、I和1、l和大写I这些容易混淆的字符一次打错排查半天。我在现场就遇到过“kuka_rc4_pn”和“kuka_rc4_pN”这种差异肉眼几乎看不出来但Profinet就是认死理错一个字符都不行。另外给PLC和机器人各备份一份组态文件。TIA项目文件导出保存机器人侧WorkVisual项目也导出存好。这些文件放进设备档案里以后设备改造、程序恢复、售后排查都用得上。做自动化这一行细节决定效率规范决定可靠性。照着上面的步骤配一遍大部分KUKA和S7-1200的Profinet通讯都能一次打通。
返回列表