基于GSM短消息的温度报警系统设计.doc

上传人:laozhun 文档编号:4135954 上传时间:2023-04-07 格式:DOC 页数:29 大小:342KB
返回 下载 相关 举报
基于GSM短消息的温度报警系统设计.doc_第1页
第1页 / 共29页
基于GSM短消息的温度报警系统设计.doc_第2页
第2页 / 共29页
基于GSM短消息的温度报警系统设计.doc_第3页
第3页 / 共29页
基于GSM短消息的温度报警系统设计.doc_第4页
第4页 / 共29页
基于GSM短消息的温度报警系统设计.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《基于GSM短消息的温度报警系统设计.doc》由会员分享,可在线阅读,更多相关《基于GSM短消息的温度报警系统设计.doc(29页珍藏版)》请在三一办公上搜索。

1、1 引言当前,在许多工业领域里,调速系统都有着广泛地应用,而电动机是调速系统主要的部分之一。决定电动机寿命的因素很多,最主要的是绝缘老化速度,导致绝缘老化的原因主要是由机械或热作用引起的疲劳损坏,特别是热作用对绝缘老化与电动机寿命关系重大。随着现代电力电子技术和网络技术的迅猛发展, 温度防护在调速系统中的作用越来越重要。本文涉及到一种基于GSM网络技术的调速系统温度报警的新技术。近年来,移动通信发展如火如荼,从模拟的AMPS网到数字蜂窝GSM网,到CDMA移动通信网,现在日本一些国家又提出了第四代移动通信网(即4G)的概念,并开始开发和研制。目前,随着手机性能增强、价格下降、通信费用降低,移动

2、通信用户比较普及,如依托移动通信网的SMS(短消息业务)建设智能监控防盗报警系统将有很大的发展潜力和实用价值。SMS(短消息业务)是GSM网的一项增值业务,他通过控制信道传输数据,支持点到点消息业务及消息广播业务等多种方式。通过SMS传输数据具有以下优点:(1)信道建立时间短,数据传输速率快;(2)不占用话音信道,通话时不影响数据传输;(3)由于不占用话音通道,通信费用低廉;(4)通过短消息广播业务,可提供点对多点的数据传送;(5)系统扩容方便;另一方面,SMS还受信息长度的限制,点点信息长度为140B,消息广播业务信息长度为82B,这就决定了传输的数据不能太长。依托移动通信网的SMS(短消息

3、业务)建设智能温度报警系统由于发送到用户手机或监控中心的是警情信息,内容较少,因此在充分利用SMS传输数据优点的基础上SMS传输信息长度也完全能满足要求。使用GSM网建设温度报警系统,以其特有的防火、防潮、防化学物质腐蚀、防剪、防破坏,无需布线、工程简单、费用低廉、易于管理、易维护和移动性好成为理想的温度报警系统。实现对调速系统内部状况的实时远程监测监控, 从而可以实现对调速系统温度的实时检测和远程智能控制等功能。1.1 数据采集系统的基本概念在生活和工业过程中,通过一定的测量设备把温度、湿度、压力、速度等模拟量转变为数字信号,再收集到处理设备上显示、处理、记录和传输,这个过程即称“数据采集”

4、,实现这个过程的系统就是“数据采集系统”。 一般来讲,一个典型的数据采集系统如图1所示:现场传感器模数转换器CPU键盘显示设备执行设备 图1 典型的数据采集系统1.2 基于GSM和通用计算机的数据采集系统近年来,随着移动通信技术的发展,根据目前GSM网络技术成熟,覆盖范围广的特点,合理有效的利用GSM网络资源,可以避免组建专用数据传输网络的成本费用高,通讯距离短,通讯效果差等诸多难题。GSM网络在计算机应用领域中迅速发展的一种系统结构形式,它是由通用计算机(PC机)与GSM网络的短消息相连而成,GSM网络及其外围电路构成的部分是专为数据采集等功能的要求而配置的,主机则承担数据采集系统的人机对话

