0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

应用于工业机器人的编程语言有哪些?

产业大视野 来源:未知 作者:胡薇 2018-10-19 10:36 次阅读

机器人的开发语言一般为C、C++、C++ Builder、VB、VC等语言,主要取决于执行机构(伺服系统)的开发语言;而机器人编程分为示教、动作级机器人编程语言、任务级编程语言三个级别;机器人编程语言分为专用操作语言(如VAL语言、AL语言、SLIM语言等)、应用已有计算机语言的机器人程序库(如Pascal语言、JARS语言、AR-BASIC语言等)、应用新型通用语言的机器人程序库(如RAPID语言、AML语言KAREL语言等)三种类型。目前主要应用的是SLIM语言。

机器人语言可以按照其作业描述水平的程度分为动作级编程语言、对象级编程语言和任务级编程语言三类。

机器人编程语言(一)动作级编程语言

动作级编程语言是最低一级的机器人语言。它以机器人的运动描述为主,通常一条指令对应机器人的一个动作,表示从机器人的一个位姿运动到另一个位姿。动作级编程语言的优点是比较简单,编程容易。其缺点是功能有限,无法进行繁复的数学运算,不接受浮点数和字符串,子程序不含有自变量;不能接受复杂的传感器信息,只能接受传感器开关信息;与计算机的通信能力很差。典型的动作级编程语言为VAL语言,如AVL语言语句“MOVE TO (destination)”的含义为机器人从当前位姿运动到目的位姿。

动作级编程语言编程时分为关节级编程和末端执行器级编程两种。

关节级编程

关节级编程是以机器人的关节为对象,编程时给出机器人一系列各关节位置的时间序列,在关节坐标系中进行的一种编程方法。对于直角坐标型机器人和圆柱坐标型机器人,由于直角关节和圆柱关节的表示比较简单,这种方法编程较为适用;而对具有回转关节的关节型机器人,由于关节位置的时间序列表示困难,即使一个简单的动作也要经过许多复杂的运算,故这一方法并不适用。

关节级编程可以通过简单的编程指令来实现,也可以通过示教盒示教和键入示教实现。

末端执行器级编程

末端执行器级编程在机器人作业空间的直角坐标系中进行。在此直角坐标系中给出机器人末端执行器一系列位姿组成位姿的时间序列,连同其他一些辅助功能如力觉、触觉、视觉等的时间序列,同时确定作业量、作业工具等,协调地进行机器人动作的控制。

这种编程方法允许有简单的条件分支,有感知功能,可以选择和设定工具,有时还有并行功能,数据实时处理能力强。

机器人编程语言(二)对象级编程语言

所谓对象即作业及作业物体本身。对象级编程语言是比动作级编程语言高一级的编程语言,它不需要描述机器人手爪的运动,只要由编程人员用程序的形式给出作业本身顺序过程的描述和环境模型的描述,即描述操作物与操作物之间的关系。通过编译程序机器人即能知道如何动作。

这类语言典型的例子有AML及AUTOPASS等语言,其特点为:(1) 具有动作级编程语言的全部动作功能。(2) 有较强的感知能力,能处理复杂的传感器信息,可以利用传感器信息来修改、更新环境的描述和模型,也可以利用传感器信息进行控制、测试和监督。(3) 具有良好的开放性,语言系统提供了开发平台,用户可以根据需要增加指令,扩展语言功能。(4) 数字计算和数据处理能力强,可以处理浮点数,能与计算机进行即时通信。对象级编程语言用接近自然语言的方法描述对象的变化。对象级编程语言的运算功能、作业对象的位姿时序、作业量、作业对象承受的力和力矩等都可以以表达式的形式出现。系统中机器人尺寸参数、作业对象及工具等参数一般以知识库和数据库的形式存在,系统编译程序时获取这些信息后对机器人动作过程进行仿真,再进行实现作业对象合适的位姿,获取传感器信息并处理,回避障碍以及与其他设备通信等工作。

机器人编程语言(三)任务级编程语言

任务级编程语言是比前两类更高级的一种语言,也是最理想的机器人高级语言。这类语言不需要用机器人的动作来描述作业任务,也不需要描述机器人对象物的中间状态过程,只需要按照某种规则描述机器人对象物的初始状态和最终目标状态,机器人语言系统即可利用已有的环境信息和知识库、数据库自动进行推理、计算,从而自动生成机器人详细的动作、顺序和数据。

