障碍物检测是盲人最关心的问题之一。这里展示的是使用 Arduino Uno 和超声波传感器的智能盲杆。该项目的主要目标是帮助盲人轻松行走,并在他们的行走路径被其他物体或人阻碍时提醒他们。作为警告信号,电路中连接了一个语音模块,它根据物体的方向发出语音警告,例如,如果物体在左侧,那么它会说“小心物体在左侧”。
这款智能摇杆将在左侧、右侧和中心连接三个超声波传感器,以感知与任何障碍物的距离,一个 JQ6500 语音声音模块用于发出警告信号,以及一个 9V 电池为设置供电。
智能盲杆所需组件
Arduino纳米
3×超声波传感器
JQ6500 语音发声模块
8Ω扬声器
1 KΩ 电阻器
JQ6500 语音发声模块
JQ6500 语音模块非常适合在扬声器上播放消息,如火警、火车和公共汽车警报系统、营业厅提示、设备故障警报等。它可以将 MP3、硬编码 MP3 或 WMV 格式文件解码为可听语音格式。它配备 24 位数模转换器,动态范围为 90dB,支持 8 / 11.025 / 12/16 / 22.05 / 24/32 / 44.1 / 48 kHz 采样率。MP3 文件可以通过按钮或通过串行通信协议进行控制。
将 MP3 文件上传到板载内存:
可以使用 Windows 计算机将 MP3 文件上传到 JQ6500 的板载内存中(Mac 或 Linux 用户需要使用 JQ6500-28p 和 SD 卡)。下面给出了相同的步骤:
一个新的“CD-ROM”驱动器将出现在您的计算机上,双击它并打开名为“ MusicDownload.exe ”的应用程序。
部分JQ6500-16P设备没有安装MusicDownload.exe,如果找不到MusicDownload.exe程序;您可以下载包含它的 zip 文件。
该应用程序是中文的,因此要上传文件,请打开 .exe 文件,然后单击左侧的第二个选项卡。
然后单击右上角的文件选择器选项卡。
文件选择器将打开,选择您要上传的所有 mp3 文件单击文件选择器上的打开按钮
单击返回第一个选项卡,然后单击按钮上传文件
智能盲杆电路图
智能盲杆的完整电路图如下所示。非常简单,我们只需要连接三个超声波传感器和一个JQ6500语音模块。
整个电路板由 9V 电池供电。电路的大脑是 Arduino Nano。三个超声波传感器用于检测摇杆左、右、前的障碍物。这三个传感器的四个引脚中的两个,即 VCC 和 GND,连接到 Arduino 的 5V 和 GND。其余两个引脚——TRIG 和 ECHO 连接到 Arduino,如下所示。
JQ5600 MP3模块是一个3.3V的逻辑模块,所以不能直接连接到Arduino的IO管脚,但是用Arduino的5V电源线供电就可以了。MP3 模块的 RX 和 TX 引脚连接到 Arduino Nano 的数字引脚 9 和 8。在 Arduino 数字引脚 9 和 MP3 模块 RX 之间放置一个 1kΩ 电阻,以降低 Arduino 的 5V 电压。
用于智能盲杆的 Arduino 程序
一旦我们准备好硬件,我们就可以将 Arduino 连接到我们的计算机并开始编程。该项目的完整代码在本页底部给出;您可以将其直接上传到您的 Arduino 板。但是,如果您想知道代码是如何工作的,请进一步阅读。
该代码使用JQ6500_Serial.h和SoftwareSerial.h库。SoftwareSerial 库与 Arduino IDE 一起预安装,而JQ6500 串行库可以从给定的链接安装。
像往常一样,通过包含所有必需的库并定义此项目中使用的所有引脚来启动代码。
#include #include #include JQ6500_Serial mp3(8,9); int left_trigPin = 6; int left_echoPin = 7; int right_trigPin = 2; int right_echoPin = 3; int center_trigPin = 4; int center_echoPin = 5;
然后在setup()函数中,初始化输入输出引脚。在我们的程序中,所有三个传感器的触发引脚都是输出设备,回声引脚是输入设备。我们还初始化了串口监视器和 JQ6500 语音模块。
pinMode(left_trigPin,输出); pinMode(left_echoPin,INPUT); pinMode(right_trigPin,输出); pinMode(right_echoPin,输入); pinMode(center_trigPin,输出); pinMode(center_echoPin,输入); 序列号.开始(115200); mp3.开始(9600); mp3.reset();
在主循环中,我们正在读取所有三个传感器的数据,即左、右和中心。我们首先读取超声波传感器的传感器数据以了解距离,然后使用触发和接收到 ECHO 之间的时间计算距离。距离计算公式如下:
数字写入(left_trigPin,HIGH); 延迟微秒(10); 数字写入(left_trigPin,低); 持续时间=脉冲输入(left_echoPin,HIGH); 距离 = (持续时间/2) / 29.1;
如果测量距离超过 50 厘米,则不会发出警告。但是,如果小于 50cm,就会触发语音模块播放语音警告。
如果(距离 < 50){ Serial.print("左距离"); Serial.print(距离); mp3.playFileByIndexNumber(2); }
所有三个传感器都使用相同的逻辑。通过更改我们用来比较的值,该程序可以很容易地适应您的应用程序。如果触发了错误警报,您可以使用串行监视器进行调试。
测试智能 Arduino 盲杆
最后,是时候测试我们的盲杆 Arduino 项目了。确保按照电路图完成连接并成功上传程序。现在,使用 9V 电池为设置供电,您应该开始看到结果。将盲人手杖移近物体,您会注意到根据物体方向的语音警告。例如,如果对象在左侧,那么它会说“小心左侧对象”。
#include
#include
#include
JQ6500_Serial mp3(8,9);
int left_trigPin = 7;
int left_echoPin = 6;
int right_trigPin = 2;
int right_echoPin = 3;
int center_trigPin = 4;
int center_echoPin = 5;
无效设置(){
pinMode(left_trigPin,OUTPUT);
pinMode(left_echoPin,INPUT);
pinMode(right_trigPin,输出);
pinMode(right_echoPin,输入);
pinMode(center_trigPin,输出);
pinMode(center_echoPin,输入);
序列号.开始(115200);
mp3.开始(9600);
mp3.reset();
mp3.setVolume(50);
mp3.setLoopMode(MP3_LOOP_NONE);
}
无效循环(){
左();
正确的();
中央();
}
void left(){
delay(500);// 读取将在 ....miliseconds 之后进行
Serial.println("\n");
int 持续时间,距离;
数字写入(left_trigPin,HIGH);
延迟微秒(10);
数字写入(left_trigPin,低);
持续时间=脉冲输入(left_echoPin,HIGH);
距离 = (持续时间/2) / 29.1;
//距离=持续时间*0.034/2;
if (distance < 30) { // 更改长距离或短距离的数字。
Serial.print("左距离");
Serial.print(距离);
mp3.playFileByIndexNumber(2);
}
}
void right(){
delay(500);// 读取将在 ....miliseconds 之后进行
Serial.println("\n");
int 持续时间,距离;
数字写入(right_trigPin,HIGH);
延迟微秒(10);
数字写入(right_trigPin,低);
持续时间=脉冲输入(right_echoPin,HIGH);
距离 = (持续时间/2) / 29.1;
if (distance <30) { // 更改长距离或短距离的数字。
Serial.print("正确的距离");
Serial.print(距离);
mp3.playFileByIndexNumber(3);
}
}
void center(){
delay(500);// 读取将在 ....毫秒后进行
序列号.println("\n");
int 持续时间,距离;
数字写入(center_trigPin,HIGH);
延迟微秒(10);
数字写入(center_trigPin,低);
持续时间=脉冲输入(center_echoPin,HIGH);
距离 = (持续时间/2) / 29.1;
if (distance <30) { // 更改长距离或短距离的数字。
Serial.print("中心距");
Serial.print(距离);
mp3.playFileByIndexNumber(1);
}
}
-
超声波传感器
+关注
关注
18文章
583浏览量
35929 -
Arduino
+关注
关注
188文章
6469浏览量
186960 -
障碍物检测
+关注
关注
0文章
3浏览量
2597
发布评论请先 登录
相关推荐
评论