KUKA - KRL

KUKA

文章目录

  • KUKA
  • 一、编程基础
    • 1.基本文件
    • 2.数据类型
    • 3.基本运算
    • 4.Struct
    • 5.常见SYS变量
    • 6.变量申请
  • 总结:


一、编程基础

1.基本文件

KRL-KUKA Robot Language (库卡机器人编程语言);
包含SRC和DAT两类文件,类似于C语言中的.C和.H

KUKA - KRL_第1张图片

文件类型 作用
SRC 含有源代码 、函数
DAT 含有固定数据和点坐标

2.数据类型

注意:KRL 中的名称允许含有字母 (A - Z)、数字 (0 - 9) 以及特殊字符 “_” 和"$"。

数据类型 说明
BOOL “ 是 ” / “ 否 ”
CAHR CHAR 数组来实现一个字符串
REAL 实数,为了避免四舍五入出错的运算结果
INT 整数,用于计数循环或件数计数器的经典计数变量

3.基本运算

说明:注意 "< >" 是不相等的意思,实际使用较多;

KUKA - KRL_第2张图片

4.Struct

1. 笛卡尔坐标:
		X/Y/Z :为三维坐标点 (mm);
		A/B/C:为绕X/Y/Z的旋转角度(°);
2. 轴坐标系:
		A1/A2/A3/A4/A5/A6:为6轴的转动角度(°);

KUKA - KRL_第3张图片

AXIS:// 轴坐标(°)
STRUC AXIS REAL A1, A2, A3, A4, A5, A6

E6AXIS://轴坐标(°)+带外部轴信息
STRUC E6AXIS REAL A1, A2, A3, A4, A5, A6, E1, E2, E3, E4,E5, E6

FRAME:// 笛卡尔基坐标(mm)
STRUC FRAME REAL X, Y, Z, A, B, C

POS: //笛卡尔位置坐标(mm)
STRUC POS REAL X, Y, Z, A, B, C

E6POS:// 笛卡尔位置坐标(mm) + 带外部轴信息
STRUC E6POS REAL X, Y, Z, A, B, C, E1, E2, E3, E4, E5, E6 INT S,T

5.常见SYS变量

常见系统预定义参数如下,基本编程中都会使用到:
$ACC  
    CP: 轨迹加速度
    ORI1: 回转加速度
    ORI2: 旋转加速度
    
$ACC_AXIS
    加速 1~100%
    
$BASE 
    X、 Y、 Z:原点沿着轴的推移, mm
    A、 B、 C:轴角度的旋转, °
    
$LOAD={M 质量 , CM 重心 , J 惯性 }
    Kg
    X、 Y、 Z:相对于法兰的重心位置
    A、 B、 C:主惯性轴相对于法兰的姿态
    X、 Y、 Z:围绕坐标系轴的质量转动惯量

$TOOL
    X、 Y、 Z:原点沿着轴的推移,mm
    A、 B、 C:轴角度的旋转,单位:[°]

$VEL
    TCP 预进中的速度

$VEL_AXIS
    A1...A6轴的速度

$OV_JOG
手动倍率,机器人手动倍率是手动移动机器人(不执行程序)时的速度比。AUTO时无效。

$OV_PRO
执行程序时的速度比。 $ OV_PRO为0时,机器人将处于停止状态。T1时无效。

$APO.CDIS:逼近距离

$VEL.CP:TCP速度

6.变量申请

  1. 在SRC中定义变量: INI后函数主体使用;
DEF MY_PROG ( )

	DECL INT counter
	DECL REAL price
	DECL BOOL error
	DECL CHAR symbol

	INI
	...
END
  1. 在DAT中定义变量:被自己的SRC文件使用;
DEFDAT MY_PROG

EXTERNAL DECLARATIONS

	DECL INT counter
	DECL REAL price
	DECL BOOL error
	DECL CHAR symbol
	...
ENDDAT
  1. 在DAT定义全局变量(慎重,考虑到冲突访问)
 DEFDAT MY_PROG PUBLIC
 
 EXTERNAL DECLARATIONS
 
	 DECL GLOBAL INT counter
	 DECL GLOBAL REAL price
	 DECL GLOBAL BOOL error
	 DECL GLOBAL CHAR symbol
	 ...
 ENDDAT

总结:

KUKA日常标定测试需要使用到的语法/ 备忘1.

`

你可能感兴趣的:(KUKA,开发语言)