例如,一装配机器人欲完成某一螺钉的装配,螺钉的初始位置和装配后的目标位置已知,当发出抓取螺钉的命令时,语言系统从初始位置到目标位置之间寻找路径,在复杂的作业环境中找出一条不会与周围障碍物产生碰撞的合适路径,在初始位置处选择恰当的姿态抓取螺钉,沿此路径运动到目标位置。在此过程中,作业中间状态作业方案的设计、工序的选择、动作的前后安排等一系列问题都由计算机自动完成。任务级编程语言的结构十分复杂,需要人工智能的理论基础和大型知识库、数据库的支持,目前还不是十分完善,是一种理想状态下的语言,有待于进一步的研究。但可以相信,随着人工智能技术及数据库技术的不断发展,任务级编程语言必将取代其他语言而成为机器人语言的主流,使得机器人的编程应用变得十分简单。

一般用户接触到的语言都是机器人公司自己开发的针对用户的语言平台,通俗易懂,在这一层次,每一个机器人公司都有自己语法规则和语言形式,这些都不重要,因为这层是给用户示教编程使用的。在这个语言平台之后是一种基于硬件相关的高级语言平台,如C语言、C++语言、基于IEC61131标准语言等,这些语言是机器人公司做机器人系统开发时所使用的语言平台,这一层次的语言平台可以编写翻译解释程序,针对用户示教的语言平台编写的程序进行翻译解释成该层语言所能理解的指令,该层语言平台主要进行运动学和控制方面的编程,再底层就是硬件语言,如基于Intel硬件的汇编指令等。

商用机器人公司提供给用户的编程接口一般都是自己开发的简单的示教编程语言系统,如KUKA、ABB等,机器人控制系统提供商提供给用户的一般是第二层语言平台,在这一平台层次,控制系统供应商可能提供了机器人运动学算法和核心的多轴联动插补算法,用户可以针对自己设计的产品应用自由的进行二次开发,该层语言平台具有较好的开放性,但是用户的工作量也相应增加,这一层次的平台主要是针对机器人开发厂商的平台,如欧系一些机器人控制系统供应商就是基于IEC61131标准的编程语言平台。最底层的汇编语言级别的编程环境我们一般不用太关注,这些是控制系统芯片硬件厂商的事。各家工业机器人公司的机器人编程语言都不相同,各家有各家自己的编程语言。

但是,不论变化多大,其关键特性都很相似。比如Staubli机器人的编程语言叫VAL3,风格和Basic相似;ABB的叫做RAPID,风格和C相似;还有Adept Robotics的V+,Fanuc,KUKA,MOTOMAN都有专用的编程语言,但是大都是相似.而由于机器人的发明公司Unimation公司最开始的语言就是VAL,所以这些语言结构都有所相似。VAL语言是美国Unimation公司于1979年推出的一种机器人编程语言,主要配置在PUMA和UNIMATION等型机器人上,是一种专用的动作类描述语言。VAL语言是在BASIC语言的基础上发展起来的,所以与BASIC语言的结构很相似。在VAL的基础上Unimation公司推出了VALⅡ语言;而后来staubli收购了Unimation公司后,又发展起来了VAL3的机器人编程语言。学习的话,一般来说各家机器人的官方网站都会有这些介绍资料,但是详细的资料就会比较欠缺。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编程语言
    +关注

    关注

    9

    文章

    1878

    浏览量

    33060
  • 工业机器人
    +关注

    关注

    90

    文章

    3263

    浏览量

    91888

原文标题:【Robot 学院】工业机器人的编程语言和种类大盘点!