5、、大容量的计算、记录、打印、图形显示等任务。混合型计算机数据采集系统有以下特点:(1)系统配置灵活,易构成各种大中型测控系统。(2)主机可远离现场而构成各种局域网络系统。(3)系统采集端的软硬件设计与配置规模都是以满足数据采集系统功能要求为原则,因此系统的软硬件应用/配置比接近于1,具有最佳的性价比,系统的软件一般都有应用程序。(4)系统采集端的可靠性好、使用方便。应用程序在ROM中运行不会因外界的干扰而破坏,而且上电后系统立即进入用户状态。1.3 GSM网络的协议模型GSM网络的协议模型GSM标准采用不同的信道来传送用户信息和信令信息, 因此也就有如下两类信息数据:用户信息:包括语音和数据。

6、信令信息:用于呼叫建立、释放系统管理信息。另外,GSM标准将短消息业务也用信令信道来传送。GSM规范中给出了无线通信的接口标准即空中接口Um,通常用分层传输的信令实体协议模型说明,如图2所示,GSM标准Um接口信令在网络实现时,各层根据其完成的功能不同,由网络的不同部分来完成。这主要是为了减少子系统间的数据传送量以及移动交换中心的处理压力。而在移动台的一侧全部功能则由移动台独立完成。其中,各通信实体含义为:CC:呼叫控制;SMC:短信息业务控制;MM:移动特性管理;TCAP:转移能力应用部;RM:无线资源管理;SCCP:信令连接控制部; BSSMAP:基站系统管理应用部;MTP:信息传输部;I

7、SDN- UP:ISDN 用户部;MAP:移动通信应用部1。移动台移动交换中心基站CC SMC SSMMRML2L1BSSMAPRM SCCPL2 MTPL1CCSMCMM MAP ISDN -UPBSSMAP TCAPSCCP SCCP MTP MTP图2 GSM网络信令协议模型1.4 本设计的研究内容正如前文所述,由于计算机技术和通信技术的飞速发展,数据采集系统已经逐步由集中控制系统向集散型系统发展。集散型系统与集中式系统的根本区别在于集散型系统采用了网络技术将多个处理系统连接在一起,使他们有序、协调地工作。在工业现场中,数据采集点可能与控制中心距离较远,同时分散的分布于一个较大的地域范围

8、内,这时采用有限网络技术就显得力不从心了。使用SMS进行数据传输不需要架设专用的网络线路,组网成本低,可以方便地增加数据采集点,适用于范围大而分散且处于偏远地区的数据采集传输(均需GSM网络覆盖)。本文正是研究了基于GSM网络下的SMS服务进行数据传送的数据采集系统的软硬件设计。2 数据采集系统硬件设计2.1 硬件总体设计框图本文设计了一种通过GSM短消息的收发实现对系统设备进行遥控,基于单片机控制,利用支持短消息业务的GSM引擎模块发送温度报警信息,还利用现有的900M或1800M的GSM网络,而监控终端也不再仅局限于PC机,也可以是移动通讯平台或其他移动终端。对系统环境状况监测和数据传输的

9、GSM短消息遥控监测系统。该系统克服了普通电话遥控的人机界面不友好,且控制功能少等缺点,实现了数据采集(温度等)、实时监测、短信报警的功能,为调速系统的安全提供了保证。系统的控制过程如下:用温度传感器采集外界温度值,通过A/D转换将此模拟信号转换为数字信号传入单片机中,对单片机进行编程。本系统采用了西门子公司提供的TC35短信模块进行短信的编辑和发送,它的串口通讯遵循RS232标准,所以要与单片机连接还要通过串口的电平转换电路,这也是系统设计的一部分;短信模块发送短信是由AT指令控制的,其发送的短信格式有两种:文本格式和PDU格式,前者指能发送字符合字母,而后者不但可以发送字符、字母,关键是可

10、以发送汉字。要想让用户方便得读取短信内容,本文选择采用PDU格式,这样AT指令的短消息编程也成为了系统设计一部分。前面说提到的AT指令,即Attention AT命令集是从Terminal Equipment或DTE(Data Terminal Equipment) 向TA(Terminal Adapter)或DCE(Data Circuit Terminating Equipment)发送的通过TE发送AT命令来控制MS的功能与GSM网络业务进行交互4。本系统采集端以单片机为主控制器,由温度传感器DS1820,键盘,两个LED显示器,两个指示灯,一个报警器,电平转换模块MAX232,通信模块

