数据手套遥控机械手开发_第1页
数据手套遥控机械手开发_第2页
数据手套遥控机械手开发_第3页
数据手套遥控机械手开发_第4页
数据手套遥控机械手开发_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、鲁东大学本科毕业设计目 录1. 绪论21.1 引言21.2 课题研究内容和意义32. 数据手套遥控机械手的总体设计32.1 数据手套遥控机械手的设计思路 .32.2 总体介绍与端口资源分配.33. 数据手套设计.4 3.1 数据手套原理43.2 主机芯片选择.53.3 flex 2.2弯曲传感器模块选择.63.4 FLX-01-M电阻选择.64. 欠驱动仿生机械手设计74.1 仿生机械手结构设计.74.2 机械结构杆件设计.84.3 舵机的选型及安装.95. 数据手套遥控机械手的软件设计.10 5.1 舵机的应用.105.1.1 舵机的构造.105.1.2 舵机的控制方法.11 5.2 传感器

2、数据采集与舵机控制的程序设计.126. 实验验证.157. 总结与展望.18参考文献.18致谢20数据手套遥控机械手开发石善革(交通学院 机械设计制造及其自动化专业2012级 机械本1204班 20122815613)摘要:为了实现数据手套与仿生机械手的实时控制,本设计利用弯曲传感器开发一款数据手套,利用舵机制作一个多关节机械手模型。通过使用Arduino及运用相应的软件对所设计的运动角度进行编程,并下达命令来控制舵机,解决了数据手套对仿生机械手的运动的实时控制。通过最终实验验证,完全达到预期的目标,可以完美运行。关键词:数据手套;机械手;Arduino;舵机;弯曲传感器 Data glove

3、 remote manipulator developmentShi Shange(School of Transportation , mechanical engineering and automation,jixieben2012 Grade1204, 20122815613)Abstract: In order to realize the real-time control of the data glove and the bionic robot, this design uses the curved sensor to develop a data glove. Throu

4、gh the use of Arduino and the use of the corresponding software for the design of the angle of motion programming, and issued commands to control the steering gear, to solve the data gloves on the bionic robot movement of real-time control. Through the final experimental verification, fully achieve

5、the desired goal, you can run the perfect. Key Words: data glove; manipulator; Arduino; steering gear; bending sensor1. 绪论1.1 引言“穿戴式智能设备”是生活平时穿着的智能操作方式和程式的规划和开辟能够满足的可穿戴式的抉择,是一个通用术语所有设施的代称,能够穿着,好比眼镜、手套、手表、服饰及鞋等。可穿着式技术在国内外计算机设计界和工厂设计界都可以说一直是商家和大众比较注意的话题,反而因为其穿着设施的人造本钱高,而且此中的程式技巧较为困难攻克,大部干系设施只是为了在概念上停留

6、在物理范围的无独特应用,然而这种思维未能做成实物,制造出产品为消费者所使用。伴随着人们生活水平的提高和生活质量的改善和网络的大量使用、高品质低能耗芯片技术的发展,推出了一批利好音讯的传出,对可穿戴式设施的一部分已经逐步从概念化走向商用化趋向的概念,逐渐走进公众的视野,不绝时时推出他本人公司的非旧式的可穿戴式设备,谷歌、摩托罗拉等诸多科技公司也都在不久之前开始加入并在这个全新的领域深入探索和开始研发最新的科技设备。图1 未来发展图2 智能手表 图3 智能眼镜图4 数据手套在国际上,有一名叫布莱恩塞拉(Bryan Cera),他是一名出生在密尔沃基的程序编写员,前不久,听说过一款名叫Glove O

7、ne手机,这款手机的创作可以说颇具新意,与众不同,它很神奇,他就像一个手套一样,拿过来可以带到手上。它的表面形状很是独特,就像钢铁侠的一个手指一样,具有钢铁班的形状,你可以想象,他的开关被放置在手指环节内侧,然而他又把手置了一个“六”的表面形状,紧接着他通过拇指上的一个听筒,小指做麦克分,便可以实现你想要的功能,比如打电话,聊天。1.2 课题研究内容和意义本设计的最终目的是设计一款数据手套遥控机械手,数据智能手套是一种模拟人手的硬件模型,通过数据手套的数据上传,在虚拟世界形成一个接近真实的图像,模仿手套的各种动作,通过使用各种软件编程,可以在虚拟场景中抓取对象,打开、移动和旋转运动,还可以使用

