APP下载

人机会话方式的机器人示教盒的设计*

2013-12-23郑玉虎

组合机床与自动化加工技术 2013年2期
关键词:操作者嵌入式控制器

杨 敏,王 品,郑玉虎

(中科院沈阳计算所 高精数控,沈阳 110015)

0 引言

随着工业机器人在自动化生产中的广泛应用,机器人工作任务的编程就成为一个重要问题。目前工业机器人主要采用示教编程来完成机器人工作任务的编辑工作,而示教盒示教是主要的示教方式。因此示教盒是工业机器人控制系统的重要组成部分,其性能的好坏直接关系到工业机器人使用效果。

示教盒是一个可用于远程控制机器人的装置,使操作者对机器人的控制更加灵活、安全。通过示教盒,操作者可以编写机器人工作文件,来操作机器人的各个运动轴,改变机器人的运动状态,设置运动速度等,使远程机器人的完成实际生产要求。示教盒也可以很好地向操作者反馈机器人工作信息,使得生产加工过程更加准确、高效。

传统的示教盒示教需要操作者熟练掌握编程技巧,熟悉机器人编程语言等要求。随着工业机器人的广泛应用,对人机交互提出了更高的要求。作为人机界面的机器人示教盒,在机器人系统中起着举足轻重的作用。

本文所设计的基于会话式的机器人示教盒,提供给操作者良好、可靠、安全的交互界面,能够使操作者在信息提示下,通过简单设置参数,完成复杂的机器人作业程序设计,自动生成主控制器可识别的机器人工作文件,降低了对操作者专业知识的要求,使示教过程更加简单、直观。

1 示教盒的硬件设计

在实际生产过程中,通常需要有人机对话,包括操作者对机器人作业、参数输入和设置及其运行时错误信息的干预,以及机器人向操作者反馈运行状态与运行结果。其中,示教盒完成实现人机对话的功能。

示教盒的硬件电路如图1 所示。示教盒是机器人和操作者人机交互的工具类似于PC 机的键盘和显示器功能。示教盒的硬件结构由盒体、键盘、显示屏、控制电路等部分组成。

示教盒是一个典型的嵌入式系统,目前很多示教盒的处理器采用的是成本较低的单片机,但随着机器人的功能不断增加,以单片机作为处理器已经不能较好地满足设计要求,因此本设计采用嵌入式处理器,如ARM/StrongARM,SH 等。

图1 示教盒的硬件结构

本设计采用触摸屏使大部分控制按钮的功能集中到触摸屏中,从而使减少控制按钮的数量,使示教盒外观更加简洁。电阻式触摸屏是一种对外界完全隔离的工作环境,不怕灰尘、水汽和油污等,可以用任何物体来触摸,可以用来写字画画,特别适合于工业制造领域,因此,本设计采用电阻式触摸屏。

采用薄膜键盘作为本示教盒的输入装置。薄膜键盘控键表面覆盖一层塑料薄膜,密封性强,防潮、防尘、防油污等;体积小、厚度薄、重量轻、成本低、寿命长等特点,已广泛应用于计算机控制、数码机床等各类工业产品中。

2 示教盒的软件设计

2.1 软件开发环境

机器人示教盒需要多个任务同时运行,如屏幕显示、参数设置、网络传输、机器人工作文件的读写等,为了提高其实时响应性能,使用实时操作系统完成任务切换和优先级管理。目前大多数机器人示教盒基本上都采用窗口形式的图形用户界面来提高人机交互性能,这种界面的主要优点是界面友好,操作方便,简单易懂。

本设计在软件上采用了实时嵌入式Linux(RTLinux)、Qt/Embedded 和RCS 库的解决方案。RTLinux 是一种利用Linux 开发的面向实时和嵌入式应用的操作系统,在工业自动化等实时领域已有成熟应用。而Qt/Embedded 是基于Qt 的嵌入式GUI 和应用程序开发的工具包,它可运行多种嵌入式设备上,主要运行在嵌入式Linux 系统上,并为嵌入式应用程序提供Qt 的标准API。用RCS 库来实现示教盒与主控制器之间的通信。RCS 库是一个跨平台跨操作系统的通讯库,可以用来辅助构建多模块的控制系统软件。RCS 库代码开放,并以C+ +面向对象的方法,将程序抽象化,以类封装代码,可以跟应用程序很好的融合起来。RCS 库自动实现、维护多个模块间的命令和状态信息的传递。

2.2 功能模块结构图

示教盒示教模式的功能模块结构如图2 所示。在示教模式下主要完成对机器人的示教操作。操作者进入示教编辑系统,新建程序后,输入需要的作业序列及每个作业所需的参数信息,并将其保存为临时文件。本设计采用的Qt 提供的关联容器(支持通过键(key)来高效地查询和读取元素)QMap <K,T>来实现作业序列与指令之间的转换,其中作业用做QMap 中的索引,指令用做QMap 中所存储和读取的数据。并且Qt 还提供的迭代器类和相关操作的通用算法,来实现查找、计数等相关工作。

