当前位置:文档之家› 仿生鱼机器人设计说明书

仿生鱼机器人设计说明书

仿生鱼机器人设计说明书目录第一章绪论 (3)1.1目的及意义 (4)1.2研究现状 (4)1.3本文的主要工作 (4)第二章概述 (5)2.1 整体构思 (5)2.2 仿生依据 (5)第三章机械结构设计 (7)3.1机械设计思路及建模 (7)3.2创新点 (8)3.3 零件明细 (9)第四章仿真分析 (10)第五章电路设计 (12)第六章控制系统 (13)第七章总结 (17)7.1优势及创新点 (17)7.2主要关键技术 (17)7.3 应用前景与趋势 (18)7.4 不足与改进 (18)仿生鱼机器人设计说明书第一章绪论1.1目的及意义21世纪是海洋的世纪,占全球71%面积的海洋将是下一个世纪,也是未来人类赖以生存的资源海洋,对于人类的发展和社会的进步将起到至关重要的作用。

在民用上,海洋蕴藏着丰富的矿物资源、海洋生物资源和能源,是人类社会可持续发展的重要财富。

因此,对于海洋的开发和争夺成了很多发达国家的战略重点,而且愈演愈烈。

在各种海洋技术中,作为用在一般潜水技术不可能到达的深度或区域进行综合考察和研究并能完成多种作业使命的水下机器人使海洋开发进入了新时代。

随之“蓝色经济”越来越成为各沿海地区经济发展的“正能量”,大规模的开发探测和利于海洋资源,已经成为我们21 世纪要面对和必须解决的现实问题。

另外,军事方面对其需求也日益增加,为了适应这种需求,研究和开发潜水器和水下机器人成为了极佳的选择。

鱼类经过长期的自然选择,具备非凡的游动能力,近年来随着仿生技术的进步,人类纷纷模仿自然界中鱼类的运动方式和运动器官,即各种各样的水下机器人。

世界上第一台水下机器人“Poodle”诞生于1953 年。

近20 年来,水下机器人有了很大的发展,它们既可军用又可民用。

到目前为止,全世界大约共建造了6000 多台各种各样的水下机器。

水下机器人有广泛的应用空间,民用和军用均可,不仅可以代替潜水员在深水长时间工作,降低工作风险,提高工作效率,而且还可以检测水污染状况,监测鱼类生长状况,探测海底火山活动状况;在军事方面,可以用于跟踪敌人的船舰和潜艇,捕获地方军事信息,也可以降低敌人对我军的探测几率,甚至可以携带炸药至敌人军舰处,炸毁敌方舰艇的动力系统,摧毁敌方舰队。

此外,仿鱼形水下机器人还可以应用于海洋动物园。

仿鱼形水下机器人是一种集机械、智能控制与一体的高科技设备,在民用、军事、科学研究等领域体现出了广阔的应用前景和巨大的潜在价值。

1.2研究现状目前仿生机器鱼的驱动方式以传统的电机驱动方式为主,由于其易于控制、驱动力大等特点,现已实现了较好的游动性能。

目前国内外的仿鱼形机器人的发展以各高校及科研机构为主,已取得丰富的成果。

但目前国内和国外研究相比系统性和基础性较弱。

1.3本文的主要工作本文主要介绍本学期小组设计的一个基于舵机控制的仿生机器鱼,将从仿生依据、工作原理、运动特性、控制特点等方面详细说明小组工作成果。

第二章概述2.1整体构思本小组设计的是一个基于舵机控制的仿生机器鱼,将采用Arduino UNO R3控制三个舵机进行运动实现,进而实现仿生鱼在水中的直行、转弯、速度控制、避障等功能。

其具体机械结构、运动特性以及控制系统,以上内容将在下文详细说明。

2.2仿生依据鱼类行为学者的研究表明,大多数鱼类把身体当作推进器,身体左右摆动击水,利用其产生的反作用力使鱼体向前推进,基于这种推进原理,学者们提出了所谓的“波动推进理论[1]”的鱼类游动机理,该理论主要以鱼的脊椎曲线为研究对象,鱼体之所以能够前进,是因为脊椎曲线带动它所包络的流体向后喷出,产生推力使鱼向前,其游姿可以近似为正弦波。

