基于GSM模块的远程报警系统前端毕业设计-

上传人:海盗 文档编号:21103138 上传时间:2021-04-23 格式:DOC 页数:31 大小:1.48MB
返回 下载 相关 举报
基于GSM模块的远程报警系统前端毕业设计-_第1页
第1页 / 共31页
基于GSM模块的远程报警系统前端毕业设计-_第2页
第2页 / 共31页
基于GSM模块的远程报警系统前端毕业设计-_第3页
第3页 / 共31页
点击查看更多>>
资源描述
题目:基于 GSM 的远程报警系统 -前端检测及软件 学 部 (系): 信息科学与技术学部 2013 年 5 月 18 日 I 目 录 摘 要 .III ABSTRACT.IV 第一章 绪 论 .1 1.1 课题研究的背景和意义 .1 1.2 课题相关领域发展状况 .1 2.1 系统方案款图设计 .2 2.2 设计方案筛选 .2 3.1 STC89C52 单片机 .5 3.2 TC35IGSM 模块 .7 第四章 单片机软件设计 .11 4.1 程序总体设计 .11 4.2 系统开发环境与开发工具 .12 4.3 系统初始化程序设计 .12 4.4 短信的发送 .12 第五章 系统调试 .13 5.1 硬件基本功能调试 .13 5.2 整体性能测试 .20 5.3 实验结果分析 .21 结 论 .22 参考文献 .23 致 谢 .24 附件(程序) .22 II 基于 GSM 的远程报警系统 摘 要 当家里没人的时候,怎样才能快速有效的实现防盗远程报警功能,是所有人都很 关注的问题。基于 GSM 网络的远程报警系统是利用现有的很成熟的 GSM 网络技术的远 程报警防盗系统,因为 GSM 网络通信距离远,成本低,误码率低,运行稳定可靠,所 以可以很好的解决人们所担忧的问题。 本文进行了基于 GSM 网络的远程报警系统的设计。系统可以实现对无人看守的家 庭防盗报警,适用范围广。该远程报警系统是以 STC89C52 单片机作为控制核心,结合 前端的报警探测器以及 GSM 模块(西门子公司生产的 TC35i 模块)实现远程报警的功 能。 课题研究的主要内容主要包括下面几个部分: 1.报警系统总体的设计; 2.系统硬件设计,包括单片机系统电路设计,按键电路设计,GSM 模块电路设计等; 3.报警系统软件设计。根据报警系统的功能要求,采用 C 语言进行了报警系统软 件设计,通过 GSM 模块向用户手机发送报警信息,实现了全天候的远程监控报警功能。 关键词: 远程报警;GSM;单片机 III Remote alarm system based on GSM Abstract When no ones home, how to achieve rapid and efficient anti-theft remote alarm functions, all the people are very concerned problems. Remote alarm system based on GSM network is the remote use of existing mature GSM network technology, anti-theft alarm system, because the GSM network communication distance, low cost, low error rate, stable and reliable operation, it can be very good for the people to solve concerns. In this paper, the design of remote alarm system based on GSM network. The system can realize the alarm on the family anti-theft unattended, wide range of application. The remote alarm system based on STC89C52 single chip microcomputer as control core, combined with the alarm detector and a GSM front end of the module (TC35i module Siemens company) to realize remote alarm function. The main content of the research mainly includes the following several parts: 1.Design of alarm system; 2.system hardware design, including the circuit design of MCU system, a key circuit design, GSM module circuit design; 3.alarm system software design. According to the alarm system, using C language for software design of alarm system, alarm information to the user mobile phone sent through the GSM module, realized remote all- weather monitoring alarm function. Key words: Remote alarm; GSM; microcomputer 1 第一章 绪 论 1.1 课题研究的背景和意义 当今社会是一个信息化的社会,在已经不如信息时代的今天,计算机技术,电子 技术,通信技术,自动控制技术以及人工智能等高新技术紧密的结合,在社会各个方 面被广泛的应用,已经成为人们生活中不可缺少的部分。利用已经比较成熟的移动通 信技术达到远程控制报警就是在这样的背景下产生的,国外一些发达国家在远程控制 报警领域的研究比我国起步要较早一些。 远程控制报警可以应用的范围相当广泛,无论是对住宅还是校区进行监控等诸多 领域都能被广泛的应用,与以往的系统相比,其最大的优点就是对监控对象可以不受 地域的限制,且实现实时的双向通信 1。利用该技术,技术人员不用再亲临现场,能 够实现对无人看守的环境进行全天候的监控,防止物品被盗,从而减少人力物力的浪 费 2。 1.2 课题相关领域发展状况 1.2.1 远程报警技术概况 远程报警技术是运用网络通信技术实现对家庭等场所进行远距离的检测报警,这 种技术机制的应用对我们来说其实很熟悉,比如说我们现在都熟知的汽车上安装的远 程遥控门锁的开启,就是利用了远程控制技术,车主利用遥控钥匙在一个有效的距离 内就可以对车门遥控开锁。远程控制技术可以说已经和我们现在的生活密不可分了, 利用远程监控技术,可以给我们得生活带来很多的便利之处 9。 1.2.2 远程报警技术发展现状 国外一些发达国家在远程控制领域的研究比我国起步要早一些。在 20 世纪末期, 曾经就有媒体报道过日本在远程控制技术方面取得的可喜成绩,开发出一种可以用手 机远程控制的机器人,这种机器人可以通过手机发送的不同信息作出相应的动作。相 比国外,我国再利用移动通信技术进行远程控制领域的研究相对较晚,随着近些年来 我国电子通信技术的快速发展 10。我国对远程控制领域的研究相应的也多了起来, 利用移动通信技术实现远程控制的便利性和重要性已经越来越明显 6。 2 第二章 总体设计 2.1 系统方案款图设计 系统主要由各类探测传感器。前端控制主机,无线 GSM 通信模块,GSM 网络,用 户等组成,结构框图如图 2-1 所示。 图 2-1 结构框图 探测器负责监控警戒,探测器可安装多个,如门磁开关,烟雾探测器,煤气探测 器等。控制器负责分析整理他侧起发来的报警信息,识别警情类型,并利用串口控制 GSM 模块将相应的报警信息通过 GSM 网络传送给用户。 GSM 模块选用的是德国西门子公司的 TC35i 模块,用于建立无线通信链路,接 收和发送报警短消息,以便再有情况发生时能够及时的通知用户本人。 前端控制器的核心是微处理器 MCU,RS232 接口转换电路等外围电路,系统中微处理 器选用的是 STC89C52 单片机,用于控制 GSM 模块的相应动作。 2.2 设计方案筛选 2.2.1 信息采集发送端的选择 在通信技术已经相当成熟的今天,可以有多种实际可用的通信平台以供选择,从大 的方面可以分为有线通信和无线通信两种平台,在无线平台中 GSM 的通信平台是目前 覆盖最广,利用起来最方便,成本最低的。所以本次课题选择了 GSM 作为信息床送的 平台,下面具体介绍一下 GSM 通信平台。 GSM 英文全称为 Global System For Mobile Communications,就是现在已经被我 们所熟悉的全球移动通信系统,是移动通信领域当前发展最成熟的一种通信平台,它 3 具有以下几个优点: 1. 可在整个平台覆盖的网络内实现自动漫游,因为 GSM 通信平台现在已经在全 球范围内被广泛的应用,所以 GSM 通信平台内的中断可以在全球自动漫游 11。 2. 可以有多种业务供用户选择,当然,发送和接收短信也在内。 3. GSM 通信平台的抗干扰能力和保密能力也相对较高。 4. 通信成本非常低廉。 5. 具有灵活,方便的组网结构。 正因为以上几点的特点,考虑到传输速率,覆盖范围,成本等方面,本课题选用 GSM 网络作为远程报警的通信平台 1。 2.2.2 GSM 模块的选择 GSM 模块,是一种类似与手机的通信模块,可以发送信息,也可以进行通话, 它拥有手机的核心部件,具备手机的很多功能。GSM 模块需要通过使用 AT 指令进 行控制,模块可以和电脑通过 RS232 串口相连,也可以通过单片机进行控制。 目前生产 GSM 模块的公司较多, GSM 模块可供选择的种类也有了很多。比 如中兴公司生产的 ZXGM18 模块,西门子公司生产的 TC35 系列模块,Ericsson 公 司生产的 DM10 模块等等。选择一款性价比较高的模块就成为了选择的依据,很早 就获得我国无线电设备入网许可证的 Siemens 公司生产的 TC35i 模块与其他模块相 比性价比最高。所以选择 TC35i 模块作为课题的发送端模块。 2.2.3 单片机的选择 单片机作为整个系统的核心部件,起着至关重要的作用,应为其他的电路都围 绕着他进行设计,所以如何能够更好,合理地利用片上资源,使得其可以发挥最 大的功效,是电路设计的重要环节。 单片机的种类很多,如何选择一款适合本次课题的单片机,可以考虑以下几点 在进行选择:其一,根据所需要完成的任务要求进行选择,其二,选择单片机的时 候尽量多考虑比较熟悉的单片机,这样就可以是的在同等条件下的开发时间大大的 缩短,提高工作效率。最后,还要综合考虑开发环境,因为单片机的开发或者调试 都需要仿真器系统,所以选择的时候最好选择比较熟悉的市场上比较容易仿真的, 同时还要考虑加个是否合理。 STC89C52 单片机是 STC 公司生产的一种低功耗,高性能 CMOS8 位微控制器, SRC89C52 单片机使用了经典的 MCS-51 内核,但做了很多改进,是的芯片具有传 统 5 单片机不具有的功能 3 15。他拥有 9 针串口,可以直接跟 GSM 模块相连, 这样就大大减少了电平转化带来的麻烦和工作量,同时,我们在大学的学习阶段 4 也学习了 51 单片机,C 语言编程对单片机的控制 14,对 51 系列单片机可以说是 非常熟悉,并且 STC52 单片机应用范围广,购买方 便而且价格便宜,所以针对 本次课题,STC89C52 单片机是不二的选择。 2.2.4 传感器的选择 振动探测器又可以称为振动测量。是专门检测振动信号的一种探测器。振动 传 感器可以把传感器输出的电信号变换企鹅能将其放大到触发器所需的电平,触发 器则可以把适调放大器输出的电平转化成继电器开关状态,探测器的核心部件是 振动传感器。其工作原理是当检测到机械振动信号是,能够把检测到的机械振动 信号转换成电信号进行输出。本系统采用高灵敏度振动探测器 4。 2.3 设计方案选定 综上所述,本次课题将采用STC89C52单片机作为系统的控制核心,单片机上 面连接震动探测器,单片机的串口直接连接TC35i模块,加上外围的供电电路, GSM网络.系统的硬件连接完成,期望达到的目的就是当振动传感器接收到振动信 号时,GSM模块就会将一条相关的信息发送给相应的手机用户。如图2-2所示。 图2-2 系统功能图 3.1 STC89C52 单片机 3.1.1 STC89C52 芯片管脚信息 图 3-1 为单片机最小系统,其 CPU STC89C52 芯片管脚信息如下: 5 图 3-1 STC89C52 芯片管脚信息 VCC(40 引脚):电源电压。 VSS(20 引脚):接地。 P0 端口(P0.0 P0.7,3932 引脚):P0 口是一个漏极开路的 8 位双向 I/O 口。 作为输出端口,每个引脚能驱动 8 个 TTL 负载,对端口 P0 写入“1”时,可以作为高 阻抗输入。在访问外部程序和数据存储器时,P0 口也可以提供低 8 位地址和 8 位数据 的复用总线。此时,P0 口内部上拉电阻有效。在 Flash ROM 编程时,P0 端口接收指令 字节;而在校验程序时,则输出指令字节。验证时,要求外接上拉电阻。 P1 端口(P1.0 P1.7,18 引脚):P1 口是一个带内部上拉电阻的 8 位双向 I/O 口。P1 的输出缓冲器可驱动(吸收或者输出电流方式)4 个 TTL 输入。对端口写入 1 时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。P1 口作输入口使用 时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流。 P2 端口(P2.0 P2.7,2128 引脚):P2 口是一个带内部上拉电阻的 8 位双向 I/O 端口。P2 的输出缓冲器可以驱动(吸收或输出电流方式)4 个 TTL 输入。对端口写 入 1 时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。P2 作为输入口 使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。 P3 端口(P3.0 P3.7,1017 引脚):P3 是一个带内部上拉电阻的 8 位双向 I/O 端口。P3 的输出缓冲器可驱动(吸收或输出电流方式)4 个 TTL 输入。对端口写入 1 时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。P3 做输入口使用时, 因为有内部的上拉电阻,那些被外部信号 拉低的引脚会输入一个电流。 6 图 3-2 单片机输入输出串口 3.1.2 STC89C52 单片机外围电路 图 3-2 单片机通过串口连接 GSM 模块 如图 3-2,可以通过 RS232 直接将单片机和 GSCM 模块的串口相连,完成数据的传输。 3.2 TC35iGSM 模块 3.2.1 TC35i 模块相关电路 7 图 3-3 TC35i 模块相关电路 TC35i 外围电路如上图 3-3 所示 电源电路分为充电电池和稳压电源模块两部分:充电电池主要为整个系统提供 3.6V 工作电压,同时产生 MAX3238 所需要的高电平;三端电源模块 LM7806 将外部12V 直流电源转换为6V,连到 ZIF 连接器的 11、12 引脚,在充电模式下,为 TC35i 提供 6V、500mA 的充电电源。 启动电路由开漏极三极管和上电复位电路组成。模块上电 10ms 后(电池电压须大 于 3V),为使之正常工作,必须在 15 脚()加时长至少为 100ms 的低电平信号,且该信号下 降沿时间小于 1ms。启动后,15 脚的信号应保持高电平。 基带处理器集成了一个与 ISO 7816-3 IC Card 标准兼容的 SIM 接口。为了适合外 部的 SIM 接口,该接口连接到主接口(ZIF 连接器)。在 GSM11.11 为 SIM 卡预留 5 个引脚 的基础上,TC35 在 ZIF 连接器上为 SIM 卡接口预留了 6 个引脚,所添加的 CCIN 引脚用来 检测 SIM 卡支架中是否插有 SIM 卡。当插入 SIM 卡,该引脚置为高电平时,系统方可进 入正常工作。 数据通信电路主要完成短消息收发、与 PC 机通信、软件流控制等功能。数据通信 电路以 Maxim 公司的 MAX3238 芯片为核心,实现电平转换及串口通信功能;具有低功耗、 高数据速率、增强型 ESD 保护等特性。增强型 ESD 结构为所有发送器输出和接收器输 入提供保护,可承受15kV IEC 1000-4-2 气隙放电、8kV IEC 1000-4-2 接触放电和 15kV 人体放电模式。 TC35 的 SYNC 引脚有两种工作模式,可 8 用 AT 命令 AT SYNC 进行切换。一种是指示发射状态时的功率增长情况,另一种是指示 TC35 的工作状态。本模块使用的是后一种功能:当 LED 熄灭时,表明 TC35 处于关闭或 睡眠状态;当 LED 为 600ms 亮/600ms 熄时,表明 SIM 卡没有插入或 TC35 正在进行网络登 录;当 LED 为 75ms 亮/3s 熄时,表明 TC35 已登录进网络,处于持机状态。 TC35i 通过 C8051F020 与 PC 机通信,其外围电路图如下: 图 3-5 TC35I 与 PC 机通信 3.2.2 TC35i 模块主要特性与技术指标 TC35i 主要特性与技术指标包括以下几点: 1. 频段为双频 GSM900MHz 和 GSMl800MHz (phase 2/2+);2.支持数据、语音、短消息 和传真;3.高集成度(54.5mm36mm3.6mm); 4.质量为 9g;5.电源电压为单一电压 3.34.8V;6.可选波特率 300bps115kbps,动波特率 4.8115kbps;7.电流消耗休 眠状态为 3.5mA,空闲状态为 25mA,发射状态为 300mA(平均),2.5A 峰值;8.温度范围 正常操作-20+55,存放-30+85;9.SIM 电压为 3V/1.8V。 TC35i 有 40 个引脚,通过一个 ZIF(Zero Insertion Force,零阻力插座)连接器引 出。这 40 个引脚可以划分为 5 类,即电源、数据输入/输出、SIM 卡、音频接口和控制。 第 114 脚为电源部分:15 为电源电压输入端 Vbatt+,610 为电源地 GND,11、12 为 充电引脚,13 为对外输出电压(共外电路使用),14 为 ACCU-TEMP 接负温度系数的热敏 电阻。2429 为 SIM 卡引脚,分别为 CCIN、 CCRST、CCIO、CCCLK、CCVCC 和 CCGND。3340 为语音接口,用来接电话手柄。15、30、31 和 32 脚为控制部分:15 为 点火线 IGT(Ignition), 当 TC35i 通电后必须给 IGT 一个大于 100ms 低电平,模块才启 9 动;30 为 RTC backup,31 为 Power down,32 为 SYNC。1623 为数据输入/输出,分别为 DSR0、RING0、RxD0、TxD0、CTS0、RTS0、DTR0 和 DCD02 8。 TC35 的数据输入/输出接口实际上是一个串行异步收发器,符合 ITU-T RS232 接口 标准。它有固定的参数:8 位数据位和 1 位停止位,无校验位,波特率在 300bps115kbps 之间可选,硬件握手信号用 RTS0/CTS0,软件流量控制用 XON/XOFF,CMOS 电平,支持标准的 AT 命令集。模块中与 SMS 有关的 GSM AT 指令介绍 GSM 引擎模块提供的命令接口符合 GSM07.05 和 GSM07.07 规范。GSM07.07 中定义 的 AT Command 接口,提供了一种移动平台与数据终端设备之间的通用接口;GSM07.05 对短消息作了详细的规定。在短消息模块收到网络发来的短消息时,能够通过串口发 送指示消息,数据终端设备可以向 GSM 模块发送各种命令。与 SMS 有关的 GSM AT 指令 如表 1 所列。GSM AT 指令集,是由诺基亚、爱立信、摩托罗拉和 HP 等厂家共同为 GSM 系统研制的,其中包含了对 SMS(Short Message Service)的控制。 目前,发送短消息常用 Text 和 PDU(Protocol Data Unit,协议数据单元)模式。使 用 Text 模式收发短信代码简单,实现起来十分容易,但最大的缺点是不能收发中文短 信;而 PDU 模式不仅支持中文短信,也能发送英文短信。PDU 模式收发短信可以使用 3 种编码:7-bit、8-bit 和 UCS2 编码。7-bit 编码用于发送普通的 ASCII 字符,8-bit 编码通常用于发送数据消息,UCS2 编码用于发送 Unicode 字符。一般的 PDU 编码由 A B C D E F G H I J K L M 十三项组成。 A:短信息中心地址长度,2 位十六进制数(1 字节)。 B:短信息中心号码类型,2 位十六进制数。 C:短信息中心号码,B+C 的长度将由 A 中的数据决定。 D:文件头字节,2 位十六进制数。 E:信息类型,2 位十六进制数 F:被叫号码长度,2 位十六进制数。 G:被叫号码类型,2 位十六进制数,取值同 B。 H:被叫号码,长度由 F 中的数据决定。 I:协议标识,2 位十六进制数。 J:数据编码方案,2 位十六进制数。 K:有效期,2 位十六进制数。 L:用户数据长度,2 位十六进制数。 M:用户数据,其长度由 L 中的数据决定。J 中设定采用 UCS2 编码,这里是中英文的 Unicode 字符。 10 第四章 单片机软件设计 4.1 程序总体设计 该报警系统是由 STC89C52 单片机控制的,针对单片机的软件开发,可以通过 C 语 言来实现。采用 C 语言的有点在于编写代码效率高,可以跨平台移植,C 语言我们比较 熟悉。系统的主程序是一个无限循环的过程,如图 4-1 所示。 Y 开 始 TSC89C52 单片机初始化 TC35i 模块初始化 振动探测器端口有信 号 进入中断 调用 TC35i 发送短信程序 向用户发送报警消息 结 束 11 图 4-1 主程序流程图 系统上电以后,先对系统硬件(STC89C52 单片机和 TC35i 模块)初始化,初始化 完成之后,系统进入监测警戒状态,系统将会对振动传感器端口扫描,但出现报警信 号时,系统执行下一步程序,系统开始调用 TC35I 模块中的发送预存报警短消息程序, 向指定的用户手机发送报警信息。系统再次进入监测状态。 4.2 系统开发环境与开发工具 STC89C52 单片机的常用开发软件是 Keil,它能够利用 C 语言进行编程,并且可以 直接生成单片机语言 hex 文件,可以直接利用 STC-IPS 软件烧写到单片机里面,在通 过串口助手进行调试。 程序的运行和调试都是在 Keil 中进行的,Keil 具有以下几点特点:1.具有风格的 可视化界面;2.能够对 C 语言进行调试;3.能够进行软件仿真;4.能够设置断点,进 行单步运行方式。 4.3 系统初始化程序设计 系统初始化就是设置单片机的各个相关控制寄存器和状态寄存器,是单片机上电 后就可以按照初始化后的状态去动作。初始化环节如下: 1.系统时钟设置:单片机根据型号的不同可以选用的振荡器不同,可以选择合适的 振荡频率,本次系统的时钟 XT2CLK 是由标准晶体或陶瓷谐振器产生,外界 8MHz 时钟 信号源。 2.串口通信设置:通过对硬件串口的编程,实现对单片机的模块寄存器进行通信控 制,波特率等进行设置,从而控制串行数据传送的格式和速度。 3.A/D 转换模块设置; 4.4 短信的发送 AT 指令时 Hayes 公司发明的一种调制解调器命令语言,应为每条命令都是以字母 AT 开头的,因为得名。AT 指令集试试先通过串口对 GSM 模块进行控制的 AT 指令的集 合。常用的 AT 指令有几十个,当我们吧 GSM 模块通过串口与电脑连接后,就可利用 串口助手软件通过输入 AT 指令对模块加以控制。 短消息的编码方式根据欧洲电信标准化协会指定的短消息发送协议包括三种模式: Block 模式,Text 模式,PDU 模式。Block 模式现在已经很少用了,现在应用较多的 12 是基于 AT 指令的 Text 模式和 PDU 模式。Text 模式收发短信的代码比较简单,因此很 容易实现短信收发,但是该模式由于只能收发英文短信息却不能收发中文短信系,因 而具有很大的局限性。PDU 模式是通过定义一个基于字符的串口,用二进制编码传送 十六进制编码的消息块,在该模式下,不必了解消息块的内容,只是在终端之间对消 息块进行传递。PDU 模式既可以收发英文短消息,也可以收发中文短消息 5。 利用 AT 指令集收发中文短消息是需要注意的几点是:首先要把短信的格式设置 为 PDU 模式。通过使用 AT 指令“AT+CMGF=0”,选择短信模式为 PDU 模式。然后将需 要发送的中文短信息转换为 Unicode 编码。,最后使用 AT 指令的发送短信息指令发 送经过转码后的编码。 第五章 系统调试 5.1 硬件基本功能调试 5.1.1 单片机的基本功能调试 首先在 PC 要安装一下软件:1.Keil 软件开发环境;2.stcisp 程序烧写软件; 3.USB 转串口的驱动程序。 新建工程: 打开 keil-文件-新建-新建工程,然后后对工程进行命名,选择芯片。 13 图 5-1 新建工程 图 5-2 芯片的选择 选择 Atmel 下的 AT89C52,点击确定。 选择此处 选择 89C52 14 图 5-3 不添加启动文件 是否添加启动文件?选择“否” 新建文件,然后保存,命名,必须要以后缀.C 结束。 将.C 文件添加到源代码组 图 5-4 添加文件到组 点击,选择刚刚保存的.C 文件,添加,关闭。 接下来就可以编译了。 ,先使用购买单片机时候商家送的资料里面的小程序进行测试。 这里要注意的是,编译时要选择“目标选项”里面“输出“栏里面的“产生 HEX 文 件” 15 图 5-5 生成 HEX 文件 编译没有错误之后,使用 STC-IPS 软件将程序烧写进单片机; 图 5-6 选择单片机种类 STC89C52RC 选择端口号; 选择 16 图 5-7 端口号的选择 查看设备管理器里面单片机的端口号,然后再上图中对应选中。即可烧写程序进单片 机。 5.1.2 GSM 模块的调试 下面我们就使用串口线把计算机与 GSM 模块连接起来,用计算机通过 AT 指令控制 GSM 模块进行调试。利用计算机调试 GSM 麽魁岸可以通过 WINDOWS 程序中自带的超级终 端调试,也可以通过串口调试助手进行调试,由于串口助手用起来比较方便,我们选 择使用串口助手进行调试。 通过串口调试助手调试 GSM 模块如下图。首先运行电脑端串口调试助手软件,选择 对应的串口,串口选择时选择 GSM 模块和电脑一直的端口,这里我们使用的是 CMO2 口, 波特率选择是 9600,校验位选 NONE,数据位选 8,停止位选 1.这样设置参数是因为 TC35I 模块在出厂时已经设置好了数据流控制方式,为了和它相匹配所以这样设置各项 参数。 17 图 5-8 调试 GSM 模块 参数设置完成就可以在数据发送区域输入:AT 然后回车(点击发送) ,数据接收区 域这时显示 AT(换行)OK,表明 TC35I 模块和计算机已经连接成功。麽魁岸可以正常 工作,这时就可以通过串口调试助手测试各种 AT 指令了,下面就以一个实际的例子介 绍如何在 PDU 模式下发送中文短信息。 1.短信息的发送 例如要往手机号码 13349840127 里发送字符“门被打开”的短消息,首先要把字 符“门被打开”转换成 Unicode 编码。编码转换软件可以用 Unicode 转换工具,可以 从网上下载到。 图 5-9 中文转码 经过编码转换后, “门被打开”的 Unicode 编码就是 95E888AB62535F00。则 TC35i 的指令可以进行如下设置: AT+CMGF=0; 设置短信模式为 PDU 格式; AT+CMGS=22; 发送短消息指令,22 是短信息字符的总长度。 一般的 PDU 编码由一下表格中的 A B C D E F G H I J K L M 十三项组成,这十 18 三项分别对应着 PDU 编码组成中的不同为之所代表的不同编码。这种通过以表格形式 对 PDU 编码的 A 到 M 项加以介绍的方式,可以使我们更加直观的了解不同编码为只代 表的不同含义,PDU 编码 1 组成如表 5-1 所示。 表 5-1 PDU 编码 1 现在我们以往手机 13349840127 里发送“门被打开”短信息是需要设置的编码为例, 对各个编码加以解释说明。但我们通过 AT 指令想要发送“门被打开”这条短信息是, 我们实际上发送的应该是 PDU 模式下的一串数字,这一串数字分别代表着不同的含义。 其中又可以划分为两种类型:一种是包括短信息服务中心地址的 PDU 模式的编码,另 一种是没有短信息服务中心地址的 PDU 模式编码,下面对其分别加以介绍。 包括短信息服务中心地址的 PDU 模式编码 91 685166867979F5 11 00 0B 81 3143890421F7 00 00 A9 08 95E888AB62535F00 短信息中心号码 被叫号码 短信息内容 这串数字是包含短信息中心地址的 PDU 模式下的编码,各个代码部分的详细说明如上 表所示,可以看出,在发送短信息使我们最需要注意的就是短信服务中心号码,被叫 号码,短信长度和短信内容这几位的编码,其他为一般可以保持不变。此外,对包含 短信息服务中心地址的 PDU 模式下的编码还需要说明的几点是:一.当选用包含短信服 务中心地址的 PDU 模式是,所用的 SIM 卡使用是不需要在设置短信息中心的号码,这 点适合没有短信息服务中心地址的 PDU 模式编码最明显的不同之处;二.Unicode 编码 不仅可以表示中文,也可以表示一般的英文字母和数字,当表示英文字母或者数字时 在英文字母或者数字的 ASCII 码前要加上 00;三.上面例子中的短信长度代码(08)的 计算方法是把短信内容的 Unicode 编码字符除以 2 得到的;四.但短信服务中心号码发 生改变时,在使用“AT+CSCA”指令时,要把 TC35I 模块重新启动,否则 TC35I 魔窟啊 无法正常工作;五.当发送短信时设置短信服务中心号码要是 SIM 卡归属地的信息服务 中心的号码,胃不是当地的号码。 以上是对包括信息服务中心地址的 PDU 模式编码简单做的一个介绍,下面我们再介绍 一个没有短信中心服务地址的 PDU 模式编码。 2)没有短信息中心地址的 PDU 模式编码 19 00 11 00 0D 3143890421F7 0008A9 08 95E888AB62535F00 1A 被叫号码 短信息内容 对上面代码的详细说明为 PDU 编码 2,组成如表 5-2 所示。 (没有短信息服务中心地址 的 PDU 模式编码在使用时有一点需要注意的是:需要发送信息的 SIM 卡在使用之前要 用手机预先设置号段信息服务中心的号码,设置短信息中心号码可以使用 “AT+CSCA=+8613349840127”指令进行设置。 ) 表 5-2 PDU 编码 2 前面我们对包括短信息服务中心地址的 PDU 模式和五短信息服务中心地址的 PDU 模式编码进行了介绍。 20 5.2 整体性能测试 系统启动前要对 TC35I 模块进行初始化。对 TC35I 模块的初始化指的是通过 AT 指 令把设定的短信息发送模式,短信息中心,用户手机号码和短信息的终端上固化。 先用串口线把 TC35I 模块和单片机连接起来,然后再给单片机控制单元上电,这时 模块的电源指示灯点亮,TC35I 模块状态指示灯以 600ms 亮一次,每 600ms 灭一次的状 态闪,此时进入初始化阶段。初始化结束后,依然是电源指示灯亮。当 TC35I 模块的 状态指示灯为 75ms 亮,3s 灭时,说明 GSM 模块已经登录网络,可以进行通信了。系统 进入报警状态,如果探测器发出异常信号时,系统就会给指定的用户手机发送报警短 信息“门被打开” 。 图 5-12 系统调试 5.3 实验结果分析 通过实验,系统可以完成报警功能。当单片机上面的一根跳线被断路是,我们的目 的手机就可以收到一条“门被打开”的短信息。在调试的过程中我也发现了一些问题, 比如说当我们的程序中的延时函数较多时,短信息的发送就会比较慢,总的延时差不 多有 1 分钟,需要改进。还有就是 GSM 模块登录网络之后,有时会突然掉出网络,导 致系统不能持续的循环,所以我们在选用 SIM 卡时,要尽量选择信号更强的 SIM 卡, 否则会对系统的稳定造成影响。 21 22 结 论 本文设计了一种基于 GSM 网络的远程报警系统,该系统可以有效的对无人的家庭环 境进行监控报警的功能。该系统选的的是技术比较成熟的 GSM 网络作为报警系统的通 信平台,使得报警距离不受地域的限制,报警信息能够实时快速的传送,也降低了报 警的成本。本文完成的主要工作如下: 1.根据远程报警系统的工作要求,在理论分析的基础上,进行了以 STC89C52 单片 机作为报警系统的主控制器,结合前端的报警探测器以及 GSM 模块的远程报警系统的 设计。 2.完成了包括单片机系统电路,GSM 模块电路等电路的报警系统硬件设计。 3.根据报警系统要实现的功能对远程报警系统的总体工作流程进行了分析,采用 C 语言进行了报警系统的设计,实现了单片机通过 AT 指令控制 GSM 模块发送报警信息的 功能。 4.该远程报警系统的系统电路,单片机系统模块,GSM 模块等功能模块分别进行了 调试,最后对系统进行整体调试。 本系统实现了预定的基本功能,但是目前状况下还是存在一些不足之处,比如探测 器灵敏度的问题,在某些场合信号受到屏蔽和吸收的状况,通信成功率降低的问题等。 所以,今后还应该针对上述不足的部分进行更加深入的研究,逐步完善远程报警的功 能。 通过对论文工作的研究和编写,我在理论研究和实际实践中有了很大的进步,但是 由于本人的研究水平和研究时间的限制,本文会存在一些错误和不足之处,有需要改 善的地方,王老师批评指正。 23 参考文献 1赵金峰. 基于 GSM 网络的远程监控终端的设计与实现J.武汉:武汉理工大学,2008.3-5. 2王显涛GPRS 远程监控系统D.成都:电子科技大学,2005.31-33. 3戴佳,苗龙,程斌.51 单片机应用系统开发典型实例M.中国电力出版社,2005.7. 4刘占林.振动入侵探测器的原理及应用 J.中国安全产品信息,2000.43-46. 5Siemens. AT Command Set Siemens Cellular Engines.2002.120-142. 6邓军龙.手机和单片机控制系统的理论与应用研究D.广州:广州工业大学,2002.14-15. 7叶丹霞,王家礼.GSM 模块 TC35 及在远程监控系统中的应用J.现代电子技术 ,2005.14-16. 8SIEMENS mobileSIEMENS TC35I Terminal User Guide.2001.70-114. 9冯娟,曾立华基于 GSM 的住宅只能报警系统的设计D武汉:武汉理工大学,2007.6-7. 10W.C.Y.LEE.Mobile cellular telecommunicationsJ,IEEE Trans on Information Theory,2001.126-138. 11ALESSANDRO A.GUILIANNO B.Analysis of the WAP protocol over SMS in GSM networks.Wireless Communications and Mobile computing,2001.381-395. 12朱华.发展中的汽车防盗系统J.城市车辆,2005.55-56. 13王田苗嵌入式系统设计与实例开发M.北京:清华大学出版社,2002.95-98 14谭浩强. C 语言程序设计M.北京:清华大学出版社,2003.15-17 15 V. Yu. Teplov,A. V. Anisimov. Thermostatting System Using a Single-Chip Microcomputer and Thermoelectric Modules Based on the Peltier EffectJ ,2002.33-66. 24 致 谢 首先衷心感谢我的老师,本文的选题,课题研究及撰写工作都是在他的无私关怀 和悉心指导下完成的。对于课题研究过程中的问题,都会以饱满的热情给与我讲解, 是我非常感动。导师严谨的学术精神,渊博的知识,朴实的生活作风以及和蔼可亲的 学者风度,是我一生学习的榜样。在此,向我的老师教授致以由衷的感激和敬意。 本课题再设计和论文撰写的过程中也得到了刘洋同学的帮助,在此也要表达我真 诚的感谢。 25 程序: #include #include #include char code str8=ATn; /定义字符串 8 char code str9=AT+CMGF=1n; /定义字符串 9 char code str10=AT+CSCS=GSMn; /定义字符串 10 char code str11=AT+CSMP=17,167,0,0n; /定义字符串 11 char code str12=AT+CMGS=13349840127n; /定义字符串 12 char code str13=fire; /定义字符串 13 char code str14=x1a; /定义字符串 14 void Serial_Init(void); /声明串口初始化函数 void Delay_ms(unsigned int time); /声明延时函数 void GSM_Sent_Text_Message(void); /声明给指定号码发送 TEXT 模式短信息函数 /*主函数*/ /*函数原型:void main(void) /*函数功能:主函数 /*输入参数:无 /*输出参数:无 /*/ void main(void) Serial_Init(); /调用串口初始化函数 TI = 1; Delay_ms(400); if(P01=0) Delay_ms(20); GSM_Sent_Text_Message(); while (1) ; /*串口初始化函数*/ /*函数原型:void Serial_Init(void) /*函数功能:串口初始化 /*输入参数:无 /*输出参数:无 /*/ void Serial_Init(void)/串口初始化函数 SCON = 0 x50;/串口:方式 1,允许发送和接收 TMOD = 0 x20;/定时器 1:模式 2,8 位自动重装模式,用于产生波特率 TH1 = 0 xFD; /11.0592MHZ 晶振,波特率为 9600 TL1 = 0 xFD; TR1 = 1; /开启定时器 1 26 /ES = 1; /开启串口中断 /EA = 1; /开启全局中断 /*串口中断处理函数*/ /*函数原型:void Serial_Int(void) /*函数功能:串口中断处理 /*输入参数:无 /*输出参数:无 /*/ void Serial_Int() interrupt 4 ES=0; /关串口中断,防止中断嵌套 if(TI) /如果是发送中断,则不做任何处理 TI = 0; /清除发送中断标志位 if(RI) /如果是接送中断,则进行处理 RI = 0; /清除接收中断标志位 ES = 1; /开启串口中断 /*time ms 延时函数*/ /*函数原型:Delay_ms(unsigned int time) /*函数功能:延时 time ms /*输入参数:time /*输出参数:无 /*/ void Delay_ms(unsigned int time) unsigned int i; for(;time0;time-) i=1500; while(i-); /*给指定号码发送 TEXT 模式短信*/ /*函数原型:GSM_Sent_Text_Message(void) /*函数功能:给指定号码发送英文短信息。num=接收端号码 /*输入参数:无 /*输出参数:无 /*/ void GSM_Sent_Text_Message(void) printf(%s,str8); /以下几个为 GSM 的 AT 串口指令,设置短信发送 类型 Delay_ms(200); printf(%s,str9); /设置为 TEXT 模式,适合发送短信内容为英文 Delay_ms(200); printf(%s,str10); /使用 GSM 字符集 Delay_ms(200); 27 printf(%s,str11); /设置 TEXT 模式参数 Delay_ms(200); printf(%s,str12); /设置接收端电话号码 Delay_ms(200); printf(%s,str13); /具体发送的内容在此修改 printf(%s,str14); /结束符,相当于键盘的 CTRL+Z Delay_ms(200);
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!