|||
原文:Nicholas Bonini,Nithya Iyer ,David Kim, Katherine Mathison,Lauren Wellons.Robotic Hand in Motion Using Arduino-Controlled Servos. http://www.soe.rutgers.edu/sites/default/files/imce/pdfs/gset-2014/Robotic%20Hand%20in%20Motion%20Final%20Paper.pdf.New Jersey Governor’s School of Engineering and Technology 2014. 译者:华南理工大学 任锦荣同学 译 文: 摘要: 截肢患者常因为他们不能很好的使用他们的四肢而遭受心理和生理上的困难。为了帮助截肢者,在可行的成本前提下获得具有同样功能的假手。研发了一种基于原型假肢的Flexy Hand,这是一个3D打印的手模型,它包含Arduino开源微处理器。为了避免昂贵的和令人沮丧的肌电控制假肢方法,可以通过一个Android智能手机应用程序允许用户选择一个手势来操纵假肢。手机发送该信息到Arduino,由此单独驱动每根手指。这种假肢结构简单,材料成本低廉,以及结合了常用设备如智能手机,可以使残疾人轻松获得新的假肢。 1.介绍 随着消费者级3D打印机的普及,3D打印的假肢逐渐流行,同时这些假肢的实际应用也在增加。随着网络开源资料的发展,现在人们可以在几分钟内免费下载可打印的手模型,例如Thingiverse这个免费开源的3D模型网站。 与传统那种耗费数万美元而且很多人根本负担不起的假肢相反[1],对于大多数人来说,这些替代的假肢是一个相对廉价的选择。对于现代消费者,这些替代品不仅便宜而且假肢的功能更为有效,同时能更加快速的实现用户的个性化定制。 除了成本外,高级假肢的另一个普遍问题是易于控制。在假肢使用中最常见的控制系统是肌电信号,这种技术是将设备附着在截肢患者的前臂的剩余肌肉[2],通过设备读取电信号,再通过假肢来实现功能。且不说那些没有任何具备功能的前臂肌肉,就连那些有着完整的前臂肌肉也可以使用这种方法,但是这种方法非常难以使用而且精度不高[3]。因此,开发易于组装而且可以通过非专业性设备如手机来控制的假肢是非常关键的,而3D打印假肢能达到以上要求,而且基于智能手机的控制比传统的肌电或运动传感控制系统更便于携带和使用。 此外,在过去几年里,消费级的机械手从功能和表现方面已经取得明显的进步。3D打印行业的发展已经促使世界各地使用者的设计出众多的模拟手,同时大家可以在线访问。3D打印的假肢更具优势的,它们对于儿童和青少年来说是更为理想的假肢。因为当当一只手变得太小时,可以容易地以较大尺寸打印一只新的手并重新集成到控制系统中[4]。 2.背景 |
2.1 3D打印 Makerbot Replicator采用了丝状材料选择性熔覆(FDM)的技术,该技术涉及使用高级热塑性塑料构建层状部件[5]。要打印3D模型时,必须将设计的STL文件导出到打印机软件中。然后Makerbot会创建g代码以确定塑料挤出机的移动路径。挤出机是打印机的移动头,首先熔化长丝,然后将熔融热塑性塑料沉积成薄层,直到模型完全印刷。根据需要,3D打印机将为设计的模型提供脚手架作为支撑,完成后很容易去除这些支撑架[6]。 图1 Makerbot Replicator 3D打印机 消费级打印中最常用的细丝是丙烯腈丁二烯苯乙烯(ABS)和聚乳酸(PLA)热塑性塑料。 每种塑料丝状物都有其独特的特性,适用于不同的用途。 虽然ABS比PLA更坚韧,更灵活,但由于塑料的特性,ABS需要加热床以防止外层卷曲或翘曲; 这保证了热量均匀分布到外层和内层。 然而,PLA不需要加热床,并且对诸如会溶解ABS长丝的丙酮等物质更具抗溶解性。 2.2 Arduino Arduino是一个开源的微控制器品牌,常用于家庭以及自己动手的电子产品[7],它可以用C语言编程,Arduino网站包含用于编程器件的软件,网站还有一系列简单的在线教程,方便用户上手。各种电子元件可以通过面包板(又称万用线路板)连接作为代码的输入和输出,这使得Arduinos非常灵活。Arduino微控制器非常直观,价格便宜,并且易于使用[8],这三个因素对于方便易用的假肢具有至关重要的作用。 2.3 伺服系统 舵机具有尺寸小但功率大的特点,适用于玩具直升机到机器人等众多产品。伺服系统由三个基本部分组成:电动机,连接输出轴的反馈电位计和控制器。这允许舵机通过跟踪其当前角度位置而旋转到特定角度。舵机通过脉宽调制(PWM)进行控制,根据发送信号的占空比,电机将轴对准特定角度。这种旋转到某个位置而不是以一定的速度旋转的能力,使得舵机在假肢装置中非常有用,因为这消除时间变量以进行非常精确的移动。普通的直流电机需要以特定的速度运行电机一定的时间以获得距离,而舵机可以直接选择一个位置[9]。 2.4 蓝牙 |
使用低功率无线电波,蓝牙可以同时连接多达8个设备[10]。由于其强大的连接性,该技术优于其他无线通信技术,如红外网络。蓝牙设备发出非常微弱的信号,防止对其他系统的干扰。虽然这将范围限制在10米左右,但它为键盘,电脑,鼠标或桌面式打印机提供了足够的范围。此外,弱信号传输降低了功耗,并且不需要连接设备之间的直接对视,从而允许用户与第二个设备保持独立的空间,同时仍然保留全部功能[11]。 2.5 Android应用 麻省理工学院(MIT)的App Inventor是开发应用程序来控制手的最理想的平台。这个平台可以免费使用并且易于学习,即使对于编程经验不多的用户也是如此。App Inventor采用了块编辑器的风格:传统方式编写代码行不同,设计师拖放块来表函数和变量。代码的每一段都以“when”块给出的条件开始,并执行“get”块或“set”块,“when”条件满足时,应用程序将执行对应的操作。每个“when”、“get”和“set”块是对应于每个组件。如,一个按钮有“When Button1.Click”,一个“when”条件,当点击按钮时为将执行该条件之后的内容[12]。完整的代码块可以在附录B中查看。 2.6 肌电假肢 肌电假肢的重量通常在400到600克之间,可以使用直流电机和舵机的组合,并且有大约11个关节和6个自由度。相反,人手的平均重量为400克,占体重总量的0.6%,并且在手指功能方面具有27个自由度[13]。2007年,肌电假肢用户进行的一项调查结果显示,许多消费者希望拇指,食指和手腕有更好的运动。虽然他们使用了市场上最先进的控制方法之一,但新的肌电设备并不能满足用户手指功能的复杂性,只有6个自由度[14]。 3.方法/实验设计 3.1手部组装 原型中使用的手是Flexy Hand的3D打印版本[15]。 STL文件导出到Makerbot平台并直接打印,没有任何缩放或修改。考虑到手部有多个不同部分,打印花费了大约十一个小时。完成的手与尼龙线和可拉伸的一次性吸管串在一起。吸管用于分解3D打印中的任何多余材料,这些材料会妨碍尼龙线穿过手和手指内部的路径,同时吸管能帮助将线穿过手掌。 每根手指都用大约两英尺的尼龙线缠绕,以确保有足够的材料可以伸到手臂的长度上并连接到舵机上。 图2 关节模具的3D模型 从Github下载铰链接头模具(见图2)并进行3D打印[16]。将各种类型的硅树脂成型为指缝连接器并放置在每个手指的接缝槽中以测试其性能。最后GETM优等硅胶被选为指缝 |
连接器铸造的主要材料。使用填缝枪和3D打印模具,将硅胶成型为固化的连接器大约需要24小时,然后将它们装入每个手指段之间的槽中。 3.2 手臂组装 使用内径为1.5英寸,长度为12英寸的PVC管来容纳舵机。如图3所示,以交错的方式沿PVC管子挖切0.75英寸宽×1.5英寸长的矩形孔,孔间隔0.25英寸。在管子的一端钻五个0.125英寸的圆孔,对应每根手指的控制绳进入管道并在其中心与手接触。用3D打印塑料环,并且在1/8英寸孔和舵机之间用强力胶粘贴在管道的末端。舵机被放置在相应位置,并用超级胶固定。尼龙线从手指穿过PVC管的内部钻入管内的孔,通过3D打印环并连接舵机。当手处于零位时,舵机处于直接指向手的状态,尼龙线此时则固定于舵机的转盘尖端。用尼龙线将眼镜螺钉插入每个舵机的转盘两端中远端的孔中。
图3 交错螺旋结构的PVC 管 在手和PVC管的两侧钻孔,通过将螺钉拧入这些孔并用强力胶强化连接,将L形支架固定在手和内管之间,这可以使和内管紧紧相连 3.3 电路 每个舵机有三根电线:电源线,接地线和脉宽调制(PWM)线。 PWM线插入Arduino Uno板上的六个PWM端口之一。每个舵机的电源和接地都连接到面包板上的水平正极和负极行,这些面板连接到6V电池组。电池组装有四个1.5V 的D尺寸的电池。蓝牙模块的四个引脚被插入面包板上的相邻列。电源和接地引脚连接到Arduino自己的电源和接地端口。其他两个引脚是RXD和TXD,分别连接到Arduino上的TX和RX端口。 这些引脚用于接受Arduino手机发送的命令(参见图4)。 |
图4 Arduino 的舵机控制电路原理图 3.4 Arduino编程 Arduino使用网站上提供的开发环境进行编程。项目中代码最重要部分是确定舵机的位置,这决定了手指的运动。舵机库包含将舵机连接到引脚并设置其角度的功能,对舵机定位进行了精细控制。 attach()函数将Arduino上的某个引脚与每个舵机相关联,write()函数将舵机的角度位置设置为0到180度之间的值。舵机的位置决定了它所控制的手指弯曲的程度,手指的低角度表示手指更放松,手指较大角度表示手指朝手掌弯曲。通过将每个舵机设置为特定的角度来完成手势,这个特定的角度对应于当手做出该手势时手指弯曲大小。开始阶段,使用电位器手动控制手指的位置,并且当做出每个手势时,舵机的角度被记录并随后被配置为预设手势。在最终设计中,通过蓝牙连接到Arduino板的Android应用程序进行控制手势。当在应用程序中选择要执行的手势时,Arduino会收到一个介于0和5之间的整数,并使用此数据来选择要执行的手势。这些功能设置舵机的位置,以便与手动测试中为所选手势收集的数据相匹配。完整的程序代码可以在附录A中查看。 3.5应用程序开发 这只机械手的应用程序是只有一个页面的基于按钮的应用程序(参见图5)。 当一个按钮被按下时,一个字节号码被发送到蓝牙模块。Arduino使用该字节作为触发器来运行执行该手势的代码块,将相应手指的舵机设置为特定角度。当选中任何导致手势的按钮时,其他手势按钮都会隐藏,直到按下重置按钮。一旦手恢复到其初始位置,其他按钮即可正常使用。 如要连接到蓝牙,列表选取器中有“连接到蓝牙”的按钮,当按下该按钮时,与手机配对的设备列表就呈现出来了。选择HC-06蓝牙模块后,Android手机建立连接,并出现绿色标志,显示“已连接!”,表示设备已准备好接收来自手机的信号。如果Android手机无法连接到蓝牙设备,则标志显示为红色并且显示“未连接...”。应用程序每50毫秒会自 |
图5 在Samsung Nexus S上的菜单界面 动检查一次手机的连接状态,并将标志更新为蓝牙连接的当前状态。 三星Nexus S被选为与该原型一起使用的智能手机。为了测试应用程序,需先安装Android驱动程序以将apk文件下载到手机中。安装驱动程序后,必须将Android手机作为USB存储设备打开。该应用程序被放入手机的文件夹中,该文件夹在选择USB存储模式后会出现。该文件出现在手机显示屏上的应用程序文件夹“ES文件资源管理器”中,此时可以选择该文件进行安装。手机一旦安装了应用程序并且已连接到蓝牙模块,模块上的红灯闪烁将停止闪烁并保持点亮状态。一旦连接了蓝牙,每个舵机应连接到一块面包板上,并通过应用程序进行测试。 测试的第二个组件涉及应用程序的按钮响应性能。 首先我们测试菜单如何导航; 依次按下每个手势按钮并评估结果。要求随机人员比较不同的配色方案和按钮布局,以模拟用户对应用程序的体验。 4. 结果和讨论 4.1 手功能 完全组装好的手可以轻松地执行石头、剪刀、布、 “OK”这些日常使用的手势,还能实现按下按钮时竖起大拇指。软件的用户界面使用简单,易于学习。该应用程序允许用户通过蓝牙从Android智能手机控制五种不同的手势。由于舵机操纵的是线,故手指可以设置为各种手势。而且,手指背部的橡胶带可以在舵机释放压力时令手指恢复到原位(见图6)。 整个项目可以使用常用材料容易地构建,成本低于475美元,并且可以使用开源Arduino进行编程,同时编程难度低。使用者可以通过MIT App Inventor网站上的教程来设计用于控制手的智能手机应用程序。虽然该设备简单实惠,但它不能很容易地抓住物体或对有反应物做出反应,而且体积笨重。因此我们的设备很容易制作,但不够健壮。 |
图6 附着橡胶带的手 4.2讨论 肌电假肢领域的新技术进步促成了多自由度手的发展。尽管如此,这些设备在性能、稳定性、美观性和经济性方面仍然不足。像iLimbTM和BebionicTM这样的拟人手已经受到媒体的关注,但它们并不像广告中那样对消费者友好。 在控制手指运动时,在这个新原型假肢中使用舵机而不是直流电机被证明是更可行的选择。舵机比直流电机轻,精度更高。即使舵机能通过适当控制角位移来达到更高的准确度,但是由于直流电机简单、连续的旋转机构,它更常用于假肢。舵机比直流电机编程也更容易; 直流电机的控制取决于动作完成的时间,而不是电机的最终位置。 通过使用舵机,可以消除时间变量以及任何其他可能的错误因素。 而且,大多数肌电假肢在手指运动方面具有六个自由度,而在这个特定的原型中仅有五个自由度。为了消除这个缺点,不同的手部设计可以通过3D打印来实现这个第六自由度的大多角骨掌骨关节。由于时间上的限制,且增加该自由度在编程和组装手中增加了复杂性,故第六个自由度没有被添加到原型中。结果,手指不能在横向上移动,从而减少了原型总体上的自由度数量。这个关节确实在正常拇指的功能中发挥着重要作用,因此可以找到替代设计来确保拇指得到充分利用。普通人的手的灵活性与27个自由度相比来说要复杂得多。这种新的原型甚至肌电装置都不够先进,达不到普通人手的水平,但随着未来的新发展,假肢最终可以完全取代失去的肢体或手。 4.3 问题 虽然这个项目实现了大部分最初的目标,但是在这个过程中出现了一些挫折,这阻碍了整体效率。在打印手的过程中由于我们施加外力产生了小错误,导致手掌出现裂缝。使 |
用丙酮来软化多余的ABS丝,以便可以将丝置于裂缝内进行修复。 在最初的测试中,尼龙线在臂的舵机下方过并沿旋转直径布置。为了在每次旋转时达到最大距离,将眼镜螺丝钉拧入舵机叶片的孔中。这使得臂部周围的线条比直径更长并且可以进一步拉动手指。然后,尼龙线通常会缠绕在舵机的螺丝下面,而不是缠绕在它们的周围,因此线不会拉到最长,从而防止手完全关闭。为了解决这个问题,一个塑料环被添加到手臂的内部管道,尼龙线穿过环上的孔,与螺钉高度相同。 另一个问题是手无法恢复到其最初的静止位置。为了解决这个缺陷,我们在手指的背部设计了橡皮筋连接。第一组橡胶带太无弹性,并阻止舵机将手指拉向手掌。然而,当橡皮筋被更长、更薄的弹性带所取代时,舵机有足够的动力再次移动手指。如果铰链关节是用更加强韧的尼龙打印出来的,就不会出现这个问题,可以完全避免模塑和固化硅胶接头的过程。臂组件也给我们提供了挑战:臂的原始外壳仅仅足够大来装配舵机并使它们正常工(参 见图7)。故我们在外管上为舵机雕刻孔,即可缓解任何套管问题。 图7 整手与手臂部件 应用程序开发过程中遇到的一个问题是蓝牙设备断开连接后,但连接指示灯仍然会保持绿色。为了解决这个问题,我们增加了一个时钟定时器实现每隔50毫秒更新一次连接指示灯的状态。在开始另一个手势之前,应用程序让用户重置手的原因是为了防止混淆。如果按下多个手势按钮,舵机可能会收到多条信息,最终导致它们失败。 不幸的是,使用直流电机和链轮转动手腕的系统处于设计的初始阶段,且由于时间有限,无法作为手臂的一部分实现转动。 5. 结论 简单的假肢有可能对截肢者的日常生活产生可预测的影响。由于这种特殊假肢是由Android应用程序控制的,因此它的使用非常简单,并且没有陡峭的学习曲线,这与许多需要过多时间掌握的高级假肢不同。手部的构造和组装需要一个易于获取的材料和工具清单。随着这种技术的可用性,截肢者拥有必要的工具来制造他们自己的个性化假肢,除了 |
能够令截肢者预防身体变形常常伴随的精神消极之外,还可以提高他们的生活质量[17]。 这个项目的目标包括创建一个低成本的3D打印机器假手,由Arduino驱动并可以执行多种手势。原型表明通过简单的控制方法有效地完成了这些任务,同时对一些改进设计可以提升手的功能。手的腕部动作可以不需要截肢者不得不转动他的肩膀以适当地抓住某物;相反,应用程序会将手转到所需的位置。后续的升级将包括更多的手势和触觉反馈。一方面,可以将一组特定的手势编入应用程序,为用户提供更好的手指灵活性;另一方面,触觉反馈会使截肢者感受到对象的温度和质地,从而形成触觉的自然感知。这些改进将有助于创造一种能够改变假肢行业的产品。 6. 致谢 作者要感谢我们的项目导师Mohit Chaudhary,Kang Li博士和William Craelius博士在计划和构建项目方面给予的所有帮助和指导,并感谢我们的助理项目导师Julian Hsu的帮助设计Android应用程序。我们还要感谢RTA——Mary Pat Reiter在本文中的帮助,院长Jean Patrick Antoine以及我们所有GSET赞助商的支持:罗格斯大学;新泽西州;Morgan Stanley;Lockheed Martin;Silverline Windows;南泽西工业公司;公积金银行基金会;以及Novo Nordisk。我们还要感谢Steve Wood他的Flexy Hand的3D模型。如果没有这些人和公司的慷慨帮助和捐赠,我们的项目将不可能实现。我们的团队非常感谢所有为这个项目做出贡献的人。
参考文献 1W. Craelius, K. Li, I. Ali, A. Alvi, E. Chu, K. Lin, S. Nazare, N. Plichta, “Transhumeral Prosthesis with a Dexterous Hand,” pp. 1-3, (unpublished). 2”Myoelectric Prosthetics 101,” Ottobock, <http://www.ottobockus.com/prosthetics/inf o-for-new-amputees/prosthetics101/myoelectric-prosthetics-101/> (19 July 2014). 3Joseph T. Belter, Jacob L. Segil, Aaron M. Dollar, Richard F. Weir, “Mechanical design and performance specifications of anthropomorphic prosthetic hands: A review”, JRRD, 50, p. 611, 2013. 4“John Hopkins and e-NABLE,” Enabling the Future, 17 July 2014, <http://enablingthefuture.org/tag/3d-printedhands> (19 July 2014). 5”FDM Thermoplastics,” Stratasys, <http://www.stratasys.com/materials/fdm> (19 July 2014). 6Annelise, MakerBotting 101 - How Does It Work, MakerBot, January 10, 2012, <http://www.makerbot.com/blog/2012/01/10/makerbotting-101-how-does-it-work/> (23 July 2014) 7”Frequently Asked Questions,” Arduino, <http://arduino.cc/en/Main/FAQ> (19 July 2014). |
8”Arduino Uno-R3,” Sparkfun, <https://www.sparkfun.com/products/11021 > (19 July 2014). 9”What’s A Servo?,” Seattle Robotics Society, <http://www.seattlerobotics.org/guide/servo s.html> (19 July 2014). 10How It Works,” Bluetooth, <http://www.bluetooth.com/Pages/How-ItWorks.aspx> (19 July 2014). 11“How Bluetooth cuts the cord,” TechTarget, March 2005, <http://searchmobilecomputing.techtarget.co m/feature/How-Bluetooth-cuts-the-cord> (19 July 2014). 12”MIT App Inventor,” <http://appinventor.mit.edu/explore/> (19 July 2014). 13Pylatiuk C., Schulz S., Döderlein L., “Results of an Internet survey of myoelectric prosthetic hand users”, PubMed, Dec. 2007, <http://www.ncbi.nlm.nih.gov/pubmed/1805 0007> (19 July 2014). 14”Flexy Hand,” Thingiverse, <http://www.thingiverse.com/thing:242639> (19 July 2014). 15”Flexy-Joint,” GitHub, <https://github.com/daprice/FlexyJoint/wiki/Casting> (19 July 2014). 16”Coping with Your Amputation,” Capital Health, <http://www.cdha.nshealth.ca/amputeerehabilitation-musculoskeletalprogram/patients- families-amputeerehabilitation/coping-your-> (19 July 2014) 17Joseph T. Belter, Jacob L. Segil, Aaron M. Dollar, Richard F. Weir, “Mechanical design and performance specifications of anthropomorphic prosthetic hands: A review”, JRRD, 50, pp. 599-606, 611, 2013.
|
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-12-27 23:53
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社