ABB工业机器人学习 (1)——常用功能的实现

ABB工业机器人学习 (1)——常用功能的实现

请打开RobotStudio查看帮助下的 ABB机器人的RAPID指令 手册

基础功能

定时器使用

ClkStart用于启动作为定时用秒表的时钟。

ClkStop用于停止作为定时用秒表的时钟。

ClkRead用于读取作为定时用秒表的时钟。

ClkReset用于重置作为定时用秒表的时钟。 使用时钟之前,可以使用此指令,以确保设置为0。

在我们使用时钟前应使用ClkReset指令清空定时器的值,以便我们更好使用。

        VAR clock myclock; !定义一个clock
        VAR num time; !定义一个变量用于存储时间

		ClkReset myclock; ! 复位时钟
		
        ClkStart myclock; ! 开始计时
        MoveJ home, v1500, z50, tool0;	
        ClkStop myclock;  ! 停止计时
        time:=ClkRead(myclock); !读出时间
        TPWrite "Time:"\Num:=time; !在面板上显示时间
        WaitTime 2;
        TPErase;       

拓展功能

从面板读取输入

TPReadFK - 读取功能键;

TPReadNum(FlexPendant Read Numerical)从示教器读取数字;

TPWrite(FlexPendant Write)用于在FlexPendant示教器上写入文本。可将特定数据的值同文本一样写入。和c语言的printf一样;

TPErase - 擦除在示教器上印刷的文本;

我的程序是从面板读取数字:

	PROC num get_pannel_input_num()
		VAR num user_input_num:=0;
        TPReadNum user_input_num, "How many objects should be produced?";
        TPWrite "Num:"\Num:=user_input_num;        
        WaitTime 3;
        TPErase;
        RETURN user_input_num;
	ENDFUNC

判断机器人的当前位置是否是目标点

我的程序是检查机器人是否在home点,具体精度的控制,请自行修改

用到的函数:

CRobT(Current Robot Target)

用于读取机械臂和外轴的当前位置。 该函数返回robtarget值以及位置(x、y、z)、方位(q1 … q4)、机械臂轴配置和外轴位置。如果仅读取机械臂TCP(pos)的x、y和z值,则转而使用函数CPos。

示例:

VAR robtarget p1;
MoveL *, v500, fine \Inpos := inpos50, tool1;
p1 := CRobT(\Tool:=tool1 \WObj:=wobj0);

功能函数:

targetpos :要到达的目标点
tcp: 你所使用的工具坐标

	FUNC bool isHomePos(robtarget targetpos,INOUT tooldata tcp)
        VAR num num1:=0;
        var robtarget actualpos :=[[495.981197913,0,607.935290498],[0.79335334,0,0.608761429,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
        actualpos:= CRobT(\Tool:=tcp\WObj:=wobj0);        
        
        IF actualpos.trans.x>targetpos.trans.x-20 AND actualpos.trans.xtargetpos.trans.y-20 AND actualpos.trans.ytargetpos.trans.z-20 AND actualpos.trans.ztargetpos.rot.q1-20 AND actualpos.rot.q1targetpos.rot.q2-20 AND actualpos.rot.q2targetpos.rot.q3-20 AND actualpos.rot.q3targetpos.rot.q4-20 AND actualpos.rot.q4

你可能感兴趣的:(工业机器人)