浅谈!机器人编程语言之安川机器人
任务级编程语言
任务级编程语言是比前两类更高级的一种语言,也是*理想的机器人高级语言。这类语言不需要用机器人的动作来描述作业任务,也不需要描述机器人对象物的中间状态过程,只需要按照某种规则描述机器人对象物的初始状态和*终目标状态,机器人语言系统即可利用已有的环境信息和知识库、数据库自动进行推理、计算,从而自动生成机器人详细的动作、顺序和数据。例如,一装配机器人欲完成某一螺钉的装配,螺钉的初始位置和装配后的目标位置已知,当发出抓取螺钉的命令时,语言系统从初始位置到目标位置之间寻找路径,在复杂的作业环境中找出一条不会与周围障碍物产生碰撞的合适路径,在初始位置处选择恰当的姿态抓取螺钉,沿此路径运动到目标位置。在此过程中,作业中间状态作业方案的设计、工序的选择、动作的前后安排等一系列问题都由计算机自动完成。
任务级编程语言的结构十分复杂,需要人工智能的理论基础和大型知识库、数据库的支持,目前还不是十分完善,是一种理想状态下的语言,有待于进一步的研究。但可以相信,随着人工智能技术及数据库技术的不断发展,任务级编程语言必将取代其他语言而成为机器人语言的主流,使得机器人的编程应用变得十分简单。
一般用户接触到的语言都是机器人公司自己开发的针对用户的语言平台,通俗易懂,在这一层次,每一个机器人公司都有自己语法规则和语言形式,这些都不重要,因为这层是给用户示教编程使用的。在这个语言平台之后是一种基于硬件相关的高级语言平台,如C语言、C++语言、基于IEC61131标准语言等,这些语言是机器人公司做机器人系统开发时所使用的语言平台,这一层次的语言平台可以编写翻译解释程序,针对用户示教的语言平台编写的程序进行翻译解释成该层语言所能理解的指令,该层语言平台主要进行运动学和控制方面的编程,再底层就是硬件语言,如基于Intel硬件的汇编指令等。
商用机器人公司提供给用户的编程接口一般都是自己开发的简单的示教编程语言系统,如KUKA、ABB等,机器人控制系统提供商提供给用户的一般是第二层语言平台,在这一平台层次,控制系统供应商可能提供了机器人运动学算法和核心的多轴联动插补算法,用户可以针对自己设计的产品应用自由的进行二次开发,该层语言平台具有较好的开放性,但是用户的工作量也相应增加,这一层次的平台主要是针对机器人开发厂商的平台,如欧系一些机器人控制系统供应商就是基于IEC61131标准的编程语言平台。*底层的汇编语言级别的编程环境我们一般不用太关注,这些是控制系统芯片硬件厂商的事。
对象级编程语言
所谓对象即作业及作业物体本身。对象级编程语言是比动作级编程语言高一级的编程语言,它不需要描述机器人手爪的运动,只要由编程人员用程序的形式给出作业本身顺序过程的描述和环境模型的描述,即描述操作物与操作物之间的关系。通过编译程序机器人即能知道如何动作。
这类语言典型的例子有AML及AUTOPASS等语言,其特点为:
(1) 具有动作级编程语言的全部动作功能。
(2) 有较强的感知能力,能处理复杂的传感器信息,可以利用传感器信息来修改、更新环境的描述和模型,也可以利用传感器信息进行控制、测试和监督。
(3) 具有良好的开放性,语言系统提供了开发平台,用户可以根据需要增加指令,扩展语言功能。
(4) 数字计算和数据处理能力强,可以处理浮点数,能与计算机进行即时通信。
对象级编程语言用接近自然语言的方法描述对象的变化。对象级编程语言的运算功能、作业对象的位姿时序、作业量、作业对象承受的力和力矩等都可以以表达式的形式出现。系统中机器人尺寸参数、作业对象及工具等参数一般以知识库和数据库的形式存在,系统编译程序时获取这些信息后对机器人动作过程进行仿真,再进行实现作业对象合适的位姿,获取传感器信息并处理,回避障碍以及与其他设备通信等工作。
以上就是小编为您整理的内容啦!希望对您有所帮助!
详情点击安川机器人
- 下一篇:安川机器人在3D视觉中的应用盘点!
- 上一篇:安川视觉系统详解及应用!