基于Linux的智能家居的设计(2)

时间:2020-12-27 07:22:15


系统整体设计方案

智能家居系统的是一个实时查询家庭的温湿度、照明控制、自己主动控制的设定。集家庭娱乐、智能安防为一体,大量数据快处理、可靠的系统,因此在硬件和软件上都有非常大的要求,因此在这里进行了多方面的考虑有下面两个实现方案:

方案一:利用STM32单片机作为手持终端的控制器,使用按键和12864液晶屏作为人机交互的接口。利用51单片机作为房子内部的电灯、空调、门禁等家电的控制器,利用串口实现STM32单片机和51单片机作为传输数据的通道。这个能够实现。可是。机械按键和12864在智能家居中与实际的场景有些不符合。

方案二:利用ARM架构的S3C6410作为手持终端的主控芯片,以Linux系统作为平台,QT设计友好的人机交互界面。结合多个传感器进行採集。使用TI的CC2530作为网络传感器和房子内部电器的控制器。而且利用串口通信实现数据的交互,利用RFID的门禁钥匙。通过PC机上的client软件实现远程的智能家居系统监控[6]

比較以上两种方案。另外一种方案更为合理。Linux系统有非常多的优势:免费开源、内核可裁剪、网络功能强大且稳定、可靠安全等都方面的优势[7]

Qt设计支持多国语言、优良的跨平台特性、面向对象、丰富的API(包含图形设计器,Makefile制作工具、字体国际化工具、Qt的C++类库)、模块化、能够随意裁剪、大量的开发文档、XML支持等多方面的优势[8]。所以选择方案二。

本设计的总体系统框图如图1-1所看到的:

基于Linux的智能家居的设计(2)

图1-1 总体系统框图

硬件部分的结构框图如图1-2所看到的:

基于Linux的智能家居的设计(2)

图1-2 
硬件结构框图

这里的主控芯片是用于数据的处理和系统的控制,TFT液晶屏用于人机交互。协调器和主控芯片用串口通信实现家庭网络的数据交互。温湿度传感器採集室内的温湿度,光照度传感器採集光照度,通过终端节点将数据收集打包。发送到协调器,协调器通过串口将数据发送到主控制芯片,主控器进行数据处理在界面TFT屏上给出对应的信息。而且发出对应的指令控制空调和电机。门禁模块实现控制舵机的转动从而控制门的开关。