当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于Qt/Embedded触摸屏的智能家居控制系统

摘 要: 设计了一个基于Qt/Embedded 触摸屏的智能家居控制平台,并通过zigbee 组网的方式,实现家居的智能化控制。首先,智能家居的界面用Qt/Embedded 设计,然后,界面被移植到以ARM9 为微处理器的控制平台上,并实现界面的触摸屏功能;最后,通过串口驱动将设计的具有触摸屏功能的界面与zigbee 组网的协议连接起来,实现对智能家居控制的无线传输。

  1 引言

  随着生活质量的提高,家居智能化已经成为当今时代的一种主流。如何更好的设计智能家居的整体性控制就显得越来越重要。由于ARM 和触摸屏的迅速发展,采用更好的GUI,实现友好的界面控制成为了可能;同时由于zigbee 无限传输技术的广泛应用,通过设计zigbee 的协议组网,使ARM 能轻易的通过的串口驱动程序实现智能家居的控制;同时,通过ARM 对万能遥控器的识别码的学习,实现了ARM 在智能家居上的多功能应用和智能家居的一体化控制。

  2 系统设计概述

  基于嵌入式智能家居的设计结构框图如图1 所示。主要包括以下几部分。Qt/E 及linux 系统、ARM9微处理器、zigbee 模块、语音模块、GSM 模块、串口和网络模块以及万能遥控器。

图1 智能家居设计结构框图

  ARM9 微处理器采用Samsung S3C2440 CPU开发板,系统选择嵌入式linux 系统,其内核使用2.6.25.8 的内核,nandflash 采用256M 的内存。且由于arm 内核集成了多种外设控制模块的驱动程序,所以要对其进行必要的裁剪,串口用于连接zigbee模块。

  Zigbee 采用TI 公司的CC24430 无线射频芯片,zigbee 有显著的低成本、低消耗、网络节点多等的无线传输功能,所以可以将一个zigbee 作为路由,通过一个zigbee 向多个zigbee 传输的功能,实现zigbee 的组网的,也有效的延长了zigbee 的传输距离。

  网络模块采用CS8900A通过连接路由器,实现远程登入。

  3 系统软件设计实现

  系统采用linux 作为操作系统, 首先基于Qt/Embedded 进行图形界面的设计,再在宿主机上建立交叉编译环境,并制作yaffs 操作系统,最后将嵌入式linux 系统移植到ARM9 开发板上。系统通过设计GUI 界面,实现通过触摸屏对智能家居的一体化控制[1].文章软件部分包括嵌入式linux 操作系统的移植、系统界面设计、串口驱动和zigbee 组网设计。

  在ARM9 和zigbee 的传输过程中,有一个智能家居的单元端接口设置。为了区别于不同家庭之间的传输,首先ARM9 会有一个各自家庭的主机ID 号设置。在一个家庭的智能化控制上,给路由功能的zigbee 设计八个端口,每个端口有一个ID 号,然后其余的连接路由的zigbee 通过接受各自ID 号的分别传输信息,最后,这些zigbee 又分别设置各自的设备号,这样就去除了干扰,实现智能家居的单独控制。

  3.1 触摸屏和Qt/Embedded 交叉编译环境的建立

  在建立交叉编译环境之前先要进行linux 系统移植,Linux 系统的移植主要主要包括BootLoad 移植、内核移植与裁剪以及文件系统移植等部分[2].文章选用u-boot 作为BooLload 引导程序。Linux 内核由于其公开性,很容易实现其移植和裁剪。文件系统这采用yaffs 根文件系统。

  触摸屏和Qt/Embedded 的交叉编译环境的建立是linux 系统移植的关键部分。其步骤如下。

  第一步是进行触摸屏校正,设计中采用tislib-1.4作为触摸屏的校正。其分为两步:(1)编译tislib,产生校正文件。(2)是下载校正文件和库文件到arm 板,实现五点校正。其编译过程如下。

第二步是Qt/E 的交叉编译。设计中Qt/E 采用qt-embedded-linux-opensource-src-4.5.0.同时为了方便程序开发,需要安装X86 版和ARM 版。

  先在PC 上使用x86 版和qvfb 开发,完成以后再使用ARM 交叉编译放到开发版上运行。所以需要先解压一次,然后重命名为qt-embedded-linux-opensource-src-4.5.0-x86;再解压一次,并重命名为qt-embedded-linux-opensource-src-4.5.0-arm.Qt/E 的编译过程如下。

