嵌入式开发 > 详情

基于HT46RU232单片机的智能家居电话远程控制系统

发布时间:2020-07-03 发布时间:
|

利用现有的个人通信终端,实现基于陆基移动通信网(PLMN)和公用电话交换网(PSTN)的电话远程控制系统,将传统的个体电器进行智能化的统一管理和控制,如家用电器的定时开启、家居环境的监听等,可使人们尽情享受高科技带来的简便而时尚的现代生活[1]。
1 电话远程控制系统的功能与体系结构
1.1 功能

(1)远程家电控制功能。通过电话终端通信设备对家中电器实现远程控制,如控制电饭煲煮饭、空调开机等。
(2)自动模拟摘挂机。在规定的振铃次数内,认为是正常来电,可正常通话;超过规定振铃计数,系统自动模拟摘机。
(3)主人身份校验。密码操作。
(4)语音提示。按提示音操作。
(5)声音监听。通过电话遥控家中座机模拟摘机,监听家居环境声音,随时了解家中情况。
(6)电器延时开、关。控制家电开关机的定时时间,更好地服务主人。
(7)状态查询。随时查询家用电器的工作状态。
1.2 体系结构
本系统以单片机为核心,加上振铃检测与模拟摘机电路、声音监听与语音提示电路、双音多频信号DTMF(Dual Tone Multi Frequency)解码电路、密码存储及家电控制电路等构成,系统总体框图如图1所示。根据电话机和交换机发出的不同信号音以及电话线各种状态的不同要求,结合实际情况对具体的单元功能模块作出软件或硬件上的不同分工。其中,信号音检测、自动摘挂机、控制电器、DTMF解码及密码存储等功能模块使用硬件电路实现,而信号音计数、密码校验、信息分析、电器状态查询、密码修改等功能模块使用软件编程完成。

2 硬件系统设计
2.1 单片机系统设计

本系统的一大特点是采用了盛群公司的HT46RU232单片机[2]。HT46RU232是一款8 bit的精简指令集单片机,有4 096×16 bit程序存储器 ROM、192×8 bit数据存储器RAM、 1个8 bit和2个16 bit的具有溢出中断的可编程定时/计数器、八层硬件堆栈、有可降低功耗的HALT和唤醒功能等。不但运算速度快,集成功能强大,而且价格更便宜,非常适合于家用电器及工业控制。HT46RU232有28脚和48脚DIP两种封装形式(主要是I/O引脚数目不同),本系统根据实际需要选用28脚封装,使硬件装置体积大为缩小,系统性价比更高。本文主要给出应用电路设计,其芯片介绍可参阅参考文献[3]。
设计系统采用单片机最小系统方式工作,如图2所示。单片机外接晶振和复位电路,PA、PB、PC、PD 4个口全部用作外接电路的输入/输出。其中,PC0、PC1和PC2用于振铃检测和模拟摘机,PB口和PA4、PA6、PA7用于语音提示及声音监听,PA0~PA3及PA5用于DTMF检测;PC3和PC4用于密码存储,PD0和PD1用于电器控制。需要注意的是,HT46RU232单片机晶振频率采用的是4 MHz或8 MHz,而复位采用的是低电压复位方式,与80C51单片机系统不同。

2.2 振铃检测及模拟摘机电路
振铃检测及模拟摘机电路主要包括振铃检测、模拟摘机和摘机监测三个功能[4],如图3所示。

