2.1 MELFA-BASIC V的详细规格

2.1.1 MELFA-BASIC V的详细规格

目前常用的机器人编程语言是MELFA-BASIC V,在学习使用MELFA-BASIC V之前,需要学习编程相关知识。

(1)程序名

程序名只可以使用英文大写字母及数字,长度为12个字母。如果要使用“程序选择”功能,则必须只使用数字作为程序名。

(2)指令

指令由以下部分构成:

1 Mov P1 Wth M_ Out(17)=1

  

①步序号或称为“程序行号”。

②指令。

③指令执行的对象:变量或数据。

④附随语句。

(3)变量

①变量分类 机器人系统中使用的变量可以分类如图2-1所示。

图2-1 变量的分类

【系统变量】 系统变量值有系统反馈的,表示系统工作状态的变量。变量名称和数据类型都是预先规定了的。

【系统管理变量】 表示系统工作状态的变量。在自动程序中只用于表示“系统工作状态”。例如当前位置P_CURR。

【用户管理变量】 是系统变量的一种。但是用户可以对其处理。例如输出信号:M_ OUT(18)=1。用户在自动程序中可以指令输出信号ON/OFF。

【用户自定义变量】 这类变量的名称及使用场合由用户自行定义,是使用最多的变量类型。

②用户变量的分类

【位置变量】 表示直交型位置数据,用P开头,例如P1、P20。

【关节型变量】 表示关节型位置数据(各轴的旋转角度),用J开头,例如J1、J10。

【数值型变量】表示数值,用M开头,例如M1、M5。

【字符串变量】 表示字符串。在变量名后加$,例如C1$=“OPENDOOR”。即变量C1$表示的是字符串“OPENDOOR”。

【文】 构成程序的最小单位,即指令及数据。

Mov P1

Mov——指令。

P1——数据。

【附随语句】

1 Mov P1 Wth M_ Out(17)=1

Wth M_ Out(17)=1为附随语句,表示在移动指令的同时,执行输出M_ Out(17)=1。

【程序行号】 编程序时,软件自动生成程序行号。但是GOTO指令、GOSUb指令不能直接指定行号,否则报警。

【标签(指针)】 标签是程序分支的标记。用“*+英文字母”构成。如:

GoTo *LBL

……

*LBL就是程序分支的标记。

2.1.2 有特别定义的文字

①英文大小写 程序名、指令均可大小写,无区别。

②下划线(_) 【下划线(_)】标注全局变量。全局变量是全部程序都可以使用的变量。在变量的第2字母位置用下划线表示时,这种类型变量即为全局变量。例如P_Curr,M_01,M _ABC。

③撇号(') 【撇号(')】表示后面的文字为注释。例如:

100 Mov P1'TORU,TORU就是注释。

④星号(*) 【星号(*)】在程序分支处做标签时,必须在第1位加星号(*),例:200*KAKUNIN

⑤逗号(,) 【逗号(,)】用于分隔参数、变量中的数据。例:P1=(200,150,…)

⑥句号(.) 【句号(.)】用于标识小数、位置变量、关节变量中的成分数据。

例:M1=P2.X 标志P2中的X数据。

⑦空格

a.在字符串及注释文字中,空格是有文字意义的;

b.在行号后,必须有空格;

c.在指令后,必须有空格;

d.数据划分,必须有空格。

在指令格式中,“□”表示必须有空格。

2.1.3 数据类型

(1)字符串常数

用双引号圈起来的文字部分即“字符串常数”。例如:

“ABCDEFGHIJKLMN”□“123”

(2)位置数据结构

位置数据包括坐标轴、形位(pose)轴、附加轴及结构标志数据。如图2-2所示。

图2-2 位置数据结构

X/Y/Z——机器人“控制点”在直交坐标系中的坐标。

A/B/C——以机器人“控制点”为基准的机器人本体绕XYZ轴旋转的角度,称为“形位(pose)”。

③L1/L2——附加轴运行数据。

④FL1——结构标志,表示控制点与特定轴线之间的相对关系。

⑤FL2——结构标志,表示各轴的旋转角度。