亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Blind Stick Navigator

组件和用品

1Sheeld
× 1
Arduino UNO
× 1
Android 设备
× 1
中继(通用)
× 1
切换开关
× 1
超声波传感器 hc-sr04
× 1
直流电机(通用)
× 1
跳线(通用)
× 1
9V 电池(通用)
× 1

应用和在线服务

Arduino IDE
1sheeld 手机应用

关于这个项目

故事开始时,我看到一个盲人正用传统的盲杖努力穿过路坑、楼梯等障碍物。尽管我在处理电子设备方面不够专业,但它确实促使我尝试构建这个原型。通过在互联网上使用不同类型的资源,我设法在去年的最后一年项目中完成了它。除此之外,我还通过添加 GPS 位置来增强原型。感谢 1Sheeld,它真的帮助我在 6 个月内完成了这个原型。

第一步

要开启盲棒导航器,它需要使用外部电源供电。我使用 9v 电池作为它如何关闭的介绍。据我所见,我的原型在提供长期电力使用方面存在劣势。因此,它需要以某种方式增强像太阳能电池板/电源。

步骤 2

使用连接到微控制器 Arduino Uno 上的 USB 电源适配器的电池为其供电后,监护人需要始终让蓝牙连接(Android 智能手机)连接到微控制器。然后,您需要打开已安装在智能手机中的 1Sheeld 应用程序并启用 GPS 和短信功能。

**是的,我知道盲人无法看到和访问智能手机,但至少如果我或你设法在 Android OS 智能手机上进行修改,它会变得更容易。我已经尽力寻找更好的提供盲文按钮的智能手机,但我失败了。因此,我希望将来能对我的原型进行升级。

步骤 3

根据上面的框图,如您所见,这就是设备之间的连接方式。这两个通电后,盲人就可以开始使用盲棒导航器了。根据对传统白手杖的观察,盲人总会绕着盲杖摆动,以得到周围环境的确认。但是,使用 Blind Stick Navigator,它将帮助他们在中低视线障碍物上获得振动通知。使用超声波传感器 HC-SR04 检测到的障碍物。它连接在棍子的上部和棍子的底部。我使用 PVC 管是因为,我可以将振动直流电机放在 PVC 管内。振动模式可以在使用 Arduino IDE 软件给出的代码中更改。

第 4 步

除此之外,Blind Stick Navigator 还可以提供盲人位置的经纬度。这是因为,智能手机充当提供者并为此过程提供 GPS 位置。拨动开关是为了让盲人更容易点击紧急按钮来通知收件人他/她已经迷路或处于危险之中。通过单击一次或几次,智能手机将发送一条消息,通知他们需要帮助,请根据 GPS 和谷歌地图链接搜索他。可以设置收件人的号码是只发送给盲人的权威或监护人。杆的长度可根据使用者的身高进行调节。对于这个原型,我使用了特定的长度,并且可以在代码中更改检测的长度。

第五步

最后但并非最不重要的一点,我希望我的原型在全球范围内使用或商业化,从而帮助盲人在旅途/生活中。此外,我真的很抱歉我的语法,因为我的英语不太好。我不知道在这篇文章中描述更多。我已经在附件中编译的所有信息。您可以根据我在下面提供的链接参考有关此项目的更多信息。

项目文件:

  • 第 1 年
  • 第二个五年计划

项目海报:

  • FYP 1
  • 第二个五年计划

项目视频:

  • 视频 1
  • 视频 2

代码

  • OneSheeldBlindStickNavigator
OneSheeldBlindStickNavigatorC/C++
#define CUSTOM_SETTINGS#define INCLUDE_GPS_SHIELD#define INCLUDE_SMS_SHIELD/* 包含 1Sheeld 库。*/#include #include #define trigPinL 4#define echoPinL 5#define trigPinH 6#define echoPinH #define Vib1 12#define Vib2 13#define SW 8/* 定义一个布尔标志。 */boolean isInRange =false;float lat;float lon;String PhoneNumber ="0134087286";String Message;String Message1;String Message2;char latitude[10];char longitude[10];void setup() { pinMode(trigPinL,输出); pinMode(echoPinL, INPUT); pinMode(trigPinH,输出); pinMode(echoPinH, INPUT); pinMode(Vib1,输出); pinMode(Vib2,输出); pinMode(SW,输入); /* 开始通信。*/ OneSheeld.begin(); // Serial.begin(9600);}void loop(){ long durationL, distanceL, durationH, distanceH, MixDist;数字写入(trigPinL,低); // 添加这一行 delayMicroseconds(2); // 添加这一行 digitalWrite(trigPinL, HIGH);延迟微秒(10); // 添加这一行 digitalWrite(trigPinL, LOW);持续时间L =脉冲输入(echoPinL,高);距离L =(durationL/2) / 29.1;数字写入(trigPinH,低); // 添加这一行 delayMicroseconds(2); // 添加这一行 digitalWrite(trigPinH, HIGH);延迟微秒(10); // 添加这一行 digitalWrite(trigPinH, LOW);持续时间H =脉冲输入(echoPinH,高);距离H =(durationH/2) / 29.1; // Serial.println(distanceL); // Serial.println(distanceH); // 延迟(1000); if (distanceL> 40){ digitalWrite(Vib1,HIGH); } if (distanceL <40){ digitalWrite(Vib1,LOW); } if (distanceH <100){ digitalWrite(Vib1,HIGH);延迟(200);数字写入(Vib1,低);延迟(200); } /* 始终检查智能手机的 GPS 和给定的经纬度是否在 100 米范围内。 */ //if(GPS.isInRange(30.0831008,31.3242943,100)) // { // if(!isInRange) // { /* 发送短信。 */ 纬度 =GPS.getLatitude(); lon =GPS.getLongitude(); Message1 =String(lat,8); Message2 =String(lon,8); if (digitalRead(SW) ==0){ Message ="我需要帮助!我在纬度:" + Message1 + "和经度:" + Message2; Message ="谷歌地图 - https://www.google.co.in/maps/place/" + Message1 + "," + Message2; SMS.send(电话号码,信息);延迟(3000); } // isInRange =true; // } // } // else // { // if(isInRange) // { /* 发送短信。 */ // SMS.send("+601123413946","智能手机不在范围内。"); // isInRange =false; // } // } 延迟(1000);}

示意图

OneSheeldTONGKAT.fzz

制造工艺

  1. TinyML-Language Detector-基于 Edge Impulse &Arduino
  2. Arduino Gyroscope Game with MPU-6050
  3. Arduino 数字骰子
  4. DIY 37 LED 轮盘游戏
  5. ATtiny85 迷你街机:贪吃蛇
  6. 便携式测距仪
  7. Arduino Audio Reactive Desk Light
  8. 智能人脸追踪机器人车
  9. 铜电镀
  10. NeoMatrix Arduino Pong
  11. 光序列创建器
  12. 智能插头