8、多模式。它作为一种控制工具,用于场景漫游,游戏家居。当我们科学家设计生产出的数据手套,也许在他日能够替交互式虚拟现实系统供应1个闻所未闻的举措,此刻产物竟然能够接收来自于手指曲折、数据上传和操纵磁传感器来无误定位在三维空间中的镜头。这种组合的数据手套被称为“真正的手套”,我们所说的“真正的手套”可以通过手指弯曲试验,并且现在该设备通过了空间定位试验,能够替使用者提出并且可以利用的1次特殊确切的不拘束的三维互动的手段。 2. 数据手套遥控机械手的总体设计2.1 数据手套遥控机械手的设计思路开始,由于预测到数据手套的方便携带型和可穿戴性,所以,需要本设计将采用一块芯片,同时承担弯曲传感器的数据的采

9、集和对舵机的命令控制。arduino芯片主要实现数据的传输,实现传感器数据的采集。此数据手套遥控机械手,考虑到机械原理,通过使用机械设计、底部控制系统、机电一体化设计,由4个弯曲传感器组成的数据手套,弯曲传感器的组成包括柔性电路板、力传感器、弹性封装材料,经过杜邦线联结到信号接收电路;实现机械手张开和抓紧的各种动作。将理论和实践联系起来,可以运用本机械手对设想的手进行模拟,实时的实现手的各种动作,最大限度的接近真实。2.2 总体介绍与端口资源分配在决定了使用数据手套遥控机械手开发主机的“大脑”为arduino模块后,目的是实现机械手段的张开、抓取、移动,分别选取了flex 2.2弯曲传感器,舵

10、机HS-485HB,FLX-01-M电阻。Arduino模块完成对传感器数据的采集后,通过串口将数据发送给主机。对于arduino 模块的资源分配如图5所示:Arduino端口资源分配示意图A15VGNDA010k舵 机弯曲传感器图5 arduino端口资源分配表3. 数据手套设计3.1 数据手套原理本数据手套遥控机械手的设计最终将呈现的功能包括:(1)将人手姿势信号做实时传达,使机械手最大限度的接近真实。(2)体验者通过数据手套完成物体的信息交换,增强了互动性和沉浸感。(3)可以给交互式虚拟现实系统呈现了1个全新的使用方案,使体验者接触到了1种方便的、便利直接大人机交互方式。数据手套设计示意

11、图如图6所示。GND5v主机芯片10k弯曲传感器主机图6 数据手套设计示意图3.2 主机芯片选择主机的关键任务是驱动传感器搜集信号,而且传感器信号传达到主机,主机接收信号并对信号进行处理,将对应的命令下达到各个舵机。所以主机并不要求非常巨多的作用。经过反复对比了很多芯片后,这个作品最后确定选择Arduino模块。在Arduino模块上有很多的接口,可以通过它使传感器和主板完成信号的传输,来察觉四周的状态,而且可以使用接口操作电机、舵机、传感器和其他设施,完成对于四周状态的反馈。Arduino模块的最吸引人的独特之处便是运用便利圆滑,使用起来很快就能熟悉它的性能。Auduino 模块上共有十四个

12、数字IO口,六个模拟IO口,能够便利省事迅速的完成关于数字量和模拟量的收集。Arduino模块程序的编写窗口十分干脆,能扩展性十分多。由于arduino模块上有丰富的方便真实的函数接口,于是,你简单的编写简易的几行代码就能够完成丰富的性能。下图为arduino实物图和编程界面图。图7 arduino模块图8 Arduino编程界面3.3 flex 2.2弯曲传感器模块选择小载荷的测量(不到5吨),由直接变形的弹性体材料是不适合于形状的弹性体更适合于弯曲梁的数字显示的几个弯曲弹性体,小的物理变形的弹性负载足够大。其主要的特点是:(1)可以选择信号输出模式(模拟量或者TTL电平)(2)TTL输出低

