APP下载

基于单片机和CAN总线的智能家居控制系统

2010-02-26四川西华大学能源与环境学院李晓虹刘克福

智能建筑与智慧城市 2010年1期
关键词:子程序楼宇智能家居

文|四川西华大学能源与环境学院 李晓虹 刘克福

基于单片机和CAN总线的智能家居控制系统

文|四川西华大学能源与环境学院 李晓虹 刘克福

本文针对智能家居系统集成度低,各系统间联系不大的状况,介绍了一种采用单片机为控制核心的,基于CAN总线的组网技术,并结合公用电话网络,设计了一种能够实现楼宇对讲、电话远程监控和多点报警等功能的智能家居控制系统。

智能家居 CAN总线 单片机 系统集成

1 引言

智能家居于20世纪80年代兴起于日本和欧美,于90年代末进入中国,伴随着经济的发展和人们生活水平的提高逐渐为国人所了解和接受。目前国内的各种智能化系统和产品较多,但各系统相互独立,集成度较低,彼此联系不大。比如楼宇对讲系统、安防系统、家用电器自动控制系统等,都各有自己的终端,没有统一的智能控制平台。对用户而言,这种状况增加了使用成本和操作的复杂性;对施工而言,则导致了重复布线。本文针对此种状况,设计一种采用单片机AT89C52为控制核心,利用原有的电话网络,将楼宇对讲、安防报警和电话远程监控系统集成起来,形成一个统一的智能控制平台,并通过CAN总线组网与门口机和管理机相连,能实现楼宇对讲、电话远程监控和报警等功能的智能家居控制系统。此系统操作简单,无需重复布线,成本有所降低,是一种真正适用于智能家居的系统。

2 智能家居控制系统的主要构成及功能

(1)楼宇对讲系统

楼宇对讲采用小区联网式系统,在各住宅单元门口及住户家中安装对讲系统,以实现访客身份验明和与住户对讲,以及住户远程控制开锁的功能,从而有效地防止非法人员进入住宅楼。

(2)家居安防系统

家居安防系统具有防盗、防火、远程监控及报警等功能。

(3)家用电器自动控制系统

家用电器自动控制系统的主要功能是控制家用电器、照明等电气设备。该系统能够实现本地集中控制家庭内部照明或家用电器,也可以在需要时通过电话远程控制家庭内部家电设备,节约能源。

3 智能家居控制系统硬件设计与实现

智能家居控制系统室内分机系统构成,如图1所示。该系统主要由单片机及其I/O口扩展部分、楼宇对讲部分、安防报警部分、电话远程监控部分、与CAN总线连接的节点部分,以及键盘、显示部分组成。

3.1 单片机及其I/O口扩展部分

单片机选用控制功能强大的AT89C52为主控制器,主要用于信号的采集、数据处理、控制信号的输出等,是整个控制系统的核心。由于本系统所需的I/O口较多,单片机本身提供的I/O口不够,故利用芯片8255对其I/O口进行扩展。其中8255的PA口工作于输出方式,用于对家用电器进行开关控制;PB口工作于输入方式,用于各种报警探测器的警情信号的输入;PC口用于扩展键盘。

3.2 楼宇对讲部分

为了满足楼宇对讲系统中各部分的功能要求,本系统使用三根I/O口线和一个开锁键。三根I/O口线中,一根做输出,用于控制对讲分机的振铃;一根做输入,用于检测对讲分机的摘机信号;一根用于控制对讲分机的模拟音频信号通道的控制继电器,使用户可以在其接通后通过音频模拟通道直接进行对话。开锁键设于键盘上,开锁信号通过CAN总线传到门口机,门口机接到开锁信号后控制开启楼门锁。

3.3 安防报警部分

安防报警部分的功能包括警情信号的输入、本地报警、本地报警显示、远程报警。警情信号包括各种探测器,如窗磁开关、门磁开关、被动红外传感器、煤气探测器、火灾探测器等的信号。各种警情信号都接到8255的PB口。本地报警是单片机通过I/O口控制蜂鸣器进行声音报警,同时由八段数码管显示器显示报警类别。远程报警包括远程电话报警和通过CAN总线向集中控制室的管理人员进行报警。

3.4 电话远程监控部分

实现远程监控的方案主要有基于Internet的远程控制、基于电力线的远程控制和基于电话网络的远程控制三种。前两种组网方案较为复杂,技术难度大,而且成本较高,对维护者技术水平的要求也较高。而电话网络是一种技术成熟、应用较广、成本低的通信网络,本设计采用电话网络实现远程监控。当家里有警情时,用户能通过电话实现远程报警。当需要远程控制家用电器时,用户可通过电话将控制信号送入单片机,单片机再通过8255的PA口输出控制信号,驱动继电器对家用电器进行开关控制。电话远程监控部分的电路主要包括三部分:信号检测、模拟摘挂机电路,用HT9170和HT9200A实现的双音多频DTMF信号收发电路,用ISD1420作为录放音元件的语音录放电路。