(1)振铃检测:检测有无铃流。在电话线路未来铃流前,电话线路由电话交换机提供约48 V的直流电压,直流信号不能通过电容C4、C9,所以光耦U3不起作用,振铃信号检测端PC2输出高电平。当用户被呼叫时,电话交换机发来振铃信号,振铃为25±3 Hz 的正弦波,以5 s为周期,(1 s送,4 s断),振铃电压有效值为90±15 V。振铃信号通过C4、C9,再经过光耦U3的隔离转换,输出很标准的方波。方波信号由PC2端口输入单片机进行计数,完成振铃音次数的检测。
(2)模拟摘机:当单片机的振铃计数达到预定的次数(振铃计数可以由软件设定)仍无人摘机时,系统即认为不是进行正常通话,而是要进行家电的远程控制。则单片机通过输出口PC0发出一个低电平,光耦U2工作,Q2基极得到一个高电平,Q2、Q1导通,平时48 V的高电压通过Q1、发光二极管D4和R27后降为7 V~8 V的低电压,从而实现了模拟摘机功能。
(3)摘机监测:电路中的DW1、R7、R26、C13、U6 组成电话线路摘机监测,平时电话线路的48 V电压使得DW1击穿,光耦U6工作,PC1输出低电平。当系统接收到振铃信号且达到规定的振铃次数后模拟摘机时,电话线路上电压由原来的48 V下降到7 V~8 V,此时DW1 截止,U6停止工作,PC1输出高电平。即单片机测试到PC1脚的高电平,就可确定系统已经模拟摘机,从而进行下一步的语音提示功能操作及DTMF解码工作。
需要注意的是,振铃检测与模拟摘机部分是电话网络的48 V高电压,与系统其他部分的5 V电压不同,必须隔离。单片机与本部分电路连接所用的I/O口都采用了光电耦合,语音电路输出给本部分电路的音频信号采用变压器耦合才能正确传输。
2.3 语音提示及声音监听电路
语音提示是系统的重要组成部分,能为用户提供直观的反馈信息,引导用户更好地进行系统的操作。语音芯片能将需要的操作规则事先存于芯片中,根据不同的DTMF信号产生不同的提示信息,从而完成控制整个系统的目的。由于需要存储的信息容量比较大,本系统选用了ISD2560语音芯片,其电路如图4所示。

声音监听和语音提示都由PA4进行控制,监测家居环境的声音信号由安置在房间内的MIC 话筒产生,而语音信号由ISD2560语音芯片输出。当PA4为高电平时,三极管Q7截止,对声音信号和语音信号没有放大功能;当PA4为低电平时,三极管Q6、Q12导通,继电器K3动作,K3触头控制ISD2560 Q7的SP-接地,三极管Q7 导通,对信号有放大作用。通过电话线传输,此时用户在远处通过电话或手机就可实现对家居环境的监听或者自动语音提示。
ISD2560是高度集成的语音芯片,可录60 s的语音信息,只需外接少量的阻容元件即可进行录放音操作[5]。本系统采用了硬件方式录音,录音前先给A0~A9赋值,然后再开相应的端口就可以实现录音功能,录音结束芯片内部自动在该段的结束位置插入结束标志(EOM)。在系统运行过程中根据需要,从相应的录音地址中取出对应的语音信号进行播放,遇到EOM 标志即自动停止放音,从而引导用户进行下一步的操作。
需要注意的是,本程序中涉及的放音地址不是语音输入地址而是PB口给语音芯片送的地址。
2.4密码存储电路
本系统采用EEPROM存储密码。为了减小电路的体积及单片机I/O口,存储器采用了AT24C02串行EEPROM芯片。该芯片有2 KB的存储空间,当系统掉电后密码也不会丢失。密码存储电路如图5所示。

AT24C02 的1、2、3 脚是三条地址线,用于确定芯片的硬件地址。在与HT46RU232连接时全部接地,第8脚和第4 脚分别为正、负电源。第5脚DATA为串行数据输入/输出,数据通过这条双向I2C串行总线与单片机的PC4进行数据传送。第6脚CLK为串行时钟输入线,与单片机的PC3连接。DATA 和CLK都需外接一个10 k?赘的上拉电阻才能正常工作。可通过软件编程对密码进行存储和修改[6]。
2.5 DTMF 检测电路
DTMF检测电路是整个系统的关键部分,其工作情况直接决定了系统的可靠性。DTMF编解码方式在电话拨号系统中应用非常广泛,其突出的优点是抗干扰能力很强。本系统采用专用的双音频解码集成芯片MT8870[7],其电路如图6所示。图中,PA5 为单片机的中断引脚,当MT8870 接收来自电话线的双音多频信号并准备好输出时,产生中断信号。MT8870的2、3 脚接收来自电话机的双音多频脉冲信号,该信号先经其内部的拨号音滤波器和滤除拨号音信号,然后经前置放大后送入双音频滤波器,将双音频信号按高、低音频信号分开,再经高、低群滤波器,幅度检测器送入输出译码电路,经过数字运算后,在其数据输出端(11~14脚)输出相对应的8421 码。MT8870 的数据输出端Q1~Q4连到单片机的PA0~PA3口线上,由单片机识别出4 位代码。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
定时器CTC模式的测试