内容发布更新时间 : 2024/12/22 17:05:04星期一 下面是文章的全部内容请认真阅读。
怎么学习工业机器人编程
摘要: 机器人的开发语言一般为 C、C++、C++ Builder、VB、VC 等语 言,主要取决于执行机构(伺服系统)的开发语言;而机器人编程分为示 教、动作级机器人编程语言、任务级编程语言三个级别;机器人编程语言分 为专用操作语言( ...
机器人的开发语言一般为 C、C++、C++ Builder、VB、VC 等语言,主要 取决于执行机构(伺服系统)的开发语言;而机器人编程分为示教、动作级 机器人编程语言、任务级编程语言三个级别;机器人编程语言分为专用操作 语言(如 VAL 语言、AL 语言、SLIM 语言等)、应用已有计算机语言的机器 人程序库(如 Pascal 语言、JARS 语言、AR-BASIC 语言等)、应用新型通用 语言的机器人程序库(如 RAPID 语言、AML 语言 KAREL 语言等)三种类 型。目前主要应用的是 SLIM 语言。 机器人编程语言(一)
伴随着机器人的发展,机器人语言也得到发展和完善。机器人语言已成为 机器人技术的一个重要部分。机器人的功能除了依靠机器人硬件的支持外, 相当一部分依赖机器人语言来完成。早期的机器人由于功能单一,动作简 单,可采用固定程序或示教方式来控制机器人的运动。随着机器人作业动作 的多样化和作业环境的复杂化,依靠固定的程序或示教方式已满足不了要 求,必须依靠能适应作业和环境随时变化的机器人语言编程来完成机器人的 工作。
自机器人出现以来,美国、日本等机器人的原创国也同时开始进行机器人
语言的研究。美国斯坦福大学于 1973 年研制出世界上第一种机器人语言—— WAVE 语言。WAVE 是一种机器人动作语言,即语言功能以描述机器人的动 作为主,兼以力和接触的控制,还能配合视觉传感器进行机器人的手、眼协 调控制。
在 WAVE 语言的基础上,1974 年斯坦福大学人工智能实验室又开发出一 种新的语言,称为 AL 语言。这种语言与高级计算机语言 ALGOL 结构相 似,是一种编译形式的语言,带有一个指令编译器,能在实时机上控制,用 户编写好的机器人语言源程序经编译器编译后对机器人进行任务分配和作业 命令控制。AL 语言不仅能描述手爪的动作,而且可以记忆作业环境和该环境 内物体和物体之间的相对位置,实现多台机器人的协调控制。
美国 IBM 公司也一直致力于机器人语言的研究,取得了不少成果。1975 年,IBM 公司研制出 ML 语言,主要用于机器人的装配作业。随后该公司又 研制出另一种语言——AUTOPASS 语言,这是一种用于装配的更高级语言, 它可以对几何模型类任务进行半自动编程。
美国的 Unimation 公司于 1979 年推出了 VAL 语言。它是在 BASIC 语言基 础上扩展的一种机器人语言,因此具有 BASIC 的内核与结构,编程简单,语 句简练。VAL 语言成功地用于 PUMA 和 UNIMATE 型机器人。1984 年, Unimation 公司又推出了在 VAL 基础上改进的机器人语言——VAL
Ⅱ语
言。VALⅡ语言除了含有 VAL 语言的全部功能外,还增加了对传感器信息 的读取,使得可以利用传感器信息进行运动控制。
20 世纪 80 年代初,美国 Automatix 公司开发了 RAIL 语言,该语言可以利 用传感器的信息进行零件作业的检测。同时,麦道公司研制了 MCL 语言, 这是一种在数控自动编程语言——APT 语言的基础上发展起来的一种机器人 语言。MCL 特别适用于由数控机床、机器人等组成的柔性加工单元的编程。 机器人语言品种繁多,而且新的语言层出不穷。这是因为机器人的功能不
断拓展,需要新的语言来配合其工作。另一方面,机器人语言多是针对某种 类型的具体机器人而开发的,所以机器人语言的通用性很差,几乎一种新的 机器人问世,就有一种新的机器人语言与之配套。
机器人语言可以按照其作业描述水平的程度分为动作级编程语言、对象级 编程语言和任务级编程语言三类。
动作级编程语言
动作级编程语言是最低一级的机器人语言。它以机器人的运动描述为主, 通常一条指令对应机器人的一个动作,表示从机器人的一个位姿运动到另一 个位姿。动作级编程语言的优点是比较简单,编程容易。其缺点是功能有 限,无法进行繁复的数学运算,不接受浮点数和字符串,子程序不含有自变 量;不能接受复杂的传感器信息,只能接受传感器开关信息;与计算机的通 信能力很差。典型的动作级编程语言为 VAL 语言,如 AVL 语言语句“MOVE TO (destination)”的含义为机器人从当前位姿运动到目的位姿。 动作级编程语言编程时分为关节级编程和末端执行器级编程两种。 关节级编程
关节级编程是以机器人的关节为对象,编程时给出机器人一系列各关节位 置的时间序列,在关节坐标系中进行的一种编程方法。对于直角坐标型机器 人和圆柱坐标型机器人,由于直角关节和圆柱关节的表示比较简单,这种方 法编程较为适用;而对具有回转关节的关节型机器人,由于关节位置的时间 序列表示困难,即使一个简单的动作也要经过许多复杂的运算,故这一方法 并不适用。
关节级编程可以通过简单的编程指令来实现,也可以通过示教盒示教和键 入示教实现。