历史上的今天
返回首页

历史上的今天

今天是:2025年03月16日(星期日)

正在发生

2021年03月16日 | 基于ARM的智能家居控制通信控制站的设计与实现

2021-03-16 来源:21ic

0 引言

物体信息化是现代社会信息化建设的“催化剂”和“增倍器”。只有走集成整合信息技术以及信息数据之路,企业的信息化建设才能真正发挥作用,才能进一步推动信息建设上水平。现代物体信息化的发展,直接刺激了新生事物的生长,物联网的出现,让IT业充满了挑战。


智能家居控制系统可以定义为一个过程或者一个系统。利用先进的计算机技术、网络通讯技术、综合布线技术、将与家居生活有关的各种子系统,有机地结合在一起,通过统筹管理,让家居生活更加舒适、安全、有效。与普通家居相比,智能家居不仅具有传统的居住功能,提供舒适安全、高品位且宜人的家庭生活空间。还将原来的被动静止结构转变为具有能动智慧的工具,提供全方位的信息交换功能,帮助家庭与外部保持信息交换畅通,优化人们的生活方式,帮助人们有效安排时间,增强家居生活的安全性,甚至为各种能源费用节约资金。设计是基于嵌入式Linux的智能家居系统。系统主要由GSM模块SIM900A、DSl8820、QM-2气体传感器、DHT11湿度传感器、光敏传感器、带触摸屏的LCD模块等构成。系统初始化正常工作后,定时采集传感器数据,若采集数据出现异常,则对室内的相应设备进行控制使其达到指定指标,并将所得数据选择性通过GSM发送或者报警达到有效控制室内设备的目的,也可通过短信方式控制室内设备运作。实物实验证明本系统运行稳定,符合设计要求。


1 系统结构

系统由ARM芯片S3C2440为控制中心,控制硬件和传输信息。硬件包括各式传感器如气体,光照,温度,湿度,防盗传感器,系统内部各层次通信的方式由多种通信方式组成如:GPIO,A/D采样,串口,Spi等;外部通讯方式由GSM通信模块和由ARM为核心的RJ45网口通信;显示器是由LCD加上电阻屏组成的液晶显示器界面终端。其系统框图如图1所示。

a.JPG

系统采用Linux操作系统为任务控制系统。

人机交互界面使用带有触摸屏的LCD液晶显示器,采用ARM内部自带的LCD驱动和电阻屏驱动硬件控制采集数据。


远程通信采用SIM900A模块,使用短信通信的模式,可以将系统的参数和用户的任务以短信作为载体来进行相应的交流。


声音模块采用了外置的芯片UDA1341TS,具有双通道声音输入输出的功能,和ARM通信采用IIS通信协议,快速抗干扰能力强。


传感器网络采用各式传感器,例如:温度、湿度、光照度、气体、防盗等等,通讯协议上由于通讯的方式不同所以为每一个传感器都制作了对应的通信驱动。


调节设备有温度调节设备、干燥设备,增湿设备、光照调节设备、通风设备、加热设备。


2 硬件设计

(1)温度传感器与降温装置

此模块主要通过DS18B20来采集家庭的各点温度所设计,其电路图如图2所示。

b1.jpg?imageView2/2/w/550

降温装置用来对空气温度进行调节,达到控制室温的目的,其电路图如图3所示。

b.JPG

装置使用延时继电器通过控制三极管的信号使继电器得电后导通电阻丝,当需要加热电阻丝时,将DIN引脚拉高,此时三极管导通,继电器线圈得电吸合开关,这时电热丝得电加热,等待DIN变为低电平时,继电器失电断开,此时开关断开,电热丝断电停止加热,为了防止陡然对电热丝加电和停电而使电热丝寿命减少,加上了电容保护。


(2)气体传感器与空气流通装置

气体传感器用来采集室内气体是否为有害气体,若为有害气体就启动排风机换风,气体传感器硬件电路如图4所示。

c.JPG

