本网页已闲置超过3分钟,按键盘任意键或点击空白处,即可回到网页

基于Arduino自制PECS通讯板

发布时间:2021-07-20
分享到:

基于Arduino自制PECS通讯板

发布时间:2021-07-20
分享到:

图片交换通信系统 (PECS) 允许具有很少或没有通信能力的人使用图片进行通信。使用 PECS 的人被教导接近另一个人并给他们一张想要的物品的图片以换取该物品。通过这样做,该人能够发起通信。

患有自闭症的儿童或成人可以使用 PECS 来传达一个请求、一个想法或任何可以合理地显示或象征在图片卡上的东西。

我知道你可以买到这样的板,但它们不够便宜或不够灵活。

您也可以使用平板电脑,但 Scott 已经砸坏了 2 部智能手机和我的平板电脑。这个坚固,便宜并且有很多选择。所以你也可以只做几个。

优点是按钮被分配给单独的 mp3,然后您可以轻松地交换它们。您还可以为 PECS 使用任何语言。如果您不想自己录制单词,也可以使用文本转语音并将其下载为 mp3。

项目演示:

  第 1 步:设计和 CAD 文件

我选择了这种形状和大小,这样它就可以很好地拿在手里,而且符号很容易看到。按钮大小也非常适合运动技能差的人。

我在 Sketchup 中画了一个案例以更好地了解它。

由于零件是用 3 毫米 MDF 激光切割而成的,因此我做了一个分层结构。

然后我在 QCAD 中绘制了所有零件并将它们激光加工出来。要将它们与我的激光切割机一起使用,我必须将 dxf 文件转换为 svg 文件。所有文件都在这一步,也可以在这里下载。

第 2 步:外壳

外壳由经过激光切割的 3 毫米 MDF 板制成。当然,它也应该与业余锯一起使用。

第 1、3、4 和 5 部分粘在一起。将 3 毫米螺母插入第 4 部分。这些螺母用于稍后用 3 毫米螺钉固定盖子 2。
然后将 1、3、4 和 5 的结果粘到 8 上。6,8 和 9 也粘在一起,3mm 螺母也插入 8 中。这些将盖子 7 固定到位,因为这是可拆卸的以更换盖子床单。

第 3 步:键盘矩阵

对于十六个按钮,我制作了一个 DIY 薄膜键盘。自粘垂直铜条粘在底部。

上侧由粘合剂铜箔组成,从活页粘合剂水平粘贴到塑料板上。纸板用于分离两个箔。然后电线现在可以焊接到铜条上,四个焊接到背面,四个焊接到膜上。

第 4 步:封面

带有图片的封面只是一张打印的图片,已经为其创建了模板,这样您就可以毫无问题地自己制作它们。然后,将纸张简单地密封在层压箔中,以保护图片免受磨损。

或者,您也可以在正面贴上透明薄膜。

沿着黑线剪掉。

现在插入纸张并拧上盖子。

第 5 步:电子产品

所有电子设备都安装在 PECS 板的背面。整个事情的核心是一个运行在 8MHZ 的 Arduino Pro Mini,所以它只需要 3.3V。带有微型 SD 卡的 DF 迷你播放器负责声音。

TP4056 充电模块对电池进行充电和控制。

充满电的 LI IO 电池的最大电压为 4.2 伏。Arduino 和 DF 迷你播放器仍可在 3.2 伏电压下工作,因此一切都非常适合电池操作。

DF迷你播放器有2瓦的输出功率,已经足够了。它的 TX 和 RX 线连接到 Arduino。这允许微控制器直接检索文件。我在这里为 DF mini 编写了一个小手册。它的 USB+ 和 - 线焊接到 USB 连接器上。这样就可以将 MP3 直接从 PC 写入 SD,而无需将其删除。同时,电池通过USB连接器充电。矩阵的8根线也焊接到Arduino上。微控制器上的分压器监控电池状态,并在 3.3V 时发出“电池电量低”警告。

Arduino Pro Mini 的 VCC 用于为控制器供电,因此我绕过了 3.3V 稳压器。通常,使用 RAW 输入,这对于 3.7V 电池操作没有意义,因为我必须在这里施加至少 4 伏的电压。充满电的电池仍然可以工作,但不会持续很长时间。

5 毫米 LED 已被磨平,因此它不会在前面突出,并且光线现在是漫射的。