11、TC35等组成,系统总体原理图如图3所示:温度传感器DS1820 8051声、光报警块电平转换模块MAX232键盘、显示模块通信模块TC35图3 数据采集终端原理图2.2 硬件各部分设计系统硬件总的设计图如图4所示:2.2.1 温度传感器DS1820数字温度传感器的输出不是以电流或电压形式,而是将其转换为1或0形式的数字量。因此,数字输出温度传感器适合于连接到一个MCU。许多温度传感器还具有的另一功能是能在超过温度限定值时产生一个中断,可以将这些温度限定值设置到上限温度寄存器和下限温度寄存器。本文采用美国DALLAS半导体公司推出的DS1820数字式温度传感器, 它可直接将被测温度转化成串行数

12、字信号供微机处理,并且根据具体要求,通过简单的编程实现9位的温度读数,并且多个DS1820可以并接到多个地址线上与单图4 系统总的设计图片机实现通信。由于每一个DS1820出厂时都刻有唯一的一个序列号并存入ROM中,因此CPU可用简单的通信协议就可以识别,从而多个传感器的系统中节省了大量的引线和逻辑电路8。连接如图5所示:图5 DS1820与单片机的连接其中,1、2、6、7、8皆为NC:空引脚,不连接外部信号;3为VDD:接电源引脚,电源供电3.0- 5.5V;5为GND:接地;4 为DQ:数据的输入和输出引脚。2.2.2 单片机8051管脚引脚说明(如图6所示):(1)电源引脚Vcc(40脚

13、):典型值5V。Vss(20脚):接低电平。(2)外部晶振X1、X2分别与晶体两端相连接。当采用外部时钟信号时,X2接振荡信号,X1接地。 (3)输入输出口引脚:P0口:I/O双向口。作输入口时,应先将软件置“1”。P1口:I/O双向口。作输入口时,应先将软件置“1”。P2口:I/O双向口。作输入口时,应先将软件置“1”。P3口:I/O双向口。作输入口时,应先将软件置“1”。(4)控制引脚:RST/Vpd、ALE/-PROG、-PSEN、-EA/Vpp组成了MSC-51的控制总线。RST/Vpd(9脚):复位信号输入端(高电平有效)。第二功能:加+5V备用电源,可以实现掉电保护RAM信息不丢失

14、。ALE/-PROG(30脚):地址锁存信号输出端。第二功能:编程脉冲输入。PSEN(29脚):外部程序存储器读选通信号。EA/Vpp(31脚):外部程序存储器使能端。第二功能:编程电压输入端(+21V)。 图6 单片机管脚图2.2.3 短消息模块原理点对点短消息业务(SMS)是在GSM Phasel标准中引入的,具有向移动用户收/发字符或数字组成的文本信息的能力,采用了存储转发模式,短消息被发送出去后先存储在短消息业务中心,再由短消息业务中心根据寻找的目标移动终端的路由信息发送给目标移动终端。因此GSM短消息的传递是有保证的。SMS数据包是通过信令信道进行数据传输的。不管业务信道上是否有正在

15、进行的语音或数据呼叫,一个活跃移动台都能够发送或接收一个短消息传输协议数据单元。SMS基本网络结构的主要部分如图7所示:SMSC SMSCGMSCSMSIWMSCMSCVLRHLRMS图7 SMS基本网络结构本文系统通信模块采用TC35,TC35是SIEMENS公司推出的GSM专用调制解调器,它可在GSM网中完成语音、数据、短消息以及传真的传送,TC35具有标准的工业接口和完整的SIM卡阅读器,因此使用非常简单,它提供的命令接口符合GSM0705和GSM0707规范,并提供RS232数据口,模块和单片机接口通过40针数据电缆相连接,由于TC35模块的数据接口是CMOS电平,因此单片机对TC35

16、 模块控制和通信信号不用进行电平转换,通过R232 将TC35模块和PC机连接起来即可。TC35模块输入输出的TTL正电平逻辑不是+ 5V,而是+ 2. 9V,因此,必须对该输入电平进行逻辑转换,系统通过在集电极开路缓冲器7407的输出加上拉电阻完成电路逻辑的转换。系统加电后,为使TC35进入工作状态,必须给IGT(绝缘栅晶体管)加一延时大于100ms的低脉冲电平,下降持续时间不可超过1ms。启动后, IGT应保持高电平(3. 3 V) 。驱动IGT时TC35供电电压不能低于3. 3V,否则TC35不能激活。ZIF连接座的CCIN引脚用来检测SIM卡是否插好,如果连接正确,则CC IN引脚输出