将模拟信号输出端送入到ARM自带的AD端口检测得到检测到的值即可。当调整好全桥电阻的阻值后,器皿传感器的阻值改变后会引起OUT1和OUT2的电势差改变,将此电势差输入ARM的AD模块进行采集和处理。若空气不符合标准便可以通过排风扇进行空气更新处理。

(3)光照传感器与室内亮度调节装置

光照传感器采用光敏电阻采集室内光照信息,并且通过判断光照度调节对应设备达到调节室内亮度的目的。

(4)湿度传感器与湿度控制调节装置

湿度传感器用来检测当前空气湿度,使用DHT11传感器,将采集的数据进行相应的分析,若超过额定值,便进行干燥处理。DHT11传感器是单总线协议,一根总线只能挂载一个DHT11传感器,读取的是已经转换好的湿度值,使用一个ARM的引脚控制一个DHT11传感器。

(5)人机交互界面

人机交互界面分为信息输入与输出,输入设备为电阻触摸屏,输出设备为采用VGA驱动的LCD显示器。

(6)GSM模块的通信与设计

GSM模块采用的是SIM900A通信模块,并采用增强型AT指令,其电路如图5所示。

d.JPG

系统采用的GSM模块作为与用户进行信息交换的途径,GSM采用串口通信,进行数据交换,其电源模块必须满足最大电流能够达到2A的直流电流能力,否则将会因电源功率不够而导致系统不稳定现象。


(7)系统电源设计

由于系统对于电能的特殊要求,所以必须使用分离式电源单独给予GSM模块供电。


3 软件设计

软件设计采用嵌入式Linux,具有较强的网络数据处理能力,嵌入式linux系统的构建包括驱动编程,内核裁剪,文件系统制作,应用软件制作等。


(1)嵌入式系统Linux的移植与分析

第一、编写对应的驱动程序,驱动程序是内核中的面向硬件层的程序,这些程序为上层软件提供抽象函数接口,通过这些函数接口可以间接地控制硬件,因此首先要将目标驱动编写出来,在本系统中需要SPI,USART,单总线,LCD,电阻屏等驱动接口。


第二、裁剪内核,将编写好的底层驱动程序加入到内核程序中后,需要通过make menueonfig软件对其进行配置,将需要的驱动加入到内核配置单里,通过make zImage制作出内核镜像。


第三、制作文件系统,利用busybox工具制作文件系统。


第四、将做好的内核和文件系统一次烧写到ARM硬件的对应区域,开机成功启动后配置目标板的FTP协议。


第五、编写任务程序,利用抽象的底层函数作为信息交换接口,利用C语言编写任务程序,将编写好的程序利用arm-linux-gcc进行相应的编译和连接,将编好的程序通过FTP下载到目标板调试。


(2)系统与任务构架结构

系统硬件层的驱动编写到Linux驱动中进行相应硬件操作,定时执行,系统层和抽象层中将底层的硬件抽象成为接口使用,上层的软件使用接口操作硬件执行任务。任务的优先级由右向左依次降低,最顶层的任务是反馈调节任务位于基本任务之上。


系统任务(按照优先级别排列):

①防盗监控②温度监控③湿度监控④气体监控⑤光照监控⑥排风扇加热⑦电灯喇叭⑧GSM通讯⑨RJ45通讯⑩LCD人机交互界面。


(3)GSM通讯协议

GSM采用SAM900A通信模块,使用短信通信方式,手机收到短信后通知串口接收数据,得到的数据编码方式如下:

f.jpg?imageView2/2/w/550

在这些短信编码中,将所需要的内容截取下来,便可以识别。在控制家庭智能终端的过程中所采取的指令方式也是采用编码方式,其中短信部分编码定义如下:

[优先级所代表的设备0-10][监控开关0/1][设定参数级别0-5][是否定时开启若不定时为0否则为分钟单位的1-255]

其中优先级所代表的设备就是任务优先级代码所代表的设备,控制开关将控制对应设备是否开启或者关闭,参数级别代表对应设备对应环境参数的控制区间0最窄5最宽,是否开启定时为设置开启时间单位分钟,若不定时则为0。


(4)系统安全策略

