89S51单片机智能语音拨号报警系统

发布者:塞上老马最新更新时间:2018-01-14 来源: eefocus关键字:89S51  单片机  智能语音  拨号报警系统 手机看文章 扫描二维码
随时随地手机看文章

电话自动报警的主要功能为: 用户根据需要把自己的手机号码、办公室电话或报警监控中心的电话预存入报警主机。报警主机不断地对所监控的设备( 门禁、烟雾探测器、窗磁、摄像头等) 状况进行巡检, 当有不安全情况( 如火灾、非法入室、视频丢失等) 发生时, 报警主机拨通预先存入的电话号码, 播放相应的警情语音。若电话占线或者无人接听,可拨下一个预存的电话号码, 如果所有预存的电话都占线或者无人接听, 则会自动把所有的预存电话重拨一遍, 保证了报警的有效性和可靠性。

 

1 系统组成和工作原理
    系统组成框图如图1 所示。采用AT89C51 单片机 作为控制核心, 外接E2PROM 用于存储电话号码、设置参数( 定时布/撤防、联动、视频等) 以及警情信息等。当AT89C51单片机实时巡检到新的警情信号( 防区故障、视频丢失、主电断电或上位机死机) 时, 报警主机就会自动进行警情处理( 声光报警、启动相应联动、记录警情以及拨号报警等) 。
    拨号报警的工作原理如下: 
    系统自动地控制摘/挂机电路模拟摘机, 同时AT89C51 单片机 通过可编程并行接口8255 将MT8880 置为呼叫模式, 检测是否有拨号音。若有拨号音, 则将MT8880 设为突发方式, 并按用户预设的电话号码自动拨号。拨完电话号码以后立即检测对方是否摘机, 一旦检测到对方摘机, 就启动语音提示电路发送与警情相一致的语音信息, 完成自动拨号报警。
  

2 硬件设计
2.1 警情采集电路
    信号采集电路由16 路防区输入信号采集电路和16路视频丢失检测采集电路组成。16 路防区输入信号采集电路如图2 所示。采集电路通过一片可编程并行接口芯片8255 与AT89C51 单片机 的P0 口接口, 而16 路防区输入信号则通过光电隔离后与8255 的PA 口和PB 口相接。PA 口和PB 口均设为输入口, 这16 个输入口分别对应16 路探测器的输入。系统通过采集8255 的PA、PB口的数据来判断是否有警情产生。
  
    16 路视频丢失检测采集电路如图3 所示。该电路首先通过一片16 路模拟开关芯片CD4067 进行视频通路选择, 随后经过视频信号检测电路, 最后再与AT89C51 单片机 的P1.3 口相接。系统首先将视频通路号送给模拟开关CD4067, 然后将采集的数据送给P1.3口, 来判断视频是否丢失。
  
2.2 DTMF 发送接收电路MT8880 与AT89C51 及语音电路的接口
    MT8880 是MITEL 公司推出的专门用于处理DTMF 信号的专用集成电路芯片, 不仅具有接收和发送DTMF信号的自动拨号功能, 还可以检测电话干线上拨号音、回铃音和忙音等信号音。适合与 单片机 接口, 外围电路简单。
    MT8880 内部有五个寄存器, 分别为接收数据寄存器、发送数据寄存器、收发控制寄存器CRA 和CRB 以及收发状态寄存器。在本设计中, 由于仅采用发送数据寄存器、收发控制寄存器CRA 和CRB 发送DTMF 信号实现自动拨号功能, 因此在此仅介绍这三个寄存器。发送数据寄存器中的数据决定要发送的双音频信号的频率, 因此只能向发送数据寄存器写入数据。两个收发控制寄存器占用同一个地址, 因此根据CRA 中的寄存器选择位的值决定是否对CRB 进行操作。其接口电路如图4 所示。
    ISD1420 语音芯片采用直接模拟存储技术, 且录放音质极好, 并有一定的混响效果; 它的外围元件简单, 仅需简单的阻、容器件即可组成简单的录、放音电路; 无需后备电源, 信息存储时间长, 不需要专用的编程器及语音开发器; 具有较强的选址能力, 可把存储器分成160段来管理, 形成最小的录放时间为125ms。其接口电路图如图4 所示。
  
    语音分段方法: 地址输入端A0~A7 由低位向高位排列, 每位地址代表125ms 的寻址, 160 个地址覆盖20s 的语音范围( 160×0.125s=20s ) , 录音及放音功能均从设定的起始地址开始, 录音结束由停止操作决定, 芯片内部在该段的结束位置自动插入结束标志( EOM) ; 而放音时遇到EOM 标志即自动停止放音。在本设计中, 因需要四段报警提示语音, 因此在设计时均将每段语音设为5s,其起始地址分别为00000000B、00101000B、01010000B、01111000B, 由这四段起始地址可以看出A7、A2、A1 和A0 均为0, 因此将其接地。

