kaiyun官方注册
您所在的位置: 首页> 嵌入式技术> 设计应用> 基于舵机控制的仿生鱼设计
基于舵机控制的仿生鱼设计
来源:微型机与应用2011年第14期
卢亚平,宋天麟
(苏州大学 应用技术学院,江苏 苏州215325)
摘要:为实现仿生机器鱼的设计,分析鱼类游动的特点,基于舵机的工作原理,提出了自主避障的仿生鱼设计方案。根据鱼类推进理论,对仿生鱼进行了机械结构设计、软件设计。
Abstract:
Key words :

摘 要:为实现仿生机器鱼的设计,分析鱼类游动的特点,基于舵机的工作原理,提出了自主避障的仿生鱼设计方案。根据鱼类推进理论,对仿生鱼进行了机械结构设计、软件设计。
关健词:仿生机器鱼;舵机;自主避障

 仿生机器鱼的提出有着深刻的意义,它具有效率高、机动性好、噪音低、对环境扰动小等优点。仿生机器鱼可以作为一个载体,根据需要装配相应的硬件,可在水面环境检测、复杂环境中的水中作业、海底生物观测、军事侦察等方面发挥重大作用。当然,作为一个载体,必须完成基本的运动,那就是能够自动避障。
1 鱼类推进理论
鱼类行为学者的研究表明,大多数鱼类把身体当作推进器,身体左右摆动击水,利用其产生的反作用力使鱼体向前推进,基于这种推进原理,学者们提出了所谓的“波动推进理论[1]”的鱼类游动机理,该理论主要以鱼的脊椎曲线为研究对象,鱼体之所以能够前进,是因为脊椎曲线带动它所包络的流体向后喷出,产生推力使鱼向前,其游姿可以近似为正弦波,如图1所示。

设脊椎曲线包络的工作质质量为M1,躯体对地速度为VB,λ是波长,f为摆动频率,工作质对地速度为VW,由于鱼体在水中的阻力与速度呈递增关系,故在启动瞬间,鱼体受到的阻力可以忽略不计,因此根据动量守恒定理有公式(1)、(2):

Y是一个小于1的系数,它表征了鱼类的几何特征、体重对速度的影响,称之为动力特征系数,波动推进假设是建立在对脊椎曲线包络的水的质量积分和动量定理之上。鱼游动时使流体产生了分离,并且以漩涡的方式抛出尾部,漩涡的抛出速度和摆动频率一致,在一个周期内,尾部产生一对旋向相反的漩涡,推动鱼前进。由此根据波动推进理论,利用舵机设计一种三关节仿生鱼,以实现仿生鱼的前进和自由转向。
2 仿生鱼结构设计
目前一般用于机器鱼外形设计的仿生对象有金枪鱼、梭子鱼、鲤鱼、鳗鱼。这几种鱼或者具有极高的游动速度,或者具有优异的机动性能,或者具有绝佳的游动效率,它们都符合“波动推进理论”的运动模式,因而成为仿生鱼模仿的典范。这些鱼类的外形呈现为流线形,不仅从鱼头到鱼尾的水流运动平稳,而且水动力学阻力也很小,显示出这类外形具有良好的水动学性能。因而,这类流线形鱼体成为机器鱼外形设计的最佳选择[2]。
设计的仿生鱼的外形也是设计成流线形的鱼体。它由鱼头、鱼体、鱼尾鳍三部分组成,鱼体部分共有3个关节,每一个关节由一个伺服舵机控制,可以实现本段和前段的相对转角位移。
鱼头采用直径为120 mm×250 mm的塑料圆柱,考虑浮力平衡,为了保证材料浮动在水里,在普通车床上钻了直径为55 mm、孔深为100 mm的内孔,中心掏空以减轻重量。然后在加工中心平台上加工弧线部分,在电脑上用UG软件画出鱼头的弧线图形,并在两边掏孔,安装传感器,做为鱼的眼睛。
鱼体由3个舵机组成,舵机之间的连接采用L型架和U型架铝材,它的质地较轻,强度较高。L型架与U型架之间使用轴承连接,有利于减小各个舵机转轴所受的弯矩,使摩擦减小,转动灵活[3]。
尾鳍设计是用铅笔在塑料板上画出所需要的鱼尾形状,再经过抛光等工艺完成尾鳍部分的加工。通过数控机床加工出舵机与尾鳍的连接部分。整体效果如图2所示。

3 仿生鱼软件设计
为了满足设计要求,采用3个舵机设计了鱼的三种姿态:前进、右转弯、左转弯。用传感器的检测信号来控制鱼的姿态,当传感器没有接收到障碍物的信号时,3个动力元件(舵机)分别以不同的角度来回摆动,以实现完美的前进方式。一般靠近尾部舵机的摆动角度最大,其他逐渐减小。当检测到信号时,尾部舵机来回摆动,其他两个舵机在一个方向摆动一定角度后保持不变,以实现转弯。无线发送接收模块用来下达指令。整体电路图如图3所示。

