0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

KUKA机器人8.7系统对PROFINET软件进行编程控制的步骤

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 2024-03-04 09:35 次阅读

通过 KRL 解耦 PROFINET 设备

IOCTL 命令 1060:
为了可以在不同的机器人上交替地运行一个设备,需要 IOCTL 命
令 1060 进行解耦。如果该设备仅在一个机器人上运行,也可以使
用该命令。
设备输出端设置在解耦后立即归零。如果将设备短时间断开电源
又重新接上,则不会恢复输出端设置。
IOCTL 命令 60:
只在该设备仅在一个机器人上运行时,才能使用该 IOCTL 命令。
只出于兼容性原因,该命令才仍可用。
在解耦时,设备上的输出端设置保持不变。如果将设备短时间断开
电源后又重新接上,则会恢复输出端设置。

c65c3234-d961-11ee-a297-92fbcf53809c.png

始终可用 • 勾选:机器人控制器启动时期待设备已被激活。若设备未被激活,将输出故障信息
• 未勾选:机器人控制器在启动时不检查设备是否已被激活。

已解耦设备的属性

• 若将解耦了的设备与总线或者电源分离开,这不会触发故障。
• 在已解耦的设备上进行的所有输入/输出操作都将保持无效。
• 已解耦的设备不能对读/写故障进行处理。
• 解耦时设备的输入端已被归零。
• 解耦时设备的输入端已被归零。

选项 始终可用
对于带工具更换系统的应用程序,并非所有设备都持续耦合。在冷启动或重新配置 I/O 驱动程序时,解耦的设备将直接触发总线故障。用选项 始终可用可以避免该情况:
• 勾选:错误信息
未勾选:无故障信息

句法
• 在一台机器人上使用该设备时:
RET = IOCTL("PNIO-CTRL",60,用户 ID)
• 在一台或多台机器人上使用该设备时:
RET = IOCTL("PNIO-CTRL",1060,用户 ID)

这里将根据所用的工具给 ID 为 3 的设备解耦:
...
IF (NEXT_TOOL == GRIPPER_1) THEN
RET = IOCTL("PNIO-CTRL",1060,3)
ENDIF
...

2.通过 KRL 耦合 PROFINET 设备

有 2 个具有不同应用和效果的 IOCTL 命令用于耦合:
• IOCTL 命令 1050:为了使设备可以在不同的机器人上交替运行,需要IOCTL 命令 1050 进行耦合。如果该设备仅在一个机器人上运行,也可以使用该命令。
• IOCTL 命令 50:只在该设备仅在一个机器人上运行时,才能使用该IOCTL 命令。只出于兼容性原因,该命令才仍可用。

句法
• 在一台机器人上使用该设备时:
RET= IOCTL("PNIO-CTRL",50,用户 ID)
• 在一台或多台机器人上使用该设备时:
RET= IOCTL("PNIO-CTRL",1050,用户 ID)

这里将根据所用的工具给 ID 为 5 的设备耦合:
...
IF (NEXT_TOOL == GRIPPER_2) THEN
RET = IOCTL("PNIO-CTRL",1050,5)
ENDIF
...

3、通过 KRL 更改耦合 PROFINET 设备的等待时间

有些设备的耦合时间长于其他设备。因此,在机器人控制系统输出错误信息之前,要等待规定的时间。默认情况下,规定的等待时间为 10 秒,可在运行时于程序之内更改。为此,必须在程序中借助 KRL 函数 IOCTL 编程一个更改等待时间的命令。

句法
RET = IOCTL("PNIO-CTRL",32776,等待时间)

说明
RET 用于保存 KRL 函数 IOCTL 返回值的变量。该变量的数据类型为 INT,在使用之前必须在程序中声明。
IOCTL 用于向总线驱动程序发送命令的 KRL 函数
PNIO-CTRL 总线驱动程序的名称
32776 用于更改等待时间的 IOCTL 命令
等待时间 在机器人控制器输出错误信息之前要等待的时间,单位:ms

返回值:RET

0 已成功更改等待时间。
-1 由于无法访问总线系统,所以未能更改等待时间。

示例
在该示例中,将该值设为 15 s (= 15000 ms):
RET = IOCTL("PNIO-CTRL",32776,15000)

4.通过 KRL 查询 PROFINET 设备的状态

说明
运行时,可在一个程序之内查询 PROFINET 设备的状态。为此,必须在程序中借助 KRL 函数 IOCTL 编程一个查询状态的命令。
句法

RET = IOCTL("PNIO-CTRL",70,用户 ID)

元素 说明
RET 用于保存 KRL 函数 IOCTL 返还值的变量。该变量的数据类型为 INT,在使用之前必须在程序中声明。
IOCTL 用于向总线驱动程序发送命令的 KRL 函数
PNIO-CTRL 总线驱动程序的名称
70 用于查询设备状态的 IOCTL 命令
用户识别号 要查询其状态的设备的用户 ID