3 软件设计
3.1 信号音的识别方法
    系统在巡检到警情信号后就模拟摘机。为了识别模拟摘机后电话系统是否处于可拨号的状态、电话拨完号码后电话是否接通以及对方是否摘机接听电话等几种状态, 系统必须进行信号音的识别。为了识别信号音, 必须知道各种信号音的特性。各种信号音特性如下:

  • 拨号音: 450±25Hz 连续蜂音;

  • 忙音: 0.35s 断0.35s 通的450±25Hz 蜂音, 音断周期为0.7s ;

  • 回铃音: 4s 断1s 通的450±25Hz 蜂音, 音断周期为5s。

    这些电话信号均是模拟信号, 然而 单片机 是无法识别模拟信号的, 故必须先将模拟信号转换为脉冲信号,然后再根据脉冲信号的脉冲个数进行识别。这些电话音频信号的脉冲个数可用下式计算:
N=tm/T
式中, N 为每音段周期的脉冲个数; T 为电话音频信号的音频周期, 单位为s ; tm 为信号音断周期的通时间, 单位为s。
    在实际使用中, 主要需要识别拨号音、忙音和回铃音。分析这三种信号的特性可以看出, 在一定的计数时间内, 其脉冲个数是不一样的。在设计之初, 考虑采用5s 为一个计数单位来判断这三种信号音, 但通过实际的调试发现: 当对方摘机时, 要等待一段时间才能听到报警语音。通过反复研究及调试, 最终采用2s 计数判断拨号音, 采用2.8s ( 即4 个忙音周期) 判断是否为忙音, 若否则代表电话拨通了。随后采用1s 为一个计数单元, 采用计五次后的累加脉冲数来判断对方是否接听电话。若有, 则放相应的报警提示语音; 否则再计1s , 然后计算最后5s 内的脉冲数, 再次判断对方是否摘机。如此反复, 直到超过等待时间仍没有人接听电话就挂机。由于干扰和一些其他因素的存在, 难免会有误判的现象而导致漏报警情。因此采取在所有预先设定的电话至少有一个拨通就只拨一遍, 如果全部没拨通或者没人接听则把所有预存电话重拨一边, 这样漏报报警的概率就非常低以致可忽略不计。

3.2 软件设置
    自动拨号程序的流程图如图5 所示。下面是自动拨号的部分程序 。
AUTOCALL: CLR P1.2 ;模拟摘机
MOV A,#5DH ;允许信号音输出, 下一次为写控制寄存器CRB
MOV X @DPTR,A ;写控制寄存器CRA
MOV A,#51H ;MT8880 置为突发模式
MOV X @DPTR,A ;写控制寄存器CRB
MOV A,#56H ;MT8880 置为呼叫模式
MOV X @DPTR,A ;写控制寄存器CRA
LCALL DELAY
LCALL AUTOY ;调用信号音判别子程序, 看是否有拨号音
MOV A,#5DH ;允许信号音输出, 下一次为写控制寄存器CRB
MOV X @DPTR,A ;写控制寄存器CRA
MOV A,#50H ;MT8880 置为突发模式
MOV X @DPTR,A ;写控制寄存器CRB
…… ;拨电话号码
MOV A,#56H ;MT8880 置为呼叫模式
MOV X @DPTR,A ;写控制寄存器CRA
LCALL AUTOY ;调用信号音判别子程序, 看是否有回铃音
LCALL AUTOY ;调用信号音判别子程序, 看对方是否摘机
SETB P1.2 ;模拟挂机

