基于舵机控制的仿生鱼设计
ms,同时存储器最大为256 B,现定义最大的数字为250,则有公式(3): 4 仿生鱼总调试和总结 通过反复进行调整装配与调试,基本实现了仿生鱼在水中的运动状态。但目前还没有解决仿生鱼在游动过程中的加减速的问题,实际上根据鱼类推进公式已经制定出了加减速方案。本项目是大学生创新项目,也是教师科研项目,该项目根据鱼类的游动姿态,利用机电控制等对水下载体和作业装备提供了新的设计思路。
定时器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所示。
在完成仿生鱼装配的基础上对仿生鱼运动进行调试。将鱼体、控制电路板、供电电源整合在一起,并且在其表面裹上防水胶布,保证与水隔离。通过示波器观察波形,调试过程中首先做到仿生鱼运动轨迹基本符合要求,接下来进行微调。由于各个舵机绝对位置都有偏差,并且软件定时不够准确,因此就要根据实际情况更改脉冲值,直至仿生鱼运动轨迹准确。
下水实验时,实验的第一点是静态平衡实验。由于鱼体各个部位选用的材料不同,并受装配电路板、舵机、电池等元件的影响,鱼体的重心不易确定,因此把鱼体放入水中,观察后在适当部位进行配重,直至鱼体静止时在水中保持平衡。第二点就是动态平衡实验,即鱼体在运动时保持运动的稳定性。动态平衡首先受静态平衡的影响,因此在保证静态平衡的条件下尽量满足动态平衡。另一调节动态平衡就是通过程序控制,包括鱼体运动的频率、幅度。实物效果图如图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.
- 基于1553B总线的航天大功率电动舵机控制器设计(12-21)
- AT89C2051多路舵机控制电路(11-22)
- 基于MSP430的舵机控制系统设计(11-11)
- 基于单片机的舵机控制(01-14)
- 利用MCS-51单片机PWM信号进行舵机控制(12-30)
- 基于PIC18F452单片机的仿生机器鱼的舵机控制(11-24)