基于arduino的技能导盲棍的设计与实现-文档.docx_第1页
基于arduino的技能导盲棍的设计与实现-文档.docx_第2页
基于arduino的技能导盲棍的设计与实现-文档.docx_第3页
基于arduino的技能导盲棍的设计与实现-文档.docx_第4页
基于arduino的技能导盲棍的设计与实现-文档.docx_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

基于Arduino的智能导盲棍设计与实现报 告题 目: 基于Arduino的智能导盲棍 设计与实现 _姓 名: 某某某 专 业: XXXXX 指导教师: 成 绩: 计算机与信息工程学院20 年 月目录1.引言21.1 项目背景21.2 创意描述21.3 项目分工22.相关技术介绍32.1 Arduino介绍32.2 相关套件介绍32.3相关项目对比43.功能及总体设计53.1功能介绍53.2总体设计54.项目实现84.1超声波测距模块84.2蓝牙连接模块94.3语音提示模块104.4照明模块114.5电量提示模块115.产品展示136.总结与展望14参考文献15附录一 元器件清单16实训日志17教师评语201.引言1.1 项目背景盲杖可以在盲人外出时起到避障的作用,方便盲人出行,但是,盲人使用盲杖行走时,无法感知前方一定距离内是否有障碍物,也无法感知左右方是否有障碍物,更无法提示过路行人注意规避。同时在昏暗的环境中,盲人无法自主的有效规避其他行人车辆,并且他人也无法明确的察觉盲人,所以我们需要给其他人一定的提示,以此来规避盲人。因此,制作一款智能导盲棍,补足上述缺点是非常有必要的。本项目的智能导盲棍,设计旨在让盲人正确接收到障碍物的具体信息,并提示盲人避障,让盲人的出行更加便利1。1.2 创意描述本项目的创新点包括一下两项:(1) 测距:智能导盲杖与普通导盲杖最大的区别就在于测距功能,为充当盲人的眼,为盲人看清各方向是否存在有障碍物。(2) 语音提示:智能导盲棍能让盲人迅速接收障碍物距离,方便盲人出行,让盲人能够在目不能视的情况下较好地感知外界环境。(3) 照明:智能导盲棍上配备灯泡起到提示路过行人规避的作用,使盲人的出行得到更加安全的保障。(4) 电量提示:由于盲人无法观察导盲杖是否处于正常工作状态,为避免电量不足导致导盲杖无法正常工作,添加的电量提示功能,帮助盲人有效得知当前导盲杖状态。2.相关技术介绍2.1 Arduino介绍Massimo Banzi之前是意大利Ivrea一家高科技设计学校的老师。他的学生们经常抱怨找不到便宜好用的微控制器。 2005年冬天, Massimo Banzi跟David Cuartielles讨论了这个问题。 David Cuartielles是一个西班牙籍晶片工程师,当时在这所学校做访问学者。两人决定设计自己的电路板,并引入了Banzi的学生David Mellis为电路板设计编程语言。两天以后,David Mellis就写出了程式码。又过了三天,电路板就完工了。Massimo Banzi喜欢去一家名叫di Re Arduino的酒吧,该酒吧是以1000年前意大利国王Arduin的名字命名的。为了纪念这个地方,他将这块电路板命名为Arduino。随后Banzi、Cuartielles和Mellis把设计图放到了网上。版权法可以监管开源软件,却很难用在硬件上,为了保持设计的开放源码理念,他们决定采用Creative Commons(CC)的授权方式公开硬件设计图。在这样的授权下任何人都可以生产电路板的复制品,甚至还能重新设计和销售原设计的复制品。人们不需要支付任何费用,甚至不用取得Arduino团队的许可。然而,如果重新发布了引用设计,就必须声明原始Arduino团队的贡献。如果修改了电路板,则最新设计必须使用相同或类似的Creative Commons(CC)的授权方式,以保证新版本的Arduino电路板也会一样是自由和开放的。唯一被保留的只有Arduino这个名字,它被注册成了商标,在没有官方授权的情况下不能使用它。Arduino发展至今,有了多种型号及众多衍生控制器推出2。2.2 相关套件介绍Arduino Uno:“Uno”在意大利语中是“一”的意思,并被用于标记1.0版Arduino软件(IDE)。Uno开发板和1.0版Arduino软件(IDE)为Arduino系列的参考版本,现在已经演变为更新版本。Arduino Uno开发板属于USB系列Arduino开发板中的第一个型号, 并作为Arduino平台的参考模型存在;更多有关当前、过去或过时开发板的列表,请参阅Main/Boards|开发板的Arduino指数3。超声波传感器:超声波传感器是将超声波信号转换成其他能量信号(通常是电信号)的传感器。超声波是振动频率高于20KHz的机械波。它具有频率高、波长短、绕射现象小,特别是方向性好、能够成为射线而定向传播等特点。超声波对液体、固体的穿透本领很大,尤其是在阳光不透明的固体中。超声波碰到杂质或分界面会产生显著反射形成反射成回波,碰到活动物体能产生多普勒效应。超声波传感器广泛应用在工业、国防、生物医学等方面4。蓝牙模块:蓝牙模块,是一种集成蓝牙功能的PCBA板,用于短距离无线通讯,按功能分为蓝牙数据模块和蓝牙语音模块。蓝牙模块是指集成蓝牙功能的芯片基本电路集合,用于无线网络通讯,大致可分为三大类型:数据传输模块远程控制模块等。一般模块具有半成品的属性,是在芯片的基础上进行过加工,以使后续应用更为简单5。2.3相关项目对比一般的导盲棍项目只有测距功能与语音提示功能,而我们的导盲棍设计多出了电量耗尽提示功能与照明功能,更加的方便了盲人的使用。3.功能及总体设计 基于以上创意,需要在导盲棍上添加一些模块,在避障的同时进行语音提示,在特定的情况下可以亮灯、鸣笛提示过路行人的功能。3.1功能介绍该产品实现的功能有:(1) 测距功能:使用前、左、右三个超声波测距模块测量障碍物的距离。(2) 电量耗尽提示功能:接通电源后,点击按钮,蜂鸣器会发出提示音,若是没有就表示电量耗尽。(3) 语音提示功能:使用蓝牙模块将信息传输到手机,然后通过手机app提示盲人前方多远有障碍,与左右方向是否有障碍。(4) 照明功能:在夜间以及其他一系列的昏暗的环境中会点亮导盲杖上的灯。3.2总体设计根据上述功能,将项目对应的四个部分分别进行设计:测距部分、电量提示部分、语音提示部分和照明部分。3.2.1整体框架图项目整体框架图如图3-1所示。uno板通过信号控制超声波传感器检测障碍物距离,并返回给uno板,然后经过判断之后将数据通过蓝牙模块传输给手机app。uno板读取来自光敏电阻的阻值,在uno板上经过阻值大小的判断,然后来控制小灯泡的开关。uno板通过读取按钮是否被点击来控制蜂鸣器发声。图3-1 整体框架图3.2.2系统流程图系统流程图如图3-2和图3-3所示。在uno板上系统首先通过判断按钮状态的开关来决定来决定接下来的过程,如果开启,则蜂鸣器发声,开始读取光敏电阻的阻值,并进行判断然后决定灯泡的开关,同时判断蓝牙是否在连接来决定是否测距并且发送信息到手机。图3-2 arduino uno开发板流程图在手机端上系统首先进行连接蓝牙,然后开始一个循环,如果接收到信息则根据信息判断,在手机上发出不同的提示音,然后判断是否结束循环,来决定是否继续接收信息。图3-3 手机app流程图3.2.3总电路图系统总电路图如图3-4所示,通过面包板将超声波传感器、蓝牙模块、光敏电阻、小灯泡、按钮和蜂鸣器接到了uno板上相对应的串口。在下章项目实现将会分为不同模块具体介绍。图3-4 uno板总电路图4.项目实现该项目主要有五个模块:超声波测距模块、蓝牙连接模块、语音提示模块、照明模块、电量提示模块。4.1超声波测距模块功能介绍:Arduino uno开发板给该超声波传感器发送触发信号,这个传感器便能自动发送并检测超声波信号,开发板接收超声波传感器的回响信号便能测得障碍物的距离。 元器件清单:该模块所需的元器件及其数量如表4-1所示。表4-1 超声波测距模块元器件清单元器件名称数量超声波传感器3Arduino uno开发板1电路图:该模块电路图如图4-1所示。通过面包板将3个传感器的VCC口和GND口分别接在了一起,然后接到了uno板的5V串口和GND串口。将三个传感器的输入输出口分别接在了数字针脚的2、3、4、5、6、7串口。图4-1 超声波传感器电路图相关代码:digitalWrite(TrigBefore, LOW); /通过超声波传感器对前面测距 delayMicroseconds(2); digitalWrite(TrigBefore,HIGH); delayMicroseconds(10); /产生一个10微秒的高脉冲去触发TrigBefore digitalWrite(TrigBefore, LOW); tempBefore = float(pulseIn(EchoBefore, HIGH);/获取超声波发送到返回的时间 cmBefore = (tempBefore * 17 )/1000; /将时间计算为距离 digitalWrite(TrigRight, LOW); /通过超声波传感器对右边测距 delayMicroseconds(2); digitalWrite(TrigRight,HIGH); delayMicroseconds(10); digitalWrite(TrigRight, LOW); tempRight = float(pulseIn(EchoRight, HIGH); cmRight = (tempRight * 17 )/1000; digitalWrite(TrigLeft, LOW); /通过超声波传感器对左边测距 delayMicroseconds(2); digitalWrite(TrigLeft,HIGH); delayMicroseconds(10); digitalWrite(TrigLeft, LOW); tempLeft = float(pulseIn(EchoLeft, HIGH); cmLeft = (tempLeft * 17 )/1000;4.2蓝牙连接模块功能介绍:通过蓝牙模块,Arduino uno板能够与其他设备进行蓝牙连接,本产品通过蓝牙模块与手机相连,将数据信息传输到手机app上。手机端则通过app进行有效的连接与交互。 元器件清单:该模块所需的元器件及其数量如表4-2所示。表4-2 蓝牙连接模块元器件清单元器件名称数量蓝牙模块1Arduino uno开发板1电路图:该模块电路图如图4-2所示。将VCC与GND接到面包板与uno板5V与GND相连的接口中,然后通过面包板将TX和RX口分别接入8和9号串口。图4-2 蓝牙模块电路图 相关代码:1) Arduino uno板代码#include int bluetoothTx = 9;int bluetoothRx = 8;SoftwareSerial bluetooth(bluetoothTx, bluetoothRx); /定义蓝牙的方法2) 手机app程序:如图4-3所示。在程序里定义了一个列表选择框,当选择框被点击时,会出现已连接也可以配对的蓝牙目标。当选择完成后,app便会连接目标,并发送文本以测试与提示连接成功,并开启计时器。图4- 3手机端蓝牙连接程序4.3语音提示模块 功能介绍:将超声波测量的距离传输进行判断,对前面的传感器的距离进行0-20cm、20-40cm以及40-60cm之间进行判断,并通过蓝牙传输相应的信息,如果超过60cm则不传输数据。对左边及右边则进行是否在30cm里中存在障碍物,如果有则通过蓝牙传输相应的信息。 相关代码: 1)Arduino uno板代码if(cmBefore1) /对前面距离进行判断 bluetooth.write(14); else if(cmBefore20) bluetooth.write(15); else if(cmBefore40) bluetooth.write(16); if(cmRight1) /对右边距离进行判断 bluetooth.write(2); if(cmLeft1) /对左边距离进行判断 bluetooth.write(3); 2)手机app程序:如图4-4所示。在程序初始定义一个全局变量来接收来自蓝牙的信息,当蓝牙连接上后计时器便开始持续即使与接收来自uno板的信息,并对接收而来的信息进行判断并播报相应的提示。图4-4 手机端语音提示程序4.4照明模块 功能介绍:光敏电阻在不同光线环境下的阻值会变化,Arduino uno开发板会获取到这个电阻值,通过对其的判断,控制小灯泡的开关。在较为昏暗的环境中会电量灯泡,提示来往的车辆行人注意避让。在明亮的地方,人的可视距离较高,便可以关掉灯泡。 元器件清单:该模块所需的元器件及其数量如表4-3所示。表4-3 照明模块元器件清单元器件名称数量光敏电阻1小灯泡6Arduino uno开发板1电路图:该模块电路图如图4-5所示。将光敏电阻与普通电阻串联接到5V与GND,来保持光敏电阻的稳定性,再将光敏电阻VCC头接在模拟针脚A5串口,来读取数据。将小灯泡的正极接到数字针脚13口负极接GND来控制小灯泡的亮暗。图4-5 照明模块电路图 相关代码:Intensity = analogRead(A5); /读取光敏电阻的电阻值 if (Intensity980) /判断电阻值是否过大 digitalWrite(led, HIGH); else digitalWrite(led, LOW); 4.5电量提示模块功能介绍:每次使用时通过对按钮的点击,蜂鸣器会发出声音来提示盲人导盲棍可以工作,如果没有发出声音,则表示电源已经没有电,需要进行更换电源。 元器件清单:该模块所需的元器件及其数量如表4-4所示。表4-4 电量提示模块元器件清单元器件名称数量按钮1蜂鸣器1Arduino uno开发板1电路图:该模块电路图如图4-6所示。将按钮与普通电阻串联接到5V与GND,来保持按钮的稳定性,再将按钮VCC头接在数字针脚12串口,来读取数据。将蜂鸣器的正极接到模拟针脚A0口负极接GND来控制蜂鸣器发声。图4-6 电量提示模块电路图 相关代码:button1 = digitalRead (button); /读取当前按钮状态 if (button1 = 1 & button2 = 0) /判断按钮是否被点击 tone(mouse,340); /蜂鸣器发声 delay(200); noTone(mouse); delay(200); button2 = button1 ; /将当前状态转为过去状态5.产品展示整体实物图如图5-1和图5-2所示。从上到下分别是3个超声波传感器,连接传感器与uno板的1号面包板,接在1号面包板上的蓝牙模块。接着便是uno板,与在棍子另一边的电源。下方是2号面包板上面依次接了光敏电阻、小灯泡、按钮和蜂鸣器。图5-1 整体实物图6.总结与展望在本次项目中,我们小组完成了智能导盲杖的制作。导盲杖能完成一系列的工作,给盲人带来方便,能通过传感器与蓝牙模块让盲人得知障碍物的情况,并通过照明系统能够提示路人注意规避,也可以通过电量提

温馨提示

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

评论

0/150

提交评论