返回值RET

说明
4 设备已解耦。
5 设备已耦合,但出现错误。
6 设备已耦合且工作正常。
7 设备已解耦,但内部仍在 PROFINET Controller 中激活。
提示:例如,当用 IOCTL 命令 60 将设备解耦时,会出现这种状态。在这种情况下,PROFINET Controller 会通过 DCP 搜索设备。

5.通过 KRL 激活或停用总线故障

在默认情况下激活总线故障。如果出现总线故障,这会导致停止和/或锁定激活命令。借助 KRL 函数 IOCTL 可停用并再次激活总线故障。激活或停用可以在运行时于程序内通过 KRL 执行。
可为一个或多个总线实例停用总线故障。如果总线故障被停用,会有如下表现:
• 总线故障:不停止和/或锁定激活命令
• 总线故障:smartHMI 信息窗口中没有故障信息
• smartHMI 信息窗口中会显示以下信息:
KRC IO 总线错误抑制针对下列总线实例激活:{总线实例}{总线实例}{总线实例}
• 如果总线实例中已出现故障,则无法再次激活总线故障。
该情况下可通过系统变量 $IOBUS_INFO 读取是否出现总线故障。

句法
• 为了停用总线故障:
RET = IOCTL("KRC->PNIO-CTRL", 1, 1)
• 为了激活总线故障:
RET = IOCTL("KRC->PNIO-CTRL", 1, 0)

元素 说明
RET 用于保存 KRL 函数 IOCTL 返还值的变量。该变量的数据类型为 INT,在使用之前必须在程序中声明。
IOCTL 用于向总线驱动程序发送命令的 KRL 函数
PNIO-CTRL 总线驱动程序的名称
1、1 用于停用总线故障的 IOCTL 命令
1、0 用于激活总线故障的 IOCTL 命令

返回值RET

说明
0 IOCTL 命令成功执行。
-1 未找到指定的总线驱动程序。
-3 KRL 函数 IOCTL 包含一个错误参数
-4 由于出现总线故障,不允许激活。

6.通过 KRL 查询机器人控制器的节能模式

运行时,可在一个程序之内查询机器人控制器的节能模式。为此,必须在程序中借助 KRL 函数 IOCTL 编程一个查询节能模式的命令。

句法
RET = IOCTL("PNIO-DEV",1002,0)

元素 说明
RET 用于保存 KRL 函数 IOCTL 返回值的变量。该变量的数据类型为 INT,在使用之前必须在程序中声明。
IOCTL 用于向总线驱动程序发送命令的 KRL 函数
PNIO-DEV 总线驱动程序的名称
1002 用于查询机器人控制器节能模式的 IOCTL 命令

返回值RET

说明
-1 查询时出现了一个错误。
2 机器人控制器处于制动器已制动的状态下。
240 机器人控制器处于 Energy_Saving_Disabled 状态下。
255 机器人控制器处于 Ready_To_Operate 状态下。
256 PROFIenergy 未初始化。
257 机器人控制器处于过度状态下

通过 KRL 重启总线系统

总线故障后,可在运行时在程序之内重启总线系统。为此,必须在程序中借助KRL 函数 IOCTL 编程一个重启总线系统的命令。

句法
RET = IOCTL("PNIO-CTRL",12,0)

元素 说明
RET 用于保存 KRL 函数 IOCTL 返还值的变量。该变量的数据类型为 INT,在使用之前必须在程序中声明。
IOCTL 用于向总线驱动程序发送命令的 KRL 函数
PNIO-CTRL 总线驱动程序的名称
12 用于重启总线系统的 IOCTL 命令

返回值RET

说明
0 重启总线系统成功。
3 重启总线系统失败。

7.通过 KRL 查询有故障的 PROFINET 设备数量

运行时,可在一个程序之内查询总线系统上有故障的 PROFINET 设备数量。为此,必须在程序中借助 KRL 函数 IOCTL 编写一个查询故障设备的命令。
RET = IOCTL("PNIO-CTRL",32774,0)

元素 说明
RET 用于保存 KRL 函数 IOCTL 返回值的变量。该变量的数据类型为 INT,在使用之前必须在程序中声明。
IOCTL 用于向总线驱动程序发送命令的 KRL 函数
PNIO-CTRL 总线驱动程序的名称
32774 用于查询故障设备数量的 IOCTL 命令

返回值RET

说明
0 总线系统上的所有设备功能完好。
>0 故障设备的数量

8.通过 KRL 查询已配置的 PROFINET 设备数量

运行时,可在一个程序之内查询总线系统上已配置的 PROFINET 设备数量。为此,必须在程序中借助 KRL 函数 IOCTL 编写一个查询已配置设备的命令。

句法
RET = IOCTL("PNIO-CTRL",32775,0)

