• OPCUA 行业配套标准:机器人


         

       OPC UA 定义了对象,对象类型,结构化组织能力和定义对象之间关系的能力,利用这些基础和衍生类型及对象,用户还可以搭建出更复杂的类型,关系和对象。

    如果不同的厂商或者用户定义的信息模型不同,将会影响系统的互操作性,对于设备而言,如果采用统一标准的信息模型,将会提高设备的互操作。

            OPC 基金会在OPC UA标准的基础上,与众多的行业机构展开合作,针对行业的特点,制定各种配套标准,也称为伴随标准。这些配套标准促进了专业设备的互操作性。另一方面,使用同样的信息模型标准, 建模的工作将变的简单有效。

    在本博文中,我们介绍其中一个配套标准,机器人。

    OPC 40010-1: Robotics - Vertical Integration

             国外一些机械臂制造厂商已经为他们的机械臂构建了符合OPC-40010-1 的OPCUA 服务器 。在学习该标准的同时,我们也参考了UR 公司的OPC UA 服务器。

    机器人OPC UA 模型

    模型的根是MotionDeviceSystemType的对象,名称 Robot,在OPCUA for Device 模型的ComponentType之下,也可以直接在服务器的Objects目录下,它包括下面三个对象:

    • MotionDevices
    • Controllers
    • SafetyStates

    运动设备(MotionDevices)

     

    运动设备(MotionDeviceType)

        MotionDevics目录包含了MotionDeviceType对象,取名为RobotArm 这是连接到控制器的物理机械臂的模型。

    轴(Axes)

    该目录包含了机械臂6个轴的对象

    • 基轴Base
    • 肩部轴Shoulder
    • 肘部轴Elbow
    • 腕部轴Wrist1
    • 腕部轴Wrist2
    • 腕部轴Wrist3

    每个轴包括的变量

    • MotionProfile: 1 (ROTARY,ROTATARY_ENDLESS,LINEAR)
    • AdditionalLoad 在该轴上的负载,例如焊接机的变压器
    • 参数ParameterSet:
      1. 实际位置ActualPosition: 对应的关节位置,单位:弧度。
      2. 实际速度ActualSpeed: 相应的关节的速度 单位rad/sec
      3. 实际加速度

    动力总成(PowerTrains)

    该文件夹包含6个电机类型(MotorType)对象:

    • 基电机Base
    • 肩部电机Shoulder
    • 肘部电机Elbow
    • 腕部电机Wrist1
    • 腕部电机Wrist2
    • 腕部电机Wrist3

    电机类型(MotorType)

    基础属性

    •  序列号
    • 制造商
    • 型号
    • 生产号

    参数集(ParameterSet)

    • 刹车释放
    • 电机温度
    • 有效载荷率

    齿轮类型(GearType)

    •  序列号
    • 制造商
    • 型号
    • 生产号
    • 齿轮比
    • 齿轮距(Pitch)

    安全状态(SafetyStates)

    控制器(ControllerType)

    •  序列号
    • 制造商
    • 型号
    • 生产号
    • 当前用户
    • 软件
    • 任务控制
    • 参数集
      • 总开机时间
      • 开机时间
      • UPS 状态
      • 总能耗
      • 机箱风扇速度
      • CPU风扇速度
      • 输入电压
      • 温度

    辅助组件类型(AuxiliaryComponentType)

    驱动类型(DriveType)

    只有一个生产编号

    任务控制TaskControls

    • 组件名称ComponentName
    • 参数集ParameterSet
      • 任务程序装入TaskProgramLoaded
      • 任务程序名称TaskProgramName
      •  执行模型ExecutionMode

    任务程序名称: 在UR 中,是装入Polyscope 的程序名称,例如:"/programs/palletizer.urp"  

    执行模型: 枚举类型,CYCLE, CONTINUOUS, STEP

    注:UR 的程序

    UR 的程序不是OPCUA Robot 模型的一部分。

    用户可以通过两种办法给优傲机器人编程:

    • URP程序——用户使用示教器的图形界面编程可直接生成URP程序,即机器人可读代码。用户不需要具备任何编程水平即可生成或修改程序。URP程序还可以调用多个SCRIPT子程序,具有延展功能。
    • SCRIPT程序——SCRIPT是优傲的UR Script编程语言所生成的程序文件。就像其他编程语言那样,UR Script有变量、类型、控制流程指令、函数等功能。另外,UR Script包括内置的变量与函数可以控制机器人输出入信号以及运动。

            这两种编程方式各有所长:你可以无需编程水平在示教器上直接生成URP程序;也可以使用SCRIPT增加编程功能,另外,SCRIPT还可用于远程控制机器人驱动。

     

    心得

            OPCUA For Robot 是机械臂的信息模型,包含了许多Robot 零部件的相关信息和一些状态,但是没有包括控制的方法。机械臂的控制程序是通过下载SCRIPT 程序实现的。OPCUA 信息模型只是提供了文件名称,甚至没有下载程序的接口。

        感觉这样的OPCUA 模型实用性不大。

  • 相关阅读:
    WPF图表库LiveCharts的使用
    es elasticsearch 中的 query string query 用法
    centos7.9安装nacos
    redis进阶:redis主从架构原理及搭建
    实验三 进程管理
    CrossOver2023mac切换win双系统虚拟机
    你真正了解什么是接口测试么?接口实战一“篇”入魂
    C++ Primer 第4章 表达式
    【nginx】缓存配置文件
    全局锁、表锁、行锁
  • 原文地址:https://blog.csdn.net/yaojiawan/article/details/134197700