仿生机器鱼的尾部运动分析与控制
2014-12-05王卫兵翟庆钟晁贯良
王 坤,王卫兵,翟庆钟,晁贯良
(石河子大学机械电器工程学院,新疆石河子 832000)
鱼类经过了上亿年的进化,在水下世界形成了非凡的游动能力:恒定速度快速游动、灵活转弯、突然加速等,且具有高速机动性、低能耗等特点.鱼类的这些优点是当今人类的水下推进器无法比拟的,通过对鱼类的研究,将鱼类的一些优点移植到水下推进器上,可以使水下推进器在速度和稳定性等方面有很大的提高.
1970年,Lighthill[1]将空气动力学的二维机翼理论运用于尾鳍推进的研究,提出了用于鳗科推进模式的“细长体理论”;1971 年,Lighthill[2]提出了“大摆幅细长体理论”;1977 年,Chopra 和 Kambe[3]又提出了一种可用于大摆幅、月牙形尾鳍推进的“二维抗力理论”;1994年,美国麻省理工学院(MIT)[4]成功研发了8关节的仿生金枪鱼RoBoTuna,开创了仿生机器鱼的先河,随后各个国家的研究人员开始大量投入到了机器鱼的研发当中,而仿生机器鱼在水下游动躲避障碍物是一个关键的问题.Wang等[5]建立基于网络模型的路径规划算法,通过网格对环境进行描述,并找出安全路径.Emesto等[6]建立基于人工势场法的避障算法,有效地对机器人进行了导航.金久才[7]通过建立环境模型,利用分层遗传算法对水下机器人进行了路径规划.Jun等[8]利用神经网路强大学习能力,实现了移动机器人的动态避障.喻俊志等[9]利用视觉算法制定了仿生机器鱼的路径规划.这些研究中都制定了安全路径,但都未对仿生鱼躲避障碍物后尾部与障碍物之间的关系进行详细的分析与处理.
论文以4关节仿生机器鱼为例,研究仿生机器鱼在避障转弯时尾部与障碍物之间的碰撞问题.给出了仿生鱼的整体机构设计和尾部机构设计,对仿生机器鱼尾部运动状态进行了分析,在此基础上分析了仿生机器鱼在躲避障碍物时尾部摆动轨迹与障碍物之间的关系,并制定了躲避障碍物时尾部的摆动规则,保证了仿生机器鱼在转弯避障时尾部与障碍物之间无碰撞.
1 仿生机器鱼的整体设计与尾部设计
1.1 仿生机器鱼的整体设计
仿生机器鱼由5个基本部分组成:控制部分(ARM9控制芯片)、支撑部分(鱼骨架)、通讯部分(各类传感器)、驱动部分(舵机)和附件(防水鱼皮等).
整个仿生鱼由鱼头、鱼身和鱼尾构成.鱼头部分由厚度为6 mm的刚性玻璃钢制成.仿生机器鱼的外形设计成光滑的曲面,这样可以实现在水下有良好的减阻性.为了能够有良好的密封,把鱼设计成上下两个壳体.头部设计了一对胸鳍、一个背鳍、一个腹鳍,分别由相应的舵机驱动.舵机和鱼鳍通过密封套件连接在一起.鱼鳍的材料是聚氨酯板.聚氨酯板能够很好地满足鱼鳍刚性和韧性兼顾的特性.密封套件的作用是当壳体内产生动力时水不会泄露到壳体内[10].
1.2 仿生机器鱼的关节与尾部设计
仿生机器鱼的尾部是主要的推进机构,采用新月形支撑板把尾部连接到头部壳体上,这样构成了一个有机的整体.关节内直接与舵机相连接,关节外通过码盘与舵机相连接,关节外下部通过轴承与关节内部进行连接,这样舵机就可以驱动各个关节进行摆动.鱼骨架模仿鱼体从头部到尾部依次减小,鱼皮套在鱼骨架外层,保证鱼皮不会因水的压力而变形[11].
2 仿生机器鱼尾部运动学分析
仿生机器鱼在水下运动时,尾部各个关节摆动的角度和频率对仿生鱼在水下游动、避障都有很大的关系.该节通过Adams软件分析仿生机器鱼在运动时,尾部各个关节摆动的角度和频率对速度、位移、加速度的影响,确定机器鱼尾部运动的最佳参数.
首先把仿生机器鱼的三维模型导入Adams软件中并添加各种运动、副驱动,然后给尾部各个关节添加驱动函数.如表1所示.
表1 仿生机器鱼驱动参数Tab.1 The biomimetic robotic fish drive parameters
通过表1的参数设置,点击开始仿真按钮Simulation,终止时间End time设置为4,仿真步数Steps设置为100.保持其他参数不变,通过改变仿生机器鱼第一个关节的角度得到的结果如图1(a)所示,改变第二关节角度得到的结果如图1(b)所示,改变第三关节角度得到的结果如图1(c)所示.
图1 位移在各实验中的曲线Fig.1 Displacement curve in each experiment
为了使机器鱼游动更像真实的鱼类,设置各个关节的角度为:关节4<关节3<关节2<关节1.从图像曲线中得出仿生机器鱼的尾部各个关节角度摆动幅度越大,机器鱼的速度越快.并且由图1(c)可知仿生机器鱼的速度在一定范围内,会随着摆动频率的增加而增加,当频率达到某个值时速度达到最大,而后会随着频率的增加而减小,通过当前的仿真得出频率为1.2 Hz和1.25 Hz时速度达到最大.仿生鱼在水下探测到障碍物时,通过改变尾部摆动频率和幅度改变鱼的游动速度.
3 仿生机器鱼避障时尾部摆动与障碍物之间的关系及规则的制定
3.1 仿生机器鱼避障尾部与障碍物之间的关系
机器鱼在头部安装有多种红外测距传感器可以用来探测障碍物,探测到障碍物时进行转弯避障,这时尾部容易与障碍物发生碰撞.以头尾为x轴、背腹为y轴建立游动的轨迹如图2所示,尾部摆动角度关系如图3所示.
图2 游动轨迹Fig.2 Swimming trajectory
图3 尾部摆动角度定义Fig.3 The tail swing angle definition
假设鱼体长LB、障碍物为点A,从图中可以看出尾鳍摆动轴位于x=LB,鱼尾最大摆动振幅为H,根据尾部摆动方程得出(其中LB为鱼体长)
尾鳍在t时刻的摆动方程表示为
尾鳍绕自身摆动轴摆动方程表示为
其中:θmax=φ-αmax,θ为角度摆动幅值;φ为y(t)=0时,y的切线与x轴之间的夹角;αmax为y(t)=0时尾鳍中心线与尾鳍摆动轴轨迹切线的夹角.尾鳍后缘最大摆幅可表示为
其中:d为尾鳍摆动轴到后缘的距离,tp为平动最大幅时的时刻,θ(tp)为tp时刻尾鳍旋转角度.这时尾鳍在任意时刻的摆动角度为
由图3可知,鱼尾在躲避障碍物时与障碍物之间必然存在一个切线位置,当尾部与切点位置还有10 cm时设为临界点.
3.2 仿生机器鱼躲避障碍物尾部与障碍物之间的规则设定
把机器鱼的游动环境分为整体坐标和局部坐标,机器鱼尾部摆动的各个点的位置用局部坐标来表示,障碍物用整体坐标来表示[12].仿生鱼在游动时可以通过红外测距传感器探测到障碍物的位置得出坐标点.论文用的红外测距传感器为GP2YOA21YK型号红外测距传感器,测量的范围为10~100 cm.通过尾鳍摆动方程可以计算出尾部摆动时最大摆动振幅,通过式(5)可以得出尾鳍在任意时刻的摆动角度,通过仿真可以得出在避障时各个点的曲率,如表2所示.
表2 曲率Tab.2 Curvature
通过曲率可以得出曲率半径,得出最大振幅点的曲率半径,以鱼体中心为圆心以最大曲率半径为半径创建一个半圆形安全区域,当仿生鱼在转弯时通过尾鳍摆动方程、尾部角度方程和障碍物的位置相结合,可得出尾鳍是否能和障碍物相碰.尾鳍和障碍物达到临界点时(障碍物与尾部距离为10 cm时),就发出警报改变尾鳍摆动角度,这样可以始终保持尾部在安全区域内摆动,避免了与障碍物接触.
4 实验验证
根据制定的规则进行了两组实验,第一组为不设安全区域,第二组设置安全区域.实验场景为一个长方形水池,障碍物为长方形漂浮在水面的小木块.
图4为没设定规则前游动的事物图,图5为游动路径图.机器鱼探测到前方有障碍物,并测出障碍物距离后转弯避障,头部躲开了障碍物,但尾部与障碍物有明显的碰撞,并将漂浮的小木块拍打到一边,未发出任何警报.
图4 规则前游动图Fig.4 Swimming before rules
图5 规则前路径图Fig.5 Path graph before rules
图6为设定规则后的游动实物图,图7为游动路径图.机器鱼探测到前方有障碍物,快速转弯避开障碍物,在头部避开过后又放慢速度使尾部与障碍物没有接触,当尾部与障碍物达到临界位置时发出警报,使尾部摆动角度发生变化,保证了与障碍物之间没有接触.
图6 规则后实物图Fig.6 The real figure after rules
图7 规则后路径图Fig.7 Roadmap after rules
5 结束语
自然界中鱼类在转弯避障时尾部与障碍物之间无碰撞,仿生机器鱼在水中游动时尾部经常在避障时与障碍物之间发生碰撞.论文是通过仿生机器鱼的尾部运动学分析了仿生机器鱼在躲避障碍物时尾部与障碍物之间的关系,通过制定的规则保证了仿生机器鱼在转弯避障时与障碍物不发生碰撞,并用仿真实验验证了其有效性.
[1]Lighthill M.Aquatic animal propulsion of high hydromechanical efficiency[J].Journal of Fluids Mechanies,1970,44(1):265-301.
[2]Lighthill M.Large-amplitude elongated-body theory of fish locomotion[J].Proc R Soc London,1971,453(1):1763-1770.
[3]Chopra M,Kambe T.Hydromechanics of lunate-tail swimming propulsion,Part2[J].Journal of Fluids Mechanics,1977,79(1):49-69.
[4]Triantafyllou M S,Triantafyllou G S.An efficient swimming machine[J].Scientific of American,1995,272(3):40-46.
[5]Wang N,Chen P.Path planning algorithm of level set based on grid modeling[C]∥2010 International Conference on Computer Design and Appliations,2010,32(5):508-510.
[6]Ernesto P L,Eliana P L.Obstacle avoidance strategy based on adaptive potential fields generated by an electronic stick[J].Intelligent Robots and Systems,2005,28(12):2626-2631.
[7]金久才.无人水下自主航行器(AUV)避碰研究[D].呼和浩特:内蒙古大学物理科学与技术学院,2008.
[8]Jun F Q,Zhan J H,Xiao G R.Application of reinforcement learning based on neural network to dynamic obstacle avoidance[C]∥Proceedings of the 2008 IEEE International Conference on Information and Automation,2008:75-81.
[9]喻俊志,陈尔奎,王硕,等.基于颜色信息的多机器鱼并行视觉跟踪算法[J].中国科学院研究生院学报,2003,20(4):433-440.
[10]Tan M,Wang S,Cao Z Q.Multi-robot systems[M].Beijing:Tsinghua University Press,2005.
[11]周超,曹志强,王硕,等.仿鲹科机器鱼的倒退游动控制[J].自动化学报,2008,34(8):1024-1027.
[12]关红玲.用于避障研究的微型仿生机器鱼三维仿真系统[D].哈尔滨:哈尔滨工程大学自动化学院,2010.