通过关联容器来读取配置文件中的作业与机器人指令的信息,建立起一对一的映射关系,并通过该映射关系可自动将临时文件转换为机器人主控制器可识别的机器人工作文件。当以上任何一个过程出现错误时,错误处理模块及时发出相应的出错信息,提示给操作者。当操作者通过键盘操作产生控制信息时,通过通讯模块及时与主控制器进行通信,将机器人工作文件传递给主控制器进行下一步处理。

图2 示教盒示教模式的功能模块结构图

2.3 通讯软件的设计

利用RCS 库提供的NML(中性消息语言)通信机制来实现示教盒与机器人主控制器之间通讯。NML 是一个可用于跨平台通信的软件库,示教盒与主控制器之间的通信关系如下图3 所示。

图3 示教盒与主控制器之间的通信

在本设计中共包括三个通道类数据结构,error-Buffer、statusBuffer 和commandBuffer 三个通道。其中errorBuffer 为NML 通道类的派生类,而通道基类RCS_CMD_CHANNEL 和RCS_STAT_CHANNEL,这两个基类分别用来创建commandBuffer 和statusBuffer 两个子类。从而让示教盒模块与机器人主控制器模块可以传递相关的错误、命令、状态消息。其中NML通道类提供两个通用的读写函数read()和write(),来实现控制模块间的消息传递。

本设计采用的消息类包括error、status 和command,这三个类都是NML 信息类的派生类,其中error 继承自NML 提供基类NMLmsg,command 继承自消息基类RCS_COM_MSG,status 继承继承自消息基类RCS_STAT_MSG。

采用通过继承模块基类NML_MODULE 来创建teachpendantModule 示教盒模块类和controllerModule主控制器模块类。NML_MODULE 包括模块间进行通讯的所有工具以及RCS 应用程序常用到的过程处理函数和变量。利用它来构建示教盒模块和主控制器模块,降低了开发实时控制系统的难度。

2.4 GUI 界面及其测试结果

图4 为示教盒的机器人工作文件编辑的界面图。

图4 示教盒编辑界面图

操作者输入一系列作业及其相关指令参数后,通过配置文件生成的作业与指令映射关系,自动转换的主控制器可识别的机器人工作文件。下图5 为转换后的机器人工作文件截图。

图5 转换的机器人工作文件截图

4 结束语

采用了现有技术,研发了基于人机会话方式的新型机器人示教盒。与以往的机器人示教盒相比,它具有以下特点:

(1)采用Qt 提供的关联容器QMap,通过读取配置文件中作业与机器人指令之间的信息,建立起一对一映射关系,通过该关系可自动将用户输入的作业信息转换成主控制器可识别的机器人工作文件。

(2)示教盒采用实时嵌入式Linux 操作系统,可多个任务同时运行,如屏幕显示、参数设置、网络传输、机器人工作文件的读写等,同时提高其实时响应性能,能够更好地进行人机交互。

(3)采用RCS 库实现示教盒与主控制器之间的通讯,利用NML 提供的几个重要基类来创建命令通道、状态通道和错误通道三个通道类;创建错误信息、状态信息、命令信息三个消息类;创建示教盒模块与机器人主控制器模块两个模块类,从而完成通讯。

[1]逢启寿. 工业机器人示教盒系统的设计[J]. 自动化与仪器仪表,2006(2):20-21.

[2]张爱云,张秋菊. 机器人虚拟示教编程系统的设计及研究[J]. 现代设计与制造,2003(3):79-81.

[3]张晓莉,王幼华,林和荣. 铝锭堆码机械手示教盒的设计[J]. 机械研究与应用,2006(4):74-75.

[4]张阳,王宣银,刘松国. 焊接机器人嵌入式示教系统设计与实现[J]. 设计与研究,2007(3):1-3.

[5]吴向垒,谢存禧. 开放式机器人的示教系统研究[J]. 机电产品开发与创新,2009(2):8-10.

[6]时国平,刘赣伟. 工业机器人示教盒系统的设计[J]. 先进制造技术,2006(5):48-49.

[7]田军锋,马跃,吴文江,等. 利用RCS 库实现数控系统模块间的通信[J]. 微计算机信息,2009(7):121-122.

猜你喜欢

操作者嵌入式控制器
工商业IC卡控制器改造为物联网控制器实践
超声检测颈总动脉内中膜厚度的操作者内及操作者间可重复性研究
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
浅析汽车制造业人机工程标准
TS系列红外传感器在嵌入式控制系统中的应用
操作者框架在车辆传动系旋转耐久试验中的研究与应用
搭建基于Qt的嵌入式开发平台
模糊PID控制器设计及MATLAB仿真
MOXA RTU控制器ioPAC 5542系列
倍福 CX8091嵌入式控制器