一、需求及项目准备
二、系统框图
三、硬件接线
四、语音模块配置
五、模块测试
一、需求及项目准备
- 语音接入控制各类家电,如客厅灯、卧室灯、风扇
- Socket网络编程,实现Sockect发送指令远程控制各类家电
- 烟雾警报监测, 实时检查是否存在煤气泄漏或者火灾警情,当存在警情时及时触发蜂鸣器报警及语音播报
- 利用APP控制人脸识别打开房门功能,并语音播报识别成功或者失败
- 局域网实时视频监控
- OLED屏实话显示当前主板温度、警情信息及控制指令信息
人脸识别使用阿里SDK支持Python和Java接口,智能分类时引入C语言的Python调用
此接口是人工智能接口,阿里云识别模型是通过训练后的模型,精准度取决于训练程度,人工智能范畴在常规嵌入式设备负责执行居多。
说白的嵌入式设备负责数据采集,然后转发给人工智能识别后,拿到结果进行执行器动作
二、系统框图
三、硬件接线
- 硬件准备:
USB充电头(当前实测可用:5V/2.5A)x1、USB转TYPE-Cx1、SU-03Tx1、烟雾报警模块x1、4路继
电器x1、 OLEDx1、 电磁锁x1(5V吸合开锁)、 蜂鸣器x1、小风扇+电机x1(需要自行购买)、面包
板x1、 5号1.5V电池x6 、 2节电池盒x1、4节电池盒x1、带3路led灯小房子(3.3V可驱动, 需自行
购买搭建) - 香橙派的引脚接线信息(注意硬件不要接错了):
- 4路继电器接线图:
- 面包板接线
四、语音模块配置
- pin脚配置:
- 命令词自定义基本信息:
- 命令词自定控制详情:
五、模块测试
使用以下下脚本可分别测试继电器控制的客厅泳池灯、卧室灯、风扇、烟雾报装置是否正常连接。会依
次触发灯的亮灭、电磁锁通断、风扇开关、蜂鸣器的播听及最后读取两次gpio的引进状态。 可通过查看
pin6最终确定烟雾报警模块在有烟雾的情况下的状态是否变为0。
I2C模块测试模块可以运行wiringOP中的oled_demo程序
test@test:~/wiringOP-master/examples$ make oled_demo
[CC] oled_demo.c
[link]
test@test:~/wiringOP-master/examples$ sudo ./oled_demo /dev/i2ci2c-3 i2c-4 i2c-5
test@test:~/wiringOP-master/examples$ sudo ./oled_demo /dev/i2c-3
[sudo] password for orangepi:
---------start--------
----------end---------
串口模块可先通过串口助手验证每个指令的准确性, 然后运行wiringOP中的serialTest程序(需
把/dev/ttyS2改成/dev/ttyS5)
然后语音接收到指令后(比如喊你好小美)会有6字节的输出,如下:
test@test:~/wiringOP-master/examples$ make serialTest
[CC] serialTest.c
[link]
test@test:~/wiringOP-master/examples$
test@test:~/wiringOP-master/examples$ sudo ./serialTest
[sudo] password for orangepi:
Out: 0:
Out: 1:
Out: 2:
Out: 3:
Out: 4:
Out: 5: -> 170 -> 85 -> 64 -> 0 -> 85 -> 170
Out: 6:
Out: 7:
Out: 8:
Out: 9:
Out: 10:
Out: 11:
Out: 12:
Out: 13: