视障人士的Arduino辅助技术说明

电子说

1.3w人已加入

描述

此装置使用伺服器和蜂鸣器,它们对2个超声波距离传感器返回的读取距离做出反应。因此,如果您是盲人,并且以某种方式设法阅读了这些内容,并认为这些图片很酷,那么接下来要做的就是将很小的部分放在一起而看不到它们,很简单,然后您将不再伤了鼻子,脚尖踩在东西上,所以是完全值得的。在两个肩膀上,您将拥有一个超声波距离传感器,该距离返回的距离是指伺服器(在同一肩膀上)按特定量(取决于距离)的距离,以及当物品(距离传感器看到的东西)也到达时的距离关闭蜂鸣器,在同一个肩膀上,安静地发出哔哔声,只是强调您的肩膀旁边有一个物体。

步骤1:零件

Arduino

因此,该项目的零件数量相当可观,因为我们的工作量将是一个肩膀所需传感器/输出设备的两倍。

零件:

2 Servos(因为它们只用于轻轻地压在您的肩膀上,所以我使用了我能找到的最便宜的那些):http://www.ebay.com/itm/Align-T-Rex-Micro-Servo-Mo 。..

2个超声波距离传感器:http://www.ebay.com/itm/1pcs-Ultrasonic-Module-HC-。..

2个蜂鸣器(您可以使用任何蜂鸣器想要,例如压电蜂鸣器或被动蜂鸣器,但我将使用被动蜂鸣器):http://www.ebay.com/itm/Passive- Buzzer-Alarm-Modul 。..

Arduino Uno(您可以使用想要/拥有的任何Arduino微控制器,但是我将使用Uno,因为它比nano/mini大,出于演示目的,它是更容易看到):http://www.ebay.com/itm/NEW-ATmega328-UNO-R3-Devel 。..

跳线(在此项目中,我们使用母对公,公对母男性,因此您只需要购买所有三种类型的包装,您肯定会最终使用它们):http://www.ebay.com/itm/120pcs-Dupont-Wire-Male-to.。.

面包板(仅用于将地面和5v电源分配给所有传感器/输出设备,我只是使用了很小的一个):http://www.ebay.com/itm/5pcs- Mini-25-Points-Breadb 。..

USB A/B(这是Arduino Uno的USB线,包含在上面的Arduino Uno链接中,但是如果您购买的是另外一个还没有包括它,这里是:http://www.ebay.com/itm/For-HP-CANON-DELL-Lexmark -。..)

现在,等待之后我们准备了一年的零件开始真正的构建和编程。

第2步:连接电路

因此,与大多数项目一样,您首先要在编写硬件之前将其放在一起该软件。首先,您要将蜂鸣器,伺服器和距离传感器中的所有5v(+或Vcc)端口连接到面包板上(其中最左边和一列将连接到Arduino Uno上的5v,然后连接一根电线)将连接到左侧的第3列,因此您可以继续将电线连接到5v端口)。现在,对地线(-s)进行相同的操作,再次在两列之间连接电缆。如果您的面包板比5x5大,则唯一需要做的更改就是不要使用多列(如果需要,可以这样做,但没有意义),所以不要使用连接电缆将5v排成一行到传感器的地线和地线,以及从Arduino Uno的5v输出和地线引出的输出设备。

下一步,我们要将数字输出/输入引脚连接到正确的传感器。由于距离传感器比其他一个引脚的控制和输入要稍微复杂一些。超声波距离传感器具有两个不同的数字引脚,一个称为Echo,另一个名为Trig。这些操作是Trig引脚输出一个小脉冲,而Echo引脚接收它。基本上,一个充当一点微型扬声器,另一个充当麦克风,它使用声音速度为每秒340.29米(或每秒1125英尺)的事实来计算距离,并将其插入公式distance =时间*声速,其中时间=输出超声波与传感器接收超声波之间的时间。因此,既然我们了解了传感器的工作原理,就可以使用它了。首先,将左侧距离传感器的Trig引脚连接到数字引脚12,将Echo引脚连接到d11。接下来,将右侧距离传感器的Trig引脚连接到d10,将Echo引脚连接到d9。在代码的后面,我们将把Echo引脚的引脚模式设置为输入,将Trig引脚设置为输出。

接下来,我们将设置伺服器及其引脚,因为每个伺服器只能是一个针脚,只需控制伺服器要设置的角度即可。 Servos控制齿轮可以随心所欲地连接您想要的东西,它们会将物体旋转0至180度。因此,现在将左舵机连接到d5,将右舵机连接到d3。

现在,我们将设置最终组件,即蜂鸣器。压电蜂鸣器的工作原理是包含一个压电元件,该压电元件会根据施加的电压来回变形,从而产生可听见的声音。因此,现在,将左蜂鸣器的引脚连接到d6,将右蜂鸣器的引脚连接到d4。

最后,将其插入计算机的USB端口或USB至插座适配器。

第3步:测试基本硬件

现在,我们已经挂钩了所有内容,我们应该在继续编写代码之前对其进行测试,想知道为什么要这样做吗?工作。因此,使用Arduino IDE将代码上传到文件中,您可以从以下链接下载该代码:https://www.arduino.cc/en/Main/Software。在顶部的第二个矩形中单击您的操作系统,然后单击“捐赠”框下方的“仅下载”,或者如果您愿意,则捐赠。..

在运行该程序时应该发生的事情是:

左伺服0度,然后90度,150。(每次移动之间的1秒延迟)

右伺服0度,然后90,然后150。(同一件事)

右蜂鸣器频率1000秒钟,然后关闭。

左蜂鸣器频率1000秒钟,然后关闭。

然后打开串行监视器,然后右边的距离传感器的距离将被打印出来。

然后是左边的距离传感器。 (以厘米为单位,但是如果要进行转换,然后乘以.3937,或者可以更改代码(第72和87行),则将转换放在此处)

如果其中任何一项(或全部它们。..)不起作用,然后检查相应的(与传感器/输出设备相对应的)数字引脚,并将其更改为正确的数字引脚,它也可能是Vcc的地,因此也请检查这些引脚。如果不是那么好,那么您已经完成了物理工作,现在就可以使用软件。

第4步:编程

Arduino

因此,现在我们准备对此进行编程。在文件中,我将详细介绍注释,因此在这里我不会多说。通过查看我的注释/代码,可能不是很明显的一件事是我定义的用于计算(根据从传感器返回的距离)伺服器应压在肩膀上的功能。为此,我定义了一个分段函数(取决于x值,将决定y值的方程式将改变)。函数看起来像这样:f(x)= {x 《5:-3/2(ln(x))+ 3.5,x》 = 5:-x +6。它定义了图像中显示的曲线。基本上,物体越靠近传感器/人,指数就变得越来越硬(伺服系统施加的压力),并且在6英尺远处完全停止推动。
      责任编辑:wv

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分