3.5 与CAN总线连接的节点部分

本设计利用CAN总线对等式的通信网络实现智能家居控制系统室内各分机之间,以及分机与总机之间信息的互通,具有各节点地位均等,无主从节点的特点。由于主控制器AT89C52型单片机本身不带CAN总线控制器,本设计采用SJA1000型CAN总线通信控制器和AT82C250型总线驱动器来实现单片机与CAN总线之间信息的互通。

3.6 键盘显示部分

键盘采用4×4矩阵键盘,共设16个按键,其中有十个数字键,其余的为设防按钮、住户呼叫对讲按钮、开锁按钮、确定按钮、清除报警撤防按钮和家电控制按钮,分别用于各种控制信号、呼叫/求救信号、开锁信号、撤防/布防信号的输入。显示器采用串入并出的74LS164移位寄存器来驱动一位LED八段数码管,进行控制参数或报警类别的实时显示。

4 智能家居控制系统软件的设计与实现

为使程序清晰可读且运行速率高,本系统软件采用模块化结构设计,由主程序和相关子程序(如键盘扫描子程序、显示子程序、语音提示子程序、拨号报警子程序、电器控制子程序等)组成。主程序流程如图2所示。该程序主要包括安防报警、楼宇对讲和电话远程控制三个模块。

主程序工作过程为:系统上电复位后进行初始化,待初始化完成,系统分别对警情信号、楼宇对讲呼叫信号和电话呼入信号进行检测,如有信号输入,则进入对应的处理模块。在安防报警模块中,设置延时程序以消除抖动和误报警,延时程序主要通过调用键盘扫描子程序实现。如果延时完成后仍有警情,则按顺序进行本地报警、通过CAN总线向中央控制室报警和拨号电话报警,从而实现多点报警的功能,将损失降到最低。楼宇对讲模块中,门口机的呼叫信号经CAN总线传到分机,分机检测到此信号后,接通对讲机振铃,然后再判断是否摘机,如没有摘机信号,则延时再判断。当住户摘机后,单片机输出信号控制音频通信线路的控制继电器接通,使住户与呼叫者得以进行通话。在通话期间,单片机判断其是否挂机,如挂机则返回,未挂机则调用键盘扫描子程序,判断开锁键是否按下,如按下则通过CAN总线和门口机进行远程开锁。电话远程控制程序模块的工作过程是当有电话呼入时,先检测是否振铃4次,再模拟摘机,摘机后放录音提示输入密码。如密码不正确,则模拟挂机;如密码正确,则放录音提示输入需控制电器的序号,然后检测其返回的控制信号,并调用电器控制子程序,进行家用电器的开关控制,完成后模拟挂机。

5 结束语

本文设计的智能家居控制系统充分利用单片机强大的控制功能和CAN总线灵活方便、可靠性高、通信速率高、价格低廉、组网容易等的突出特点,并结合现有的公共电话网络,对智能家居中各个相对独立的系统进行集成,实现楼宇对讲、电话远程控制、多点报警等功能。CAN技术是一种新的控制网络技术,与现有的成熟的公共电话网络相结合,必将在智能小区的应用中逐渐显示出其独特的优势。

1 李彬.浅谈智能家居——楼宇对讲系统的发展方向[J].安防工程商,2006(3):64~65

2 张洪润,刘秀英,张亚凡等.单片机应用设计200例(上册)[M].北京:北京航空航天大学出版社,2006

3 林华,薛昭武.基于单片机的智能电话报警系统[J].国外电子元器件,2007(5):12~14

4 王福瑞.单片微机测控系统设计大全[M].北京:北京航空航天大学出版社,2001

5 李金刚,刘永鸿.基于AT89C51型单片机的CAN总线智能节点设计[J].国外电子元器件,2006(8):26~29

猜你喜欢

子程序楼宇智能家居
通信生产楼宇建设项目造价问题分析
商务楼宇治理中党建融入的逻辑与路径——基于广州S楼宇的观察与思考
基于PLC的智能家居控制系统研究
基于Zigbee的无线通信技术在智能家居中的应用
智能家居发展或将实现弯道超车
智美兼具的精品——评测君和睿通Homates H10楼宇对讲室内门口机
浅谈子程序在数控车编程中的应用
高层楼宇灭火装备
智能家居更贴心
子程序在数控车加工槽中的应用探索