GB/T39134-2020

机床工业机器人数控系统编程语言

Industrialrobotnumericalcontrolsystemofmachinetool—Programminglanguage

本文分享国家标准机床工业机器人数控系统编程语言的全文阅读和高清PDF的下载,机床工业机器人数控系统编程语言的编号:GB/T39134-2020。机床工业机器人数控系统编程语言共有26页,发布于2021-05-01
  • 中国标准分类号(CCS)J50
  • 国际标准分类号(ICS)25.040.20
  • 实施日期2021-05-01
  • 文件格式PDF
  • 文本页数26页
  • 文件大小1.41M

以图片形式预览机床工业机器人数控系统编程语言

机床工业机器人数控系统编程语言


国家标准 GB/T39134一2020 机床工业机器人数控系统 编程语言 Industrialrobotnumericalcontrolsystemofmachinetool Programminglanguage 2020-10-11发布 2021-05-01实施 国家市场监督管理总局 发布 国家标涯花警理委员会国家标准
GB/39134一2020 目 次 前言 引言 范围 2 术语和定义 编程语言与指令类型 指令功能与用法 4.1运动指令 4.1.l1 概述 丁指令 4,1.2 L指令 4.1.3 4.1.4C指令 4.1.5JD0指令 LDo指令 4.l.6 4.1.7CD0指令 4.1.8sINGAREA指令 力控制指令 4,2 4.2.1概述 (GRIPLOAD末端负载设置指令 4,2.2 4.2.3MECHUNITLOAD机械臂负载设置指令 4.2.4FORCEMODE力控模式选择指令 4.2.5FORCECMD力追踪目标值设置指令 4.2.6FORCEPARA阻抗参数设置指令 4.3速度控制指令 概述 4.3.1 4.3.2ACC加速度控制指令 4.3.3VORD速度修调指令 4.4坐标系设置指令 4.4.1概述 4.4.2UT指令 4.4.3UF指令 4.5寄存器操作指令 4.5.1 概述 4.5.2常规寄存器操作指令
GB/T39134一2020 4.5.3位姿寄存器操作指令 4.5.4位姿寄存器单轴操作指令 4.5.5数字输人输出寄存器操作指令 4.5.6模拟量输人输出操作指令 4.6数据处理指令 ##### 4.6.1概述 4.6.2BITc复位指令 4.6.3BITS置位指令 4.6.4CLEARBUF串行输人缓冲清除指令 4.7流程控制指令 4.7.1概述 4.7.2IF逻辑判断指令 4.7.3SELECT条件选择指令 12 4.7.4CAII程序调用指令 .了.coro程序跳转指令 4.7.6ILBL程序标签指令 12 4.7.7sTOPMoTON暂停当前程序运动行指令 13 4.7.8cALLBYV变量调用程序指令 13 4.8位置补偿指令 13 OFFsETcONDITION条件补偿指令 13 4.8.1 4.8.2OFFSET运动附加指令 13 4.9运算指令 4.9.1概述 4.9.2算数运算指令 14 4.9,3逻辑运算指令 l6 4.10其他指令 18 4.10.1概述 18 4.10.2CLEARPATH当前路径清除指令 18 18 4.10.3TIMER[]计时器指令 18 4.10.4wAITD1/D0等待指令 19 4.10.5TRIGGERIo信号触发指令 19 4.10.6空间区域设定指令 20 附录A资料性附录典型编程程序格式框架 21 附录B(资料性附录)J、L、C指令可选操作参数说明
GB/39134一2020 前 言 本标准按照GB/T1.1一2009给出的规则起草 本标准由机械工业联合会提出 本标准由全国机床数控系统标准化技术委员会(SAC/TC367)归口 本标准起草单位:佛山智能装备技术研究院、佛山华数机器人有限公司、重庆大学、华中科技大学、 武汉华中数控股份有限公司,东莞理工学院 本标准主要起草人:尹玲、周星、陈思敏、黄键、高萌、宁国松、杨林,欧道江、杨海滨、李国龙、张航军、 金健、陈吉红
GB/T39134一2020 引 言 当前工业机器人应用进人爆发式增长,工业机器人在各类数控智能加工单元中与数控机床配套,已 成为智能制造车间的核心组成部分,用数控系统实现对数控智能加工单元的控制成为当前行业趋势,这 些不断出现的新应用形式对数控系统控制工业机器人的编程语言提出了新的要求 本标准完善了机床工业机器人数控系统编程代码体系,扩充了代码内容和涵义,有助于统一机床工 业机器人数控系统编程代码使用要求,引导工业机器人数控系统编程语言向功能性强、兼容性好,通用 性高的方向发展,使工业机器人编程操作更安全、简洁、高效,提升操作体验 本标准的指定对于促进本 领域的技术交流和技术进步,加快工业机器人的应用推广具有重要意义 IN
GB/39134一2020 机床工业机器人数控系统编程语言 范围 本标准规定了机床工业机器人数控系统的编程语言,以及编程语言中的指令类型、功能和用法 本标准适用于机床工业机器人数控系统 其他用途的机器人控制系统可参照本标准 2 术语和定义 下列术语和定义适用于本文件 运动指令moveinstruction 对工业机器人各关节转动移动运动控制的相关指令 [[GB/T298242013,定义2.1] 2.2 运动附加指令additiomalmoveinstruction 在工业机器人的运动指令中附加的特定的参数设置或任务指令,实现工业机器人运动过程中的特 定任务 2.3 力控制指令foreeeontrolinstruction 对工业机器人在不同工作状态、不同工作对象时的负载或力进行设置和控制的相关指令 2.4 速度控制指令speedomtrolinstruction 对工业机器人关节或运动轴的运动速度,加速度,加加速度进行设置的相关指令 2.5 协作控制指令ellaborativeinstruetion 工业机器人与其他设备协同作业时,对其与周边设备的同步和时序作业进行控制的相关指令 2.6 坐标系设置指令coordinateinstruetion" 对工业机器人坐标系设置及操作的相关指令 2.7 register erationinstructionm 寄存器操作指令 operam 对工业机器人数控系统编程时涉及的相关寄存器配置及操作的指令 2.8 数据处理指令datapr cessinginstruction 对程序数据进行设定、清除等操作的相关指令 改写[GB/T29824一2013,定义2.2] 流程控制指令flowcontrolinstruction 对工业机器人操作程序的执行顺序产生影响的指令
GB/T39134一2020 2.10 位置补偿指令positoncompensationinstruction 对工业机器人的位置点进行偏移补偿的指令 2.11 运算指令arithmeticinstruectiom 对程序中相关数据进行算数运算或逻辑运算的指令 2.12 工具中心点 centerpoint;TCP t0ol 实际使用工业机器人一般安装夹具等辅助装置,为了编程方便,以辅助装置中心为原点建立工具坐 标系统 编程语言与指令类型 工业机器人编程语言由指令、寄存器、常量组成 指令包括运动指令、力控制指令,速度控制指令 坐标系设置指令、寄存器操作指令、数据处理指令流程控制指令、位置补偿指令、运算指令,其他指令; 寄存器包括位姿寄存器、数值数据寄存器、输人输出寄存器;常量包括位姿常量、数值常量、字符串常量 具体如图1所示 编程语言 指令 寄存器 常量 输 图1工业机器人程序指令组成 典型编程程序格式框架参见附录A 指令功能与用法 4.1运动指令 4.1.1概述 运动指令指对工业机器人各关节转动或TCP移动进行运动控制的点到点、直线或圆狐指令 4.1.2J指令 指令功能:以关节轴插补方式进行的点到点运动 编程格式」

Vel=OptionalProperty}*
GB/39134一2020 其中: -目标点点位信息,可以是P[]示教默认保存点位名),JR[],LR[门或常量的任意一种; Vel -关节运动速度百分比,取值范围[1,100,计数单位为1%,表示以关节最大速度的百分之 Value运动 t.oset,lne,Sskip等,参见附录B. 可选择项,如Acc,Dec,Cnt OpionallProperty)" 示例 JP[1]vd= =100Acc=l00Dec=100Cnt=10; 以关节插补的方式向目标位置[1]移动,并速度为设定关节速度的100%,加、减速因子设定为100%的关节运动 最大加减速,平滑过渡系数设定为当前点与目标点之间距离长度的10%. 4.1.3L指令 指令功能;以笛卡尔坐标插补方式进行的直线运动 编程格式l

vd=OpionalPropery)" 其中 目标点点位信息,可以是P[],JR[],LR[]或常量任意一种; Vel 空间运动速度,单位为毫米每秒( mm/s -可选择项,如Vrot, Ace,Dec,Cnt,Ofset,Inc,Skip,Wnt等,参见附录B. OptionmalProperty)" 示例 L.P[1]ve=100Aec=100De=100Cnt=10r 以直线的方式向目标位置P[1]移动,并设定速度为100mm/s,加、减速因子设定为100%的直线运动最大加减速, 平滑过渡系数设定为当前点与目标点之间距离长度的10% 4.1.4C指令 指令功能:以笛卡尔坐标插补方式执行的圆弧运动,经过中间点,最终到目标点 编程格式C{P3Vel=OptionalProperty)* 其中 P1/P2/P3 目标点点位信息,可以是P[门,JR[],LR[]或常量任意一种; Vel 空间运动速度,单位为毫米每秒(n mm/s lPro -可选择项,如Vrot,Acc,Dec,Cmt,Ofset,Inc,Skip,Wnt等,参见附录B Optiona roperty》关 注:如仅有两个点,则执行圆弧运动,其中P1为中间点点位信息,P2为末端点点位信息 如存在三个点,则进行整 圆运动,从Pl,经过P2.,P3,最终停止在Pl,P点需设置为当前位姿 示例 cP[1]2]vel=100Aee=100De c=l00Cnt=l0 以圆弧的方式从当前点,经过中间位置P1]点,往目标位置P[2]点移动,并设定速度为100mm/s,加、减速因子设 定为100%的直线运动最大加减速,平滑过渡系数设定为当前点与目标点之间距离长度的10% 4.1.5JD0指令 指令功能:在运动不必是直线时,快速将工业机器人从一个点移动到另一个点,在目标点位置或平 滑路径中间位置,设置置位/复位)输出信号 该指令下,工业机器人和外部轴沿着非线 性路径移动到目标位置,所有轴在同一时间到达目标位置 Vel=Value nalPre 编程格式:JDO Do[门=Optiona roperty关 其中 P 目标点位信息; Vel -关节运动速度百分比,取值范围[1,100],计数单位为1%,表示以关节最大速度的百分之
GB/T39134一2020 Value运动; DO[门 -设置输出信号 OptionalProperty 可选择项,如Vrot,Acc,Dec,Cnt,Offset,Inc,Skip,参见附录B 示例 JIoP[1]Vel=50Do[128]=ONCmt=50; 以关节插补的方式向目标位置P[1]移动,速度为设定关节速度的50% 若后续无其他运动,则在P[1]位置,输出 信号Do[C128]被置位;若后续有其他运动行,则在平滑的中间位置,输出信号Do[128]被置位 4.1.6LD0指令 指令功能:工业机器人以直线运动的方式运动至目标点,并在目标点位置或平滑路径中间位置将相 应输出信号设置为相应值 编程格式;LDO

Vel=DO[门=OptionalProperty)* 其中 目标点位信息; Vel -运行速度数据,单位为毫米每秒(mm/s); DO[门 设置输出信号; OptionalProperty -可选择项,如Vrot,Acc,Dee,Cnt,Ofset,Inc,Skip,Wjnt,参见附录B 示例: Do)P[1]Vd=000Do[128]=ONCnt=50 以直线的方式向目标位置P[1]移动,速度为1000mm/s,若后续无其他运动,则在P1]位置,输出信号DO[128]被 置位;若后续存在其他运动行,则在平滑路径的中间位置,输出信号Do[128]被置位 4.1.7CD0指令 指令功能;工业机器人通过中间点以圆弧轨迹运动至目标点,并在目标点位置或平滑路径的中间位 置将相应输出信号设置为相应值 该指令在C指令的基础上增加信号输出功能 Do[门- 编程格式:CDOVel=Value OptionalProperty关 其中 圆孤的中间点以及目标点点位信息,可以是P[],JR叮],LR门]或常量任意 P1/P2 种; 空间运动速度,单位为毫米每秒(mm/s); Vel OptionalProperty关 可选择项,如Vrot,Ace,Dee,Cnt,Ofset,Inc,Skip,Wjnt,参见附录B 示例: CD0P[1]P[2]Vve=1000Do[128]=ONCnt=50; 以圆弧的方式向从当前位置,经过中间位置P[1]点,向目标位置P[2]移动,速度为1000mm/s,若后续无其他运 动,则在P[2]位置,输出信号DO[128]被置位;若后续存在其他运动行,则在平滑路径的中间位置,输出信号DO[128] 被置 4.1.8SINGAREA指令 指令功能:设定工业机器人运动时,在奇异点的插补方式 编程格式SINGAREAwristON/WristOFF 其中: WristON -启用奇异点位姿调整 工业机器人运动时,为了避免在奇异位置(如工业机器人四六 轴轴线处于平行位置)报警停机,允许TCP的位姿在奇异位置附近有些许改变,避开 奇异位置运行 WristOFF 关闭奇异点位姿调整 工业机器人运动时,不准许TCP位姿发生改变,必须严格按
GB/39134一2020 照编程轨迹运行,是工业机器人的默认状态 当前指令通过对工业机器人位姿进行些许改变,可以绝对避免工业机器人运行时报警停机,但是, 工业机器人运行路径会受影响,位姿得不到控制,通常用于通过复杂姿态点,不能作为工作点使用 示例 SINGAREAwristO; 启用奇异点位姿调整 SINGAREAWristOFF 关闭奇异点位姿调整 4.2力控制指令 4.2.1概述 用于设定工业机器人在不同工作状态、,不同工作对象时的负载或力控制功能,常用于搬运、码垛、,抛 光、打磨等工业机器人 4.2.2GRILoAD末端负载设置指令 指令功能;设置当前搬运对象的载荷数据,包含质量、重心,力矩轴方向和有效载荷转动惯量 编程格式GRIPLOAD 其中: -载荷数据结构体变量,包括以下参数 Load 有效载荷质量,单位为千克(kg); aa Load.mass -有效载荷重心,单位为毫米(mm); b Load.cog.x,load.cog.y,lLoad.cog.Z c L.oad.aom.ql,L.oad.aom.q2,L.oad.aom.q3,L.oad.aom.q! 力矩轴方向 有效载荷的转动惯量,单位为千克平方米(kgm') d ixiy,iz 示例 o[128]=oN 夹具夹紧 GRIPLoADloadl 设定当前的搬运对象质量和重心loadl1 .... o[128]=oFF 夹具松开 GRIPLoADloado; 将搬运对象清除为load0 4.2.3MECHUNLoAD机械臂负载设置指令 指令功能设置机械臂负载的载荷数据,包含质量、重心,力矩轴方向和有效载荷转动惯量 编程格式:MECHUNITLOAD 其中: 载荷数据结构体变量,包括以下参数 Load 有效载荷质量,单位为千克(kg); load.mass aa b L.oad.cog.x,L.oad.cog.y,L.oad.cog.z--有效载荷重心,单位为毫米mm); c L.oad.aom.ql,L.oad.aom.q2,L.oad.aom.q3,L.oad.aom.q! -力矩轴方向 d 有效载荷的转动惯量,单位为千克平方米(kg”mi). x,iy,iz
GB/T39134一2020 示例: o[128]=ON 夹具夹紧 MECHUNITLOADloadl; 设定当前机械臂对象负载的质量和重心为loadl D0[128]=OFF 夹具松开 MECHUNTLoADload0 将当前机械臂对象负载的数据设定为load0 4.2.4roCEMoDE力控模式选择指令 指令功能;设置工业机器人的力控制模式 编程格式;FORCEMODE V -力追踪目标值,单位为牛顿(N) Value 注,可在每段运动前设置不同的目标值以进行动态力控,仅在力追踪模式下有效. 示例: FORCEMODE2; 设置当前运动模式为力追踪模式 FORCECMD50; 设置下段运动的力控目标值为50N 4.2.6FORCEPARA阻抗参数设置指令 指令功能:设置各阻抗参数大小 7 编程格式.FORCEPARA(AxisDireton[suif/Damp Value> 其中 AxisDirection -设置阻抗参数影响的力的方向,有XY、Z、A、,B,C六个可设置的方向 该参数为可 选参数,实际使用时如果指令中不包含该参数时,默认会将参数设置到所有方向上; Stiff -刚性系数; Damp -阻尼系数 示例: FO)RCEPARAYStiff=2000 设置了Y方向的刚性系数为2 2000
GB/39134一2020 FORCEPARAStiff=1000; 设置x.Y、Z.A.B.C每个方向的刚性系数分别为100o. 4.3速度控制指令 4.3.1概述 速度控制指令指对工业机器人关节或运动轴的运动速度、加速度、加加速度进行设置的指令,根据 工业机器人不同负载情况,设置合适的值 4.3.2AcC加速度控制指令 指令功能:修改加速度的值,平滑运动控制效果 当处理较大负载时,使用AcC指令降低加速度 或加速度坡度 它可以调节工业机器人关节、轴的加速度和加速度变化,使工业机器人运动平滑 编程格式;ACC 其中 Valuel 加速度百分比,取值范围[l,100],计数单位为1%,表示实际加速度为最大加速度的百 分之Valuel. Value2 加加速度百分比,取值范围[1,100,计数单位为1%,表示实际加加速度为最大加加速 度的百分之Valuel 示例: Acc100100; 默认加速度及加加速度 Acc301003 加速度被限制到最大值的30% ACc10050 加加速度值被限制到最大值的50% 4.3.3oRD速度修调指令 指令功能;对运动指令度进行比例修调 编程格式;voRDGB/T39134一2020 编程格式;UTNUM= 其中 R[门]或整型常量,取值范围[-1,I5] 一1表示使用默认坐标系,0~15表示用户自定义 Value 的工件坐标系 工件坐标系的值对应UF[o]UFC15]这16个寄存器 示例: UFNUM=1; 设置工件坐标系为UF[1] UFNUM=一l; 设置工件坐标系为默认工件坐标系, 4.5寄存器操作指令 4.5.1概述 对程序所涉及的常规寄存器、特殊寄存器进行设置和操作的指令 4.5.2常规寄存器操作指令 指令功能;给常规寄存器赋值,寄存器是一个存储数据的变量 编程格式;R[]/TIMER[门= 注:上述指令把数值右端Value值赋给指定的左端寄存器 其中,i的范围根据不同寄存器定义不同,Value可以取 常数或相同数据类型的寄存器值 示例 R[1]=100; 将实际值100赋值给R[1]寄存器 TIMER[]一R[1] 将R[1]寄存器的值赋值给TMER[1]寄存器 4.5.3位姿寄存器操作指令 指令功能;位姿寄存器是一个存储位姿数据的变量,该指令的功能是给位姿寄存器赋值 编程格式:JR[]/LR[]= 注;JR[]/1LR[门=指令把数值Value赋值给指定的位姿寄存器 JR/I.R寄存器i的范围是0~999;针 对JR[门LR[门赋值要注意类型匹配(工业机器人维度匹配). 示例: =(0,一90,18o. JR[1]- ,0,90,0};
GB/39134一2020 将实际六轴工业机器人关节角坐标值赋值给寄存器JR[1] 4.5.4位姿寄存器单轴操作指令 指令功能;位姿寄存器单轴数据赋值指令,在位姿寄存器上完成单轴位置赋值 编程格式:JR[]G]/LR[]C]=指令把数值赋值给指定的位姿寄存器元素 其中,JR[][门/LR[] 中的元素,i代表位姿寄存器的序号,j代表位姿寄存器元素序号 Value值可以取常数、寄存器(R)、位姿寄存 器中的某个轴JR[订[]/LR[订]位姿变量中的某个轴(P[]] 示例 JR[1]工[1]=0,0 设置寄存器JR[1]的第一个元素的值为0. 4.5.5数字输入输出寄存器操作指令 (数字输人指令)和Do(数字输出指令)是用来指示外部输人状态或系统输出状态的输人输出信 号寄存器 4.5.5.1读操作指令 指令功能;把数字输人信号[ON(1)/OFF(o)]赋值给指定的R寄存器 编程格式;R[]=D[] 其中 R[]中的 寄存器0一999 DL[门中的i 数字输人端口号 示例 R1]=DI[128]; 读取数字输人DL[128]的状态并保存到R[1]寄存器中 4.5.5.2写操作指令 写操作指令包括以下三种形式 D0i门]= a 指令功能;把信号(ON/OFF)赋值给指定的数字输出信号 编程格式;DO[C门]= 其中 DO[]中的 数字输出端口号 Value 为ON表示打开数字输出端口;OFF表示关闭数字输出端口 b)Do[i门=PLUSE 其中: DO[]中的i 数字输出端口号 Value -状态取反时间(see). DO[门=R[门 指令功能:将指定寄存器的值赋值给指定数字输出端口 当指定的寄存器的值为0时,数字输出 OFF;当为非零时,数字输出为ON 编程格式:DO[门=R[门
GB/T39134一2020 其中 DO[门]中的i 数字输出端口号; R[门中的 寄存器0~999 示例 D6[128]- =(ON 设置数字输出DO[128]的状态为ON状态; Do[12幻]=ULsE1 数字输出DO[128]从ON状态切换到OFF状态,并保持1s时间 4.5.6模拟量输入输出操作指令 4.5.6.1读操作指令 指令功能:将模拟输人信号赋值给指定的R寄存器 编程格式;R[门=A[门 其中 AI[C门]中的 模拟输人端口号, R[]中的 -寄存器0~999 示例 R[1]=AI[1] 读取模拟输人A[1]的值并保存到R[1]寄存器中 4.5.6.2写操作指令 写操作指令包括以下两种形式 Ao门]- =GB/39134一2020 4.6.2BIIc复位指令 指令功能:清除(设定为0)定义的字节数据中一个特定的位 编程格式;BITCG0TOLBL[]/CAII 注:如Condition条件成立,则执行后面跳转或子程序调用语句;如Condition条件不成立,则继续往下执行 示例 FDO[1]=OFFGoToLBlL[2]; 当条件DO[1]等于OFF成立时,程序跳转到LBL[2]标签处继续执行;当条件不成立,则继续执行该行程序后面的 语句 1
GB/T39134一2020 4.7.3SELECT条件选择指令 指令功能:条件选择判断 编程格式 SELECT =1GOTOLBL[]/CALL 一2GOToLB[]/CALL =99G0TOLBL[]/CALI]/CALL Subroutine 注:计算中表达式的值,并逐个与等号后的常量表达式值相比较,当表达式的值与等号后的某个常 量表达式的值相等时,即执行其后的语句;如果表达式的值与所有等号后的常量表达式均不相同时,则执行 ELSE后的语句 示例 sELEcTR[]=1GoToLBL[1] =2CALLSub1 EL.sEGoTroLBL[3] 当R[1]等于时,程序跳转到LBL[1]标签处继续执行;当R[1]等于2时,调用名为“Sub1”"的子程序执行R[1]等 于其他值时,程序跳转到标签LBL[3]处继续执行 4.7.4CALL程序调用指令 指令功能:子程序调用 编程格式:CALL Value -正整数,表示标签号 注:程序跳转到对应LBL执行,Value为跳转LBL标签号 示例" JP1]Ve=100Ct=30 GoToLBL[1] -----+ LBL[1] [2]Vve=1000Cnt=50 ..... 程序执行完」[1]指令后,跳转到标签LBL[1]处,继续执行LP[2]指令行 4.7.6LBL程序标签指令 指令功能;程序标签 编程格式:LBL[] 注:作为G0To跳转语句的跳转标签使用 12
GB/39134一2020 示例 J]vd- 100Cnt=30 G0ToLBL[1] #**+ L.BL[1 L.P[2]Ve=l000Cnt=50 设置跳转标签LBL[1],执行GOTOLBL[1]时,程序跳转到该标签处,继续执行后面的程序指令 4.7.7sIoPMoroN暂停当前程序运动行指令 指令功能:为了方便程序调试.在程序执行的某个位置设置立即跳出.暂停当前程序执行 该指令 立即停止程序执行,不用等工业机器人或者外部轴到达其编程所规定的目的点 程序再次执行时,从当 前位置的下一条指令开始执行 编程格式:sToPMOTION 示例 .... oToN STOPM 执行STOPMOTION指令时,工业机器人所有运动立即停止, 4.7.8CALLBYV变量调用程序指令 指令功能;通过字符串变量调用指定程序 编程格式:CALLBYV一Value 其中: Value 被调用的程序名,字符串类型 示例 Var=“proc001” CALLBYVVa ar 调用指定的procO01程序 4.8位置补偿指令 4.8.1OFFSETCONDITION条件补偿指令 指令功能;此指令可以将程序运动行中确定的目标位置点进行偏移,偏移量由指令中设定的偏移位 置决定 此指令执行后,后续所有运动指令的点位都按照设定的偏移值进行偏移 编程格式,oFPsETcoNDToNLRL 注此指令格式为运动附加指令,不能单独使用,跟随在运动语句后,此时该运动语句点位按照LR[C门进行偏移 示例 OFFSETCONDITONLR[1]; LP[2]Vel=1o0: 通过位置补偿指令OFFSETCONDITION设置位置补偿值为LR[1],后续执行LP[2]指令时,实际目标位置为 P[2]+LR[] 4.8.2oFFSE运动附加指令 指令功能;此指令单独设置运动行偏移,将当前运动行的目标位置偏移设定的补偿量 不可单独 13
GB/T39134一2020 使用 编程格式:OFFSETLR[门 示例: LP[3]Ve=100OFFSETLR[2] 当前运动行目标位置为P[3点,使用附加指令OFFSET后,实际目标位置为P[3]十IR[2] 当前运动行会运动到 P[3]十1R[2]的位置上 4.9运算指令 4.9.1概述 运算指令指对程序中相关数据进行算数运算或逻辑运算的指令 4.9.2算数运算指令 4.9.2.1概述 算数运算指令包括以下几种,配合寄存器指令使用.作为其中某一运算符号 SIN a b) ASIN cOs e Acos; d) ATAN2: e f MOD; DIV 8 4.9.2.2sIN指令 指令功能:求给定角度的正弦值 编程格式:SIN(一Expression> 其中 角度值或角度值计算表达式,单位是度(') Expresion 示例: R[1]=sSIN(30); 计算30"角的正弦值,并将结果赋值给R[1] 4.9.2.3ASsIN指令 指令功能:求给定值的反正弦值 编程格式:AsIN( 14
GB/39134一2020 其中: Expression 角度值或角度值计算表达式,单位是度(") 示例 R[1]=COs(30); 计算30角的余弦值,并将结果赋值给R[1] 4.9.2.5Acos指令 指令功能;求给定值的反余弦值 编程格式;AcOS() 其中: 浮点类型数值或计算表达式,取值范围[一1,1] Expression 示例 R[1]=ACOS(0.6); 计算0.6的反余弦值,并将结果赋值给R[1] 4.9.2.6ATAN2指令 指令功能;求欧拉角度 编程格式:ATAN2(Expressionl Expression2 注,函数返回值在一开一十开之间 通过联合确定欧拉角度,使得所得角度值唯 当表达式 Express ssion2 2大于0时,该指令计算结果为 Expressionl/Expression2的反正切值;当表达式Ex pression2小于0,且表达式Expressionl大于或等于0时,该指令计算结果为Expressionl/Expression2的反正 切值加上x/2;当表达式Espression2小于0,且表达式Expresionl也小于0时.该指令计算结果为 n2的反正切值减去开/2;当表达式Expression2等于0,且表达式Expressionl大于0时 Expressionl/Expression 该指令计算结果为T/2;当表达式Expression2等于0,且表达式Expressionl小于0时,该指令计算结果为一r 当表达式Expression2等于0,且表达式Expressionl也等于0时,该指令会报错,无法计算 2 示例 R[1]=ATAN2(1,2); 计算1/2的反正切值,并将结果赋值给R[1] 4.9.2.7NoD指令 指令功能;求余 编程格式;MOD 注MoD指令计算Expresion除以Expression2所得到的余数并返回该值 示例 R[1]=1MOD2; 计算1除以2的余数,并将结果(1)赋值给R[1] 4.9.2.8DIV指令 指令功能:求商的整数部分 编程格式;DIVGB/T39134一2020 4.9.3逻辑运算指令 4.9.3.1 概述 逻辑运算指令包括以下几种,配合寄存器指令使用,作为其中某一运算符号 AND,BAND; a) b) O)R,BOR; NoT,BNOT c XOR,BXOR d) e NXOR,BNXOR 4.9.3.2AND指令 指令功能:求两个数据的逻辑与 编程格式:AND 注:计算Expressionl、Expression2两个数据的逻辑与并返回结果 示例 R[1]=1AND2: 计算1与2的逻辑与,并将结果(1)赋值给R[1] 4.9.3.3BAND指令 指令功能:按位求两个数据的逻辑与 编程格式;BAND 注;将E 与Expression2进行按位的逻辑与操作,返回操作结果 Expressionl 示例: R[1]=1BAND2; 按位计算1与2的逻辑与,并将结果(o)赋值给R[1] 4.9.3.4OR指令 指令功能:求两个数据的逻辑或 编程格式:ORBOR 注将Expressionl与Expression2进行按位的逻辑或操作,返回操作结果 示例 R[1]=1BOR2; 按位计算1与2的逻辑或,并将结果(3)赋值给R[1] 4.9.3.6NoT指令 指令功能:求数据的逻辑非 编程格式NOTGB/39134一2020 注:计算Expression的逻辑非 示例 FNoTD[]coToLB[2]; D[1]为oN时,条件表达式为假,继续执行后续指令行;DH[1]为OFF时,条件表达式为真,程序跳转到标签LB. [2]处继续执行 4.9.3.7 BNoT指令 指令功能;按位求数据的逻辑非 编程格式;BNOT 注,按位计算Expression数据的逻辑非 示例 R[1]=BNoT10; 计算十进制数10反码,将结果(5)赋值给R[1] 4.9.3.8XOR指令 指令功能;求两个数据的逻辑异或 编程格式;XORBXORNXOR 注:计算Expressionl与Expression2的逻辑同或, 示例: R[1]=1NXOR2; 计算1与2的逻辑同或,将结果(1)赋值给R[1] 4.9.3.11BNxoR指令 指令功能:按位求两个数据的逻辑同或 >NxoRGB/T39134一2020 4.10其他指令 4.10.1概述 工业机器人与数控机床或其他设备协同作业时,工业机器人数控系统通过协作控制指令对设备间 的同步和时序进行控制 4.10.2CLEARPATH当前路径清除指令 指令功能:清除当前运动路径层上的整个运动路径 运动路径指在指令执行时,已经执行但是工业 机器人没有完成的所有运动路径 此指令执行前工业机器人应处于停止状态,或者用SToPMOTIoN 指令停止工业机器人 编程格式:CLEARPATH 示例: 」P[1]vel=100 wAITDo[1]=ON STOPMOTON CLEARPATH 程序运行到JP[1]时会检测数字量输出Do[1]是否被置位 若Do[1]被置位,则执行sToPMoTIoN停止工业 机器人运行,然后执行CLEARPATH将之前未完成的运行指令从运动缓冲区中全部清除 4.10.3TIMER[]计时器指令 指令功能:计时功能 编程格式1:TIMER[门之TimmerState>(计时操作) 注:i的取值范围为099,分别对应一个计时器 TimerState取值范围为START/STOP/RESET,分别对应着启 动,停止、,复位 执行TIMER[]START后,开始计时,计时时间保存在TIMER[i门]中;执行TIMER[]sSTo 后,计时停止,此时TIMER[]内保存从起动到停止所消耗的时间;执行TIMER[门REsET后,计时器重置 TIMER[]清零 编程格式2;R[门 TIMER[](赋值操作 注:将索引为i的计时器当前值赋值给左端RG寄存器 示例 TIMER[]START JP[1]Vel=100Acc=100Dec=100Cnt=10 TIMER[1]STOP R[1]=TIMER[1 该示例计算了执行」P[1]指令所需要的时间 4.10.4wAIDI/D0等待指令 指令功能等待数字输人信号、数字输出信号对应的状态与设定状态一致,则继续之后后续指令;若 不一致,则阻塞程序运行 编程格式:wAITDL[门/DO[门= 注;D[门/Do门表示索引为i的数字量输人或者数字量输出,Value为oN或oFF 当索引为i的Io状态与指定 的Vaue值相同时,等待指令执行结束 等待指令对某一动作或功能产生延时效果 示例 JP[1]Vel=100Acc=100Dec=100Cnt=30 wAITDO[1]=ON P[2]ve=100Aec=100Dbe=1o0Cnt=30 执行」P[L1]指令过程中,检测Do[1]是否为oN;若Do[1]信号在」[1]执行完成之前置位,工业机器人会平滑过 18
GB/39134一2020 渡到P[1]至P[2]的路径上;若O汇1]信号一直为O)FF状态,则在执行完」P[1]后,工业机器人在P1]位置等待信号 4.10.5IRIGGERIo信号触发指令 指令功能;工业机器人在运动的同时精确输出相应信号 编程格式 TRIGGERIOMode=[DISTL/TIMEsTART/END][Do[门=/AO[门 = 其中: Mode 触发模式及触发基准设置,可设置为距离触发模式或时间触发模式,触发基准为下一行 运动的起始点或目标点; Value 触发条件,根据Mode模式的选择,可以表示为相对于触发基准的距离或时间值,距离单 位为毫米(mm),时间单位为毫秒(ms); DO门=/AO订= 其中: CenterPoint 定义圆柱底面圆心位置,笛卡尔坐标值; Radius -圆柱顶面圆周半径,单位为毫米(mm); Height 定义圆柱高度,单位为毫米(mm) 示例 wZcYL,DEFPR[]100200;该行指令定义一个圆柱体的空间,底面圆心为LR[C门,半径100mm,高度200mm 4.10.6.3wZBOXDEF指令 指令功能.用来定义一个直立箱体的世界坐标系区域 该箱体空间的所有边都与世界坐标系坐标 轴平行 编程格式;wZBOXDEFGB/T39134一2020 附 录 A 资料性附录) 典型编程程序格式框架 典型编程程序格式框架为 attr一 GROUP:[o end pos一 P[1]GP:0,UF:0,UT:0,JNT:[一0.0,-90.0,180.0,-0.0,90.0,0.0,0.0,0.0,0.0]} P[2]GP:0,UF;0,UT:0,CFG;[1,0,0,0,0,0],LOC;[582.476,一53.595,185.323,一116.481. -158.704,一32.043,0,0,0]}:; P[3]GP:0,UF:0,UT:0,CFG;[1,0,0,0,0,0],L0C;[484.988,155.816,222.75,0.0,180.0. -0.0,0,0,0]; P[4]GP:0,UF:0,UT:0,CFG:[1,0,0,0,0,0],LOC;[412.411,347.781,222.749,一0.0. -180.0,0.0,0,0,0]; end program一 LBL[] R[1]=1 FR[1]=2,G0ToLBL[2] L1]Vdl=100Acc=100Cnt=10Dec=100 WAITTIME=1000 LP[2]Vel=1200Acc=100Cnt=10Dec=100 CP[3]H4]ve=1200Acc= =70Dec=70 GOTOIBL[1 end> 20
GB/39134一2020 附录 B 资料性附录 I,LC指令可选操作参数说明 表B.1给出了J、L,C指令可选操作参数说明 表B.1J、.LC指令可选操作参数说明表 指令类型 可选参数 全局参数 Ve速度 J_VEL=0100,单位% Aee加速因子 J_ACC=0100,单位% ec减速因子 IDEC=0l00, 单位% cN 」关节移动指令 平滑过渡系数 CNT=0100,单位% nt Offset位置补偿 Ine增量编程 Skip跳过 Ve速度 LVEL=0~1000,单位mm/s -100,单位% Acc加速因子 _ACC=0 ec减速因子 LDEc=0100,单位% vrot姿态速度 L_VRoT=0100,单位% CNT=0~100,单位% L直线移动指令 Cn平滑过渡系数 Offset位置补偿 Ine增量编程 Skip跳过 Wjnt腕关节动作 CV刷L=0一 -1000,单位mm/s Vl迷度 AcC=0100. Ace加速因子 单位% C_DEC=0100,单位% 减速因子 De Vrot姿态速度 C_VROT=0100,单位% Cnt平滑过渡系数 C圆弧移动指令 CNT=0100,单位% Offset位置补偿 Ine增量编程 Skip跳过 wjnt腕关节动作

GB/T39134-2020机床工业机器人数控系统编程语言

随着机器人技术的不断发展和普及,机床工业机器人在制造业中的应用越来越广泛。而机器人的自主性、灵活性和高效性很大程度上取决于其数控系统的编程语言。

为此,我国标准化组织近期发布了新的标准:GB/T39134-2020 《机床工业机器人数控系统编程语言》。该标准旨在规范机床工业机器人数控系统的编程语言,提高机器人编程的标准化程度,使机器人在不同场景下具备更强的适应能力。

GB/T39134-2020标准规定了机床工业机器人数控系统编程语言的基本要求、代码结构、数据类型、运算符、控制语句以及函数等方面。下面我们将简要介绍其中的几个方面。

代码结构

GB/T39134-2020标准规定,机器人数控系统编程应遵循模块化设计思想,程序应由多个模块组成,每个模块包含一个完整的功能,模块间应具备一定的独立性和可重用性。

每个模块应包括模块头、局部变量定义、模块主体、出口语句等四个部分,并保证模块主体中不包含全局变量。

数据类型

GB/T39134-2020标准规定,机器人数控系统编程语言应支持基本数据类型和用户自定义数据类型。其中,基本数据类型包括整型、浮点型、字符型等,而用户自定义数据类型则需要使用“结构体”进行定义。

运算符

GB/T39134-2020标准规定,机器人数控系统编程语言应支持常见的运算符:算术运算符(如加减乘除)、关系运算符(如大于小于等于)、逻辑运算符(如与或非)以及位运算符。

控制语句

GB/T39134-2020标准规定,机器人数控系统编程语言应支持常见的控制语句:顺序结构、分支结构(如if-else语句)、循环结构(如for循环和while循环)等。

函数

GB/T39134-2020标准规定,机器人数控系统编程语言应支持函数的定义和调用。函数应包括函数头和函数体两个部分,函数头中应包含返回类型、函数名称以及参数列表等信息,而函数体中则是函数具体的实现。

总之,GB/T39134-2020标准的发布将在一定程度上提高机床工业机器人数控系统编程的标准化程度,推动我国机器人技术的进一步发展。在今后的机器人应用中,GB/T39134-2020标准将成为机器人编程的重要参考依据。我们相信,随着技术的不断进步,机器人数控系统编程语言也将得到更加完善和规范的发展。

本文对GB/T39134-2020标准进行了简要介绍,希望能够对专业人士在机床工业机器人数控系统编程方面提供一些参考价值。

和机床工业机器人数控系统编程语言类似的标准

真空低压渗碳高压气淬热处理技术要求
上一篇 本文分享国家标准真空低压渗碳高压气淬热处理技术要求的全文阅读和高清PDF的下载,真空低压渗碳高压气淬热处理技术要求的编号:GB/T39194-2020。真空低压渗碳高压气淬热处理技术要求共有13页,发布于2021-02-01
室内绿色装饰装修选材评价体系
本文分享国家标准室内绿色装饰装修选材评价体系的全文阅读和高清PDF的下载,室内绿色装饰装修选材评价体系的编号:GB/T39126-2020。室内绿色装饰装修选材评价体系共有20页,发布于2021-09-01 下一篇
相关推荐