3.3 编程过程中应注意的几点
    首先, MT8880 的DTMF 产生器是发送部分的主体,它产生全部十六种失真小、精度高的标准双音频信号,这些频率均由3.579545MHz 晶体振荡器分频产生。电路由数字频率合成器、行/ 列可编程分频器、开关电容式D/A变换器组成。行和列单音正弦波经混合、滤波后产生双音频信号。通过DTMF 编解码表把编码数据写入MT8880 发送寄存器产生单独的fLOW 和fHIGH, 一旦编码错误就会导致拨号失败, 故在编程过程中要十分小心。其编解码表见MT8880 的Datasheet 。
    其次, 在摘机后应延时一段时间再去判断摘机音,因为本系统采用机械继电器实现自动摘机, 故应考虑继电器的响应时间。
    最后, 一个电话号码拨完后不能立即拨下一个电话号码, 应保证挂机的最短有效时间以确保前一电话号码确实已挂机, 否则拨下一个电话号码时会没有拨号音。
    本系统配置灵活, 可以有效、快速地应用于对安防要求比较高的场合。例如: 对不需要监视视频丢失的场合, 可以不配置视频监测盒; 而对智能小区、医院等, 可以通过RS485 总线将一台DVR ( Digital Video Recorder )主机、一套报警监控软件和多台报警主机组合到一起,构成一个网络型智能监控系统。
    本报警系统具有价格低廉、操作简便、通讯速度快、可靠性高和误报率低的优点。


关键字:89S51  单片机  智能语音  拨号报警系统 引用地址:89S51单片机智能语音拨号报警系统

上一篇:51单片机来做的PWM来无级调光程序
下一篇:89C51串并转换驱动数码管示例程序

推荐阅读最新更新时间:2024-03-16 15:52