设脊椎曲线包络的工作质质量为M1,躯体对地速度为VB,λ是波长,f 为摆动频率,工作质对地速度为VW,由于鱼体在水中的阻力与速度呈递增关系,故在启动瞬间,鱼体受到的阻力可以忽略不计,因此根据动量守恒定理有公式:M1×VW=M0×VB (1)通过动量守恒推出鱼类推进公式:VB=YfλY 是一个小于1 的系数,它表征了鱼类的几何特征、体重对速度的影响,称之为动力特征系数,波动推进假设是建立在对脊椎曲线包络的水的质量积分和动量定理之上。

鱼游动时使流体产生了分离,并且以漩涡的方式抛出尾部,漩涡的抛出速度和摆动频率一致,在一个周期内,尾部产生一对旋向相反的漩涡,推动鱼前进。

在对资料进行充分的研读和总结后,我们发现鱼类运动主要有以下几种方式:由此根据波动推进理论,利用舵机设计一种三关节仿生鱼,以实现仿生鱼的前进和自由转向。

对于鱼的运动来说,主要靠其优越的体型和鱼鳍来进行推动和灵活的运动。

对于各鱼鳍的作用,我们作了以下的总结:背鳍:用来保持鱼身体侧立,控制平衡。

尾鳍:用来推进与控制方向。

胸鳍:用来推进、控制、平衡、刹车。

腹鳍:用来维持平衡,辅助升降臀鳍:用来辅助控制平衡。

目前一般用于机器鱼外形设计的仿生对象有金枪鱼、梭子鱼、鲤鱼、鳗鱼。

这几种鱼或者具有极高的游动速度,或者具有优异的机动性能,或者具有绝佳的游动效率,它们都符合“波动推进理论”的运动模式,因而成为仿生鱼模仿的典范。

这些鱼类的外形呈现为流线形, 不仅从鱼头到鱼尾的水流运动平稳,而且水动力学阻力也很小,显示出这类外形具有良好的水动学性能。

因而,这类流线形鱼体成为机器鱼外形设计的最佳选择。

明确了生物各部分的功能作用以后,我们对仿生机器鱼的总体结构有了初步的构想,决定利用曲柄转动导杆机构来用一个舵机控制鱼的尾鳍运动,从而实现整个鱼的身体呈现三个关节,增强其灵活性,同时用两个舵机分别控制一个胸鳍,以控制其转向和速度。

第三章机械结构设计3.1 机械设计思路及建模在初步设想的基础上,我们对仿鱼机器人的内部架构进行了实体建模。

从实体模型中可以看出,我们的方案在多个方面和确定课题时相比发生了较大的改动。

在整体框架方面,身体前部与尾部的连接由弧形框架连接变成了金属杆的连接,更加贴近鱼的真实结构,也方便控制的实现。

同时,在经过研究讨论之后,改变使用带传动进行推进的想法,利用曲柄转动导杆机构来用一个舵机控制鱼的尾鳍运动,从而实现整个鱼的身体呈现三个关节,在可摆动部分可以两个关节运动不同,从而增强其灵活性。

在胸鳍方面,我们将胸鳍作为方向控制、深度控制的主要零件。

通过Arduino 控制板控制舵机的运动角度,带动有一定倾角的胸鳍按指定速度扇动,通过两胸鳍速度差异,来控制仿鱼形机器人的运动方向。

同时在其头部安装超声波测矩装置,给出理想的深度,在测出离水底的矩离后自主判断,控制舵机运动,带运动胸鳍改变机器人运动状态从而接近给定深度。

在外部包装方面,我们将使用三元乙丙橡胶材料进行密封,贴合此内部框架进行装配。

将外侧密封橡胶粘在环形原板上,前后两块用螺丝固定在鱼中间的板上,中间加密封垫圈,对内部结构及电子器件进行保护和可靠的防水,同时为整个机器人提供流线型结构利于运动。

3.2 创新点使用一个舵机控制两个鱼尾关节的运动,利用曲柄转动导杆机构,用直径6mm的不锈钢长杆进行连接,减少框架的使用,也能够将舵机数量减少。

在增加灵活性的同时,减轻重量。

改变大多数已有产品使用背鳍进行转向控制的思路,利用两个分别舵机控制的胸鳍来实现精准控制,使鱼形机器人运动协调,避免出现翻身、直立等非正常运动状态。

3.3零件明细第四章仿真分析在明确了仿鱼机器人的运动方式和机械结构后,我们对其关键零件进行了必要的强度校核仿真。

通过分析,我们知道,由于整体推动是通过尾部的摆动提供动力,因此尾部的材料强度非常重要,需要其在有力摆的同时不会发生大的变形或断裂。