13、电平有效。 (3)模拟量输出,用于显示浓度。(4)这是一款弯曲度传感器,2.2''长,曾经用于任天堂的一款电子手套。(5)当传感器的金属面向外弯曲时,该传感器的电阻值会发生变化,从而可以检测到弯曲度。图9 flex 2.2弯曲传感器3.4 FLX-01-M电阻选择电阻器(电阻)在平时生活中常见的直接电阻是一个电流限定元件,电阻在我们所设计的线路中,电阻值是确定的,经常是双针,它是通过由电流大小限定它乃至分支。其的主要特点有:(1)电阻器限流功能类似于大口径管道中的小直径管,两者之间的限流作用。(2)该电阻器的体积偏小、重量较轻、易于安装等好处,决定了该类电阻器会大范围的应用在各

14、种产品设计中。图10 FLX-01-M电阻4. 欠驱动仿生机械手设计机械设计应依照下面3个大纲:(1) 运动性好,轻便,外感设计漂亮;(2) 整个结构可拉起一定的重量;(3) 易于加工、安装、拆除,原料的价格较低;考虑到机械手要完成张开、抓紧等动作需求,每个手指上设有1个自由度,每个舵机有一个自由度,故本设计设置了4个舵机驱动,以完成复杂动作。为了达到机械手的抗拉等功能的要求,在本设计中,选择厚度为2mm硬质铝材作材质。但是考虑到舵机的所能承受负荷的限度最大有限,于是在制成产品手指和关节的时候。4.1 仿生机械手结构设计要开发出和真手作用相近的智能灵活手,而灵巧轻便、多自由度将是机械手的必要条

15、件,顾及我们所涉及灵活手指、手掌运动范围比较狭小,此刻又需要减少控制方面的难度系数,而选择欠驱动方式无疑将是未来的1种发展走向。当我们设计还处于早期时,根据机械原理、机械设计,机械方面结构的设计一共计划了3中方案, 我们考虑到3种方法不同的优缺点以及毕业设计的可实现性,故选择使用第二种方案,腱绳型手指的设计可以满足本设计的使用要求。 设计方案:腱绳型手指:它这种主要包括3个手指节,我们所设计的方案是:腱绳通过将自己的一头与远指节连接,穿过中指节和近指节内的腱槽后,而舵机与腱绳的另一端相连接。因为腱绳的运动途径与各关节轴的轴心不在一个直线上,所以腱绳的拉紧力可以提供使每个指节旋转的力矩,然后才可

16、以使每个指节都在旋转的方式中腱绳都是在拉紧形式下,和当腱绳一旦没有了拉紧力而松懈时,能够使手指恢复到最初的伸直样子。假设我们在3个关节轴处设计所使用的弹簧刚度不是完全相同,当舵机发生扭转带动腱绳从而导致手指发生弯曲时,每个指节的扭转顺序就会不同,进而能够导致手指完成设计的扭转角度。为了可以掌握指节的扭转角度,我们将会在关节轴处设置有旋转电位器,在手指关节扭转使指节与指节连接的位置放置一个有限装置。腱绳型欠驱动结构手指设计时,要确定腱绳张紧力对对应的关节轴的扭转力臂大小相匹配,太小或者不存在全部会使手指没办法正常扭转。 图11 腱绳手指原理图4.2 机械结构杆件设计为了更好地加工和装配实体各部分

17、构件,用UG事先画好三维图纸,以便以后尺寸的计算与测量。 图12 UG建模 图13 UG建模 为了方便安装,舵机支撑架都统一设计成一种类型,同时也减少了画UG三维图纸的工作量,其结构如图所示。所以经过改进后,把实体装配在一起。 图14 手指关节实体结构4.3 舵机的选型及安装在选择舵机前,熟悉它的功能和固定的方案是不可缺少的。如今生活市场上售卖的大部分模型舵机,都是采用的比例式的方式,常见的类别可以通常分为一般型、超小型,威力型等几种。在本设计中,我们使用的舵机是5V直流电压,他所在的脉冲周期伺服一般是在20ms,当舵机在0.5ms-2.5ms界限对应的脉冲宽度,更换转向,角的大小从0度至18

