小型仿人机器人遥操作系统设计
2018-06-29郑维馨曹凤才
郑维馨,曹凤才
(中北大学 电气与控制工程学院,太原 030051)
小型仿人机器人体积小、能耗低、灵活性高,已经在教育、娱乐和科研方面开始应用和推广[1]。仿人型机器人具有人类的构造结构和步行运动功能,在人类的生活和工作环境中具有更大的适应性和灵活性,因此成为最理想的遥操作机器人之一[2]。仿人机器人在当今社会应用领域的逐步扩大,如何对仿人机器人进行控制成为该领域的一个重要课题[3]。
机器人是人类科技文明发展到一定阶段的杰出成果,随着机器人研究的深入和机器人领域的拓展,机器人运行的环境也越来越复杂和危险,由于机器人技术水平的限制,仅靠机器人本身不能独立完成这些复杂任务,需要人类对远端的机器人进行控制,因此出现了机器人遥操作系统[4]。机器人遥操作系统是一个典型的人机共存的自动化系统[5]。
但已有的遥操作对象是以有线和无线局域网的方式接入,只能在相对固定的区域活动,因而控制范围有限[6];且现有的遥操作控制器大多采用工控或PC机来设计,系统存在体积大、耗电量大、不易移动等缺点[7],大大限制了遥操作者的活动范围[8]。以上缺点都限制了基于Internet的遥操作技术在仿人机器人领域的实际应用和推广[9]。
本文利用3G网络的高覆盖率,来克服上述缺点[10]。并采用基于Android系统的手机、平板电脑等移动平台作为遥操作平台,设计一种功能强大、耗电低、遥控范围广泛的遥操作仿人机器人系统[11]。这种遥操作控制系统能够充分利用3G网络高覆盖率的优势,提供随时随地的基于视频的遥操作功能[12]。整个系统小巧灵活、使用方便、遥操作距离远。
1 遥操作系统总体设计
机器人遥操作系统由近端操作人员与最终远端工作现场机器人构成。具体地,在近端操作人员根据作业任务通过远程操作平台的人机交互界面,借助远端工作现场的环境反馈信息,进行综合分析与判断,经人机交互接口的输入设备,向机器人发布任务或控制指令,控制机器人完成作业任务。系统结构如图1所示。
图1 机器人遥操作系统结构示意Fig.1 Robot remote operating system structure diagram
参照人体行为模式、控制模式和复杂系统设计原则,本文提出了一个具有四级递阶结构的机器人遥操作系统体系结构,分层结构如图2所示。
图2 机器人遥操作系统的分层结构Fig.2 Hierarchical structure of robot remote operating system
组织管理级是整个系统的中心和主导,具有最高的智能水平,由操作人员来担任。
协调控制级是机器人遥操作系统的人机交互接口,由遥操作平台担任。操作人员通过Android手机操作平台与遥操作控制器,将自己的控制思想、意图、策略等传递给运动控制层。协调控制层将操作人员的指令信息传达给远端的机器人运动控制层,并最终形成具体的作业任务,并对机器人现场的视觉信息进行采集并反馈给操作人员,提供给操作者临场感。
运动控制级由机器人的运动控制器担任,根据来自协调层的作业任务指示,进行运动规划,形成动作序列,同时接收来自底层传感器系统的信息反馈,并向协调层反馈。执行级是系统的最低层,由分布在机器人各关节上的驱动控制器担任,将来自规划控制层的动作序列,转换成各关节电机转动的协调动作,并行驱动各电机的运动。它具有最高的控制精度,并由常规的控制理论来进行控制。四级递阶结构的机器人遥操作系统,从最高层的人,到最低层的数字舵机的运动,其智能水平逐层递减,而运动作业精度逐层增强,是人的智慧和机器人的作业能力完美结合。
2 遥操作机器人端系统设计
仿人机器人是整个系统中非常重要的一部分,仿人机器人结构构成如图3所示。机器人由遥操作控制器、运动控制器、摄像头、3G模块、陀螺仪、加速度计、力传感器、数字伺服舵机、RS232总线以及485总线构成。
图3 仿人机器人平台Fig.3 Humanoid robot platform
小型仿人机器人身高约55 cm,体重约3.9 kg。具有23个自由度。机器人各关节的驱动部件选用Robotis公司的Dynamixed系列数字伺服舵机。为适应小型仿人机器人结构紧凑和快速行走的特点。我们选用RX-64和RX-28舵机,因其输出转矩较大,集控制模块,驱动模块,通信模块和减速齿轮于一体。
摄像头采用OV7620 CMOS摄像头,它的分辨率可达640×480,传输速率可达每秒30帧,视频格式是RGB24。将OV7620通过USB接口与遥操作控制器通讯。
2.1 操作控制器的设计
小型仿人机器人遥操作控制器由基于ARM11的32位微处理器S3C6410处理器作为核心处理器,硬件原理如图4所示。处理器主频533 MHz,最高667 MHz。S3C6440内含一个集成的多格式编解码器支持MPEG4/H.263/H.264编码、译码以及VC1的解码。能够满足实时视频数据的压缩处理,另外具有丰富的外设接口能够实现视频图像的采集,模块间通讯等功能。
图4 操作控制器硬件原理Fig.4 Remote operation controller hardware schematic
遥操作控制器负责将机器人端的视觉信息通过3G网络发送给远端的遥操作平台,同时接收遥操作平台通过3G网络发送给机器人的命令信息,并命令进行分析处理,形成小型仿人机器人可识别的具体作业任务。遥操作控制器与原控制系统构成主从式控制结构。网络模块与遥操作控制器实物如图5所示。
图5 网络模块与遥操作控制器Fig.5 Network module and remote operation controller
2.2 运动控制器的设计
小型仿人机器人运动控制器由基于ARM9的32位微处理器S3C2440处理器作为核心处理器。三星S3C2440处理器的主频为400 MHz,最高频率达到533 MHz;其运算速度能够满足在线运动规划及稳定性控制的运算速度要求,另外S3C2440具有丰富的外设接口能够实现多传感器数据采集处理、稳定控制和模块间通讯等功能。运动控制器实物图和硬件原理框图分别如图6和图7所示。
图6 小型仿人机器人运动控制器Fig.6 Small humanoid robot motion controller
图7 运动控制器硬件原理Fig.7 Motion controller hardware block diagram
运动控制器通过485总线与多路关节数字伺服舵机相连;运动控制周期为5 ms,通信波特率达到1 Mbps,能够实现多舵机精确位置控制,从而实现小型仿人机器人的快速步行规划与控制。同时,运动控制器通过A/D和485总线对陀螺仪、加速度计以及力传感器信息进行采集和处理,为小型仿人机器人的稳定运动控制和调节提供依据。
仿人机器人运动控制程序主要由轨迹规划模块和反馈控制模块组成。轨迹规划模块负责根据行为规划层制定的运动参数以及仿人机器人运动模式,产生或选择一组短期内的运动轨迹序列。运动模式包括仿人机器人步行的固有参数如步长,步行周期等以及仿人机器人的运动学分析。反馈控制模块负责根据传感器的运动状态数据对轨迹规划模块输出的轨迹序列进行调整,生成最终的关节控制数据驱动执行机构执行。例如仿人机器人在行走或做复杂运动的过程中会因为速度过快或地面不平坦等因素而产生不稳定摆动,我们需要用陀螺仪来检测仿人机器人在运动过程中的身体转动角速度,据此来补偿机器人的关节角以提高稳定性。小型仿人机器人运动控制器的软件流程如图8所示。
图8 小型仿人机器人运动控制器软件流程Fig.8 Small humanoid robot motion controller software flow chart
3 手机遥操作平台设计
传统的遥操作系统的控制中心一般要配置一个专用的PC机,除了体积较大携带不方便外还需有专线接入互联网,这大大降低了小型仿人机器人的遥操作体验,使很多应用受到了限制。随着手机硬件和手机操作系统近几年的快速发展,同时为了充分发挥3G网可以随时随地通讯的优势,使用手机作为遥操作系统的独立控制平台是完全可行的。
手机作为基于视觉反馈的协调控制层中操作者端的操作平台,负责接收机器人端发送的流媒体包,进行解码显示播放,操作者根据视觉信息通过按键发送机器人控制命令,主要包括H.264视频解码,流媒体处理,通讯几个模块,控制系统示意如图9所示。
图9 手机遥操作平台示意Fig.9 Mobile phone remote operation platform
硬件方面,由于手机平台需要做视频解码运算,因此手机的CPU运算能力是我们最关心的,目前智能手机的处理器大部分采用ARM架构,市场上的主流智能手机处理器的CPU主频现已达到了很高的水准,2011年以后出产的大部分智能机其主频都达到了1 GHz以上,因此绝大多数的智能机能够满足我们的要求。
软件方面,采用Android平台作为遥操作的开发平台,因其具有操作简单,比其他软件更好的兼容性与开放的源码等优点。
界面设计问题涉及到用户与计算机的交互技术问题和界面本身的直观、方便易用等问题。在传统遥操作中,一般只有受过培训的专业操作人员才能获得操作机器人的控制权,对界面的设计没有特别的要求。将遥操作控制平台构建在Android上后,面对的操作者大多是网络普通用户,要求控制界面更图形化和易于操作。根据小型仿人机器人的运动及作业需求,设计了如表1所示的三组按键。
表1 控制界面的按键Tab.1 Control interface buttons
在Eclipse开发环境下的Android模拟器中对程序进行测试,在 WVGA800(800×400)分辨率的模拟屏幕下运行结果如图10所示。
图10 Android手机端控制界面设计Fig.10 Android mobile terminal control interface design
4 系统实现
系统上电后加载完Linux内核与模块驱动后会自动启动两个守护进程:一个进程等待手机遥操作平台的视频连接的请求,在接收到连接请求的同时会获得手机平台的IP地址,并开始循环采集视频数据,进行H.264硬件压缩,将压缩后的码流进行RTP打包后通过3G网络发送给手机遥操作平台,同时负责定期发送RTCP数据包;一个进程负责接受来自手机遥操作平台的控制命令与编码器参数配置命令,如果是控制命令将通过串口传送给仿人机器人运动控制器,如果是编码器参数配置命令,将重启编码器进行参数配置。
控制命令分为两类:一类是仿人机器人运动控制命令,主要由机器人双足步行控制,表演和摄像头角度调整三部分组成;一类是视频传输控制命令。遥操作控制器通过3G网接收到来自遥操作平台的命令后,会对命令格式进行判断,如果为机器人运动控制命令,则通过RS232总线发送给运动控制层。如果为视频传输控制命令,则会根据命令参数,重新设置视频编码参数和摄像头帧率。
5 遥操作系统性能测试实验与结果
为了检测遥操作控制性能,进行了遥操作命令控制实验,Android手机端显示如图11所示。通过触摸屏对应按键实现对仿人机器人双足步行、表演和头部摄像头姿态的控制,各个功能运行正常。机器人对控制指令响应延时小于2 s,整个系统能够有效、平稳运行。图12为仿人机器人运动控制实验。通过对比可以看出仿人机器人可以完成向前直行、右移和左转等动作。
图11 Android手机端显示Fig.11 Android phone display
图12 仿人机器人的移动Fig.12 Humanoid robot movement
6 结语
机器人是20世纪最伟大的发明之一,开发适应于人类生活环境的仿人型机器人是机器人技术发展的一个长远方向。同时,为使机器人更好的为人类服务,我们对机器人遥操作系统提出了更高的要求。基于移动通讯网络的手机遥操作平台在我国还处于起步阶段,随着移动通讯技术的发展和仿人机器人硬件设备的提升,以及手机,平板电脑等移动通讯设备性能的不断提高,基于移动设备的遥操作系统将取得更大的突破,遥操作技术的不断发展将为小型仿人机器人走进家庭及产业化起到积极的促进作用。本文设计的基于3G网络的小型仿人机器人遥操作系统,还存在一些不完善之处。考虑到实际应用的要求,整个系统存在以下几个方面工作,还需要做进一步的研究与改进。进一步开展仿人形机器人操作策略和控制方式研究,使操作人员的操作更具人性化。目前小型仿人机器人端只是采集了视觉信息,可在后续研究中,考虑听觉,触觉或者力觉的数据采集及传输设计。在Android端连接机器人时增加用户身份验证功能,以提高遥操作系统的网络安全性。
[1] 谢涛,徐建峰,张永学,等.仿人机器人的研究历史、现状及展望[J].机器人,2002,24(4):367-374.
[2] 竺长安.两足机器人系统分析、设计及运动控制[D].长沙:中国国防科学技术大学,1989.
[3] 汤卿.仿人机器人设计及步行控制方法[D].杭州:浙江大学,2009.
[4] 徐旭明,叶榛,陶品,等.基于视觉临场感的仿人机器人遥操作系统[J].高技术通讯,2000,10(3):57-61.
[5] 陈俊杰.空间机器人遥操作克服时延影响的研究进展[J].测控技术,2007,26(2):1-2.
[6] Lumina R.Using NASREM for real-timesensory interactive robot control[J].Robotiea,1994,12(2):127-135.
[7] Hirzinger G,Landzettel K,Fagerer C.Teleroboties with large time delays the ROTEX expe-rience[C]//Process of IEEE/RSJ/GI International Conference on Intelligent Robots and Systems,Germany,1994,571-578.
[8] Bai J,Ester P,Jain Y,et al.Comparison of task performance of robotic camera homers endo assistand aesop[J].International Congress Series,2001:1100-1103.
[9] 胡金星.基于移动通信网的移动机器人遥操作系统[D].北京:北京邮电大学,2010.
[10] 金亮.基于物联网的视频传输技术的研究与仿真[D].北京:华北电力大学,2007.
[11] 杨佳鹏.基于视觉临场感的仿人机器人遥操作系统实现[D].北京:北京理工大学,2007.
[12] 李莹莹,刘云辉,樊玮虹,等.基于移动通信网络的机器人遥操作[J].通信学报,2006,27(5):52-60. ■