文章编号:100422261(2004)0120039204基于Matlab 和VR 技术的移动机器人建模及仿真Ξ葛为民1,2,曹作良2,彭商贤1(1.天津大学机械工程学院,天津300072;2.天津理工学院机械工程学院,天津300191)摘 要:利用Matlab 建立移动机器人的动力学模型,在虚拟现实(VR )环境下,实时仿真移动机器人路径跟踪的运动特性,为基于Internet 的机器人遥操作试验搭建了仿真平台.实验结果表明,虚拟模型准确地模拟了真实移动机器人的动力学特征;通过对模型的参数修改,为实现对真实机器人的最优控制和设计提供了可信的参考方案.关键词:Matlab ;虚拟现实;移动机器人;遥操作中图分类号:TP242.2 文献标识码:ADynamic modeling and simulation of mobilerobot based on matlab and VR technologyGE Wei 2min 1,2,C AO Zuo 2liang 2,PE NG Shang 2xian 1(1.School of Mechanical Eng.,T ianjin University ,T ianjin 300072,China ;2.School of Mechanical Eng.,T ianjin Institute of T echnology ,T ianjin 300191,China )Abstract :This paper proposes an approach that develops a dynam ic m odel of a m obile robot taking advantage of the M atlab.M eantime ,in a developed virtual reality environment ,the built m odel simulates the m otion of path tracking and obstacle av oidance.Furtherm ore ,it provides a platformfor experiments of m obile robot teleoperation.The experi 2mental results approve that ,the virtual m odel represents the dynam ic properties of real robot accurately and ,w ith the change of parameters of the virtual m odel ,it helps to find out the optim ization methods of controlling and designing the m obile robot indeed.K eyw ords :M atlab ;virtual reality ;m obile robot ;teleoperation 在当今工业现代化的高速发展时期,特别是自动化设备在各个领域的广泛应用,移动机器人(AG V )的应用越来越显示出它的重要性和优越性.AG V 的重要特征是它的可移动性,对这种可移动性的控制是AG V 研制的核心问题.课题组研制的T UT -1型AG V 采用3种传感器(磁导航传感器、CC D 摄像机、超声波传感器)跟踪磁条来对AG V 进行引导和避障,经过这3种传感器的信息融合,测算出AG V 的位置和运动方向作为反馈与给定的运动状态进行比较,来调整AG V 下一步的运动[1]. 在天津市自然科学基金的资助下,课题组利用T UT -1这个平台开展基于Internet 的AG V 遥操作系统的研究.为模拟AG V 的运动特性,利用Matlab 进行AG V 的动力学建模.同时,在虚拟现实环境下,利用Matlab 模型仿真AG V 的路径跟踪,研究和探索AG V 最优的控制和配置方案.1 实验和建模过程 如图1所示,T UT -1移动机器人在室内进行导航和避障的实验[2].AG V 通过磁导航传感器和CC D 摄像机跟踪磁条引导前进,当AG V 接近墙壁时,通过超声传感器引导.AG V 将实时采集到的磁条位置信息作为反馈,与给定的磁条标准位置信息进行比较来调整Ξ收稿日期:2003212225 基金项目:天津市自然科学基金资助项目(023615011) 第一作者:葛为民(1968— ),男,讲师,博士研究生 第20卷第1期2004年3月天 津 理 工 学 院 学 报JOURNA L OF TIAN JIN INSTITUTE OF TECHN OLOG Y V ol.20N o.1Mar.2004AG V 下一步的运动,达到实时控制AG V 跟踪磁条的目的.图1 TUT 21移动机器人Fig.1 TUT 21mobile robot 在仿真环境下,利用虚拟现实(VirtualReality )建模工具W orldUp 构建了AG V 运行的虚拟仿真环境场景,基于Matlab 构建AG V 仿真模型,通过模拟AG V 的动力学特性,来模拟AG V 的运动特行,通过在线修改虚拟AG V 的特性参数,来研究控制AG V 运动的最佳方案. 图2为AG V 车体结构简图[3].图2 车体结构简图Fig.2 Sketch of AGV body structure AG V 两后轮为驱动轮,分别由两台电机驱动,每台电机与后轮各构成一个速度闭环,为恒速输出.在工作载荷内,调节两电机的输入电压即可调节两后轮的转速;AG V 两前轮为随动轮,仅起到支撑车体的作用而无导向作用. 仿真算法原理是比较每一时刻AG V 所在位置的坐标值和终止坐标点的差别来计算处理两个坐标点之间的x 、y 值之间的误差,以当前AG V 姿态角和终止位置姿态角的差值作为输入量,来计算下一步AG V 的位移,也就是输出下一步AG V 到达的坐标和姿态角,从而控制AG V 向终点行进. 图3为AG V 运动学建模流程图.图3 AGV 动力学模型流程图Fig.3 F low ch art of the AGV dyamics model 现就其中的主要模块建模过程介绍如下[4]: 1)误差计算模块:本模块的作用是进行误差计算,通过比较机器人所在坐标点和终止坐标点的差别来计算处理两个坐标点之间的xy 值的误差和角度误差本模块接收5个信号(初始点的xy 坐标值,终止点的xy 坐标值,和角度值),输出两个信号(坐标值误差,角度误差). 初始点的y 坐标值与终止点的y 坐标值通过sum 模块进行求和运算,算出两个坐标值的差值,同时终止点的y 坐标值通过g oto 模块传出,同样的,对两个x 坐标值进行计算,求出差值.把计算出来的y 坐标值的差值与x 坐标值的差值通过T rig onometry 模块求出两值相除所得数的反正切函数,也就是求出倾斜角的弧度,所得值通过gain 模块与-1相乘,再通过sum 模块与角度值求出差值,所得差值通过Abs 模块求出绝对值,然后和π值比较(Relational operator 模块,如果满足条件,返回值为1),如果小于或等于π值,则直接与差值相乘,如果大于π值,则乘以2π然后和差值的绝对值相减,然后再与差值通过sign 模块所得的值相乘,最后两值相加,即为角度值的误差值. 2)PI D 控制模块:误差计算模块输出两个信号・04・天 津 理 工 学 院 学 报 第20卷 第1期 thetaError 和xyError ,两个信号分别通过PI D 控制模块,通过闭环回路控制,分别得出DeltaU 和Uavg ,计算公式为: theta-gain =theta-gain-pr 3theta-error (t -1)+theta-gain -int 3tinc 3sum (theta-error )+(theta-gain-der/tinc )3theta-error (t -1); y-gain =y -gain-pro 3y-error (t -1)+y-gain-int 3tinc 3sum (y -error )+(y-gain-der/tinc )3y -error (t -1); M ove-U (t -1)=theta-gain 3theta-gain-mult +y-gain 3y-gain-mult ; Delta-U (t -1)=sign (M ove-U (t -1))3in (abs (M ove-U (t -1)),23Max-M otor-V oltage ); U (t -1)=(23Max-M otor-V oltage -abs (Delta-U (t -1)))/2; 图4为PI D 控制在Matlab/Simulink下的仿真结构图.图4 PI D 控制模块仿真结构图Fig.4 Diagram of PI D simulation structure 3)扭矩计算模块:此模块用于计算AG V 轮子的扭矩,输入参数为“步进转速模块”的输出量、电动机本身的性能参数和减速器的传动比来算出扭矩,公式如下: Mn2(t -1)=G earbox-Ratio 3(K a 3U2(t -1)-K b 3omega-d2(t -1)); Mn1(t -1)=G earbox-Ratio 3(K a 3U1(t -1)-K b 3omega-d1(t -1)); 图5为扭矩计算在Matlab/Simulink 下的仿真模型结构图. 4)线性移动计算模块:此模块利用AG V 的物理参数,重量、轮子半径、轮子和地面摩擦力和在3)中输出的扭矩计算AG V 的速度和加速度.计算公式为: Accel-veh (t )=(Mn2(t -1)+Mn1(t -1)-23Front-Wheel-Friction (t -1)3Wheel-Radius )/(Mass-veh 3Wheel-Radius ); Vel-veh (t )=Vel-veh (t -1)+Accel-veh (t -1)3tinc ; Disp-veh (t )=Vel-veh (t )3tinc +0.53Accel-veh (t-1)3tinc^2; 图6为AG V 线性移动在Matlab/Simulink 下的仿真结构图.图5 扭矩计算模块仿真结构图Fig.5 Diagram of torque calc simulation structure图6 线性移动模块仿真结构图Fig.6 Diagram of linear motion calc simulation2 仿真运行 仿真系统运行环境为操作系统Windows2000Serv 2er ,虚拟现实插件为Micros oft VRM L Viewer 2.0,仿真建模和科学计算软件为Matlab Release13(Matlab V6.5/Simulink V5.0),运行界面见图7. 为检验虚拟AG V 的运行情况,现将磁条的位置坐标建立数据库,输入模型中作为路径跟踪的基准,用图形同时输出磁条路径和虚拟AG V 跟踪磁条运行的轨迹,用以直观比较.图8为经过一个周期运转后的轨迹图,左图为磁条基准路径,右图为虚拟AG V 的运行轨迹.・14・ 2004年3月 葛为民,等:基于Matlab 和VR 技术的移动机器人建模及仿真图7 仿真运行界面Fig.7 I nterface ofsimulation(a)(b )图8 基准路径和跟踪路径的比较Fig.8 Comp arison of the stand ardp ath and tracking p ath3 结 论 从图8的(b )图中可以看出,虚拟AG V 模型的运动轨迹基本上与(a )图的磁条轨迹相吻合,证明AG V 建模算法准确,参数选择合理,可以按照此参数配置修改真实AG V 属性各项指标,达到最优轨迹跟踪控制. 总之,利用Matlab 在虚拟现实环境下构建AG V 虚拟模型,达到了以下设计目标: 1)完成了真实AG V 与虚拟AG V 的匹配,真实反映了AG V 的运动学和动力学特征,为对AG V 的遥操作奠定了实现基础; 2)通过在线修改虚拟AG V 参数,快速检验对AG V的控制策略和最优配置的影响,同时减少了修改真实样机时间的延迟,降低了修改配置真实样机的费用.如AG V 的载荷问题,速度改变问题,传动比改变问题等造成的控制稳定性. 3)基于虚拟现实的仿真平台,由于VRM L 文件的特殊性,利于在Internet 上的运行分布式控制,故本仿真平台为基于Internet 的AG V 的遥操作进行了有益的尝试.参 考 文 献:[1] Weimin G e ,Zuolian Cao ,Shangxian Peng.Web -based teler 2obotics system in virtual reality environment [A].Proceedings of the SPIE Intelligent R obots and C om puter Vision C on ference [C].US A :SPIE Oct ,2003.[2] Weimin G e ,Zuoliang Cao ,Shangxian Peng.A T elerobotic Sys 2tem Based on Virtual Reality T echnique [A ].Proceedings of Virtual Reality Application in Industry [C ].US A :SPIE ,Oct ,2003.[3] 赵新华,曹作良.可移动机器人的运动学模型与控制原理[J ].机器人,1994,16(4):215—218.[4] 王沫然.S imulink 4建模及动态仿真[M].北京:电子工业出版社,2002.・24・天 津 理 工 学 院 学 报 第20卷 第1期 。