为避免他人恶意控制家具,在系统中加入了对应的密码服务,系统将会识别对应的手机号,对应的密码,识别之后才会执行对应的操作,否则将会记录恶意短信发送方的手机号码,以备调查之用。


(5)传感器反馈控制的通用程序流程图

在本系统中所使用的传感器检测与反馈调节方式是相同的,程序流程图如图6所示。系统初始化后,进入重复由优先级从高到低检测传感器对应的数据,并将数据与对应的参数进行对比,若监测数据符合事先所设定的参数,那么继续测试下一个传感器,若监测数据不符合,那么将检测数据分析,检测是否超过危险临界值,若没有超过就执行一般的对应处理反馈交互环境信息,若超过危险临界值就发短信给予用户并且咨询是否报警等应急措施。

e.JPG

●硬件控制分析:本系统可以使用Linux操作系统下的SHELL命令执行对应的命令控制对应的硬件达到检测硬件可行性的目的。采用如输入:openlight命令控制led的端口输出高电平驱动三极管,led灯就亮了;Lightoff命令控制led的端口输出低电平,led熄灭。在此可以检测到硬件控制达到了预期要求。

●短信收发数据分析:对于GSM通讯协议的测试采取实际短信功能的测试,通过手机发送如下格式的数据:

13995991-为发送方的手机号码的前8位

2-选定控制对象为温度监控设备

3-控制对象的参数选择为适中

200-定时200分钟后执行

测试结果为:在200分钟后执行了对应的操作,原先被关闭了的温度传感器设备被激活,能够在一定温度范围内反馈控制风扇吹风降温。


4 后记

本设计基于现有市场上智能家庭防盗设备进行再设计,并在硬件和程序设计上对现在智能设备存在的问题进行了一些改变,使之更加智能,更加便捷。体现在以下几个方面:

(1)后备电源及掉电检测报警,更好地防止盗贼进行盗窃之前切断电源。(2)采用Linux操作系统,升级维护更加方便快捷。(3)传感器网络中间使用控制中心进行定期监控。(4)程序上设计增加了手机号码校验,更好地防止了盗贼通过短信撤防的手段。(5)具有良好的反馈调节机制,可以在环境允许的情况下进行智能的对应的操作改善当前不良环境。


推荐阅读

史海拾趣

Flambeau公司的发展小趣事

为了进一步扩大市场份额和提升品牌影响力,Flambeau公司积极实施市场拓展战略。公司不仅在北美市场深耕细作,还逐步将业务拓展到欧洲、亚洲等国际市场。通过参加国际展会、建立海外销售渠道、与当地企业建立合作关系等方式,Flambeau成功地将自己的品牌和产品推向全球。同时,公司还注重品牌建设和客户服务,通过提供优质的售前咨询、售中支持和售后服务,赢得了广大客户的信赖和好评。

General Transistor Corp公司的发展小趣事

为了进一步巩固市场地位和提升竞争力,GTC开始实施并购整合战略。公司通过收购具有技术优势和市场潜力的企业,实现了技术、产品和市场的快速扩张。同时,GTC还积极寻求战略转型,从单一的电子元器件分销商和生产商向综合性电子解决方案提供商转变。这一战略转型为公司带来了新的增长点和发展机遇。

Eastman Kodak Company公司的发展小趣事

2012年1月,伊士曼柯达公司宣布申请破产保护。这一消息震惊了全球,也让人们不禁对这家百年老店的前景感到担忧。然而,在破产保护期间,柯达并没有放弃努力。公司积极寻求重组方案,通过出售非核心资产、削减成本等方式,逐步恢复了盈利能力。最终,在2013年5月,柯达成功退出了破产保护程序,开始了新的发展历程。

E-CMOS(飞虹高科)公司的发展小趣事

随着全球化趋势的加剧,飞虹高科公司意识到,要想在国际市场上取得更大的成功,必须与国际同行展开合作。因此,公司积极寻求与国际知名企业的合作机会,通过技术合作、合资建厂等方式,共同开发新产品、拓展新市场。这些合作不仅为公司带来了资金和技术支持,还帮助公司扩大了国际影响力,提高了产品的国际竞争力。

