发新话题
打印

工业机器人控制系统

工业机器人控制系统

机器人的编程
    1.机器人的示教
    用机器人代替人进行作业时,必须预先对机器人发出指示,规定机器人进行应该完成的动作和作业的具体内容。这个过程就称为对机器人的示教或对机器人的编程。对机器人的示教有不同的方法,要想让机器人实现人们所期望的动作,必须赋予机器人各种信息,首先是机器人动作顺序的信息及外部设备的协调信息;其次是与机器人工作时的附加条件信息;再次是机器人的位置和姿态信息。前两个方面很大程度上是与机器人要完成的工作以及相关的工艺要求有关,所以我们重点介绍一下有关机器人位置和姿态的示教。
    位置和姿态的示教大致可有以下几种(见1):
   (1)直接示教   就是我们常说的手把手示教,由人直接搬动机器人的手臂对机器人进行示教,如示教盒示教或操作杆示教等。在这种示教中,为了示教方便及获取信息的快捷而准确,人们可选择在不同的坐标系下示教,可在关节坐标系、直角坐标系(基坐标系)以及工
具坐标系、工件坐标系或用户自定义的坐标系下示教。

   (2)离线示教   不对实际作业的机器人直接进行示教,而是脱离实际作业环境生成示教数据,间接地对机器人进行示教。在离线示教法(离线编程)中,通过使用计算机内存储的模型(CAD模型),不要求机器人实际产生运动,便能在示教结果的基础上对机器人的运动进行仿真,从而确定示教内容是否恰当及机器人是否按人们期望的方式运动。
    2.机器人语言及其分类
    机器人软件的类型大致有三种:(1)伺服控制级软件;(2)机器人运动控制级软件,用于对机器人轨迹控制插补和坐标变换等;(3)周边装置的控制软件。
    为了让机器人产生人们所期望的动作,实现上述三类软件的功能,就必须设计机器人的运动过程和编制完成这种运动过程的先后顺序,这与计算机编制程序的概念是一样的。于是使用一种形式语言来描述机器人的运动,这种形式语言叫做机器人语言(Robot Language)。以机器人语言为线索,利用机器人语言对机器人编程,实现对机器人及其周边装置的控制。机器人语言的含义是,机器人语言是在人与机器人之间的一种记录信号或交换信息的程序语言。
    关于机器人语言的分类,从不同的方面考虑有很多种分类方法,通常人们根据作业描述水平的高低分为三级:
   (1)动作级   动作级语言是以机器人的运动作为描述的中心,由一系列命令组成,一般一个命令对应一个动作,语言简单,易于编程,缺点是不能进行复杂的数学运算。
   (2)对象级   对象级语言是以描写操作物之间的关系为中心的语言。
   (3)任务级   任务级是比较高级的机器人语言,这类语言允许使用者对工作任务要求达到的目标直接下命令,不需要规定机器人所做的每一个动作的细节。只要按某种原则给出最初的环境模型和最终的工作状态,机器人可自动进行推理计算,最后生成机器人的动作。
    3.机器人语言系统的构成
    如果我们从模块化的思想考虑,机器人语言系统主要包括以下几种模块(详见图2):
    ·主控程序模块
    l)对来自示教盒/面板的请求给予相应的服务。
    2)任务的调度安排。
    运动学模块:此模块是机器人运动的关键,包括机器人运动学的正解、逆解及轨迹规划,完成机器人的关节、直线、圆弧等插补功能。
    ·外设控制模块:实现对机器人系统有关的外围设备的控制。
    ·通信模块:支持主机和示教盒、PLC及伺服单元的通信。
    ·管理模块:提供方便的机器人语言示教环境;支持对示教程序的示教、编辑(插入、删除、拷贝)、装入、存储等操作;完成系统各功能之间的切换。
    ·机器人语言解释器模块:对机器人语言的示教程序进行编译、扫描及语言法检查,最后解释执行。
    ·示教模块:利用示教盒来改变操作机未端执行器的位置和姿态。
    ·报警模块:对出错信息的处理及响应。
    4.机器人语言系统的功能
    ·使用机器人语言对机器人的运动加以控制,机器人运动轨迹的控制方式有两种:①CP控制方式;②PTP控制方式。无论采用何种控制方式,目前的工业机器人语言大多数以动作顺序为中心,通过使用示教这一功能,省略了作业环境内容的位置姿态的计算。详细他讲,对机器人运动控制的功能可分为如下几种:

    速度(speed)设定;
    轨迹插补(关节插补、直接插补及圆弧插补)
    动作定时(pause,delay)
    定位精度(coarse,fine)
    手爪控制(open,close)
    ·环境定义功能:机器人语言中的主要运算是环境数据之间进行的运算,但是现有的机器人语言是以基本动作级的实时系统为中心的,所以有关环境定义功能及其运算功能还不充分,往往用示教功能来代替。
    ·数据结构及其运算的功能:在通用的数据结构中,一般有文字符号和矩阵等形式,而在结构化的机器人语言中,采用更为通用的数据结构。机器人本身专用的数据结构是坐标变换矩阵、三维向量等。向量的运算包括加、减运算,内积与外积运算。
    ·程序控制的功能:在逐步执行的通用程序语言中,设计有程序控制语言,以便选定后进入运行的分支或转入循环运行。在机器人语言中,动作顺序的描述是重要的,为强调这种描述的可读性,采用结构化编程方式,有GOTO功能、主程序和子程序。
    ·数值运算的功能:机器人语言的数值运算功能大致有以下几种:
    四则运算(+、-、×、/等)
    计数运算(1NC、DEC等)
    位运算功能(NOT、AND、OR、XOR等)
    三角函数运算功能(SIN、COS、TAN、ARCTAN2)
    ·输入、输出和中断的功能:在进行顺序的程序中,与外部传感器进行信息交互的功能和中断功能是最为重要的功能。
    ·文件管理的功能:机器人所处理的文件有程序本身和与位姿有关的数据集,在许多机器人语言中,都有从磁盘读出程序(LOAD)和往磁盘里写入程序(SAVE)等功能。
    ·其他功能:进行工具变换、基本坐标设置和初始值的设置、作业条件的设置等。
附件: 您所在的用户组无法下载或查看附件

TOP

TOP

古月

TOP

发新话题