毕业设计基于PSTN的家用电器远程控制系统设计与开发Word文档下载推荐.docx
《毕业设计基于PSTN的家用电器远程控制系统设计与开发Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《毕业设计基于PSTN的家用电器远程控制系统设计与开发Word文档下载推荐.docx(12页珍藏版)》请在冰豆网上搜索。
6.系统软件设计23
结语
参考文献
致谢
基于PSTN的家用电器远程控制系统设计
摘要:
本系统以Philips公司单片机P89LPC932为主控制器,以双音多频解码电路芯片MT8870为核心,通过公众电话网实现对家用电器的远程多路智能控制;
同时利用语音芯片APR9600具有的语音提示功能,使用户在使用系统的过程中达到一种人性化的效果。
本文详细介绍系统中振铃检测电路、模拟摘挂机电路、双音频信号(DTMF)解码电路、语音提示电路及通道控制电路几个部分。
关键词:
P89L;
PC932;
MT8870;
PSTN;
电话远程控制;
APR9600
BasedonPSTNhomeappliancesremotecontrolsystem
?
Grade2004,?
Abstract:
PhilipsCompanyofthesystemtothemaincontroller,microcontrollerP89LPC932toDTMFdecodercircuitchipMT8870asthecore,throughthepublictelephonenetworktotheappliancesofaRemoteIntelligentcontrol;
thesametimeusingvoicechipwiththevoicepromptfeatureAPR9600,allowinguserstousethesystemintheprocessachieveapersonalizedeffect.Thispaperdescribesthesystem,ringingdetectioncircuit,analogcircuithook,twoaudiosignals(DTMF)decodercircuit,voicecircuitsandchannelcontrolcircuitparts.
Keywords:
MT8870;
telephoneremotecontrol;
1.引言
二十一世纪是信息时代,各种电信新技术推动了人类文明的进步。
自从1876年,AlexanderGrahamBell(贝尔)发明电话以来,世界各国的电话网络发展非常迅速。
进十年来,中国的固定电话业务呈现出举世瞩目的快速增长。
1997年8月局用电话交换机总容量突破1亿门,网络规模跃居世界第二位,2004年7月固定电话用户总数突破2亿户。
随着通讯产业的发展,电话机已经走进了千家万户;
随着现代科学技术的发展,利用电话机进行远程控制的技术也日益用于生活中。
现代电话网络是由交换机和电话传输线共同组成,它的性能已经有了很大的进展,而且可靠性非常高。
遥控技术是通过一定的手段对被控物体实施一定距离的控制,常用的方式有无线电遥控、有线遥控、红外线和超声波遥控等。
无线电遥控既是利用无线电信号对被控物体实施远距离控制。
无线电遥控不可避免的须占用一定的无线电频率资源,造成电磁污染;
常规的有线遥控需进行专门的布线,增加了投入;
而红外线、超声波遥控则受距离所限。
现有的遥控方式中,还有载波通信控制手段和基于无线寻呼的遥控方式。
载波方式即通过电力线传递信息,该方式只能局限于同一变电所、同一变压器所辖范围内。
因此也存在距离问题,应用范围有限。
基于无线寻呼的遥控方式利用了现有的寻呼频率资源,不需占用额外的频谱。
而且,随着寻呼网的全国联网,其遥控的距离基本不受限制。
但该方式的受控方动作滞后于控制方的操作,不具备实时性,而且不具备很高的可靠性。
2.系统设计可行性分析
2.1总体设计分析
电话智能遥控器由单片机构成主控部分,进行主要的信息处理,接收外部操作指令形成各种控制信号,并完成对于各种信息的记录;
接口电路提供单片机与电话外线的接口。
其中包括铃流检测、摘挂机控制、忙音检测、双音频DTMF识别,及语音提示电路。
语音提示电路是该作品重要组成部分。
为了降低本装置的造价,作品的提示音使用程序产生。
语音提示电路受单片机的控制产生相应的提示音提示,并通过反馈电路反馈至电话外线。
从而使操作者对电器的操作达到交互式,并能即时了解有关的信息;
显示电路用于状态设置时的显示;
控制部分即受控的终端,如前所述,可通过接驳不同的终端并对电话进行必要的改动从而达到功能的扩展。
这一点,可使产品达到系列化。
本系统的每一个接口电路(振铃检测、模拟摘挂机、语音反馈、电器开展、双音频解码等)具有很强的实用性。
本系统使用最简单的电路、最可靠的电路芯片实现了完善的功能。
本系统还有许多可以添加的功能,具有很强的市场前景。
本装置并联于电话机的两端,不会影响到电话机的正常使用。
用户通过异地的电话机拨通本装置所连接外线的电话号码,通过市局交换机向电话机发出振铃信号,振铃检测电路将检测到的振铃信号送至系统的中央控制单元,如果本装置检测到振铃五次,即五次响铃后无人接,自动摘机,进入密码检测,输入正确后选择被控制电器,然后输入开或关进行遥控电器,完成后返回,这是自动方式;
第二种是手动方式。
即当中央控制单元接收到振铃信号后,便发出摘机信号,通过模拟摘挂机电路实现模拟摘机。
同时,中央控制单元发出控制信号使语音录放电路启动,发出事先录制好的语音提示。
用户听到语音提示后便会按键进行操作,用户按键产生的信号经双音多频DTMF(DualToneMulti-Frequency)解码电路解码后,送入中央控制单元。
中央控制单元将根据DTMF解码的结果通过驱动电路进行相应的动作(接通分机或开关家电)。
2.1.1系统总体设计分析
根据电话远程智能遥控系统的具体设计要求:
1、通过电话网对异地的电器实现控制(开/关);
2、控制器可以实现自动模拟摘挂机;
3、控制器设置密码校验;
设计的此系统必须具有以下单元功能模块:
1、铃音检测、计数;
2、自动摘挂机;
3、密码校验;
4、在线修改密码
5、双音频信号解码;
6、输入信息分析;
7、控制电器开关;
8、电器状态查询;
9、忙音检测;
根据电话机和交换机发出的不同信号音以及电话线各种状态的不同要求,结合实际情况对具体的单元功能模块作出软件或硬件上的不同分工,具体如下:
1、理论上交换机所发出的各种信号音都可以通过软件编程而识别,即通过单片机发出的脉冲信号来检测信号音单位时间内的脉冲个数计算出其频率,从而完成信号音识别。
但是从系统的可靠性和程序的结构设计上分析,选择了硬件来解决振铃音检测、忙音检测、双音频信号解码等功能模块。
2、自动摘挂机和电器的控制必须使用具体硬件电路来实现。
3、振铃音计数、忙音计数、密码校验、在线修改密码、输入信息分析、电器状态查询等功能模块使用软件编程方式要比硬件电路简单的多,实现也很容易。
综上所述,本设计的信号音检测、自动摘挂机、控制电器、双音频解码等功能模块使用硬件电路实现。
而信号音计数、密码校验、在线修改密码、信息分析、电器状态查询等功能模块使用软件编程完成。
2.1.2单片机简介
本系统用的核心控制单片机芯片的型号是AT89C51。
它是由Atmel公司生产的能与MCS-51系列兼容的单片机,其引脚如图2-2所示。
C51单片机引脚功能介绍:
单片机的40个引脚大致可分为4类:
电源、时钟、控制和I/O引脚。
1、电源:
(1)VCC-芯片电源,接+5V;
(2)VSS-接地端;
2、时钟:
XTAL1、XTAL2晶体振荡电路反相输入端和输出端。
3、控制线:
控制线共有4根:
(1)ALE/PROG:
地址锁存允许/片内EPROM编程脉冲;
①.ALE功能:
用来锁存P0口送出的低8位地;
②.PROG功能:
片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
(2)PSEN:
外ROM读选通信号;
(3)RST/VPD:
复位/备用电源;
①.RST(Reset)功能:
复位信号输入端;
②.VPD功能:
在Vcc掉电情况下,接备用电源。
(4)EA/Vpp:
内外ROM选择/片内EPROM编程电源;
①.EA功能:
内外ROM选择端;
②.Vpp功能:
片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
4、按I/O线:
AT89C51共有4个8位并行I/O端口:
P0、P1、P2、P3口,共32个引脚。
P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
2.2
硬件模块
本作品使用了大量的硬件电路完成部分功能模块,其目的就是充分利用硬件电路的可靠性、稳定性,使整体电路达到比较高的稳定性,采用硬件电路实现部分功能,而且使用了大量的抗干扰元器件,例如:
光耦合器,去耦电容等,提高系统的看干扰能力,从而是整个系统的性能更可靠。
2.2.1模拟摘机电路
因为程控电话交换机对电话摘机的响应是电话线回路电流突然变大为约30mA的电流,交换机检测到回路电流变大就认为电话机已经摘机。
当用户摘机时,电话机通过叉簧接上约200Ω的负载,使整个电话线回路流过约30mA的电流。
交换机检测到该电流后便停止铃流发送,并将线路电压变为十几伏的直流,完成接续。
自动摘挂机电路可以通过单片机控制一个继电器的开关,继电器的控制端连接一个大约200Ω的电阻接入电话线两端,从而完成模拟摘挂机。
2.2.2振铃检测电路
当用户被呼叫时,电话交换机发来铃流信号。
振铃为25±
3伏的正弦波,谐铃失真不大于10%,电压有效值90±
15V。
振铃以5秒为周期,即1秒送,4秒断。
根据振铃信号电压比较高的特点,可以先使用高压稳压二极管进行降压,然后输入至光电耦合器。
经过光电耦合器的隔离转换,从光电耦合器输出的波形是时通时断的正弦波,经过RC回路进行滤波输出很标准的方波。
方波信号就可以直接输出至单片机的中断计数器输入口,完成整个振铃音检测和计数的过程。
2.2.3控制部分电路
本单元电路主要是由反向电路、D触发器和继电器等控制电路组成,电路不是很复杂,只是通过单片机控制多路继电器的开关即可,常用的电路已经很成熟可以直接应用。
2.2.4双音解码电路
此部分是整个系统的关键,它的工作情况直接决定了系统的可靠性。
经过翻阅大量的文献资料,发现使用电话专用的双音频编解码芯片进行输入双音频信号的解码,是比较常用的一种方法。
使用集成电路不但外围电路简单,而且可靠性强。
经过专用集成电路的解码,信号转换成为不同的码制信号,可以直接被单片机读取。
一般常用的电话双音频编解码集成电路有MT8870、MT8880、MT8888等,经过反复论证比较,决定采用双音频解码集成片MT8870来完成此功能模块。
有关MT8870的详细介绍请参阅本报告的后面附录C部分。
远程用户通过电话按键发送的DTMF信号,经耦合电容的隔直、滤波后,由MT8870接收并进行硬件译码,输出的四位二进制数据直接与AT89C51单片机的P1.0~P1.3口连接,MT8870接收到有效的DTMF信号并解出正确的BCD数据时,会使CID端置高电平,通知CPU取走数据。
CPU从P1口读入数据,去掉高四位后将数据保存于内部R7寄存器单元,并对读入的数值进行判断,从而得到远程控制者的输入命令。
2.2.5语音提示电路
电话远程控制系统利用语音提示电路实现用户和系统的交流。
语音提示电路预先存储若干段系统提示音,AT89C51中央处理单元电路判断用户发送的DTMF信号后,对语音提示电路进行寻址,播放相应的提示音,从而向用户反馈信息提示下一步该如何操作。
本系统语音存储采用了美国ISD公司的ISD2590芯片,该芯片具有抗断电、音质好,使用方便等优点。
有10个地址输入端,寻址能力可达1024位;
最多能分600段;
设有OVF(溢出)端,便于多个器件级联。
ISD2590芯片如图2-3所示。
当有电话呼入并且电话远程控制器拾机后,操作人员便会在语音提示电路的提示下输入密码,选择通道,设定各种数值,执行开机、挂机等操作,语音电路采用语音录放芯片ISD2590。
内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存储阵列。
芯片设计是基于所有操作必须由微控制器控制,操作指令可通过串行通信接口(SPI或Microwire)送入,芯片采用多电平直接模拟量存储技术,每个采样值直接存贮在片内闪存中,因此能够非常真实,自然地再现语音、音乐、音调及效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。
采样频率可为4.0,5.3,6.4,8.0KHz,频率越低,录放时间越长,而音质则有所下降,可以在断电情况下保存100年(典型值),反复录音10万次,将需要提示的语音信息按段录入到芯片后,在CPU的控制下将录入的信息顺序由音频输出端输出,然后经音频功率放大器放大后输送到电话线路上。
2.3软件模块
经过比较,决定使用AT89C51作为控制的单片机芯片,具体有关AT89C51的介绍不在这里累述,其详细资料请参阅本报告的2.1.2部分。
系统软件主要功能如下:
1、系统身份认证:
功能为了保证只有合法用户才能操作系统,电话远程控制系统上线以后,用户必须输入密码,待系统确认后才具有对系统的操作权限。
2、用户信令解释功能:
对收到的用户信号,系统按照软件设定加以解释,并决定对语音提示电路寻址,播放相应的系统提示音,实现用户和电话远程控制系统间的交互操作,或者对外部受控设备发出相应的驱动信号。
3、软件定时功能:
系统软件设定系统自动复位的软件定时器,定时器的设置值规定了系统一次上线工作的最大时间。
若一次工作超时,系统自动离线,进入待机状态。
2.3.1信号音检测
本单元可以使用AT89C51的两个计数器的外部中断方式来实现对不同信号音的计数。
2.3..2密码检测
本单元可以在系统初始化的时候,在单片机内部的存储器的内部开辟一块空间放置密码。
当用户输入密码的时候,单片机把输入的密码写入另外的一块空间,然后利用减法运算比较两者是否相等,这样就可以实现密码检测的功能。
2.3.3信号分析处理
本单元可以利用查表方式,也可以用简单的语句,稍微长一点的语句实现,例如CASE语句等。
3.系统工作原理
当需要遥控家用电器时,拨打相应的座机电话号码,振铃检测电路检测铃流信号。
如果有人接听电话或振铃次数少于5次,对程控电话的使用不造成影响;
当振铃次数达到5次后(次数可以通过软件任意设定),单片机启动语音提示电路并发出提示音,询问是否进入家电控制模式。
按“0”键否,挂机退出,按“1”键是,摘挂机电路自动摘机进入控制状态并将摘机信号输入到单片机中。
单片机接收到摘机信号后,启动语音提示电路发出提示音,提示操作者输入密码(系统支持在线修改密码)。
输入的密码经DTMF接收,转换成二进制数并与事先存储在单片机中的密码比较。
如果不相符,则语音提示密码错误,可再次重新输入,若三次密码错误则发提示音并自动挂机;
如果密码相符,则语音提示选择控制通道(按键1、2分别表示1、2号通道)。
通道选择后,按下“1”键表示开启该路电器,并有语音提示“该路电器已经开启”;
按下“0”键表示关断该路电器,有提示音“该路电器已经关闭”;
再按“0”键则可挂机退出。
若超时则自动挂机(超时时间由软件设定)。
4 系统组成
本系统由5部分组成,即振铃检测电路、模拟摘机电路、DTMF解码电路、通道控制电路和语音提示电路。
其中振铃检测和解码均采用外部中断来实现,系统组成原理框图如图所示。
系统组成原理框图
5 系统硬件电路设计
5.1振铃检测电路
5.1.1原理分析
公用电话网的传输线路为二线模拟线路,采用直流环路信号方式,能向模拟话机提供直流馈电、振铃信号、话音数据、音频数据、双音频数据等。
我国规定的标准为,话机在不通话时,电话线中的直流电压是48V。
当有电话呼入时,同时还有(25±
15)V、25Hz的正弦信号加在电话线上,所以向用户振铃的铃流电压为(75±
15)V、25Hz的交流电压。
振铃以5s为周期,即1s送,4s断。
根据振铃信号电压比较高的特点,可以先使用高压稳压二极管进
行降压,然后输入至光电耦合器。
经过光耦的隔离转换,从光电耦合器输出的波形是频率较高的方波信号,然后再将该方波信号转化成便于LPC932计数的低频方波信号。
5.1.2 方案设计
采用稳压管、光电耦合器和反向器(晶体管9018),将一个周期的振铃信号转化成一个周期的方波信号,送入LPC932的INT0进行计数,其电路如所示。
当有振铃信号时,电话线上的铃流信号为(75±
15)V、25Hz的交流信号。
其中直流电压为48V左右,交流电压为(25±
15)V、25Hz的正弦信号。
当该信号进入振铃检测电路后,首先用高压电容C1进行隔直,电阻R1起限流作用。
交流信号经过R1后通过稳压管D1降压,然后输入到光电耦合器进行转换。
转换后的信号经C2和R2滤波整流后,会变成标准低电平和带纹波高电平的长周期脉冲信号;
但是输出的波形不好,且高电平的状态还与交换机有关,所以在后面加上了一个晶体管反向器作为整形,这样就可以得到很完整的波形了,即电话每振铃一次就产生一个周期的方波信号。
将该信号输入LPC932的中断口进行计数,方便、可靠。
5.2 模拟摘机电路
5.2.1 原理分析
在设计该电路之前,首先介绍一下电话摘机的工作原理。
用户话机的摘挂机状态,是通过对直流环路上电流的通断来实现的。
用户挂机空闲时,直流环路断开,馈电电流为0;
反之,用户摘机后,直流环路接通,馈电电流在20mA以上。
因为程控电话交换机对电话摘机的响应,会使电话线回路电流突然变大约30mA,所以交换机检测到回路电流变大就认为电话机已经摘机。
5.2.2 电路设计
通过单片机控制晶体管9013的通断,进而控制继电器的通断来实现模拟摘机。
其电路如图所示。
晶体管开关电路控制继电器的开关,继电器控制音频信号输入到解码电路进行解码。
当挂机时,P1.3的电平通过CPU控制为低电平,T1截止,电路无法形成回路,没有电流(理想状态),交换机则认为电话线处于挂机状态。
摘挂机信令由单片机通过使P1.3口变为高电平实现。
改变晶体管T1的基极电压,使T1处于导通状态,从而吸合继电器K1,使音频信号通过K1输入到解码电路进行解码。
这时电话线回路电流突然变大约30mA,所以交换机检测到回路电流变大就认为电话机已经摘机,整个电路完成自动模拟摘机过程。
5.3DTMF解码电路
5.3.1原理分析
当用户在电话机的键盘上输入密码或按下控制按钮后,这些信息均采用双音频方式通过电话线发出。
DTMF解码电路的主要作用是接收从TEL0、TEL1输入的双音多频信号,并将其转换成二进制编码,然后输至单片机进行数据处理,进而实现控制功能。
本方案采用双音多频(DTMF)解码芯片MT8870来对双音频信号进行解码,将其转化成二进制数据并输入CPU进行数据处理。
5.3.2 电路设计
由MT8870组成的解码电路如图5所示。
由MT8870组成的DTMF解码电路
本电路采用的是MT8870双音多频解码芯片,能实现双音多频信号(DTMF)的解码。
当接收DTMF信号时,模拟摘机后从TEL0、TEL1进入的双音多频信号经过耦合隔离变压器耦合入MT8870的输入脚IN-;
DTMF信号经运放、拨号音滤波器、高频组及低频组分离带通滤波器送到数字算法与编码变换器进行确认,译成相应的4位二进制码,存入接收数据寄存器,需要时通过数据总线Q1~Q4输出,送入LPC932的P0口。
其中输入脚IN-和增益选择端GS之间的反馈电阻可以调节运放的增益。
5.4语音提示电路
5.4.1 原理分析
APR9600语音录放芯片,是继美国ISD公司以后采用模拟存储技术的又一款音质好、噪音低、不怕断电、可反复录放的新型语音电路。
单片电路可录放32~60s,串行控制时可分256段以上,并行控制时最大可分8段。
与ISD公司同类芯片相比,它具有价格便宜,有多种手动控制方式,分段管理方便,多段控制时电路简单,采样速度及录放音时间可调,每个单键均有开始、停止、循环多种功能等特点。
在APR9600芯片的内部,录音时外部音频信号通过话筒输入和线路输入方式进入。
话筒可采用普通的驻极体话筒。
在芯片内话筒放大器中带有自动增益调节(AGC),可由外接阻容件设定响应速度和增益范围。
如果信号幅度在100mV左右即可直接进入线路输入端,音频信号由内部滤波器、采样电路处理后以模拟量方式存入专用快闪存储器Flash中。
由于Flash是非易失器件,断电等因素不会使存储的语音丢失。
放音时芯片内读逻辑电路从Flash中取出信号,经过一个低通滤波器送到功率放大器中,然后直接推动外部的喇叭放音。
厂家要求外接喇叭为16Ω,实际实验用8~16Ω均可。
一般音量下输出功率为12.2mW(16Ω)。
5.4.2 电路设计
(1)录音电路设计
在语音提示电路的设计过程中,首先要对APR9600进行语音的录入,把系统所需要的语音信息录入到芯片中。
根据需要,系统只需要8段语音提示信息,所以本电路选择APR9600的并行工作模式。
APR9600芯片的并行工作模式十分简单,每段都有对应的键控制,按哪一键
就录/放哪一段,可以方便地对任意一段重新录音而不影响其他段,而且可对任意一段循环放音等。
每段录音的最长时间是等分的,最多可以分8段,刚好可以满足本系统
的需要。
其录音电路原理如图所示。