17、高电平,否则为低电平,可以在系统中,将引脚与参考地间连接红色指示灯,提示用户SIM卡是否插好。TC35模块有40个引脚,通过一个ZIF(Zero Insertion Force,零阻力插座)连接器引出。这40个引脚可以划分为5类,即电源、数据输入/输出、SIM卡、音频接口和控制。TC35的第15引脚是正电源输入脚通常推荐值4.2V,第610引脚是电源接地。11、12为充电引脚,可以外接锂电池,13为对外输出电压(共外电路使用),14为ACCU-TEMP接负温度系数的热敏电阻,用于锂电池充电保护控制。15脚是启动脚IGT,系统加电后为使TC35进入工作状态,必须给IGT加一个大于100ms的低脉

18、冲,电平下降持续时间不可超过1ms。1623为数据输入/输出,分别为DSR0、RING0、RXD0、TXD0、CTS0、RTS0、DTR0 和DCD0。TC35模块的数据输入/输出接口实际上是一个串行异步收发器,符合ITU-T RS232接口标准。它有固定的参数:8位数据位和1位停止位,无校验位,波特率在300bps115kbps之间可选,默认9600。硬件握手信号用RTS0/CTS0,软件流量控制用XON/XOFF,CMOS电平,支持标准的AT命令集。其中18脚RxD0、19脚TXD0为TTL的串口通讯脚,需要和单片机或者PC通讯。TC35使用外接式SIM卡,2429为SIM卡引脚,SIM卡

19、同TC35是这样连接的:SIM上的CCRST、CCIO、CCCL、CCVCC和CCGND通过SIM卡阅读器与TC35的同名端直接相连,ZIF连接座的CCIN引脚用来检测SIM卡是否插好,如果连接正确,则CCIN引脚输出高电平,否则为低电平。TC35的第32脚SYNC引脚有两种工作模式,一种是指示发射状态时的功率增长情况,另一种是指示TC35的工作状态,可用AT命令AT+SYNC进行切换,本模块使用的是后一种。当LED熄灭时,表明TC35处于关闭或睡眠状态;当LED为600 ms亮/600ms熄时,表明SIM卡没有插入或TC35正在进行网络登录;当LED为75 ms亮/3s熄时,表明TC35已登

20、录进网络,处于待机状态。30、31、32脚为控制脚,其中30为RTC backup,31为Power down,32 为SYNC。3538为语音接口,35、36接扬声器放音。37、38可以直接接驻极体话筒来采集声音(37是话筒正端,39是话筒负端)。如图8所示:图8 TC35模块图2.2.4 键盘、显示模块和声光报警电路在系统设计中,为了节省并行I/O口线,简化系统设计,我们采用了用两个并口来模拟串口,通过移位寄存器74LS164接2个LED来完成显示功能。系统还需要一些按键来完成温湿度上下限设置,报警解除功能,当温湿度超过设定的值时,系统应该要报警指示,在本系统设计中,用了一个扬声器做声报警

21、,一个LED来指示温度报警。3 系统软件设计3.1 软件设计思想单片机测控系统软件主要完成对调速系统温度参数的实时采样、数据处理以及与上位机通讯等功能, 同时能够根据算法自动得到调速系统的温度值,并将结果与给定的温度报警值进行比较, 若超过报警值, 则启动报警电路报警。为便于编程和程序的易读性,采集终端软件采用了模块化设计,主要包括以下模块:单片机初始化,数据采集及处理,通信,按键及处理,显示等模块,上位机用Visual Basic 6.0编写界面和用Visual Basic 6.0自带的串口通信控件完成串口通信.总的流程图如图9,其中数据处理部分流程见图10,完整的软件设计如附录1。延时初

22、始 化按键?数据采集数据处理发送按键处理 Y N图9 总的流程图数 据 校 正超限?显示返回报 警报警处理 采集来的数据 Y N图10 数据处理部分流程3.2 软件各部分编写3.2.1 传感器DS1820(1)DS1820的主要特性1)适应电压范围更宽,电压范围:3.05.5V,在寄生电源方式下可由数据线供电。2)独特的单线接口方式,DS1820在与微处理器连接时仅需要一条口线即可实现微处理器与DS1820的双向通讯。3)DS1820支持多点组网功能,多个DS1820可以并联在唯一的三线上,实现组网多点测温。4)DS1820在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管