标准的舵机有3条导线:电源线、地线和控制线, 电源线和地线用于提供舵机内部的直流电机和控制线路所需的能源,一般取5 V。控制线的输入是一个宽度可调的周期性方波脉冲信号,方波脉冲信号的周期为20 ms(即频率为50 Hz)。当方波的脉冲宽度改变时,舵机转轴的角度发生改变,角度变化与脉冲宽度的变化成正比[4]。舵机的输出轴转角与输入信号的脉冲宽度之间的关系可用图4来表示。

从上述舵机转角的控制方法可看出,舵机的控制信号实质是一个可变宽度的方波信号(PWM)。一般采用MCU作为控制器。目前采用单片机作为舵机控制器的方案比较多,现利用单片机提出另一种编程方法,利用T0\T1定时器中断来实现PWM。该方案将20 ms的周期信号分为两次定时中断来完成。
上述已知1.5 ms为中心位置,0.5 ms为-90°位置,2.5 ms为+90°位置,并且在此定义一个脉冲周期为20 ms。定时器T1定时20 ms,时间一到波形取反,T0定时器起到了脉宽调节功能,如图5所示。

根据舵机的转动角度可知PWM波形的波动范围,最低是在0.5 ms,最高是在2.5 ms,同时存储器最大为256 B,现定义最大的数字为250,则有公式(3):

定时器T1定时20 ms,定时器T0定时0.01 ms,在存储器R3单元中放入立即数50并与定时器T0中断次数相比较,当定时器T0定时发生50次后即与R3相等,产生脉宽为0.5 ms,即为最小脉宽;当在R3单元中放入立即数250并与定时器T0中断次数相比较,当定时器T0定时发生250次后即与R3相等,产生脉宽为2.5 ms,即为最大脉宽。
由此可知对存储器R3不断进行加1操作,方波的脉宽可以从0.5 ms变化到2.5 ms,然后对立即数进行减操作,方波的脉宽会减至0.5 ms,再进行不断的循环,产生脉宽在0.5 ms~2.5 ms不断变化的PWM信号。这样就能控制舵机在-90°~90°之间变化。由此,给出3个不同的存储器R3、R4、R5来控制3个舵机的转角,让3个存储器的数值模拟正弦变化,就能够实现本文的波动推进理论。
同时采用E18-D80NK漫反射式光电传感器作为鱼的左右眼睛,分别来判断障碍。当距离80 cm时就能检测到障碍物,此时让R3、R4转动一定的角度,并且尾部舵机R5往复摆动,就能实现仿生鱼的转向。因此舵机在PWM控制下,由脉冲宽度的调节可实现舵机的前进和转向,并可根据仿生鱼的不同的运动状态,来调用不同的子程序。主程序流程图如图6所示。

4 仿生鱼总调试和总结
在完成仿生鱼装配的基础上对仿生鱼运动进行调试。将鱼体、控制电路板、供电电源整合在一起,并且在其表面裹上防水胶布,保证与水隔离。通过示波器观察波形,调试过程中首先做到仿生鱼运动轨迹基本符合要求,接下来进行微调。由于各个舵机绝对位置都有偏差,并且软件定时不够准确,因此就要根据实际情况更改脉冲值,直至仿生鱼运动轨迹准确。
下水实验时,实验的第一点是静态平衡实验。由于鱼体各个部位选用的材料不同,并受装配电路板、舵机、电池等元件的影响,鱼体的重心不易确定,因此把鱼体放入水中,观察后在适当部位进行配重,直至鱼体静止时在水中保持平衡。第二点就是动态平衡实验,即鱼体在运动时保持运动的稳定性。动态平衡首先受静态平衡的影响,因此在保证静态平衡的条件下尽量满足动态平衡。另一调节动态平衡就是通过程序控制,包括鱼体运动的频率、幅度。实物效果图如图7所示。

通过反复进行调整装配与调试,基本实现了仿生鱼在水中的运动状态。但目前还没有解决仿生鱼在游动过程中的加减速的问题,实际上根据鱼类推进公式已经制定出了加减速方案。本项目是大学生创新项目,也是教师科研项目,该项目根据鱼类的游动姿态,利用机电控制等对水下载体和作业装备提供了新的设计思路。
参考文献
[1] 梁建宏,王田苗,魏洪兴.水下仿生机器鱼的研究进展I—鱼类推进机理[J].机器人ROBOT,2002,24(2):107-111.
[2] 梁建宏,王田苗,魏宏兴.仿生机器鱼技术研究进展及关键问题探讨[J].机器人技术与应用,2003(3):14-19.
[3] 宋天麟,黄烈岩.仿生机器与系统设计研究[J].机械制造与自动化,2005,34(5):82-83,87.
[4] 骆涵秀,李世伦,朱捷.机电控制[M].杭州:浙江大学出 版社,1994:31-63.

此内容为AET网站原创,未经授权禁止转载。
Baidu
map