零件清单:

  • 1x Arduino Pro Mini 3.3V 8Mhz
  • 1 个 DF 迷你播放器
  • 1 个微型 SD 卡
  • 1x TP 4056
  • 1x 扬声器 8Ohm 40mm 直径
  • 1x 电池 3.7V 1700mAh(可多可少安培)
  • 1x 微型 USB 分线板
  • 1x 微动开关
  • 1x 5mm LED
  • 1x 220R 电阻器 R3
  • 1x 12k 电阻器 R2
  • 1x 33k 电阻 R1

该软件可以在这里找到https://github.com/awall9999/ScottCom

第 6 步:软件

我在 Arduino IDE 中使用了几个选项卡来保持编程更清晰。

下面是函数的一些解释


如您所见,该软件由主程序(Tablet-Mini03)、BattMonitor、Matrix 和 PlayVoice Tab 组成。

主程序定义了所有使用的变量。否则,它会检查是否按下了某个键。计时器检查没有按键被按下的时间,以便在 5 分钟后通过声音提供信息,表明电路板仍处于开启状态 (030.mp3)。
每 3 分钟检查一次电池状态。如果电压低于 3.3V,则会播放电池电量不足警告 (020.mp3)。

BattMonitor使用主程序中的analogReference(INTERNAL) 工作。这会将测量参考设置为 1.1 伏。

R1 (12K) 和 R2 (33K) 用作分压器。这可以在这里计算:/https://www.peacesoftware.de/einigewerte/spannungsteiler.html

通过这种方式,Arduino 可以监控电池并在 3.3V 时将变量 BatteryLow 设置为 true。

矩阵,逐行扫描,然后每行扫描单个按钮。如果在扫描过程中按下了按钮,则会将其记录在 ResultMatrix 变量中。该值通常为“0”。否则,该变量包含按下的按钮的编号。

PlayVoice部分通过串行接口控制 DF MINI PLAYER。我没有使用现成的LIB,但我已经编写了自己的控制软件。
此选项卡由 3 个 VOID 组成。

void ResetVoice,向 DF Mini 发送复位序列。(停止声音文件) void VolumeVoice,设置音量。

void PlayVoice,播放之前设置的声音文件。

DFDataFile[] = {0x7E,0xFF,0x06,0x0F,0x00,0x01, 0x00 ,0xEF} 是传输到 DF MINI 的数据,其中第六个数据串定义了声音文件(粗体)。然后这个数据集通过 For 循环简单地发送到 DF MINI。

该软件可以在这里找到https://github.com/awall9999/ScottCom

第7步:DF迷你播放器中SD卡的文件结构

 

使用微型 USB 电缆将 Pecs 板连接到 PC

文件夹 01 在根目录中访问,但您可以创建多个,然后通过重命名在模板之间切换。

然后将 MP3 文件上传到文件夹中,其中 001.mp3 代表第一个按钮,016.mp3 代表最后一个按钮。
020.mp3 应包含指示电池电量低的文本(例如 Battery Low)。030.mp3 应包含指示该设备有一段时间未使用但仍处于开机状态的文本(例如,您好,您忘记我了吗? )。

免费文本转语音和文本转 MP3

https://ttsmp3.com/

第 8 步:PECS 委员会

这是原型。我已经对外壳进行了一些更改(已更新 cad 文件)。现在螺丝合适了,盖子上还加了一个。
对于组件的放置,我现在还提供了切口,以便一切都可以更好地固定到位。

然而,在外部,一切都没有改变。

目前,我在黑板上有音乐和声音文件,以便 Scott 可以学习如何使用它们。这似乎已经奏效了。

下一步将是将食物和饮料的图片放在 PECS 板上,以便 Scott 可以在餐桌上表达他的愿望。我也会试着和他练习颜色、动物或其他日常用品,让他有办法与我们交流。

第 9 步:要做的事情
添加了调节音量的可能性。
再次按下相同的按钮停止声音文件(这对于较长的文件可能是有利的)。
从 Arduino 上拆下稳压器和板载电源 LED,使板进入待机状态。通过移除这些组件,睡眠模式下的功耗将会降低。

这些将会更新在我的GITHUB上,欢迎关注查阅。

加入微信技术交流群

技术交流,职业进阶

关注与非网服务号

获取电子工程师福利

加入电路城 QQ 交流群

与技术大牛交朋友

讨论