友尚Realtek智能语音解决方案,让我们的生活更智能
致力于亚太地区市场的领先半导体元器件分销商--- 大联大控股 宣布,其旗下友尚推出 瑞昱 半导体(Realtek)智能语音解决方案。 自从Amazon Echo于2016年10月份发布至今,已经成功的吸引许多人目光。语音操作是人们最为直接的连接方式,国内外各家厂商已经意识到智能音响在智能家庭中占有无比重要的战略性,纷纷一头涌入此市场,抢占智能控制的市场份额。透过Cloud Service厂商与网络生态圈结合的方式,以及IDH方案整合商一同合作,打造出目前市场上可见的智能助理,此为智能家庭的重要AI核心。 图示1-大联大友尚推出Realtek智智能语音解决方案的照片 大联大友尚代理的Realtek凭借其语音方案,再
[物联网]
友尚Realtek<font color='red'>智能语音</font>解决方案,让我们的生活更智能
mcs51单片机中断请求源简介
(1)外部 中断 请求源:即外中断0和1,经由外部引脚引入的,在单片机上有两个引脚,名称为INT0、INT1,也就是P3.2、P3.3这两个引脚。在内部的TCON中有四位是与外中断有关的。 IT0:INT0触发方式控制位,可由软件进和置位和复位,IT0=0,INT0为低电平触发方式,IT0=1,INT0为负跳变触发方式。这两种方式的差异将在以后再谈。 IE0:INT0中断请求标志位。当有外部的中断请求时,这位就会置1(这由硬件来完成),在CPU响应中断后,由硬件将IE0清0。 IT1、IE1的用途和IT0、IE0相同。 (2)内部中断请求源 TF0:定时器T0的溢出中断标记,当T0计数产生溢出时,由硬件置位TF0。
[单片机]
单片机8*8LED点阵—显示汉字实验
一、读懂代码 因为自身C语言基础比较差,所以决定先把代码看懂然后再在源代码的基础上修改写成自己的点阵显示。 自己对代码的简短理解都写成注释附在下面的源代码中了,有不对的地方请指正 实现现象:下载程序后点阵上显示数字0 注意事项:一定要将JOE短接片短接到GND端,如果不需要595后面的小灯点亮可以拔掉JP595短接片。 ***************************************************************************************/ #include reg5
[单片机]
<font color='red'>单片机</font>8*8LED点阵—显示汉字实验
单片机智能监控系统
现代社会中监控系统已被广泛应用于各个领域,如工业现场监控、银行、酒店保安等,但就其数据而言,多为连续性信号(如传统VCR(VIDEO CASSETTE RECORDER)所记录的视频信号),他们在对某一对象进行监控时一般采用24 h不间断方式。这样当我们需要对所记录图像信号进行查询时,往往需要花费许多时间在整卷录像带中寻找有价值的画面,大大降低了查看数据的效率。并且为了满足这样大的数据记录量,通常采用LP方式,所记录的画面质量相对较差。对于像银行金库、警局武器库等这种小人群、少流动的特殊场合,由于所监视范围很小,对进入的人也有严格的限制,故而采用上述不间断监控方法并非合适。为此,我们设计了这样一种智能监控系统,只有当有物体进入
[单片机]
<font color='red'>单片机</font>智能监控系统
单片机检测开关按下状态的程序
下面的程序是为了使我们按下开关按键的时候,能够通过一个LED灯来显示对应的状态,这个程序的作用是:可以通过单片机和按键控制多种线路的输出作用,当然我们如果把LED灯改成实现其它功能的电路,则达到了控制多种电路的目的。比如抢答器的应用,当我们选手按下的时候,可以通过数码管,让其显示选手的号码,当然抢答器比这个会复杂点,在www.51hei.com单片机学习网上面就有1个这样的制作,但这个程序是抢答器的一个基础。我觉得挺实用的,所以拿出来跟大家分享下。 具体的电路如下: 程序如下: #include reg52.h sbit p20=P2^0; sbit p21=P2^1; sbit p22=P2^2; sbit p23=P
[单片机]
<font color='red'>单片机</font>检测开关按下状态的程序
单片机开发调试应注意的问题
1、使用总线不外引的单片机 是最正统的单片机使用模式 符合小型、简单、可靠、廉价的单片机设计初衷 总线封闭的产品最可靠 2、使用单片机C语言编程 * C语言是简洁、高效、而又最贴近硬件的高级编程语言 * 90年代初单片机C语言就已成熟为专业水平的高级语言,不应再有顾虑 * 当前厂商在推出新的单片机产品时纷纷配套C语言编译器 3、使用中、高档的单片机仿真工具 * 只有中、高档仿真工具才能仿真总线封闭式的单片机 * 仿真器必须使用band-out chip或hooks chip
[应用]
基于51单片机的波形发生器的课程设计
一、 设计任务和性能指标 1.1 设计任务 按要求设计波形发生器并完成相关功能: (1)运用单片机控制产生多种波形,这些波形包括三角波、方波、锯齿波等。 (2)信号的发生器所产生波形的频率、幅值均为连续可调。 扩展功能 在上位机将波形实时显示出来,用红外线遥控器实现上述功能,其它功能。 1.2 性能指标 (1)幅值0~5V可调 (2)频率0~1KHz可调 二、设计方案 采用AT89C51单片机和数模转换器PCF8591实现波形的产生。波形的产生方法是用AT89C51单片机执行波形程序,向PCF8591转换器的输入端输入相应的数据,从而在DA转换电路输出端再通过运放电路转换得到相应的电压波形。在AT89C51的P
[单片机]
基于51<font color='red'>单片机</font>的波形发生器的课程设计
8051单片机的历史_8051单片机的应用领域
  目前,有关8051单片机的说法很多:8051单片机是Intel发明的,可与8位系列处理器一起使用。现在,8051单片机已广泛应用于各个行业以及家庭的各种家用电器上。      一、8051单片机的历史   如果我们回顾历史,8051单片机是由微处理器巨头Intel于1980年首次发明的,并且逐渐被全世界所接受,并且随着未来的每一天,8051单片机的重要性正在不断提高。当它由英特尔发明时,它是通过NMOS技术开发的,但作为NMOS技术却不是很有效。   为了提高效率和生产率,英特尔通过实施CMOS技术对它进行了改型,并出现了一个新版本,名称中带有字母“C”,比如:“80C51”。新版8051单片机具有两条总线,一条总线用于程序
[单片机]
8051<font color='red'>单片机</font>的历史_8051<font color='red'>单片机</font>的应用领域
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved