智能机械臂控制
与编程;01;基本函数介绍;概述;基本函数介绍;基本函数介绍;基本函数介绍;基本函数介绍;基本函数介绍;基本函数介绍;单个关节的动作规划与控制;单个关节的动作规划与控制;1.Dobot机械臂D-H模型的搭建
对DobotMagician机械臂进行运动学分析其实就是描述机器人各连杆之间的相对位置和方向关系,因此需要根据关节结构在每个连杆上建立一个坐标系,一般建立D-H关节坐标系,其中限位说明如下表所示。;D-H建模方法是由Denavit和Hartenberg提出的一种建模方法,即在每个连杆上建立一个坐标系,通过齐次坐标变换矩阵来实现两个连杆上坐标的变换,在多连杆串联的系统中,多次使用齐次坐标变换,就可以求出机械臂末端与底座位姿的关系。D-H建模如右图所示。;?;(2)需要知道D-H建模中a,α,d,θ这四个参数对应于连杆上的那些地方。这里假设当前关节标号为i-1,下一个关节标号为i,简单的连杆关节如图所示。
1)连杆i-1的长度,指图中a(i-1)所示的距离。
2)连杆i-1的扭角,指图中α(i-1)所示的角度。
3)连杆i相对于连杆i-1的偏置,指图中的di。
4)关节角θi,指图中连杆i相对于连杆i-1绕i轴的旋转角度。;(3)针对DobotMagician机械臂的连杆机构,可以列出如下表所示的Dobot机械臂D-H参数表。;?;2.Dobot机械臂正、逆运动学求解
机械臂运动学包括正向运动学和逆向运动学,正向运动学即给定机械臂各关节变量,计算机械臂末端的位置姿态;逆向运动学即已知机械臂末端的位置姿态,计算机械臂对应位置的全部关节变量。一般正向运动学的解是唯一和容易获得的,而逆向运动学往往有多个解,并且分析更为复杂。逆运动学问题实际上是一个非线性超越方程组的求解问题,其中包括解的存在性、唯一性及求解的方法等一系列复杂问题。正、逆运动学求解理论基础如下:
正运动学求解即已知各关节角度和连杆长度,求解机械臂末端执行器相对笛卡尔坐标系下的位姿。;?;?;?;?;?;?;?;(1)首先利用直线插补算法得到笛卡尔空间的位置和姿态序列;
(2)再调用各关节角的逆解公式,得到各关节角序列;
(3)其次,通过调用动态规划算法,选出一组最优关节角序列;
(4)最后,通过样条插值进行连续化处理。
综上所述,机械臂正运动学问题就是由各关节角度去求解机械臂末端在笛卡尔空间位姿表示,而逆运动学问题是通过某时刻机械臂末端的笛卡尔空间位姿去求解该时刻各关节的角度。
;多关节的动作规划与控制;多关节的动作规划与控制;轨迹规划是在坐标系中定义一个关节或手爪的期望路径,分为笛卡尔空间规划和关节空间规划两种。在笛卡尔空间坐标系中,末端执行器位姿的轨迹非常直观,但是每个中间点都要通过逆运动学方程求解关节角度,因此计算量较大,而且还有可能达到机器人的奇异点。关节空间轨迹规划的优点是计算量不大,不会出现奇异位形。
综上所述,根据D-H模型方法对Dobot机械臂进行了关节坐标系建模,计算出其齐次变换矩,依据Dobot机械臂的搬运功能的特点,可以对Dobot机械臂提出给定作业轨迹的规划要求,为Dobot机械臂的研究和开发提供了理论依据。;机械臂运动规划与控制示例;机械臂运动规划与控制示例;实验原理:
激光雕刻原理比较简单,类似于用打印机在纸张上打印图案。常用的雕刻方式有点阵雕刻和矢量雕刻,点阵雕刻利用机械臂控制激光头移动,雕刻出一条由一系列点组成的一条线,同时激光头上下移动雕刻出多条线,最后构成整版的图形或文字而矢量雕刻则是在图形或文字的外轮廓上进行雕刻。这里涉及到的API函数如下:
(1)dType.GetCPParams(api):获取连续轨迹功能参数
(2)dType.SetEndEffectorLaser(api,enableCtrl,on,isQueued=0):设置激光开关
;机械臂运动规划与控制示例;实验步骤:
步骤1:将激光雕刻套件安装到机械臂上并正确将机械臂与PC连接,如下图所示。;步骤3:调整好激光的焦距以及激光焦距到雕刻材料表面的距离。
步骤4:进入DobotStudio的“脚本控制界面”,点击“新建”,新建一个脚本工程输入程序代码后,点击“保存”按钮,并输入文件名为“TEST3”,保存类型选择“.py”,并点击“保存”即可,如下图所示。
;importmath
dType.SetCPParams(api,50,80,50,0,1)#设置激光雕刻的速度和加速度
dType.SetEndEffectorLaserEx(api,1,50,1)#打开激光,设置功率为50
moveX=0;moveY=0;moveZ=10
pos=dType.GetPose(api)