[!--empirenews.page--]

  最后,设置交叉编译环境变量,进入系统控制平台vi /etc/profile.写入环境变量如下:

  3.2 Qt/Embedded 编程

  打开Qt Creator,进入Qt4 GUI Application,分别建立了pro、mai.cpp、dialog.cpp 和dialog.h 文件[3].智能家居的图形用户界面图2,分为如图2(a)和图2(b)所示,下面先说明图2(a)。quankai-全开按钮主要是完成控制屋内所有灯光的打开;quanguan-全关按钮主要是完成控制屋内所有灯光的关闭;woshi-卧室、chufang-厨房、keting-客厅、卫生间-卫生间主要是当按下按钮时,会进入分别控制它们安装的具体设备的窗口;tianjia-添加、shanchu-shanchu 按钮是当添加新的设备和拆除设备时的控制功能。再介绍图2(b)。下面设置了一些设备,如deng-灯、chuanglian-窗帘、menci-门磁、meiqifa-煤气阀、kongti-空调,dianshi-电视、bingxiang-冰箱、xiyiji-洗衣机,当按下如图b 的按钮时,按钮会通过槽输出一个16 进制,这个16 进制将通过串口传输给zigbee,然后触发zigbee 中的控制程序,实现控制设备的作用。

  下面对几个重要的连接进行说明。图2(a)的说明如下:

图2 智能家居界面效果图。

 

(1) connect(PushButton. SIGNAL(clicked()),this, SLOT(open()))

  当PushButton 按钮按下时,zhinengjiaju 对话框接受信号,并执行open()函数,open()函数中写如程序,让其进入下一个对话框--zhinengjiaju1.下面是部分程序:

  图2(b)的说明如下:

  (2)connect(PushButton.SIGNAL(clicked()),this, SLOT(newslot()))

  当按下按钮PushButton 时,zhinengjiaju1 对话框接受一个信号,使newslot()函数发出一个16 进制。下面是部分程序:

[!--empirenews.page--]

  3.3 串口传输驱动程序

  ARM 和zigbee 主要是通过串口实现传输。界面设计完成后,通过触摸触发按钮,使按钮输出出一个16 进制,zigbee 通过串口驱动接受到按钮传输出的数据,使zigbee 中的程序工作。下面是部分串口传输驱动程序源代码。

 

3.4 zigbee 组网设计

  Zigbee 的组网主要是由zigbee 的协调器和向zigbee 的节点相互传输组成的。主要是用一个zigbee 作为路由,向这个zigbee 下载协调器的程序;再向其余的zigbee 下载节点程序,从而实现一个zigbee 控制多个zigbee 的传输过程。以下是部分的智能家居所有编写的的zigbee 的组网应用程序。

  4 结语

  在智能家居的设计中,一个友好的系统界面(GUI)是非常必要的,友好的GUI 界面更加方便用户的使用,也促进了系统的推广。通过ARM 和zigbee对智能家居的控制,很有效的实现无线传输控制功能,且由于ARM 可以对万能遥控器识别码的学习,可以很容易的设计出一种配合ARM 和zigbee 的遥控器,更家的完善了对智能家居的无线控制功能,更大的适应广大用户的需求。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

电容式触摸屏又称电容触摸屏,是一种生长在电子行业中的新型非接触式触摸技术,广泛应用在人机交互界面,实现与人机之间信息传递,它带动了科技发展,改变着日常生活。

关键字: 电容式 触摸屏 交互界面

在这篇文章中,小编将对智能家居控制系统的相关内容和情况加以介绍以帮助大家增进对它的了解程度,和小编一起来阅读以下内容吧。

关键字: 智能家居 智能家居控制系统

在这篇文章中,小编将为大家带来智能家居控制系统的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 智能家居 智能家居控制系统

随着汽车电子技术的飞速发展,汽车电子设备触摸屏已经成为汽车信息娱乐系统、导航系统、车载通信系统等设备的核心组成部分。然而,复杂的电磁环境对汽车电子设备触摸屏的电磁兼容性(EMC)提出了更高的要求。为了使汽车电子设备触摸屏...

关键字: 汽车电子 触摸屏 电子设备

触摸屏显示器是每个现代支付系统和销售点(POS)终端的重要组成部分。触摸屏极大地提升了支付终端的美观度,同时提供了一种对手机、平板电脑和触摸屏笔记本电脑的用户来说都十分熟悉的现代化控制方式。尽管触摸屏拥有这些优点,但也增...

关键字: 触摸屏 POS显示器

 上海2023年9月7日 /美通社/ -- 近期,“国家卫生健康委国际交流与合作中心·因美纳公共卫生教育奖学金”项目(下称,“公共卫生教育奖学金”)完成首批奖学金颁发。该项目是由国家卫生健康委国际...

关键字: BSP 控制 组网 网络建设

北京2023年8月18日 /美通社/ -- 近期,爱立信宣布推出全新的RedCap解决方案,并以此为契机,与芯片合作伙伴联发科技合作,在频分双工(FDD)和时分双工(TDD)频段上进行RedCap数据传输和5G语音通话测...

关键字: 爱立信 组网 联发科技 DC

现今我们常用的触摸屏可分为电阻式触摸屏、表面电容式触摸屏、红外式触摸屏、表面声波式触摸屏4 类。

关键字: 电阻 触摸屏 红外式触摸屏

电阻屏和电容屏的区别在原理、抗损能力、像素精度等方面

关键字: 电容 触摸屏 像素精度

生活中越来越多的事物开始需要用触摸屏操作,家电、车载导航等等。在日常生活中,触摸屏最常见的为电容式触摸屏,那么在操作它们的时候有什么注意事项呢。

关键字: 电容 触摸屏 车载导航
关闭
关闭