18、0度,于是每1ms转变的角更换9度的价值。脉冲宽度与转向角的大小呈线性关系。对于符合模仿真实手的机械手的舵机的条件,要求舵机必须满足几何体积小、整体重量小、扭转力度较大的规格参数。从舵机的使用说明书上,可发现,本设计最终决定选用HeticHS-485HB型舵机作为关节驱动元件,其技术参数见表5-1。表5-1 舵机HitecHS-485HB技术参数马达类型轴承类型工作电压(V)无负载速度(sec/60°)(4.8V/6.0V)扭力(kg·cm)(4.8V/6.0V)结构尺寸(mm)重量(g)3对极顶部滚珠轴承4.8/60.22/0.184.8/6.039.8 x 19.8 x

19、 3845普通的舵机里面的线路和齿轮等部分件,这些零件全部特别灵巧的,我们很难操作和制成成品,大部分使用成品舵机。固定的办法关键分为三大类:(1)可以把胶涂抹在材板上,舵机可以粘在其上面。不过希望粘接水平比较好,而且无法对舵机进行更新,这种方法只能适合于少部分简易模型。(2)将舵机的两个支出部分的固定孔,选择合适的螺丝和螺母进行安装。我们所选择的方案的特点就是替换方便。 (3)选择合适的限制片及减震片安装。关于内置大容量内燃机的模型,方便降低震荡对舵机的伤害,大部分沿用此方案。舵机的固定地方能够最大可能的接近模型的中心环节。当满足要求的时候,舵机和收到能够最大可能利用不同的电源。当舵机提供的电

20、源电压存在不能够达到要求时,要随时替换,来避免舵机控制失去效用而发生空中停机。舵机输出盘具有着不一样的角的大小,要最大可能的利用力臂较为大的,这样的设计能够降低舵机载荷。输出盘和舵机面,应该选择合适的连杆或者钢丝衔接,前者使用结果较好。5. 数据手套遥控机械手的软件设计5.1 舵机的应用5.1.1 舵机的构造舵机主要是由外壳、电路板、无电机、齿轮和核心位置检测器,位置检测器是一个可变电阻,当方向旋转阻力值会发生变化,通过检测伺服电动机的转角的电阻值一般会在绕组铜线杆转子被罚款,当通过线圈的电流会产生磁场,拒绝和转子磁铁的周围,然后旋转力,根据物理学的原理,惯性的对象是质量成正比,所以旋转更大的

21、物体,所需的力更大的舵机速度快,功耗小,所以细铜丝绕成薄霍尔哎哟圆筒,空心转子5针重量轻,装有磁铁的缸,这不是核心的电机。 图15 舵机HS-485HB的尺寸参数及结构5.1.2 舵机的控制方法一个符合规定准则的舵机只有三条线路,这三条是:电源线、地线、控制线,如图7所示。 图16 标准舵机 图17 舵机输出转角与输入信号脉冲宽度的关系 在本设计中,5V直流电压,脉冲周期伺服是20ms,在0.5ms-2.5ms范围对应的脉冲宽度,改变转向角度为0度至180度,即每1ms变化的角度改变9度的价值。脉冲宽度与旋转角度呈线性关系。直流电动机的电源线和接地和伺服控制电路的内部能量需要。所使用的电压需要

22、46V,一般我们取5V。首先考虑到的电源,舵机的使用,需要足够的功率来供应舵机的使用舵机,控制信号输入线是通过调节信号周期方波脉冲信号为20ms(频率:50Hz),信号的输入将生成1个周期性的方波脉冲宽度,当通过信号线控制的方波脉冲宽度发生变化时,转向轴角的大小的也随之发生改变,与脉冲宽度的角的大小改变呈一定的线性变化。市场上某种类型的舵机的输出轴转角与输入信号的脉冲宽度所代表的一个信号传输的表示方式如图8所示。舵机的电源引线:电源引线有三条,舵机三条线中黄色的线是控制线,接到控制芯片上;红色的线是舵机工作电源线,一般工作电源是5V;黑色的线是地线。如图14所示。图18 舵机电源引线5.2 传

