0. 引言
近年来,随着网络通讯技术,电子技术,计算机技术的迅猛发展,人们对生活质量提出了更高的要求,现代化的家居环境也备受人们的关注。目前,国内的智能家居系统主要集中在对单个住宅分散的子系统的控制上,这些子系统功能上比较单一,很难实现信息共享,不便于进行集中管理。本文针对目前国内智能家居系统的局限性,提出一种基于gprs无线技术的智能家居系统,不仅能对小区多个住宅内的安全状况进行实时监控,还实现了“三表”(即水表、电表、燃气表)的远程抄送。
1.gprs技术简介
gprs(general packet radio service),即通用无线分组业务,是一种基于gsm系统的无线分组交换技术,面向用户提供移动分组的ip或者x.25连接。与gsm电路交换数据相比,gprs在数据业务的承载和支持上具有非常明显的优势:资源共享,频带利用率高,用户只有在进行数据传输时才占有系统资源;数据传输率高,gprs采用分组交换技术,每个用户能同时占用多个无线信道,同一无线信道又可由多个用户共享。理论上,gprs最高传输率可达171.2kbit/s;支持x.25协议和ip协议,可与现有的数据网络进行互通互连;用户永远在线且按流量、时间计费,通信成本低。由此可见,将gprs技术应用于智能家居系统的数据传输是最理想的选择。
2.系统功能及总体结构设计
2.1系统实现的功能
该系统主要是针对普通住宅小区家庭用户而设计的,它可以对小区内用户住宅内安全状况进行集中监控和管理,同时还实现了门禁及抄表功能。用户可以根据自己需要进行监控状态、监控参数的设置。系统实现了以下功能:
(1)家居安防监控:当小偷闯入住宅或者有火灾、燃气泄漏等危急事件发生时,监控终端能实时地监测到险情,向监控中心发送告警信息,监控中心则以gsm短信的方式通知户主。
(2)家居安全状况远程实时监控与查询:主人离家在外,可通过发送手机短信的方式来查询家中安全状况信息。
(3)现场图像抓拍功能:在设防状态下,当红外传感器或者门磁触发告警时,系统将启动图像抓拍器,对现场进行拍摄,所拍摄的图像通过gprs网络发送到监控中心的主机上进行备份。用户也可以通过发送送机短信的方式来启动图像抓拍的功能。
(4)“三表”远程自动抄送与门禁功能:可以定时或主动读取用户家中的水表、电表、煤气表的用量,并根据相应价格计算费用。当有刷卡开门事件时,判断卡合法则允许进入。
2.2系统总体结构
智能家居系统由监控终端,gsm短信收发模块,监控主机三部分组成。监控终端硬件采用arm7平台,软件采用嵌入式实时操作系统vxworks。监控主机是一台运行监控管理软件的pc机,一般置于小区的物业管理中心。图1是整个系统架构图。
图1 系统架构
系统工作时,监控终端循环检测安装在室内的门磁、红外、烟雾、燃气监测等传感器,当检测到有异常情况发生时,终端控制警笛发出告警声音,提醒户主及物业管理人员有险情发生并采取防范措施。另外,监控终端还通过gprs网络向监控中心发送告警信息。当终端检测到门磁或红外告警时,将启动图像抓拍器,对用户室内现场进行连续拍照,拍摄到的图像终端先进行缓存,再通过gprs网络发送至监控主机,监控主机将图像以文件的形式进行备份。
监控终端还循环接收监控主机下发的数据请求命令,终端对这些命令进行解析。如果是查询传感器及门磁状态,监控终端对相应传感器的状态进行检测,向监控主机返回传感器的状态信息;如果是查询水表、电表或者煤气表的用量命令,监控终端根据“三表”的rs-485协议,构造查询帧命令,发送相应的查询命令,将“三表”返回的数据按照系统的通信协议打包,通过终端上内置的gprs模块发送到监控主机。监控主机接收到终端发送的数据后,先对数据帧进行解析。若是告警信息,则监控主机将根据不同的告警播放相应的告警提示音,提醒管理员作出处理。当有告警发生时,监控主机通过rs232接口输出at指令,控制外置gms模块向系统预先设置好的住宅主人的手机号码发送告警短信,通知户主家中有警情发生。同时,监控主机还将把告警事件以日志的形式记录下来,以便事后对告警信息进行查询;当接收到的数据帧是抄表命令返回的数据时,主机将把数据写入到系统数据库。同时,在显示界面上弹出一个新窗口,显示户主信息、查询时间、表的用量、相应费用等信息。
3.系统硬件设计
监控终端的原理图如图2所示。
图2 终端原理图
终端硬件采用的是嵌入式硬件平台,cpu选用三星公司的基于arm7tdmi内核的s3c440x微处理器,该处理器是三星公司专为pda和一般应用开发提供的高性价比和高性能的解决方案。经过性能与成本的综合考虑,gprs模块选用明基公司的 m22模块。该模块可工作在三种频率下:900/1800/1900mhz。支持语音通信,具有gprs、ussd和csd三种数据方式及sms和fax功能;内嵌tcp/ip协议,软件支持标准at 指令并遵循3gpp 27.07/27.05规范。
s3c44b0的io口的d口扩展了三个按键,它们是设防键、开门键、消告警键。按下设防键,cpu检测到io口为低电平,系统进入监控状态。该状态下,系统将循检测门磁及所有已经安装的传感器。由于选用的传感器输出电平为0v或12v,而s3c44b0的外围接口电平为0v~3.3v,传感器的输出需经光耦隔离后连接至cpu的io引脚。采用光耦隔离还有一个作用:在雷雨天气,传感器输出导线很容易引入雷电,导线上会有瞬时高压脉冲,用光耦将传感器的输出与cpu的io口隔离后,起到保护cpu的作用。当监测到开门键按下,电控锁吸合,门将打开,此时为合法开门状态,不会产生告警。如果是在监控状态下,门被强行打开,则门磁输出由低电平变为高电平,cpu检测到门磁传感器输出高电平,产生告警,cpu控制gpd3口输出低电平,触发警铃产生告警音。告警发生时,cpu通过uart0发送at指令来控制gprs模块,经gprs网络向系统监控主机发送告警信息,监控主机对告警信息进行分析处理。m22模块与cpu采用115200bps的波特率进行通信。它们之间的接口比较简单,只需要将接收和发送两个引脚进行连接。考虑到本系统运行过程中需要保存大量的事件日志,如“三表”查询的数据、告警事件日志以及告警抓拍到的50张图像等,系统扩展了大容量的外部存储器hy57v641620(容量为8mb的sdram),sst39vf1601(2mb的flash)。其中sdram主要负责程序运行以及中间数据的保存,2mb的flash主要负责源程序的保存以及一些掉电需要保存的历史数据,事件日志、图像数据等。
图像抓拍器的主要作用是当有盗情发生时,进行现场抓拍。目前在国内市场上已经有很多该类型的产品。我们选择了深圳安信阳光科技有限公司的彩眼 hrm600gj图像抓拍器。hrm600gj自带以太网接口。hrm600gj在接收到s3c44b0发来的拍照命令包后进行连续拍照,所拍摄的图像为静态jpeg格式图象,解析度为320×240,图像经过网口发送给arm处理器等待处理。由于s3c44b0片内并不带以太网接口,因此必须扩展一片以太网接口芯片实现彩眼和 arm处理器之间的互连。这里我们选用比较常见的也是性价比相对较高的rtl8019as作为以太网接口芯片。
sn75lbc184是rs485驱动芯片。我们将s3c44b0的第二个串口(uart1)扩展为系统的rs485总线接口。该接口是cpu与“三表”及刷卡器等设备的通信接口。cpu按照主从模式与“三表”进行通信。cpu定义为主设备,“三表”为从设备。主从设备都有唯一的设备地址,通信时,主设备向指定地址的从设备发查询命令,从设备返回当前数据给主设备。
4.系统软件设计
4.1终端软件
传统的单片机程序设计基本上都采用顺序结构,实时性低且cpu对资源的利用率不高。这里,我们采用了嵌入式实时操作系统vxworks,它是美国风河(windriver)公司于1983年设计开发的一种嵌入式实时操作系统(rtos)。终端软件设计包括针对系统硬件平台进行的操作系统的移植和在vxworks平台上应用程序的设计两部分。操作系统的移植的重点也即难点是bsp(board support package)的设计。vxworks本身提供了针对许多处理器的bsp,但针对s3c44b0的bsp并未提供。在设计系统bsp时,我们首先仔细研究了其中一种bsp代码范例,了解并掌握了bsp的结构,然后在风河公司针对arm处理器提供给用户的bsp模板的基础上设计了本系统的bsp,限于篇幅,对操作系统的移植部分本文将不作阐述。
监控终端的应用程序采用模块化的设计思想。由于vxworks支持多任务,我们将每个功能模块以一个任务来实现。从时间上看,各个任务处于并行运行的状态,极大地提高了系统对事件响应的速度,有效地提高了cpu对资源的利用率。终端应用程序包含五个任务,分别是:消息处理任务、传感器检测任务、gprs通信任务、rs485总线设备通信任务、按键检测及处理任务。除消息处理任务以外,其它五个任务优先级相同。vxworks中任务优先级从0到255,0为最高优先级,255为最低优先级。我们将消息处理任务优先级设定为90,其它四个任务优先级都设定为100。这样可使消息处理任务尽快的处理其它任务发送来的消息,提高系统对外部事件的响应速度。下面分别对各个任务所实现的功能进行简要的介绍。
(1)消息处理任务
该任务循环检测自己的消息队列,当有其它任务发送来的消息时,读取消息,对消息进行解析,确定事件类型,然后调用事件相应的处理函数进行处理。本系统定义了多种事件类型,主要有如下几种事件:传感器告警事件、设置终端参数事件、传感器状态请求事件、刷卡开门事件、水表数据查询事件、电表数据查询事件、煤气表数据查询事件和按键设置事件。
(2)传感器检测任务
在任务运行的时间片内,首先判断系统当前所的处状态,如果系统处于设防状态,那么cpu将对室内所有已安装传感器进行循环检测。如果系统工作在撤防状态下,那么只对烟雾、煤气传感器进行检测。当任务检测到某一传感器的输出达到系统设定的告警阈值时,将向消息处理任务的消息队列发送一条传感器告警消息,消息中包含传感器通道编号。
(3)gprs通信任务
此任务完成gprs模块的初始化、终端与监控中心建立连接以及数据通信功能。
(4)rs485总线设备通信任务
任务完成“三表”数据的读取以及用户刷卡检测功能。
(5)按键检测及处理任务
该任务完成对终端上三个功能键的扫描。当其中某个按键被按下时,cpu检测到键值,向消息处理任务发送消息,消息任务将调用相应的处理函数进行处理。
4.3监控中心软件
监控中心软件采用borland c++ builder 6.0开发。它使用winsock控件接收和发送数据。中心软件采用模块化的设计思想,分别实现系统参数设置、操作员权限管理、用户管理、告警事件处理、数据库的维护以及数据打印和系统帮助等功能。
5.结束语
本系统实现了对住宅小区内多用户室内安全状况的集中监控与管理,还实现了对用户家中的水表、电表、煤气表的远程无线抄送。该系统在实用性、可靠性以及成本等方面取得了较为满意的效果。目前,本系统已经完成最后调试,即将进入现场试运行。由于系统在硬件设计上充分考虑到了不同的应用场合,留有较大的扩展空间,因此相信该系统将会有较为广阔的应用前景。
闲谈物联网如何引导数据往返
品质至上,助力国产化——中微(西安)电子有限公司
mm32-2nd-bootloader技术进阶设计:实现Ymodem更新代码
P10价格太尴尬!安卓旗舰手机调查:三星S8登顶,华为P10垫底
两款电源管理芯片PK,谁和电源适配器最“般配”?答案内详~
基于ARM及GPRS的智能家居系统的实现
三元次超声波振动筛电源发生器设计
光通信的最强进阶科普1
权威机构实证荣耀Earbuds 2 SE续航超32小时 未来每月荣耀将推出重量级产品
浅谈内置STO安全电路功能
2017年全球乘用车动力电池前三甲企业
中国首条车规级固态激光雷达产线落成
虹科华南国际工业博览会SCIIF风采
华为nova2新机发布是针对美拍市场,OPPOR11如何立足?
台湾厂商如何看待中美贸易战
今天小米发布红米note4x ,魅族会揭露什么真像?
刚性电路板的特点及与柔性电路板的区别
iPhone13发售 三里屯苹果店外顾客冒雨排队
什么是观察者设计模式?Golang中的观察者模式介绍
全自动焊接机出现焊点飞溅的原因及解决方法