23、的集成电路内。5)温度范围55125,在-10+85时精度为0.5。6) 可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温。7)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快。8)测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。9)负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。(2)DS1820的工作原理1)光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是DS1820的地址序列

24、码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS1820自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS1820都各不相同,这样就可以实现一根总线上挂接多个DS1820的目的。 2)DS1820中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达,其中S为符号位。如表1所示:表1 DS1820温度值格式表LS ByteBit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0232221202-12-

25、22-32-4MS ByteBit 15Bit 14Bit 13Bit 12Bit 11Bit 10Bit 9Bit 8SSSSS262524这是12位转化后得到的12位数据,存储在DS1820的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。 例如+125的数字输出为07D0H,+25.0625的数字输出为0191H,-25.06- 25的数字输出为FF6FH,-55的数字输出为FC90H。如表2所示:表2 DS1820温

26、度数据表TEMPERATUREDIGITAL OUTPUT(Binary)DIGITAL OUTPUT(Hex)+1250000 0111 1101 000007D0h+850000 0101 0101 00000550h+25.06250000 0001 1001 00010191h+10.1250000 0000 1010 001000A2h+0.50000 0000 0000 10000008h00000 0000 0000 00000000h-0.51111 1111 1111 1000FFF8h-10.1251111 1111 0101 1110FF5Eh-25.06251111 1

27、110 0110 1111FE6Fh-551111 1100 1001 0000FC90h3)DS1820温度传感器的存储器 DS1820温度传感器的内存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。 4)配置寄存器 该字节各位的意义如表3所示:表3 配置寄存器结构TMR1R011111低五位一直都是“1”,TM是测试模式位,用于设置DS1820在工作模式还是在测试模式。在DS1820出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如下表4所示:(DS1820出厂时被设置为12位)表4 温度分辨率设置表R1

28、R0分辨率温度最大转换时间009位93.75ms0110位187.5ms1011位375ms1112位750ms5)高速暂存存储器 高速暂存存储器由9个字节组成,其分配如表5所示。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如表1所示。对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。表2是对应的一部分温度值。第九个字节是冗余检验字节。表5 DS1820暂存寄存器分布寄存器内容字节地址温度值低位 (LS Byte)0温度

29、值高位 (MS Byte)1高温限值(TH)2低温限值(TL)3配置寄存器4保留5保留6保留7CRC校验值8根据DS18B20的通讯协议,主机(单片机)控制DS1820完成温度转换必须经过三个步骤:每一次读写之前都要对DS1820进行复位操作,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS1820进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,当DS1820收到信号后等待1660微秒左右,后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。 表6 ROM指令表指 令约定代码功 能读ROM33H读DS1820温度传感器ROM中的编码(即64位地址

30、) 符合ROM 55H发出此命令之后,接着发出64 位ROM编码,访问单总线上与该编码相对应的 DS1820 使之作出响应,为下一步对该 DS1820 的读写作准备。 搜索ROM 0F0H用于确定挂接在同一总线上 DS1820 的个数和识别 64 位 ROM 地址。为操作各器件作好准备。 跳过ROM 0CCH忽略 64 位 ROM 地址,直接向 DS1820 发温度变换命令。适用于单片工作。 告警搜索命令0ECH执行后只有温度超过设定值上限或下限的片子才做出响应。 表7 RAM指令表指 令约定代码功 能温度变换44H启动DS1820进行温度转换,12位转换时最长为750ms(9位为93.75m

31、s)。结果存入内部9字节RAM中。读暂存器 0BEH 读内部RAM中9字节的内容 写暂存器 4EH 发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。复制暂存器 48H 将RAM中第3 、4字节的内容复制到EEPROM中。重调 EEPROM 0B8H 将EEPROM中内容恢复到RAM中的第3、4字节。读供电方式 0B4H 读DS1820的供电模式。寄生供电时DS1820发送“0”,外接电源供电 DS1820发送“1”。 6)DS1820使用中注意事项 DS1820虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面