元素 说明
RET 用于保存 KRL 函数 IOCTL 返回值的变量。该变量的数据类型为 INT,在使用之前必须在程序中声明。
IOCTL 用于向总线驱动程序发送命令的 KRL 函数
PNIO-CTRL 总线驱动程序的名称
32775 用于查询已配置设备数量的 IOCTL 命令

返回值RET

说明
-1 执行 IOCTL 命令时出错。
>0 已配置设备的数量



审核编辑:刘清
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    15223

    浏览量

    171189
  • 机器人
    +关注

    关注

    206

    文章

    27033

    浏览量

    201404
  • DCP
    DCP
    +关注

    关注

    0

    文章

    28

    浏览量

    17027

原文标题:KUKA.机器人8.7系统 对 PROFINET软件进行编程控制

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    LabVIEW的六轴工业机器人运动控制系统

    系统分为算法实现和仿真模块、DSP控制模块、及机器人驱动模块,以验证算法的有效性。 KUKA KRAGILUS工业机器人的实体
    发表于 12-21 20:03

    如何远程控制机器人

    简单的类似于”基站“的东西接入互联网,通过手机app或电脑软件接入互联网的形式在远程或异地都可以对机器人控制,实现基站对于机器人进行100
    发表于 10-25 13:31

    KUKA重型机器人

    这个是KUKA重型机器人处理和测量混凝土轨枕的视频。处理得相当精细。真心值得爱好机器者和爱国者研究研究。
    发表于 02-03 15:18

    KUKA机器人控制柜三维模型

    寻求KUKA机器人控制柜三维模型,做方案有时需要用到,大家谁有可以给我发一份吗?先谢谢了
    发表于 04-18 16:05

    请教各位Labview与ABB机器人怎么进行Profinet通讯

    想用Labview做机器视觉,怎样将Labview通过视觉算出的工件的偏移量以及偏移角度的值通过Profinet网络赋于ABB机器人里的变量(变量类型:num)?
    发表于 10-31 13:15

    工业机器人的技术原理

    进行通讯。机器人控制器(RC)的主计算机完成机器人的运动规划、插补和位置伺服以及主控逻辑、数字I/O、传感器处理等功能,而编程示教盒完成信息
    发表于 11-23 10:40

    库卡KUKA机器人四种启动方式介绍

    库卡KUKA机器人四种启动方式1)自动运行说明 库卡机器人处于自动运行时,先要在手动状态时候选择需要运行的程序,然后通过钥匙开关切换机器人到自动运行状态,给
    发表于 09-04 15:45

    KUKA焊接机器人伺服电机常见故障及维修处理

    、同步带等连接件时,在任何情况下,作用在电动机上的力不能超过电动机容许的径向、轴向负载(4)按说明书规定,对伺服电动机和控制电路之间进行正砖的连接。连接中的错误,可能引起库卡机器人伺服电机的失控或振荡,也
    发表于 09-26 16:51

    工业机器人仿真与编程

    目录概述行走轴模型拆分行走轴模型导入仿真软件创建行走轴机械装置外部轴配置向导插件安装虚拟机器人系统创建行走轴系统配置机器人安装到行走轴行走轴
    发表于 09-07 08:57

    库卡机器人MGV电源模块维修

    KUKA库卡机器人MGV电源模块维修PH1013-2840MGV电源维修 库卡电源模块维修 机器人电源模块维修 库卡控制器维修 KUKA电源
    发表于 09-08 07:30

    机器人系统控制需求简介

    第二章 机器人系统控制需求简介2.1 工业机器人系统组成机械本体:精密减速机、伺服电机、伺服驱动器、
    发表于 09-08 07:44

    KUKA机器人伺服驱动模块维修

    KUKA库卡C4机器人驱动器故障报警维修库卡机器人维修内容包括库卡机器人示教器维修,KUKA伺服驱动模块维修,库卡
    发表于 09-17 07:09

    profinet转ethernet网关连接发那科机器人配置案例

    本案例是西门子1200PLC通过PROFINET转EtherNet网关连接发那科搬运机器人配置案例。所需设备:西门子1200PLC、Profinet转EtherNet IP网关、Fanuc机器
    发表于 08-03 17:58

    EPR6-S工业机器人通过EtherCAT转profinet网关接入西门子系统

    软件的ip地址和设备名称要和博图一致,智能PLC能够与工业机器人专用六轴伺服驱动器进行快速、稳定的通讯,实现数据的传输和控制
    发表于 10-24 14:04

    KUKA工业机器人与S7-1200PLC实现Profinet通讯的步骤

    本次内容来简单谈一谈KUKA工业机器人与S7-1200PLC实现Profinet通讯的步骤
    的头像 发表于 07-05 10:10 4646次阅读
    <b class='flag-5'>KUKA</b>工业<b class='flag-5'>机器人</b>与S7-1200PLC实现<b class='flag-5'>Profinet</b>通讯的<b class='flag-5'>步骤</b>