嵌入式开发小项目,基于树莓派和WemosD1实现语音远程控制空调
文章目录
前言
需要注意的是,此项目的语音远程控制,要求服务端和客户端连入的网络必须是在同一个局域网,例如我们连入的是某个wifi热点,那么服务端和客户端必须连入同一个热点
一、硬件和软件的准备
硬件准备
- YS-LDV7语音模块(接收用户指令)
模块使用手册链接:https://pan.baidu.com/s/1RxtzXfWsjEHqNS2Dg1RQPw
提取码:3ksi
模块源码(用于二次开发):链接:https://pan.baidu.com/s/17AZKSSlAn-bZNYx_fK72bQ
提取码:3ksi
2. 树莓派开发板(作为客户端)
-
WemosD1开发板(作为服务端)
-
YS-IR05F红外解码模块(接收空调遥控器的红外码)
模块使用手册链接:https://pan.baidu.com/s/1DUFbMlG_neQhfH0xcLovCw
提取码:3ksi
复制这段内容后打开百度网盘手机App,操作更方便哦
- USB转TTL模块(用于配合stc-isp-15xx-v6.87H软件以及YS-lR05F模块来接收红外码)
软件准备
-
mobaXterm(使用SSH通信协议连入树莓派进行客户端编程)
-
arduino(WemosD1服务端编程)
-
stc-isp-15xx-v6.87H(调试语音模块是否准确输入输出)
4.Keil4(用于对YS-LDV7进行二次开发,修改模块部分源码,具体修改参照该模块的手册)
二、实现方法图
三.步骤
1.收集红外码
使用USB转TTL模块、YS-lR05F红外模块以及stc-isp-15xx-v6.87H软件接收红外码。红外模块接收信号参照上面的使用手册,即可完成红外码的收集。
2.对YS-LDV7语音模块二次开发(参照手册修改部分源码)
3.制作服务端
(1)使用WemosD1开发板、aduino开发软件,以及一根有源数据线。连入电脑,若连入电脑未检测到串口,打开控制面板->设备管理器看看是否有安装串口驱动,没有则需要安装
链接:https://pan.baidu.com/s/1hU7-UkNr4lsIY83l3tltcQ
提取码:3ksi
(2)打开aduino编程软件对WemosD1服务端编程(编程模块见上述与实现方法图,具体代码从略)
4.制作客户端
(1)使用mobaXerm软件中的SSH服务连接树莓派(SSH连接协议需要保证树莓派和电脑连入的网络在同一个局域网)
(2)连接树莓派进行通信编程(实现流程见上述实现方法图,代码从略)
5.客户端连接服务端,实现控制,控制流程如下
用户说出两端指令——>YS-LDV7语音模块收到指令——>语音模块将指令发送到树莓派串口——>树莓派收到来自串口的指令,给WemosD1发送消息指令——>WemosD1收到来自树莓派的消息指令,给自身串口发送红外码——>YS-lR05F红外模块收到来自WemosD1串口的红外码,给空调发射红外信号