32、的问题:较小的硬件开销需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此,在对DS1820进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS1820操作部分最好采用汇编语言实现。 在DS1820的有关资料中均未提及单总线上所挂DS1820数量问题,容易使人误认为可以挂任意多个DS1820,在实际应用中并非如此。当单总线上所挂DS1820超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。 连接DS1820的总线电缆是有长度限制的。试验中,当采用普通信号电缆传输长度

33、超过50m时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的。因此,在用DS1820进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。 图11 DS1820数据采集流程图在DS1820测温程序设计中,向DS1820发出温度转换命令后,程序总要等待DS1820的返回信号,一旦某个DS1820接触不好或断线,当程序读该DS1820时,将没有返回信号,程序进入死循环。这一点在进行DS1820硬件连接和软件设计时也要给予一定的重视

34、。 测温电缆线建议采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。(3)DS1820采集流程图根据以上的介绍,可以看出DS1820工作流程如图11所示:(程序如附录1)3.2.2 通信模块TC35的发送与接收程序首先启动TC35模块程序STAR:CLR P1.0 ;IGT=0LCALL DL100ms;延时100 毫秒SETB P1.0 ;IGT=1 启动TC35模块MOV PCON ,#80HMOV TH1,#0FBH ;采用18.432MHz 晶振时,设置串口为19200 波特率MOV TL1,#0FBHMOV SCON,#50HSETB TR1单

35、片机对TC35模块的控制采用AT指令,单片机通过AT指令对TC35模块进行初始化和短消息的接收和发送,对短消息的控制共有三种模式:Block模式,Text模式和PDU模式。PDU模式是发送或接收手机SMS信息最常用的一种方法,短信息正文经过十六进制编码后被传送,基本上全国所有的电信局都提供支持PDUMode的短消息业务,有些地址则不支持BlockMode和TextMode,这就限制了这两种接入协议的应用,而且PDUMode已有取代BlockMode的趋势。为了保证系统具有广泛的适用性,本设计采用PDU模式收发SMS。11异步串行通信的字节格式:在单片机的异步串行通信方式中,在串行口由硬件自动加

36、入起始位和停止位,构成一个完整的字符。发送器通过发送起始位而开始一个字符的传送,起始位使数据线处于低电平状态,之后传送8位数据位,在数据位中,低位在前,高位在后,最后发送停止位,用以标志一个字符的结束,它对应高电平状态,直到下一个字符的起始位到来,如图12所示:0D0D1D2D3D4D5D6D71起始位数据位停止位图12 异步串行通信字节格式短消息的帧格式:当用8bit编码时,一条短消息最多可发送140个字符1。为了充分利用短消息的长度,降低费用,同时考虑到延时的情况,本方案中,每条短消息的单帧长度均设为106个字符,如图13所示:12345.104105106起始字符顺序号数据位校验位结束位

37、图13 短消息帧结构(1) 常用AT指令如下:AT+CSMS选择短信息服务 AT+CPMS选择短信息内存AT+CMGF选择短信息格式 AT+CSCA短信息中心地址AT+CNMI显示新收到的短信息 AT+CMGR读短信息AT+CMGS发送短信息 AT+CMGL列出SIM卡中短信息AT+CMSS从SIM内存中发短信息 AT+CMGW向SIM写入待发短信息AT+CMGD删除SIM内存中的短信息 AT+CSCB选择蜂窝广播信息(2)AT指令的运用下面分别用从PC机上和从单片机上收发短信的两个例子来说明如何运用AT指令。1)PC机上通过TC35发短信在电脑上打开一个串口调试软件,比如超级终端等任意一个都

38、行。在命令行输入 AT+CMGF=0,设置为PDU模式;AT+CMGS=XX,XX为PDU的长度。TC35提示后输入PDU内容后CTR+Z就发送成功,但要注意PDU模式收发SMS的格式:发送格式:SMSC PDU类型MR DA PID DCS VP UDL UD接收格式:SMSC PDU类型OA PID DCS SCTS UDL UD其中,SMSC为短消息业务中心地址,DA/OA为源/目的地址,PID为协议识别,DCS为数据编码,UDL为用户数据长度,UD为用户数据,VP为有效时间,MR指明是发出信息,SCTS指明短消息到达业务中心的时间。例如要发送短信数据给手机号为13849379075的用

