张继伟
(福建电力职业技术学院机电系,泉州 362000)
本系统以STC12C5A60S2为主控制器,利用GSM 网络TC35模块结合组成无线通信系统,实现智能家居系统远程控制,系统可对8路数字量输入信号、4路模拟量输入信号进行命令和监控,以及通过8路继电器输出信号本地控制所连接的家电设备。并设置指令密码,只有密码匹配后才可以对系统进行控制。可结合实际传感器等输入/输出设备对电视、空调、电灯、热水器等智能家居设备远程控制及提供报警信息。
本设计采用STC12C5A60S2为核心控制芯片,各部分连接电路如图1所示。其中,IN0~IN7为8路输入信号,可采集8路数字信号,数字输入端子高电平有效,其电压输入范围为12~24V;AD0~AD3为4路模拟量信号采集,ADC 端子支持标准的电流或者电压信号,电压采集范围为0~5V,电流采集范围为4~20mA;Q0~Q7为8路继电器控制输出端,数字输出为继电器输出,可以驱动直流或交流负载,其输出最大电流为3A。
图1 STC12C5A60S2芯片及连接电路
本系统由PC 和单片机组成上位机和下位机,可通过VB上位机界面对各输出继电器连接家电设备进行控制,TC35模块输入/输出的TTL 正电平逻辑不是+5V,而是+2.9V,因此必要时加端口保护。单片机与TC35串行通讯连接只需要用一个TTL转RS232的芯片MAX232实现,TC35电平转换电路如图2所示。
图2 TC35电平转换电路
SIM 卡连接电路如图3所示。图4为TC35各引脚连接电路图,其中画出的部分引脚可悬空处理。单片机通过两根I/O 口控制TC35的开关机、复位等,通过串口与TC35进行数据通信,通信速率为9600Kbps,采用8位异步通讯方式,1位起始位,8位数据位,1位停止位。
本设计中电源部分设计如图5所示。模块的供电电压如果低于3.3V 会自动关机。同时模块在发射时,电流峰值可高达2A。在此电流峰值时,电源电压(送入模块的电压)下降值不能超过0.4V。所以该模块对电源的要求较高,电源的内阻+FFC连接线的电阻必须小于200MΩ。
图3 SIM 卡电路
图4 TC35引脚连接电路
图5 电源电路
外部数字量信号可通过8路光耦PS2805隔离输入电路,输入电压范围为12~24V,如图6所示。
图6 输入控制电路
本系统控制8路信号经光耦PS2805隔离继电器输出,可驱动直流24~30V或者交流220V的负载,其输出最大电流为3A。输出驱动电路如图7所示,继电器选用SRD-5VDC-SL,其中一路信号输出如图8所示。
图7 输出控制电路
图8 继电器输入驱动电路
本系统设计有4路10位ADC,输入量程为标准信号0~5V或4~20mA,并且具有输入滤波、保护电路,可以采集家电模拟量信号,如温度、温度等。其中1路信号电路如图9所示。
图9 模拟量输入电路
本设计采用VB6.0作为编译环境设计上位机程序,运用串口通讯控件MSComm,通过相关组件实现并编写数据的采集和输入/输出控制程序。
采用STC12C5A60S2作为下位机,通过串口发送数据进行测试。软件设计以Keil uVision3作为编译环境,用C 语言编写下位机程序,并将各部分功能以模块形式加入到程序中。
(1)短信控制继电器输出
上位机程序界面如图10所示,其中数字量输入模块可通过I0~I7将采集信号反馈至系统,可通过短信设置报警信息。数字量状态Q0~Q7分别对应继电器1~8输出动作。可通过上位机手动控制或通过手机短信控制对应8路继电器动作。
图10 上位机程序界面
本系统设置控制密码为“111111”,继电器的模块控制指令为“设备*开”、“设备*关”、回复短信为“设备*设置成功”,其中的*为通道数。继电器的开关命令及回复短信的内容通过配置软件修改的。
(2)模拟量查询
通过设置控制密码“111111”和模拟量的查询指令“通道*电压”,可以查询相应通道的信息。
(3)短信报警
本系统可实现数字通道报警,通过配置上位机软件设置报警手机号码,设置完成后,当数字通道的电压超过阈值时,主板就会向目标手机发送报警短信,短信内容可以通过配置软件修改。
下位机设计采用Keil C 编程软件对单片机进行编程,并实现串口数据采集与处理和数据传输功能。当系统上电后单片机启动TC35模块并完成初始化,等待短信到来,当有短信时单片机通过对串口数据读取并和程序内部事先编制的短信内容进行对比,如果与控制命令相符,单片机对信号进行编码查表,通过发送并接收电路完成继电器的启动和停止,并最终控制家电设备工作。单片机对TC35模块的控制采用AT 指令。单片机通过AT 指令对TC35模块进行初始化和短消息的接收发送。
对本系统各功能进行实验及测试。
1)继电器控制:可通过上位机的按钮控制继电器动作,也可以用短信模式控制输出。如远程控制第2路继电器动作,则向主板手机号码15059816067发送短信“111111*电灯开”,几秒钟后,控制系统中的第2路继电器吸合,对应上位机Q1数字量输出按钮亮显(见图10)。同时手机收到回复短信“电灯设置成功”,如果想要关闭第2路继电器,则发送短信“111111*电灯关”。同样的方法,可以控制主板上的其他继电器动作。
2)模拟量查询:采集第1通道的室内温度的电压值,则发送短信“111111*室内温度电压”,几秒钟后,收到回复短信,指示主板第1模拟量通道及当前的电压值。
3)短信报警:在设防状态下,当检测到输入探测器信号动作,通过数字通道1向设定号码发送“入侵报警”信号,软件配置如图10所示。
目前,通过测试,上位机软件运行可靠,手机短信采集信息和命令控制操作均达到系统设计要求,能够满足本系统控制功能。根据智能家居控制应用需求,可选用相应信号测控元器件,实现防盗、防火、防燃气泄漏等安全防范功能。
[1]西门子公司.TC35/37 Hardware Interface Description[EB/OL].http://wenku.baidu.com/view/e168c438376baf1ffc4fada1.html,2001.
[2]UTStarcom.AT Command Set-Siemens Cellular Engines [EB/OL].http://wenku.baidu.com/view/a345ac0d7cd184254b353553.html,2002.
[3]叶丹霞.GSM模块TC35及在远程监控系统中的应用[J].现代电子技术,2005(5):70-72,75.
[4]曾国敬.一种智能家居远程控制系统的硬件设计[J].电子技术应用,2011(4):89-92.
[5]杨虹.基于GSM网络的家电控制平台的设计[J].中国高新技术企业,2010(18):20-22.
[6]周艳丽.利用TC35i和PC机实现短消息的收发[J].现代电子技术,2007(15):195-197.
[7]田丰.基于TC35的无线传感器网络远程监控系统[J].计算机工程,2008,34(23):105-106.
[8]余炽业.一种智能家居远程监控系统设计[J].电测与仪表,2011(2):36-39.