□ 崔 岩 □ 杨海伟 □ 崔 泽
1.齐重数控装备股份有限公司 设备保障部 黑龙江齐齐哈尔 161005
2.上海大学 机电工程与自动化学院 上海 200072
遥操作用于机器人领域已有很长一段历史,在遥操作中,操纵者借助主、从端设备可以远距离执行任务,尤其适合于一些危险环境的作业任务,如:海底、太空、核场所等。在遥操作中,一般主要借助远端传回的视频信息进行控制,然而由于视频反映的信息形式单一,操作者很难获知系统的精确状态,此外仅凭视频信息也不容易掌握诸如机器人遇到周围有烟雾或光线不好的情形或视频传输故障等突发事件,所以仅依靠视频反馈的遥操作有很大的局限性,这时遥操作系统就需要通过其它措施来增加操作的可靠性。笔者借助MicroSoft Siderwinder Force Feedback 2摇杆提供力反馈,用以提高虚拟环境中的力觉感受,增加对机器人操作的可靠性、稳定性。移动机器人常用的是速度控制,由于主操作设备运动空间受限,所以位置控制很少使用,但两者结合或许可以达到比单一控制更好的效果,本文基于力反馈以及视频和状态反馈信息,对移动机器人的两种控制方法进行了分析研究。
移动机器人遥操作系统可以分为服务器端、客户端、无线网络3部分,系统结构如图1所示,客户端包括力反馈摇杆和笔记本电脑,服务器端包括移动机器人本体和内置控制计算机,两者通过无线网络通信,对近距离无线传输,可以不用无线路由器,只需建立一个Ad-hoc无线网络即可。
在图1遥操作系统中,通过操纵力反馈摇杆驱动移动机器人运动,摇杆上输出量有坐标值x、y和控制方法变量m,其中y和m作为切换控制器的输入,经切换控制器后输出y1或y2,x、y1和y2分别乘上各自的比例系数后就成为位置控制和速度控制的控制参数φ、S、V。这些控制参数通过无线网络传递给移动机器人端,再经过逆运算转换为左、右电机的理想控制参数qd,通过编码器数据q构成闭环控制,从而驱动机器人以一定的速度和方向朝预计位置运动。操作者通过观察远程传回的反馈信息确定机器人的位置,并将其当前位置和预计位置比较,根据比较结果修正施加在摇杆上的力,使实际位置与理想位置尽量吻合。
力反馈摇杆采用MicroSoft Siderwinder Force Feedback 2摇杆,将摇杆的前、后、左、右方向映射成机器人的前进、后退、左转,右转,对移动机器人有两种控制策略:①速度控制方法,即速度值大小与摇杆偏离中心点的坐标值成正比;②位置控制方法,即位移值大小与摇杆偏离中心点的坐标值成正比。为了防止由于操作者的不小心或是一些震动等原因使摇杆发生微小偏离而导致机器人的误操作,对摇杆进行死区设置,如图2所示,在中间矩形区域内的动作不会反映到机器人端,两种控制方法用如下方程描述:
式中:φ、V、S分别是移动机器人的转角、速度和位置;KV、KS、KA是比例常数;x、y 为摇杆的位置坐标,定义如下:
▲图2 摇杆死区设置
其中:xdzone、ydzone是正常数。
摇杆的位置坐标表示摇杆在死区范围内的运动,对移动机器人没有影响;只有在死区范围外的运动,才会产生对移动机器人的控制信号。
分别定义世界坐标系和机载坐标系,机载坐标系下的移动机器人的位置和方向可以用向量P=(x,y,θ)T表示。因为一个移动机器人的运动可以用线性速度V和角速度ω来表示,对差动驱动移动机器人,可以用以下方程表示:
式中:L为检测获得的移动机器人与障碍物之间的距离;VR为机器人右轮速度;VL为机器人左轮速度。
在世界坐标系中,速度值P与机载坐标系中速度q有以下关系:
将公式(5)积分,可以得出机器人位置向量P:
式中:[x y θ]T为机器人的实际位置;[x0y0θ0]T为机器人的初始位置。
利用以上方程可以算出在每个控制周期内移动机器人的位置,速度V和ω由安装在电机上的编码器测得。
▲图3 切换控制器内部结构
▲图4 重置算法
▲图5 力反馈编程步骤
对移动机器人的控制有位置控制和速度控制两种方法,在两种控制方法之间切换必须考虑切换前后移动机器人的状态变化。切换控制器的内部结构如图3所示,切换控制器的5个输入量为摇杆Y向输出值y、控制方法变量m、每一次控制切换时预保存的摇杆输出值和切换控制器的输出值, 后3个变量是通过重置算法实现,具体过程如图4所示。输出量是移动机器人的控制参数。图3中的h1和h2分别是速度控制和位置控制时的离散变量,其值可以取0或1。0表示切换后保持与切换前相同的状态,1表示将先前的状态设置为0,比如从速度控制切换到位置控制,切换后将速度先设置为0,即移动机器人先停止。控制方法变量m也是个离散值,同样可以取0或1。0表示是位置控制方法,1表示是速度控制方法,变量m与摇杆上按钮1关联,缺省值为1,即速度控制,第一次按下按钮1后,m值为0,则切换到位置控制方法,再次按下按钮1,又切换回速度控制。
为了实现力反馈摇杆的位置输出、力反馈实现以及输出显示,采用Visual C++6.0结合Direct X7.0版本的DirectInput组件编程,DirectInput组件包括3个COM 接口[1]:①接口 IDirectInput7 枚举、创建并取回DirectInput设备的状态,初始化DirectInput对象并调用Windows控制面板的一个实例;②接口IDirectInputDevice7取得并释放对DirectInput设备的访问,管理设备属性和信息、设置操作、执行初始化、创建和实现力反馈并调用一个设备控制面板;③接口IDirectInputEffect用来管理力反馈设备的作用效果,创建、修饰、打开和停止效果。编程步骤如图5所示。
要比较准确地反映机器人与周围障碍物之间的距离信息和得到比较满意的力反馈效果,力反馈函数的构造是很重要的,一般函数构造准则是:虚拟力大小同移动机器人与障碍物之间距离成反比。两者越近,反馈力越大。 力反馈函数可以是线性[2][3][5],也可以是非线性[4],其不仅与机器人和障碍物之间距离相关,而且与驱动特性、环境结构相关,本文中仅考虑距离因素的影响,反馈力的大小为:
式中:Ke、Ki是比例常量;L0为安全距离;y为摇杆输出的Y向值。
从式(8)中可以看出,当移动机器人与障碍物之间的距离L小于L0时,会在力反馈摇杆上产生虚拟反馈力Fe,距离L越小,Fe越大,通过Fe可以很好地实现避障功能。Fi的作用是使摇杆偏离Y轴后向Y轴恢复,反映到移动机器人就是使移动机器人停止。结合式(1)、(2)和(9),可知,Fi是与移动机器人速度和位置成比例的,所以Fi在一定程度上反映了移动机器人的状态信息,通过Fi可以保证移动机器人在速度控制模式下运动更加平稳。
▲图6 在没有反馈力情况下移动机器人的控制
▲图7 在具有反馈力情况下移动机器人的速度控制和位置控制
实验过程:让移动机器人从一定点开始运动,在距定点7.5 m处放置一个障碍,移动机器人以尽可能快的速度到达距定点7 m的位置,然后定位在7 m位置处。实验基于力反馈以及视频和状态反馈信息,对移动机器人的两种控制方法进行了分析研究。具体分两种情况:①在视频和状态反馈信息时,两种控制方法的实验情况如图6所示;② 在视频、状态以及力反馈信息时,两种控制方法的实验情况如图7所示。
图6(a)是在没有力反馈、只借助视频和状态信息反馈的情形下,对移动机器人分别实施速度控制和位置控制。可以看出,位置控制大约需要36 s的时间去完成实验,即定位在7 m处;而速度控制从定点运动到7 m位置只要22 s的时间,这比位置控制下第一次到达7 m处所需的时间28 s要少,然而完全定位在7 m处则将近要60 s时间。图6(b)是在一次实验中分时采用速度控制和位置控制,因为根据图6(a)知道,速度控制运动速度快,然而定位不够好,而位置控制定位好,但速度较慢,所以结合两者,在前面时间内用速度控制,在约6 m处时切换到位置控制,从图6(b)中可以看出,完成实验所需时间大约31 s,这说明相对单独采取一种控制方法,两者结合可以更快速地完成实验。
在图6中只借助于视频和状态反馈信息,移动机器人有时会与前方障碍发生碰撞,所以在实验中增加了力反馈来辅助遥操作。从图7(a)中可以看出,速度控制时结合力反馈,不但可以避障,整个遥操作过程都很稳定,不会出现大的波动,定位在7 m处所需的时间也比没有力反馈的情形要少。相对于没有力反馈情况,力反馈会给移动机器人的位置控制带来一定副作用,这从图7(b)中可以看出,虽然力反馈可以在一定程度上帮助移动机器人避障,但有力反馈时,和图6(a)中没有力反馈的位置控制相比较,移动机器人会在7 m位置出现较大的波动,同时需要更长的时间才能定位在7 m处。这是因为位置控制的比例系数Ks比较大,导致位置控制会有很高的敏感性。所以力反馈在位置控制模式下不太适合,尤其是在不要避障的情形时。
从以上分析可知,视频和状态信息可以反映移动机器人的环境和状态信息,但不能保证移动机器人不与障碍发生碰撞,而结合力反馈,在更好地感知工作环境的同时,还可以很好地避障。移动机器人的位置控制在定位上效率更高,而速度控制可以快速到达目的地,但定位耗时较长,两种控制方式结合可以利用各自的优势。速度控制结合力反馈可以保证操作的稳定性,同时在一定程度上提高定位效率,但位置控制由于其比例系数Ks比较大的缘故,力反馈不适合与位置控制结合。
本文在不同反馈信息情况下,对移动机器人的位置控制和速度控制两种方法进行了比较分析,同时分析了力反馈在遥操作中的作用。实验结果表明,通过两种方法的结合,可以在保证速度的同时更好地定位,采用力反馈可以避障、增加临场感和提高移动机器人遥操作的稳定性。
[1] 武永康.DirectInput原理与 API参考[M].北京:清华大学出版社2001.
[2] Ildar Farkhatdinov,Jee Hwan Ryu.A User Study of a Mobile Robot Teleoperation [C].Hong kong:The 4th International Conference on Ubiquitous Robots and Ambient Intelligence,2007.
[3] A Fattouh,M Sahnoun,G Bourhis.Force Feedback Joystick Control of a Powered Wheelchair:Preliminary Study [C].Hauge,Nttherlands:IEEE International Conference on Systems,Man and Cybernetics,2004.
[4] Sangyoon Lee,Gaurav.Haptic Control of a Mobile Robot:A User Study[C].Lausanne,Switzerland:IEEE/RAJ International Conference on Intelligent Robots and Systems,2002.
[5] Soonshin Han,Jang Myung Lee.Teleoperation of a Mobile Robot Using a Force Reflection Joystick with a Single Hall Sensor [C].Jeju,Korea:16th IEEE International Conference on Robot and Human Interactive Communication,2007.