39、户,PDU内容就可以用以下数据格式:00 11 00 0B 91 3148399770F5 00 00 00 YY XXXXX以上命令解释如下:00 ;短消息中心地址,00表示用存储在SIM卡上的地址。11 ;表示是发送的第一个8位。00 ;发送方地址信息。00表示使用本机号码。0B ;接收方的号码长度3148399770F5 ;为接收号码,每两位交换,实际号码为13849379075。 00 ;协议标示 00 ;数据编码方案,中文为AA,UNICODE编码。本设计只用发送数字,因此使用数字编码,即00。 00 ;有效期 YY ;为发送的数据长度 XXXXX ;为发送的数据内容2)单片机通过T

40、C35发送短信单片机传送数据使用十六进制,传送时将其转换为ASCALL码。例如发送短信数据0123456789给手机号为13849379075的用户,就可以用以下数据格式:AT+CMGS=20 0D 0A 08 91 683108503305F0 11 00 0D 91 683148399770F5 00 00 00 0A 30 31 32 33 34 35 36 37 38 39 以上命令解释如下:20为空格键的ASCALL码,OD OA为回车换行符。08是短消息中心地址内的字节数,91为规定的协议,683108503305F0为中国移动短信息中心号码即8613800533500。11 00

41、 与前文介绍的一样,683148399770F5为被叫SIM号码即8613849379075,0D为几数据个数。0A 为发送的数据个数,30 31 32 33 34 35 36 37 38 39即发送的数据0123456789的ASCALL码10。根据以上的命令格式单片机发送子程序如下:FSCX:CLR EA MOV TMOD.#21H MOV TH1,#0FDH MOV Tl1,#0FDH ;计数器1方式2,波特率为9600SETB TR1A1 : MOV DPTR,#TABLE MOV R7,#0CHA2 : MOV A,#0 MOVC A,A+DAPTER LCALL SOUT INC

42、DPTR DJNZ R7,A2 ;发送 AT+CMGS=20 0D 0A MOV R5,#20A3 : MOV R6,#248 DANZ R6,$ DJNZ R5,A3 ;延时等待TC35执行完指令 MOV R7,#30HA4 : MOV A,#0 MOVC A,A+DAPTER LCALL SOUT INC DPTR DJNZ R7,A4 ;发送规定的格式和协议 MOV A7,#10A5 : MOV A,#0 MOVC A,A+DAPTER LCALL SOUT INC DPTR DJNZ R7,A5 ;发送数据既0123456789 SETB EA RETSOUT:MOV SCON,40H

43、 MOV SBUF,A JNB TI,$ CLR TI RETTABLE:DB 61H,74H,28H,63H,6dH,67H,73H,3dH ;“ AY+CMGS=”的ASCALL码DB 32H,30H,0DH,0AH,30H,38H,39H,31H ;20 DA 0 8 9 1DB 36H,38H,33H,31H,30H,38H,35H,30H,33H ;683108503DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H3.2.3 显示模块的程序设计为了简化系统设计,我们采用了用两个并口来模拟串口,通过移位寄存器74LS164接1个LED来完成显示功能,

44、因此相应的要显示采集的数据时,单片机必须为串口给出正确的时序,下面用汇编语言给出了模拟串口的子程序16。monichuankou:MOV T1, #33 MOV A, #XX ; XX为要显示数的编码CLR CW:MOV DATA, CSETB SCKMOPCLR SCKRLC ADJNZ R1, WRET3.3 完整的程序完整的程序清单见附录2。4 结论系统的设计是通过短消息的收发实现对调速系统设备的温度进行遥控,利用GSM网络实时地给手机用户发送短信,起到遥控检测的效果。该系统不仅能够监测到调速系统中由温度造成的危险并发出报警信号,更重要的是能够实时地传递报警信息,甚至是远程传递,有着广泛的应用前景。经过几个月的努力,在指导老师的悉心指导下,我对数据采集系统的组成,工作原理都有了扎实的理解,通过系统的学习论文所涉及的知识,熟练的掌握了单片机并且完成了数据采集系统的软件设计,并在系统上调试成功。完成的软件部分主要有:键盘和显示程序,DS1820传感器的读写程序,通信模块的发送程序,数据处理程序等。论文

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号