目录
一、智能家居的核心框图大致如下:
二、详细结构:
主控芯片:树莓派
控制输入点有两个线程:
1.语音模块LD3320通过串口的方式将识别的指令传给树莓派。
2.我们的移动客户端通过TCP协议将控制信号传给树莓派。
外设——灯、火灾报警器、摄像头:
1.智能家居的灯直接由树莓派供电,通过对GPIO控制进而控制继电器组合就可以实现灯的控制。
2.火灾报警器直接由树莓派供电。
3.摄像头实现监控和人脸识别的作用,需要单独开一个线程。
单片机:
在某些场景由于主控制模块资源限制不能识别所有的功能进而增加一个子模块,通过对子模块的控制从而新增其他的功能满足需求。
1.红外和433m都通过串口与控制器相连,而树莓派只有一个串口,不能满足需求。
三、实现方法:
1.创建两个工厂:指令工厂和控制工厂
指令工厂:定义一个指令的结构体用来存放指令,同理控制工厂定义一个控制的结构体存放控制指令。
2.main函数:
初始化两个工厂的链表,创建三个线程(语音、TCP以及摄像头),然后就是对指令的遍历,通过指令找到对应控制工厂里面对应的控制动作从而实现对模块的控制。