8.4 MELFA-BASIC V程语言的学习
8.4.1 MELFA-BASIC V的详细规定
MELFA-BASIC V是三菱工业机器人所使用的编程语言。各品牌机器人所使用的编程语言大同小异,学会一种编程语言,再学习使用其他的编程语言就很方便了。在学习使用MELFA-BASIC V之前,需要学习MELFA-BASIC V的相关知识。
(1)程序名
“程序名”只可以使用英文大写字母及数字,长度为12个字母。如果要使用“程序选择”功能时,则必须只使用“数字”作为“程序名”。
(2)指令
指令由以下部分构成:
1 Mov P1 Wth M_Out(17)=1
①为步序号或称为“程序行号”;②为指令;③为指令执行的对象:变量或数据;④为附随语句。
(3)变量
编程语言中对指令执行的对象使用了大量的变量。
①变量大分类 机器人系统中使用的变量可以大分类,如图8-4所示。
图8-4 变量的分类
a.系统变量:系统变量值有系统反馈的、表示系统工作状态的变量,变量名称和数据类型都是预先规定了的。
b.系统管理变量:表示系统工作状态的变量,在自动程序中只用于表示“系统工作状态”。例如当前位置P_CURR。
c.用户管理变量是系统变量的一种,但是用户可以对其处理。例如输出信号:M_OUT(18)=1,用户在自动程序中可以指令输出信号ON/OFF。
d.用户自定义变量:这类变量的名称及使用场合由用户自行定义,是使用最多的变量类型。
②用户变量的分类:
a.位置变量:表示直交型位置数据,用P开头。例如P1、P20。
b.关节型变量:表示关节型位置数据(各轴的旋转角度),用J开头。例如J1、J10。
c.数值型变量:表示数值,用M开头。例如M1、M5(M1=0.345、M5=256)
d.字符串变量:表示字符串,在变量名后加$。例如C1$=“OPENDOOR”,即变量C1$表示的是字符串“OPENDOOR”。
(4)程序文
构成程序的最小单位,即指令及数据:
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就是程序分支的标记。
8.4.2 有特别定义的文字
(1)英文大小写
程序名、指令均可大小写,无区别。
(2)下划线(_)
“下划线”标注全局变量,全局变量是全部程序都使用的变量。在变量的第2字母位置用下划线表示时,这种类型变量即为全局变量。例如:P_Curr,M_01,M_ABC。
(3)撇号(')
“撇号(')”表示后面的文字为注释,例如:100 Mov P1'TORU中TORU就是注释。
(4)星号(*)
“星号(*)”在程序分支处做标签时,必须在第1位加星号(*),例如:200*KAKUNIN。
(5)逗号(,)
“逗号(,)”逗号用于分隔参数、变量中的数据,例如:P1=(200,150……)。
(6)句号(.)
“句号(.)”用于标识小数、位置变量、关节变量中的成分数据。
例:M1=P2.X标志P2中的X数据。
(7)空格
①在字符串及注释文字中,空格是有文字意义的;
②在行号后,必须有空格;
③在指令后,必须有空格;
④数据划分,必须有空格;
在指令格式中,“”表示必须有空格。
8.4.3 数据类型
(1)字符串常数
用双引号圈起来的文字部分即“字符串常数”,例如:“ABCDEFGHIJKLMN”、“123”。
(2)位置数据结构
“位置数据”包括坐标轴、形位(POSE)轴、附加轴及结构标志数据,如图8-5所示。
图8-5 位置数据结构
①X/Y/Z 表示机器人“控制点”在直角坐标系中的坐标。
②A/B/C 表示以机器人“控制点”为基准的机器人本体绕X/Y/Z轴旋转的角度;称为“形位(POSE)”。
③L1/L2 表示附加轴运行数据。
④FL1——结构标志,表示控制点与特定轴线之间的相对关系。
⑤FL2——结构标志,表示各轴的旋转角度。