文章出处:【微信号:robotn,微信公众号:产业大视野】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ABB机器人拓展其免费的Wizard简易编程软件的应用范围

    近日,ABB机器人拓展了其免费的Wizard简易编程软件的应用范围,除了协作机器人外,现在该软件也可应用于由OmniCore™控制器驱动的六轴工业
    的头像 发表于 01-09 09:46 568次阅读
    ABB<b class='flag-5'>机器人</b>拓展其免费的Wizard简易<b class='flag-5'>编程</b>软件的应用范围

    LabVIEW的六轴工业机器人运动控制系统

    。LabVIEW的可视化编程环境和强大的数据处理能力,使得复杂的运动学算法和轨迹规划得以顺利实现,显著提高了工业机器人的控制精度和效率。 ​ 这是LabVIEW的一个功能介绍,更多的使用方法与开发案例,欢迎登录官网,了解更多信息
    发表于 12-21 20:03

    ROS让机器人开发更便捷,基于RK3568J+Debian系统发布!

    领域的集大成者,主要应用于机器人控制领域,如AGV工业机器人控制器、智能机械臂控制器、机器人导航系统等。 ROS系统主要特点
    发表于 11-30 16:01

    5V摄像机镜头驱动,小云台驱动,低噪步进电机驱动芯片GC6209,应用于摄像机 机器人等产品中

    GC6209是双通道5V低压步进电机驱动器,具有低噪声。低振动特性,特别适用于相机的变焦和对焦系统万向节和其他精密低噪声STM控制系统。 芯片应用于 摄像机,医疗器械,机器人 消费类产品等 芯片特点:内置2个STM驱动器,
    发表于 11-03 17:27

    机器人编程需要什么软件?

    机器人编程需要什么软件
    发表于 11-01 07:34

    EPR6-S工业机器人通过EtherCAT转profinet网关接入西门子系统

    连接EPR6-S工业机器人专用六轴伺服驱动器用于汽车安装现场的配置案例。用到的设备为西门子1200PLC一台,EtherCAT转profinet(Profinet转EtherCAT)网关一个,EPR6-S
    发表于 10-24 14:04

    Arduino教学机器人的使用教程

    本文档的主要内容详细介绍的是Arduino教学机器人的使用教程
    发表于 09-27 06:53

    焊接机器人编程方法及流程技巧

    焊接机器人编程方法有什么?所谓焊接机器人是从事焊接的工业机器人,广泛应用于汽车制造、造船、航空等
    的头像 发表于 07-13 16:46 1051次阅读
    焊接<b class='flag-5'>机器人</b><b class='flag-5'>编程</b>方法及流程技巧

    工业机器人语言编程

    Assembly让你能在0和1数位上进行编程。这基本上是最底层的编程语言。随着Arduino和其它如微控制器的崛起,现在你可以使用C/C++在底层方便地编程了。这意味着Assembly
    的头像 发表于 07-05 10:49 312次阅读
    <b class='flag-5'>工业</b><b class='flag-5'>机器人语言</b><b class='flag-5'>编程</b>

    工业机器人编程

    工业机器人编程 工业机器人一般使用的编程语言主要有:
    发表于 06-26 14:03 601次阅读

    工业机器人应用的五大领域

    工业机器人是广泛用于工业领域的多关节机械手或多自由度的机器装置,具有一定的自动性,可依靠自身的动力能源和控制能力实现各种
    的头像 发表于 06-12 17:07 4308次阅读

    机器人编程如何更快速简便

    编程,一定要输出机器人后部的坐标。 能够确保一次调试成功。 而且后部坐标是规律的,一定是前左后右,前上后下。 多数人只考虑到前部撞机,却忘记了后部也会撞机。
    发表于 06-08 17:34

    编程机器人,售后难做吗?

    编程是如何完成的。 自编程其实也不是很高深的问题。 当用户给出参数时,有时也包括逻辑。 例如用户说,如果设备打开完毕,执行一个命令。 这个例子就包括了一个如果。你的智能机器人只需要生成一个
    发表于 06-08 16:20

    如何快速地让机器人投入生产

    辨别。 所以,如果你三角函数学得不好,就不要学习机器人了。会很累。而编程的方面的内容并不是很难。大多数逻辑可以用一个if和一个jmp完成。其重点难度大概都是二进制数据的处理。 说简单点,机器人就是一种
    发表于 06-06 16:18

    浅谈儿童陪护机器人

    儿童陪护机器人越来越受到人们的关注,其中转动控制是其重要组成部分之一。步进电机芯片作为一种常用的控制芯片,被广泛应用于儿童陪护机器人中的转动控制。本文将从步进电机芯片的工作原理、优势和应用场景等方面
    发表于 05-11 15:12