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

聋盲通信与 1Sheeld/Arduino

组件和用品

1Sheeld
× 1
Arduino UNO
× 1
Adafruit 标准 LCD - 16x2 蓝底白字
× 1
旋转电位器(通用)
× 1

关于这个项目

基本上,这个项目解决了盲聋沟通问题。

盲人唯一的交流方式是说和听,而聋人只能打字和看,所以就用它吧!

视而不见:

  • 对话 → 文字 → 显示

聋到瞎:

  • 类型 → 文本 → 语音

现在让我们将其转化为硬件。

第一步:硬件设置

  • Arduino Uno 或任何
  • LCD(对于本教程,我使用的是 16*2 的)
  • 智能手机
  • 电位器(10k 即可)

第 2 步:连接

为了能够使用 1Sheeld,您首先需要下载 1Sheeld 库并将其添加到您的 Arduino。此外,您需要将 1Sheeld 应用程序下载到您的手机并进行安装。您可以从 1Sheeld 站点获得:https://1sheeld.com/downloads/

请按照本教程了解如何将 1Sheeld 插入 Arduino 以及如何上传代码:https://1sheeld.com/tutorials/getting-started/

现在我知道电路可能看起来有点乱,但它是一个简单的 LCD 电路:

  • LCD RS 引脚 → 数字引脚 12
  • LCD 使能引脚 → 数字引脚 11
  • LCD D4 引脚 → 数字引脚 5
  • LCD D5 引脚 → 数字引脚 4
  • LCD D6 引脚 → 数字引脚 3
  • LCD D7 引脚 → 数字引脚 2
  • LCD R/W 引脚 → 地
  • LCD VSS 引脚 → 地
  • LCD VCC 引脚 → 5V
  • 10K 电阻端 → +5V 和地
  • 雨刷 → LCD VO 引脚(引脚 3)

现在交流如下:

视而不见

  • 语音识别→文本→LCD

聋到瞎

  • 键盘 → 文字 → 文字转语音

基本上,语音识别会将语音转换为文本,然后将其发送到 LCD,因此聋人可以看到它。文字转语音将把键盘上的文字转换成语音,让盲人也能听到。

您需要从手机上的 1Sheeld 应用程序中选择语音识别、键盘、文本到语音和短信屏蔽。使用短信屏蔽,我们将能够向远方的联系人发送消息。这是一个演示其工作原理的视频:

既然您对我们正在尝试做的事情有了很好的了解,那么让我们来谈谈代码吧。

第 3 步:软件

#define CUSTOM_SETTINGS#define INCLUDE_VOICE_RECOGNIZER_SHIELD#define INCLUDE_TEXT_TO_SPEECH_SHIELD#define INCLUDE_KEYBOARD_SHIELD#define INCLUDE_SMS_SHIELD#define INCLUDE_TERMINAL_SHIELD#quid1sgl INCLUDE_TERMINAL_SHIELD#quid1sgl2;int INCLUDE_TEXT_TO_SPEECH_SHIELD#define INCLUDE_TEXT_TO_SPEECH_SHIELD发送 =0;int i =0;String phoneNum =""; //在此写入电话号码 patternOne[6] ={1000, 2000, 1000, 2000, 1000, 2000};int patternOneSize =6;void setup() { OneSheeld.begin(); VoiceRecognition.start(); lcd.begin(16, 2);} 

基本上,只需添加我们将使用的库并初始化我们稍后将使用的一些变量。请记住,我们将使用振动传感器和变量 patternOnepatterOneSize 与它有关。我们还将使用短信屏蔽来进行长距离通信,这就是我们添加变量“phoneNum”的原因 ”,它将保存您将向其发送短信的电话号码。

 //盲到聋 if (VoiceRecognition.isNewCommandReceived()) { String msg1 =VoiceRecognition.getLastCommand(); //如果用户先说“sms”则远联系 if (msg1.substring(0, 3) =="sms") { String msg1f =msg1.substring(3); SMS.send (phoneNum, msg1f); TextToSpeech.say("发送短信");延迟(4000); } //密切联系 else { if (msg1.length()> 16) { lcd.clear(); lcd.setCursor(0, 0); for (int i =0; i <=16; i++) { lcd.print(msg1[i]); } lcd.setCursor(0, 1); for (int j =16; j <=msg1.length()-1; j++) { lcd.print(msg1[j]); } } else { lcd.clear();液晶。打印(味精1); } } 

你可以看到在这部分我添加了2个案例,远接触和近距离接触。对于远方的联系人,盲人需要先说“短信”。否则,它只会显示在 LCD 上。另外,LCD本身有两种情况,当消息超过16个字符时需要告诉它转到第二行,因为它每行只能打印16个字符。

void MsgBuild (char pC){ i++; if (sent <2) { if (pC =='S') { sent +=1;味精 +=电脑; } else { 发送 =0;味精 +=电脑; } } else if (sent =3) { i =i - 3; msg.remove(i); msg.toLowerCase();} 

现在这部分有点棘手,所以请耐心等待一段时间。如果使用键盘,将调用此函数。这个函数主要做两件事:首先,它获取你使用键盘输入的每个字符,并用它来构建稍后要发送的消息;其次,它会检查您是否要立即发送消息。我意识到我无法正确使用屏蔽键盘中的 Enter 按钮,因此我使用此代码发送消息:如果我连续单击“s”按钮 3 次。当然,您可以将其更改为任何其他按钮。和以前一样,对于远方的联系人,请先输入短信。

其余的代码是不言自明的。所以,我希望你喜欢它,如果你有任何问题,请在下面评论。

盲到聋人

示意图


制造工艺

  1. Arduino I2C 与 Raspi 2 WIOT 的通信
  2. 使用 K30 传感器监测二氧化碳
  3. 使用 Arduino 控制硬币接收器
  4. Arduino 带蓝牙控制 LED!
  5. 带有 Arduino 或 ESP8266 的电容式指纹传感器
  6. 玩 Nextion Display
  7. Nunchuk 控制机械臂(使用 Arduino)
  8. 4x4x4 LED 立方体,带有 Arduino Uno 和 1sheeld
  9. Python3 和 Arduino 通信
  10. 使用 Arduino 测量太阳辐射
  11. 带 Arduino 的迷你雷达
  12. 如何用 Arduino 制作音乐