宇阳科技(EYANG)公司的发展小趣事

在MLCC领域取得显著成就的同时,宇阳科技也在积极拓展其他业务领域。公司利用在MLCC领域积累的技术和经验,成功研发了多款新型电子元器件,并为移动通信、计算机及外设、数字视听产品等领域提供元器件方案设计、选型和配套综合服务。此外,宇阳科技还积极进军移动手机市场,通过参股、合作等方式,成功涉足移动手机软件及硬件设计、制造和销售等领域。

CYANLITE公司的发展小趣事

CYANLITE公司一直秉持着绿色环保的理念,致力于推广节能减排的照明产品。他们不仅在产品设计上注重节能和环保,还积极参与各种环保公益活动,向公众普及LED照明的优势。这种积极的环保态度使得CYANLITE公司在市场上树立了良好的形象,也吸引了越来越多的消费者选择他们的产品。同时,公司还积极与政府部门合作,推动LED照明在公共领域的普及和应用。

问答坊 | AI 解惑

关于IO0PIN指令的疑惑

关于IO0PIN指令的疑惑 最近在调一个键盘程序(LPC2103),用到了IO0PIN读端口指令(据说这是飞利浦系列的BUG),发现这个指令没有手册上说的那么简单呐,直接读是读不出来的。有人说要读一个输入状态的端口,要先把它设为输出,然后置高,最后再设 ...…

查看全部问答>

为什么我的按键中断在程序启动的时候总自动进入

为什么我的按键中断在程序启动的时候总自动进入,不是按下按键以后,而是程序一运行的时候就自动进入中断函数,请问这是什么原因呢?…

查看全部问答>

?哪里有Wince5.0 Pocket PC SDK

微软下载中心验证我的操作系统不是正版下不下来,请哪为高手帮忙?急需非常感谢!!!!…

查看全部问答>

SIM卡费用问题

我以前没接触过GMS,现在正在开发一个项目,需要用到GSM短信。我手头有个GSM模块的资料,但里面没有有关SIM卡剩余话费。请问各位大侠都是怎么解决的?我希望如果话费余额不足能在软件中提前显示出来。…

查看全部问答>

怎样从内存中读取摄像头采集的数据保存成bmp格式

我已经从把摄像头采集的数据保存使用 mmap 内存映射来获取了图像,当用write函数得出的是jpeg格式的 我想得到bmp格式的图片怎么做,跪求,急用。谢谢各位。 …

查看全部问答>

用verilog HDL 实现网络加密算法md5

用verilog HDL 实现一个网络加密的算法(md5),有没有哪位高手能给点帮助,我邮箱是poppy220@126.com 先谢过啦!^_^ …

查看全部问答>

一个很莫名其妙的问题

最近刚刚开始接触STM32,今天调试串口的时候发现一个很无奈的问题,源代码基本都是使用keil自带的demo,就不列举了。修改以下这些设置:/* PLLCLK = 12MHz * 6= 72 MHz */     RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_6 ...…

查看全部问答>

STM32rtc有电池,确认起振后是不是就后顾无忧了?

                                 我的问题是如果我有外部电池给RTC供电,只要在厂测试RTC已经工作了后,只要电池有电就不会出现晶振不起振的情况吗 ...…

查看全部问答>

求指导

老师最近给了一个电动汽车电池管理系统(BMS)设计的方向,小弟有一点编程、数电、模电、fpga的基础。也看了一些BMS相关论文的论文,但始终不知道如何着手去做。 求高人指导,比如还应学习什么基础知识之类的…

查看全部问答>

想了想,还是把它出掉好了,STM32+W5100+SPI Flash+TFT,有点给力

这其实不是个开发板,而是个接近完成的产品(接近完成是指研发流程已经走完,但还未能进入市场)但资源比较给力--------------->    STM32ZET6,带外部总线于是可以用总线挂TFT--------------->    W5100,硬件TCP/IP协议 ...…

查看全部问答>