一款家用电器远程控制中的PSTN系统设计
摘要: 本文介绍的是一款家用电器远程控制PSTN系统设计。当需要对家用电气遥控时,可以拨打相应的座机电话号码,其振铃会检测电路并且也会检测龄流信号。当振铃次数达到5次后(次数可以通过软件任意设定),由单片机启动语音提示电路并发出提示音,询问是否进入家电控制模式,当有人接听电话或振铃次数少于5次,对程控电话的使用不造成影响。
1 系统工作原理
本文介绍的是一款家用电器远程控制PSTN系统设计。当需要对家用电气遥控时,可以拨打相应的座机电话号码,其振铃会检测电路并且也会检测龄流信号。当振铃次数达到5次后(次数可以通过软件任意设定),由单片机启动语音提示电路并发出提示音,询问是否进入家电控制模式,当有人接听电话或振铃次数少于5次,对程控电话的使用不造成影响。家电控制模式是按“O”键否,挂机退出,按“1”键是,摘挂机电路自动摘机进入控制状态并将摘机信号输入到单片机中。当单片机接收到摘机信号后会同时启动语音,提示电路发出提示音,并且提示操作者输入密码。操作者输入的密码经过DTMF接收后,转换成二进制数并与在单片机中存储的密码相比较。密码可输入三次,如果三次密码错误则发出错误提示音后并挂机,若密码相符,则语音提示选择控制通道(按键l、2分别表示1、2号通道)。选择通道后,按下“O”键表示关断该路电器,有提示音“该路电器已经关闭”;按下“1”键表示开启该路电器,并有语音提示“该路电器已经开启”;再按“O”键则可挂机退出。
2 系统组成
本系统由5部分组成,即振铃检测电路、模拟摘机电路、DTMF解码电路、通道控制电路和语音提示电路。其中振铃检测和解码均采用外部中断来实现,系统组成原理框图如图1所示。
3 系统硬件电路设计
3.1 振铃检测电路
3.1.1 原理分析
公用电话网的传输线路为二线模拟线路,采用直流环路信号方式,能向模拟话机提供直流馈电、振铃信号、话音数据、音频数据、双音频数据等。我国规定的标准为,话机在不通话时,电话线中的直流电压是48 V。当有电话呼入时,同时还有(25±15)V、25 Hz的正弦信号加在电话线上,所以向用户振铃的铃流电压为(75±15)V、25 Hz的交流电压。振铃以5 s为周期,即1 s送,4 s断。根据振铃信号电压比较高的特点,可以先使用高压稳压二极管进行降压,然后输入至光电耦合器。经过光耦的隔离转换,从光电耦合器输出的波形是频率较高的方波信号,然后再将该方波信号转化成便于LPC932计数的低频方波信号。
3.1.2 方案设计
采用稳压管、光电耦合器和反向器(晶体管9018),将一个周期的振铃信号转化成一个周期的方波信号,送入LPC932的INTO进行计数,其电路如图2 所示。
3.2 模拟摘机电路
3.2.1 原理分析
在设计该电路之前,首先介绍一下电话摘机的工作原理。用户话机的摘挂机状态,是通过对直流环路上电流的通断来实现的。用户挂机空闲时,直流环路断开,馈电电流为0;反之,用户摘机后,直流环路接通,馈电电流在20mA以上。因为程控电话交换机对电话摘机的响应,会使电话线回路电流突然变大约30 mA,所以交换机检测到回路电流变大就认为电话机已经摘机。
3.2.2 电路设计
通过单片机控制晶体管9013的通断,进而控制继电器的通断来实现模拟摘机。其电路如图3所示。
晶体管开关电路控制继电器的开关,继电器控制音频信号输入到解码电路进行解码。当挂机时,P1.3的电平通过CPU控制为低电平,T1截止,电路无法形成回路,没有电流(理想状态),交换机则认为电话线处于挂机状态。摘挂机信令由单片机通过使P1.3口变为高电平实现。改变晶体管T1的基极电压,使T1处于导通状态,从而吸合继电器K1,使音频信号通过K1输入到解码电路进行解码。这时电话线回路电流突然变大约30 mA,所以交换机检测到回路电流变大就认为电话机已经摘机,整个电路完成自动模拟摘机过程。
3.3 DTMF解码电路
3.3.1 原理分析
当用户在电话机的键盘上输入密码或按下控制按钮后,这些信息均采用双音频方式通过电话线发出。DTMF解码电路的主要作用是接收从TELO、TEL1输入的双音多频信号,并将其转换成二进制编码,然后输至单片机进行数据处理,进而实现控制功能。本方案采用双音多频(DTMF)解码芯片MT8870来对双音频信号进行解码,将其转化成二进制数据并输入CPU进行数据处理。
3.3.2 电路设计
由MT8870组成的解码电路如图4所示。
本电路采用的是MT8870双音多频解码芯片,能实现双音多频信号(DTMF)的解码。当接收DTMF信号时,模拟摘机后从TEL0、TELl进入的双音多频信号经过耦合隔离变压器耦合入MT8870的输入脚IN一;DTMF信号经运放、拨号音滤波器、高频组及低频组分离带通滤波器送到数字算法与编码变换器进行确认,译成相应的4位二进制码,存入接收数据寄存器,需要时通过数据总线Q1~Q4输出,送入LPC932的PO口。其中输入脚IN-和增益选择端 GS之间的反馈电阻可以调节运放的增益。
3.4 语音提示电路
3.4.1 原理分析
APR9600 语音录放芯片,是继美国ISD公司以后采用模拟存储技术的又一款音质好、噪音低、不怕断电、可反复录放的新型语音电路。单片电路可录放32~60 s,串行控制时可分256段以上,并行控制时最大可分8段。与ISD公司同类芯片相比,它具有价格便宜,有多种手动控制方式,分段管理方便,多段控制时电路简单,采样速度及录放音时间可调,每个单键均有开始、停止、循环多种功能等特点。
在APR9600芯片的内部,录音时外部音频信号通过话筒输入和线路输入方式进入。话筒可采用普通的驻极体话筒。在芯片内话筒放大器中带有自动增益调节 (AGC),可由外接阻容件设定响应速度和增益范围。如果信号幅度在100 mV左右即可直接进入线路输入端,音频信号由内部滤波器、采样电路处理后以模拟量方式存入专用快闪存储器Flash中。由于Flash是非易失器件,断电等因素不会使存储的语音丢失。
放音时芯片内读逻辑电路从Flash中取出信号,经过一个低通滤波器送到功率放大器中,然后直接推动外部的喇叭放音。厂家要求外接喇叭为16 Ω,实际实验用8~16Ω均可。一般音量下输出功率为12.2 mW(16 Ω)。
3.4.2 电路设计
(1) 录音电路设计
在语音提示电路的设计过程中,首先要对APR9600进行语音的录入,把系统所需要的语音信息录入到芯片中。根据需要,系统只需要8段语音提示信息,所以本电路选择APR9600的并行工作模式。APR9600芯片的并行工作模式十分简单,每段都有对应的键控制,按哪一键就录/放哪一段,可以方便地对任意一段重新录音而不影响其他段,而且可对任意一段循环放音等。每段录音的最长时间是等分的,最多可以分8段,刚好可以满足本系统的需要。其录音电路原理如图 5所示。
并行8段控制需要将芯片的MSEL1端置1(高电平)、MSEL2端置1(高电平)、M8端置1。模式置好后开始录音,置RE端为O,按住M1即听到 “嘀”一声,BUSY指示灯亮即开始录音第l段,松开键时又听到“嘀”一声,BUSY指示灯熄灭即录音停止。M2~M8分别录其他7段。录音时可以不按顺序,先录任意一段均可,不满意可重新录音。每段的最长时间为7.5 s(以全片60 s录音计),录满时指示灯熄灭并响“嘀嘀”两声。当然,实际每段录音可以长短不一。置RE端为1即是放音状态,按一下M1即放音第1段,放音期间再按一下 M1即停止放音,如果压住M1键不放即循环放音第1段直到松开键。M2~M8分别控制另外7段。CE键为停止键,放音期间按一下该键也能停止放音。
(2)放音电路设计
在语音芯片APR9600的录音工作完成之后,接下来的任务就是把语音芯片接入系统中,通过CPU控制它的放音,根据需要适时地将提示音经过功率放大器 LM324放大后反馈到电话线上,最终到达用户的话机,起到语音提示的作用。其电路原理如图6所示。
因为系统总共有8段提示音,而单片机LPC932并没有8个多余的I/O口,所以本单元电路使用LPC932的3个I/O口来实现语音提示功能。笔者选用 3-8译码器74LSl38将现有的3个I/0口扩展成8个I/O口,用来控制8段提示音的放音,即P1.4、P1.5、P1.6分别连接3—8译码器的 A、B、C,根据需要选通系统所需要发出的那段提示音(控制M1~M8中的某一个为低),被选通的提示音信号从SP+和SP一发出。将该语音信号输入到 LM324进行功率放大,再将放大后的语音信号输入到电桥电路,通过桥堆反馈到电话线上,并最终到达用户的话机上,从而实现语音提示的功能。
3.5 通道控制电路
3.5.1 原理分析
电话远程控制系统对受控设备的控制,要通过单片机对继电器的闭合才能实现。在继电器驱动时,继电器控制端线圈工作电流比较大,不能直接用CPU的I/0口驱动继电器,因此,在CPU与继电器之间必须设置一个继电器驱动电路。
3.5.2 方案设计
本方案采用晶体管9013作为开关电路来控制继电器的关闭与开启,从而实现对通道的控制,电路如图7所示。
其工作原理为:继电器K在晶体管T导通时,上面电压为上正下负,电流方向由上向下。在T关断时,K中线圈电流突然中断,线圈会产生感应电势,其方向是力图保持电流不变,即总想保持K电流方向为由上至下。这个感应电势与电源电压迭加后加在T两端,容易使T击穿。为此加上D1,将K产生的感应电势短路掉,让电流沿顺时针方向在二极管和继电器的小回路里面流动,从而保护T和继电器本身。
4 系统软件设计
系统包括振铃检测电路、模拟摘挂机电路、双音频信号(DTMF)解码电路、语音提示电路及通道控制电路等多个模块。这些模块都是通过中央控制器 LPC932来协调控制的,这使得各个模块的联系非常紧密,它们之间是相互联系、影响的,而不是完全独立互不影响的独立模块。所以LPC932的功能引脚要合理的安排,才能使各个模块之间相互协调的工作。系统主要模块的软件设计如下:
该系统软件主程序的内容主要包括:对中断方式和中断优先级的设置,对LPC932的控制I/O口的初始化,各种标志的初始化,以及解码芯片MT8870的初始化,原始密码设置,密码接收存储区清零,模拟摘机之前振铃次数的初始化等。其程序流程如图8所示。
5 结论
本文介绍的家用电器远程控制系统有效地利用了现有的电信网络资源,将公众电话网与单片机系统有机的综合设计起来,通过使用单片机LPC932不仅实现了远程控制,而且也突破了传统的无线遥控技术。
作为一个比较新兴的课题,电话遥控与常规的遥控方式相比显示出了其一定的优越性,而且不占用无线电频率资源,也不需要进行专门的布线,最重要的是也避免了电磁污染。
暂无评论