因此,我们将鱼的尾部模拟成1平方分米的方形板,设其运动的平均速度为0.3m/s,尾部的材料为PBT塑料,通过软件对其压强和受力进行仿真分析,各项参数如下:Cd=Fd/(p*u^2A/2)Cd=2;P=Fd/A=Cd*p*u^2/2=90N/m^2Cd阻力系数A平板面积p水的密度u移动速度PBT塑料安全系数:1.5可见其在可承受范围内,并仍有较大裕量。

由于我们设计的独特性,是由一根金属杆作为连接件,中间以曲柄转动导杆机构相连接,以达到使用一个舵机控制实现两个关节在水中协调运动的目的。

因此对这根长杆进行必要的强度校核仿真分析。

定其材料为不锈钢,长度为0.3米,通过舵机输出的最大力在此处产生的作用参数及结果如下:不锈钢R=0.3mF=AP=0.01*90=0.9NT=RF=0.27Nm通过仿真分析可得出结论,所受载荷均在屈服范围之内,满足要求。

第五章电路设计在以上机械结构确定的基础上,基于电路中的核心部分Arduino UNO R3控制板和三个舵机,进行了电路设计。

电路截图如下:如图可见,电路图上方为三个舵机,正文为Arduino控制板。

舵机的电源正极线与Arduino控制板的电源相连共同接高电平,地线如是。

其中Arduino控制板的9,10,11号接口分别连接三个舵机的信号线,控制电机转速及转角;12,13号接口接出,连接超声传感器测距装置,测得深度与预期深度对比实现闭环控制。

第六章控制系统本仿鱼形机器人的控制系统主要由Arduino控制板、舵机、超声波传感系统构成。

输入期望的深度和运动姿态,由超声波传感设备进行测量和反馈,从而进行误差调节,接近预期设定姿态。

控制代码:#include <math.h>#include <stdio.h>#include <Servo.h>Servo leftservo;Servo rightservo;Servo behindservo; //弧度转速int depth; //鱼体离水底距离int exceptdepth; //预期鱼体离水底距离float RKP=160;float RKI=1.6;float RKD=0.05;float Rcons0=RKP+RKI+RKD;float Rcons1=-RKP-2*RKD;float Rcons2=RKD; //右轮PID参数float LKP=160;float LKI=1.6;float LKD=0.05;float Lcons0=LKP+LKI+LKD;float Lcons1=-LKP-2*LKD;float Lcons2=LKD; //左轮PID参数float Rerror;float Rerror_1=0;float Rerror_2=0;float Lerror;float Lerror_1=0;float Lerror_2=0; //左右轮的e=期待-反馈_n表示n阶float Ru;float Ru_1=0;float deltaRu;float Lu;float Lu_1=0;float deltaLu; //左右舵机u有关的参数int inputPin=13;int outputPin=12; //超声波测距输入输出口int i;int anglel;int angler; //左右鳍煽动角度void setup(){Serial.begin(9600);leftservo.attach(9);rightservo.attach(10);behindservo.attach(11);pinMode(inputPin,INPUT);pinMode(outputPin,OUTPUT);}int depthmeasure() //测量鱼体与水底距离{digitalWrite (outputPin,HIGH);Serial.println(outputPin);delay(20);digitalWrite (outputPin,LOW);Serial.println(outputPin);delay(20);}void loop(){leftservo.write(0);rightservo.write(0);behindservo.write(0);depth=depthmeasure(); //测深度Rerror=exceptdepth-depth;Lerror=exceptdepth-depth;deltaRu=Rcons0*Rerror+Rcons1*Rerror_1+Rcons2*Rerror_2; deltaLu=Lcons0*Lerror+Lcons1*Lerror_1+Lcons2*Lerror_2; Ru=Ru_1+deltaRu;Lu=Lu_1+deltaLu;anglel=int(Lu);angler=int(Ru);Rerror_2=Rerror_1;Rerror_1=Rerror;Ru_1=Ru;Lerror_2=Lerror_1;Lerror_1=Lerror;Lu_1=Lu;leftservo.write(anglel);rightservo.write(angler);behindservo.write(180);}第七章总结7.1优势及创新点小组在完成机械结构设计的基础上进行了实体建模、仿真分析、电路设计和控制系统的设计,并且完成了初步的运动、装配演示,形成了一个相对完整的仿生鱼机器人的设计过程。

相关主题