23、感器数据采集及舵机控制的程序设计主机的关键作用是完成关于信号的收集和发出。最开头思索关于传感器信号的收集,不同的传感器它的规律和操作办法是区别的,flex 2.2弯曲传感器也是一款模拟传感器。下面简要介绍一下数据采集的程序。弯曲传感器flex2.2”的信号收集程序为:弯曲传感器flex2.2”的驱动函数比较庞大,在接收信号前要求根据章程的方法书写高低电平。具体代码如下:#include <Servo.h>Servo servo1; / 定义舵机1Servo servo2; / 定义舵机2Servo servo3; / 定义舵机3Servo servo4; / 定义舵机4int i=

24、0;int pos1=90,pos2=90,pos3=90,pos4=90;/舵机初始角度int finger1,finger2,finger3,finger4;/定义手指的四个传感器void setup()/定义 Serial.begin(9600);/定义波特率为9600 servo1.attach(5); /定义舵机控制口 servo2.attach(10);/定义舵机控制口 servo3.attach(3); /定义舵机控制口 servo4.attach(9); /定义舵机控制口void loop() /主程序 chushi();/舵机初始化 delay(100);/延时100ms f

25、inger1=analogRead(A5); /定义弯曲传感器控制口 finger2=analogRead(A4); /定义弯曲传感器控制口 finger3=analogRead(A3); /定义弯曲传感器控制口 finger4=analogRead(A2); /定义弯曲传感器控制口 Serial.print(finger1); /定义弯曲传感器的输出 Serial.print(""); Serial.print(finger2); /定义弯曲传感器的输出 Serial.print(""); Serial.print(finger3); /定义弯曲传感器

26、的输出 Serial.print(""); Serial.print(finger4); /定义弯曲传感器的输出 delay(400);/延时400ms if(finger1>=280) /传感器符合的条件 pos1=90; servo1.write(pos1); delay(10); else if(finger1>=240&&finger1<280) pos1=45; servo1.write(pos1); delay(10); else if(finger1>=100&&finger1<240) pos1=

27、0; servo1.write(pos1); delay(10); if(finger2>=280) pos2=90; servo2.write(pos2); delay(10); else if(finger2>=240&&finger2<280) pos2=45; servo2.write(pos2); delay(10); else if(finger2>=100&&finger2<240) pos2=0; servo2.write(pos2); delay(10); if(finger3>=280) pos3=90;

28、servo3.write(pos3); delay(10); else if(finger3>=240&&finger3<280) pos3=45; servo3.write(pos3); delay(10); else if(finger3>=100&&finger3<240) pos3=0; servo3.write(pos3); delay(10); if(finger4>=280) pos4=90; servo4.write(pos4); delay(10); else if(finger4>=240&&

29、;finger4<280) pos4=45; servo4.write(pos4); delay(10); else if(finger4>=100&&finger4<240) pos4=45; servo4.write(pos4); delay(10); void chushi() /初始角度 servo1.write(pos1); servo2.write(pos2); servo3.write(pos3); servo4.write(pos4); delay(10);6. 实验验证在完成了主机的设计后,接下来需要做的就是实验验证。(1)将舵机与主机的电路

30、连好,打开之前编写好的arduino程序。大体的流程如图:图20 arduino主机程序(2)检查电路连接良好后,先后给主机arduino和舵机供电,舵机恢复到初始位置(舵机旋转到中间位置),通过4个舵机代替4个手指,当手指张开时,arduino串口反馈回数据,舵机位置不变。如下图: 图21 串口返回数据图22 舵机初始位置(3)使用者带上数据手套,通过手掌的握紧,弯曲传感器flex2.2”将弯曲程度转化为电信号,传送到arduino主机,主机通过下命令,调节4个舵机的旋转程度。如下图所示: 图23 手套弯曲形式 图24 手套弯曲形式图25 舵机效果图(6)实验验证后可以发现,最后的效果达到了预期的目标。图26 整体效果图图27 数据手套图7. 总结与展望本设计利用arduino开发板、弯曲传感器、舵机和电阻,实现了对于机械手的模拟,通过利用手套上的弯曲传感器感应到弯曲的程度,将数据上传回到给arduino主板,主

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论