采用嵌入式移动网络的远程控制系统方案_第1页
采用嵌入式移动网络的远程控制系统方案_第2页
采用嵌入式移动网络的远程控制系统方案_第3页
采用嵌入式移动网络的远程控制系统方案_第4页
采用嵌入式移动网络的远程控制系统方案_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、使用嵌入式移动网络的远程控制系统前言21世纪以来,计算机网络、通信技术、自动化技术、遥感技术、传感器技术和大规模集成电路都得到了飞速发展,其中最引人注目的是无线通信技术和无线通信网络的迅速普及和应用。如今,国内外通用、覆盖范围广的无线网络已基本建成。比如中国移动的GSM网络可以漫游全国乃至全球,手机等无线终端设备可以快速普及。可以说,世界已经进入了无线时代。无线通信不仅可以传输语音信号,本质上是数据通信技术和移动通信技术的结合,而数据通信是无线传输的核心内容。近年来,移动通信的数据业务发展迅速,其年增长率远高于业务增长率。广阔的市场前景使得各大通信制造巨头纷纷加入移动数据业务的竞争。作为数字蜂

2、窝系统的代号,GSM系统在世界范围内取得了巨大的成功。其覆盖范围广、漫游性好、安全性好,再加上基于GSM的各种数据传输技术的不断发展,使得GSM上的数据通信成为3G(第三代移动通信的简称)到来之前的最佳手段。随着GSM无线通信技术的不断发展和成熟,利用它可以实现快速、准确、独立、经济的远程监测、抄表和控制远程控制计量器具,如无人值守的加油站、家用电表、水表、煤气表等。,越来越广泛地应用于各种新系统中,具有非常广阔的应用前景。本课题是利用公共移动通信网进行远程控制和数据传输,这比使用专用的无线电频段和设备或架设专用线路进行远程控制和数据传输有很大的优势。本课题以GSM模块作为信息传输的载体,使其

3、与单片机、PC机结合形成的应用系统具有强大的生命力和广阔的应用空间,特别是在远程数据传输和远程监控领域。并且具有成本低、可靠性高、不受地域限制、实现方便快捷、运营成本低等特点。借助本地手机和远程设备的GSM模块,以及移动通信公司的服务,我通过本地手机向远程设备发送命令,进行控制和数据采集。远程设备以单片机为核心,控制GSM模块和被控设备,并在上位机显示接收到的数据。本研究主要包括以下几个方面:1.简要介绍GSM网络的基本结构、SMS短消息协议和传输过程。2.基于GSM网络的数据传输系统设计方案。包括主要数据传输终端系统结构设计和原理以及GSM调制解调器的设计。3.数据传输系统的上下位机GSM通

4、信接口部分实现了对被控对象的监控。第1章概述1.1概述本课题主要由监控中心计算机、GSM(全球移动通信系统)模块、远程单片机控制板等部分组成。该系统应用了计算机软件编程技术、硬件接口技术、移动通信网络数据传输技术等。该系统借助控制中心和远程设备的GSM模块,借助移动通信公司的服务,控制远程设备通过本地手机发送短信指令。远程设备以单片机为核心,控制GSM模块和被控设备,并将接收到的数据显示在监控中心的计算机上。该系统利用公共移动通信网络进行遥控和数据传输,比使用专用无线电频段和设备或架设专用线路进行遥控和数据传输具有很大的优势。它具有成本低、可靠性高、不受地域限制、实施方便快捷、运营成本低等特点

5、。1.2硬件设计硬件设计的核心是西门子的TC35模块,功能强大,能够进行语音传输、数据传输等。,并取得了我国的通信进网证书。硬件主要由单片机、RS232、TC35模块、SIM卡、接口电路、天线、被控对象等组成。电路图如下图1-1所示。用户身份识别卡卡片基础陆地手机器用户身份识别卡卡片基础陆地手机器TC35单片微型计算机上位机被指控被指控目标图1-11.3软件设计软件编程主要包括以下几个方面:(1)主程序开始初始化模块,设置异步串行通信模式,设置波特率为9600bps,无校验位,8个数据位。(2)通过串口发送相应的AT指令进行操作。(3)解码PDU数据包,通过串口发送给上位机。1.4主要技术指标

6、本设计可以远程控制灯的开关来启动和停止电机,与GSM相关的AT命令,以及GSM模块的使用。计算机与单片机的串行通信技术。1.5应用我的课题有广泛的应用。可应用于工业控制和数据采集系统;电信基站自动测量监控系统:高速公路收费系统和铁路系统;降雨量和地下水远程监测系统;系统数据采集与控制系统、变电站数据远程测控系统;各种仪表的远程自动抄表系统;河流水位自动监测系统;在线油井生产数据采集和控制系统;所有家用设备的控制等。,有着广泛的应用。因此,该项目具有很好的推广应用前景,并能产生良好的经济效益。第二章GSM系统设计2.1 GSM系统提供的服务GSM旨在加入窄带综合数字业务网(ISDN)并向其用户提

7、供ISDN服务。它支持三种主要类型的服务:1.基础电信业务:包括短信、紧急呼叫、语音邮件、智能电报等。,可与PSTN(公网)、ISDN等通信。2.数据传输业务:包括300b/s和1200b/s异频双工数据传输,1200b/s、2400b/s、4800b/s、9600b/s同步双工数据传输,以及它们的分组传输等。以及PSTN、ISDN和PDS(综合布线系统)3.补充服务:包括三方通话、会议、呼叫转移等。2.2 SIM卡2 . 2 . 1 sim卡的功能用户识别模块是一种封装在塑料中的带有微处理器的智能IC卡。它是GSM系统不可缺少的一部分,是用户进入GSM网络的注册凭证。SIM卡包含用户识别信息

8、、辅助服务信息、短消息、移动性信息和无线电资源信息。在GSM系统中,明确定义了SIM卡的物理接口和逻辑接口,完成与移动终端的连接和信息交换。同时SIM卡存储用户信息,执行认证算法,生成加密密钥。只有插入SIM卡,移动终端才能访问网络。它由五部分组成:CPU(8位)、程序存储器(3-8位)、工作存储器(6-16位)、数据存储器(128-256kbit)和串行通信单元。SIM卡分为3V和5V。手机原来用的是5V的SIM卡;1998年后,陆续使用3V SIM卡;5V SIM卡容量小,功耗高,容量一般在3K左右,可以存储30张。3V SIM卡容量大,省电,容量为8K,可存储100个对应字符和15组短信

9、。SIM卡正面有20位数字。前六位(898600)为中文代号;第7位是业务接入号,分别是135、136、137、138、139中的5、6、7、8、9;第8位是SIM卡的功能位,一般为0,目前的预付费SIM卡为1;第9位和第10位是各省代码;第11位和第12位是年份数字;第13位数字是供应商代码;第14到19位是用户识别码;第20位是校验位。SIM卡的前视图如图2-1所示。图2-12 . 2 . 2 sim卡的存储容量SIM卡是GSM的用户数据卡,存储个人数据、算法、密钥等。SIM卡中存储的主要内容如下:1.国际移动用户身份(IMSI)IMSI是世界上唯一一个可以识别手机用户的公司。一般由三部分

10、组成:移动台国家识别码+长途区号+移动用户。其中移动国家识别码有三位,中国的是460,后两项共7-12位。IMSI存储在SIM卡中,IMSI存储在网络的归属用户数据库中,与用户一一对应。当移动台用户在家乡或漫游地进入系统时,网络系统可以先从用户的SIM卡中获取用户识别码,从而识别用户属于哪个国家、电信部门甚至移动服务区。2.个人识别码(PIN)和SIM卡解锁密码(PUK)PIN是SIM卡上的个人密码,主要用于验证SIM卡用户的身份是否有效。为了防止他人未经授权使用SIM卡,当移动台开机并将SIM卡插入移动台时,将要求输入4-8位的PIN码,否则将无法正常通信。如果用户连续三次输入错误的PIN码

11、,移动台将提示用户该卡已被锁定,然后用户需要输入PUK码才能解锁。如果连续十次输入错误的PUK码,SIM卡将永久报废,不能再使用。3.用户使用的存储空间SIM卡的一些信息是运营商或制卡商输入的,不能更改。但是SIM卡也可以存储一些个人信息,比如固定短信、书籍等。用户可以使用移动台的键盘来完成个人信息的存储和读取。这就是SIM卡中所谓的个人存储空间。2 . 2 . 3 sim卡的物理结构SIM卡的物理结构如图2-2所示。SIM卡中有8个触点,用于与移动终端接口,相互传递信息,提供SIM卡电路工作所需的电源。SIM卡的每个触点定义如下:C1: VCC电源电压(3V),由TC35模块提供的电压。C2

12、: RST重置终端。C3: CLK时钟,通常由移动终端提供时钟速率。SIM卡支持1 5 MHz时钟。在指定时间运行电源监控过程时,它需要至少13/4MHz的时钟频率,在其他情况下需要13/8MHz的时钟频率。C4:没有定义,留待将来使用。C5: GND地面。C6: VPP编程电压。C7:输入输出输入。C8:没有定义,保留供将来使用。图2-2SIM卡的电气性能要求是使SIM卡正常工作。每个触点的电气性能要求在它随电源接通/断开时。SIM卡上电时,每个触点的激活顺序是:RST处于低电平状态;Vcc上电;I/O处于接收状态;Vpp上电以提供稳定的时钟信号。SIM卡断电时,各触点的去激活顺序为:RST

13、处于低电平状态,CLK处于低电平状态,Vpp断电;I/O处于低电平状态;去Vcc。开机时,SIM卡有两种工作模式,即工作模式和空闲模式。在工作模式下,完成与移动终端的信息传输;在空闲模式下,SIM卡将保留所有相关数据,并支持三种睡眠模式:完全睡眠、指令睡眠和时钟睡眠。2.3短信服务SMS是短消息服务的简称,是通过移动网络,用手机收发有限长度文本信息的通信系统。信息可以是汉字、数字、字母或它们组合的符号。根据GSM协议,一条短消息最多可以包含160个英文字母的7位代码或70个中文字符的Unicode代码。世界上第一条短信息是1992年12月从英国沃达丰的GSM网络从电脑发送到手机上的。在随后的几

14、年里,短信并没有被广泛使用。直到1998年,欧洲的语音业务逐渐饱和,移动数据业务市场广阔。运营商开始注意到短信市场。Sonera、Vodafone、Mannesmann等公司大力发展短消息业务,使得短消息在欧洲迅速普及。随着手机在中国的普及,中国移动和中国联通在2000年开始发展中国的短信市场,在中国掀起了短信热潮。2.3.1短信服务的特点短消息采用存储转发模式,防止短消息丢失。短消息首先被发送并存储在短消息服务中心,然后由短消息服务中心转发给接收方。如果接收方不在服务区或关机,短信服务中心会先保存短信,当接收方在服务区时再转发给接收方。短信收费很低,这是短信受欢迎的决定性因素。无论距离远近,

15、接收方免费接收短信,一条短信网络收费0.1元,网络收费0.15元。而且发送一定量短信的运营商会给予一定的优惠政策,这对部分消费群体很有吸引力。短信EMS和MMS的升级版本可以携带各种数据。它们的内容可以是文本、声音、图像等。,更大程度上满足了人们的交流方式。手机中的SIM卡可以对发送的短消息进行加密,接收方的手机对消息进行解密,实现安全可靠的传输。短消息可以与语音、数据和其他服务同步传输。短消息使用S7信令传输数据包,这是一种非对称服务。即使在服务通道处于高峰时,也仍然可以顺利沟通。2.3.2短消息业务的现状和前景1.短信服务的现状短信业务的广泛发展给各地的运营带来了巨大的利润,同时也方便了人

16、们的生活,成为我们生活中不可或缺的一部分。然而,它也带来了一些负面影响。例如,一些垃圾短信经常充斥我们的手机,严重阻碍了我们的正常生活。比如一些不明不白的收费,让很多人担心。2.短信服务的前景EMS:增强型消息服务(Enhanced Message Service,EMS)是SMS的升级版本,是爱立信向ETSI/3GPP委员会提交的技术标准。大部分手机厂商支持的EMS已经稳步发展,EMS已经成为3GPP技术规范的组成部分。EMS短信的实现原理和EMS短信基本相同。它也是一种存储转发机制,使用信令通道,因此不需要升级基础网络。EMS可以支持格式化文本、黑白图片、声音、简单动画等媒体。MMS,SM

17、S的下一代版本:多媒体消息服务(MMS)多媒体消息服务支持移动图像、卡通、交互式视频等多媒体信息。它可以整合文本、声音、图像、视频等。,并通过手机发送电子贺卡和屏保。从2002年开始,许多手机厂商推出了支持彩信的手机,更多的运营商和服务提供商参与到彩信的研发中。到目前为止,彩信已经被广泛使用。2.3.3短消息服务的主要应用短消息服务被广泛使用,可以概括如下:1.手机用户之间交换信息的最基本功能。2.信息服务。包括新闻、天气预报、股市行情、话费查询、火车及航班时间查询等。3.移动商务。手机证券交易、手机银行、订票等。4.电子邮件应用程序。邮件主要信息提示和所有信息浏览,回复简单邮件。5.娱乐。铃

18、声下载,竞猜,手机游戏。6.远程监控。工业、地质、水文等数据采集和远程控制。7.企业服务。沟通和管理企业部门的信息。2.4 GSM模块的介绍和应用2 . 4 . 1 GSM模块的结构和特点随着GSM应用的不断普及和深入,GSM无线技术和实现手段也在不断完善:各种GSM无线终端模块不断涌现,简化了用户设备的开发,极大地拓展了无线应用领域。GSM模块基于底层的GSM协议,实现移动台的所有功能。这些模块不仅根据GSM移动台与终端设备(TE)之间的连接规则提供相应的引脚,还根据上层应用协议提供标准的AT指令支持。它们中的大多数还集成了语音信号处理和编码,以与键盘、显示器、天线、声音等接口。,大大降低了

19、用户终端的开发难度和开发周期。目前许多大型通信公司都生产GSM模块,如摩托罗拉的D10/D15、西门子的TC35/37、Wavecom的WISMO2B/2C等。,支持不同需求的应用程序。该系统采用西门子公司的TC35模块。西门子公司的TC35模块。它是西门子最新推出的无线通信模块,可以快速、安全地实现数据、语音、短信(SMS)和短消息服务(SMS)的传输。可以工作在GSM 900kHz和1800kHz两个频段。RS232数据端口符合ETSI标准GSM0707和GSM0705,易于升级为GPRS模块。该模块集成了射频电路和基带,为用户提供标准的AT命令接口,为数据、语音、短信提供快速、可靠、安全

20、的传输,方便用户的应用开发和设计。1.主要功能和参数如下:它能快速、安全、可靠地实现数据、语音传输、短消息服务和。TC35模块的工作电压为3.34.8V,可工作在900MHz和1800MHz两个频段,功耗分别为2w(900M)和1w(1800M)。40针通过ZIF(零插入力)连接器引出。短信服务功能(GSM或GPRS状态):支持中英文字符和PDU,点对点(MT/MO)和社区广播。可选波特率300bps115kbps,支持数据、语音、短信和电流消耗-休眠状态下3.5毫安,空闲状态下25毫安,传输状态下300毫安(平均),峰值2.5安。自动变速器说明书GSM模块通过at命令与单片机通信。的所有at

21、命令(除了重复命令A/)都以AT开头,除了发送短消息以+结尾,其余都以回车结尾。回应形式为。表2-1列出了AT命令的语法规则。表2-1 AT命令的语法规则测试命令AT+cxxxx =?该模块返回由相应的写命令或部分处理设置的参数和值的列表。读命令AT+CXXX?该模块返回当前设置的参数或参数值编写命令AT+cxxxx =?该模块返回用户定义的参数值。美国总统之行政命令在+cxxxx读取GSM处理器的常量参数。1.通用初始化指令(1)将MCU和GSM模块之间通信的波特率设置为+IPR = ,其中是回车符。如果指令正确,模块返回 OK ,这是回车和换行符号。费率参数可以是300,600,1200,

22、2400,4800,9600,19200,38400,57600,115200。其中300到115200代表固定波特率的值;当通信波特率超过1200时,可以设置为0,表示自适应波特率。该模块根据单片机串行数据的波特率进行自我调整。本设计中参数rate设置为0,单片机串口波特率为9600 B/s。(2)将短消息中心设置为+CSCA= +00 (城市短消息中心),如果设置正确,模块将返回“确定”。对于不同的手机或不同的地区,短信中心可能是不同的。如果阅读短消息服务中心,使用命令在十CSCA=?,模块应该返回 +CSCA:“00” 。(3)设置短信发送格式为+CMGF =0,设置0代表PDU模式。如

23、果指令正确,模块将返回正常。(4)保存当前设置,将之前设置的通讯波特率、短信中心和短信发送格式写入模块。2.常见短信操作说明(1)发送短信指令。在PDU模式下,首先发送短消息数据的长度。在+CMGS= .等待GSM模块返回ASCII字符“”,然后可以输入PDU数据。PDU数据由+终止,短消息成功发送。模块返回正常。(2)将短信到达自动提示设置为+CNMI=1,1,0,0,1。如果设置正确,模块将返回正常状态。错误返回+cmsrerror: 。设置该命令使模块能够在短消息到达后向MCU发送命令+CMTI:“SM”,索引(SIM中的信息存储位置) 。(3)阅读短信说明。当模块接收到新的短消息时,它

24、向MCU发送字符串 +CMTI:“SM”,INDEX。因此,读取短消息的AT命令为AT+CMGR=INDEX,模块返回刚收到的PDU格式的短消息内容。(4)删除短信。由于SIM卡只能存储有限数量的短消息,为了防止SIM卡在已满的情况下接收短消息,在接收到短消息后,经过数据分析和处理,会立即删除该消息。删除短消息的指令是AT+CMGD=INDEX,删除后模块会返回OK。2.4.3短消息模式和Unicode编码模式ETSI制定了短消息协议作为整个GSM标准的一部分。该协议定义了MT(移动终端,相当于GSM调制解调器)和TE(终端设备,相当于单片机或微型计算机)之间传输短消息的三种接口协议。它们是块

25、模式、文本模式(ASCII模式和PDU模式。阻塞模式是一种二进制协议,用于封装GSM3中定义的SMS PDU。40.该协议包含错误检测,适用于终端之间的链路存在错误控制且连接不太可靠的情况。这种模式通常用于需要控制远程设备的情况。阻塞模式是一种与其他两种模式具有完全不同特征的协议。进入这种模式时,这种状态会一直保持,直到程序主动退出阻塞模式,之后会回到V.25ter命令状态或在线命令状态。应用部分组合的二进制字符串应包含报头和短消息PDU。ASCII模式是基于AT命令的接口协议,适用于非智能终端和仿真器,兼容一些基于命令结构的应用软件。在ASCII模式下,所有AT命令都以ASCII码应答。应用

26、消息以简单的文本形式被传递给MS以形成TPDU。ASCII模式提供的功能比阻塞模式和PDU模式少。ASCII模式不需要支持或自动向应用程序传输到达消息,只通知消息到达。PDU模式是一种以十六进制代码传输消息块的接口协议。在这种模式下,短信(包括短信头)全部采用十六进制编码,即只允许使用0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f等字符。西文字符一般用一个字节7位表示,最多有128种组合。最常用的表示方法是ASCII码。从ASCII码表中获取的对应字符为可见字符。如果用8位构成一个字节,那么就有256种可能的组合,即ASCII码表上的256个字符。英语只需要用ASCII码的前1

27、28位来表示所有字符。PDU模式收发短信可以使用三种代码:7位代码、8位代码和UCS2代码。7位编码用于发送普通ASCII字符;8位编码通常用于发送数据信息,如图片或铃声;UCS2编码用于发送Unicode字符。本系统发送中文短信,所以选择UCS2码,即中文Unicode码。Unicode是一种统一的字符编码标准,使用双字节对字符进行编码。这是苹果和施乐在1988年建立的技术标准。Unicode提供了一种简单而一致的方法来表示字符串。由于Unicode使用16位值来表示每个字符串,因此它总共可以包含65,000个字符。这样就可以对世界各国的书面文本中的所有字符进行编码,远远超过单字节字符集中2

28、56个字符的数量。这个Unicode的特点是所有的字符都用两个字节表示,不只是汉字用两个字节。而英语也是用两个字节来表示的。汉字的十六进制PDU编码直接采用汉字的Unicode编码。因为汉字是16位编码,所以当中文和英文出现在同一个短信中时,每个汉字都是16位编码,而字母和数字是8位编码。此时统一采用16位编码,即在8位ASCII码前加0。61H是“A”的ASCII码,完成十六位后的Unicode码是0061H。本系统采用PDU方式发送和接收短消息,采用Unicode编码形式。下面说明了PDU字符串的结构和排列。例如,要向手机发送“1号开”消息,MCU首先通过串口向模块发送数据串AT+CMGS

29、=21 ,然后MCU等待模块返回ASCII字符“”,再输入PDU数据“09105F011000D294F3153F75F00”。长度21不包括PDU数据中的“09105F0”。表2-2列出了对每个数据域的分析。表2-2发送短信的格式ABCDEFGH我表2-3发送信息的PDU字符串分析发送短信格式字符数据解释A09105F008是短信中心号码的长度,91是短信中心的类型,即TON/NPI,表示前面要加“+”。91后的数据是编码后的短信中心。B11意思是正常发短信。C00信息类型,一般为00D0D294F00D以长度13(90)调用,91是目标类型。E00标准条件下MS到SC的短消息传输F08uc

30、2(16位)数据编码模式G00信息的有效期H06TP-UDL长度我003153F75F00信息,是由USC2编码的容量,“1号开”MCU可以通过读取10 CMGR=INDEX处的指令来读取SIM卡的指定位置处的短消息。例如,读取的短消息是“1 ”,由手机在的用户发送。那么模块返回给MCU的PDU字符串是09105F0040D294F01020031。表2-4和表2-5列出了对每个数据域的分析。表2-4接收消息的格式ABCDEFGH我表2-5接收消息的PDU字符串分析接收短信格式字符数据解释A09105F0短信服务中心及长度B04PDU类型C0D目标长度的十六进制表示形式D294F091是目标的

31、类型,后面是编码目标。E00协议标识F08用于短消息容量的UCS2代码G301SCTS短信发送时间08/05/08/15:00/33.10H02短消息容量长度我0031编码的PDU数据,“1”GSM模块测试GSM模块可以通过RS232与计算机通信。为了测试连接是否成功,可以通过串口调试软件进行测试。本次测试使用COM4,端口参数设置如下:波特率为“9600 bps”,数据位为“8”。奇偶性是“无”。停止位是“1”。设置好参数后,进入串口调试软件,命令执行如下:(At)人名(越)乙OK接收区的“OK”表示设备连接成功,可以正常工作。AT+CMGF=0设置短信输入输出的格式,“0”表示PDU模式,

32、“1”表示文本模式。好AT+CSCA?+CSCA:“+00”,145返回短信中心,前面加“+”作为第二个参数,145,否则129。好AT+CNMI=1,1,0,0,1设置新的消息指示。这种设置可以使模块在短消息到达后,向单片机发送指令+CMTI:“SM”,INDEX(SIM卡中信息的存储位置)。好AT+CMGR=3阅读第三条短信。+CMGR: 1,3007705 f 0240d 058 f 000 a 523054 ea 91 C4 e 86 ff1f好AT+CMGS=28给你的手机发短信。 0011000 B2 f 80008 a 70 e 577 ed 4 Fe 16d 4 b 8 BD

33、5+CMGS: 235人好在+CMGD=1时,删除第一条消息。好通过以上方式,我们可以和上位机进行通信,证明TC35模块是好的,然后我们开始设计单片机电路和TC35接口电路。第三章:基于短消息服务的系统硬件设计。3.1系统的总体结构该系统分为两部分:由单片机控制的GSM终端数据发送和接收部分以及PC终端数据接收部分。系统框图如图3-1所示:个人电脑个人电脑用户身份识别卡卡片本地移动电话GSM模块用户身份识别卡卡片本地移动电话GSM模块图3-1系统框图被控对象被控对象3.2 SIM卡通信接口的硬件设计图3-2TC35使用外置SIM卡,24 29为SIM卡pin。如上图3-2所示,SIM卡是这样连

34、接TC35的:SIM卡上的CCRST、CCIO、CCCL、CCVCC、CCGND通过SIM卡读卡器直接连接到TC35的同名端。ZIF连接器的CCIN针用于检查SIM卡是否正确插入。如果连接正确,CCIN引脚输出高电平,系统可以进入。否则就是低级。3.3单片机的选择现在市面上有PIC,AVR,51系列单片机,但是考虑到在学校学的是51系列单片机,所以选择了51系列单片机。在51系列单片机中,STC是一款优秀的单片机,不仅价格便宜,而且性能优越。我这次设计用的是STC89LE58RD+,是altera公司推出的新一代超强抗干扰/高速/低功耗单片机。它的指令代码完全兼容传统的8051单片机,采用6时

35、钟/机周期,并具有倍频功能。本方案采用了11.0592MHz的晶振,所以整个单片机的指令周期为125ns,是上述指令中最小的,所以能以最快的速度传输数据!它是一种电可擦ROM微控制器,具有大容量的数据存取设备。它是一个真正的看门狗,默认关闭(冷启动)。启动后无法关闭,可以放心保存外部看门狗。Flash被擦除10万次以上,STC89C51RC/RD+系列单片机出厂时完全加密,无法解密。程序是用ISP/IAP机制写的,不读命令是无法完全解密的。STC89LE58RD+有四个典型特征:1.增强型6时钟/机器周期2.工作电压:5.5V-3.4V(5V MCU)3.工作频率范围:0-40MHz4.128

36、0字节RAM的片内集成3.4单片机系统的串口设计单片机系统主要实现单片机通过at指令操作GSM模块实现数据编码和收发短信。要与TC35进行串行通信,必须在程序中设置串口,其设置如下:(1)工作模式由于GSM通信模块的数据接口配置了8位数据位,1个停止位,无校验位,所以单片机的串口工作在模式1。(2)波特率设置系统的晶振为11.0592MHZ,波特率为9600b/s,所以根据计数初始值的计算公式:X=256-fose*1/384*波特率,TH1=OFCH。(3)连接目前市面上所有的GSM模块都有一个数据出口,基本上都支持与GSM短消息相关的AT控制指令(GSM-SMS-AT)。GSM模块接收指令

37、,并通过数据端口以串行方式向外输出数据。理论上,找出数据端口中RXD、TXD、GND引脚与单片机串口(P3.0、P3.1)的对应连接,就完成了串口的硬件连接。但由于本设计使用的GSM模块为TTL级,可以直接连接到4.2V供电的单片机串口,单片机与上位机的连接需要通过RS232进行电平转换。RS- 232C是异步串行通信中应用最广泛的标准总线,由美国电子工业协会(EIA)正式发布。它包括逐位串行传输的电气和机械方面。适用于短距离或带调制解调器的通信场合。适用于数据传输速率为0-20000 B/s的通信,该标准明确定义了串行通信接口的相关问题,如信号线功能、电气特性等。由于通信设备制造商都生产与R

38、S-232C系统兼容的通信设备,作为一种标准,它已广泛应用于微型计算机和单片机系统。RS-232是本系统中调制解调器和单片机之间的接口。目前计算机上常用的是9针串口(DB9),DB9的常用信号针说明如表3-1所示。表3-1 DB9常用信号脚描述表9针串行端口(DB9)针数函数声明缩写一个数据载波检测数据载波检测2接收数据接收数据三数据发送数据发送四终端准备负荷型定额(Duty Type Rating)五信号用接地地线六设备就绪。每日业务报告(Daily Service Report)七请求发送即时战略游戏八中旅同ARPAL TUNNEL SYNDROME九振铃指示幽谷本设计采用DB9作为单片机

39、与上位机的通信接口。在它们的通信过程中只有三个引脚是有用的,第一个是2个引脚接收数据,第二个是3个引脚发送数据,最后一个是5个引脚接地。其他脚无关紧要,这里不用考虑。RS-232的电平是-3 -15表示逻辑“1”,3 15表示逻辑“0”,所以需要进行电平转换。MAXIM公司生产的MAX232是一款性能优异的转换芯片。最后,我们考虑使用MAX232电平转换芯片。第四章:基于短消息服务的系统软件设计4.1单片机程序设计单片机系统除了必要的硬件支持外,还需要软件设计。单片机的软件程序用C语言编写。与GSM模块的软件接口实际上是MCU通过与GSM短消息相关的at命令来控制GSM模块的控制技术,主要是对

40、GSM模块的一些收发短消息的时序控制。然而,指令的执行并不像某些材料中描述的那样简单。事实上,指令的执行过程需要MCU和GSM模块之间的交互响应来完成,每次发送或接收的字节数有严格的规定。两者必须根据这些规定交换数据,否则,通信将失败。几个问题解释如下:1.模块上电前,需要给TC35的IGT引脚一个约100ms的低电平脉冲,然后上电初始化。2.指令符号、常量、PDU数据包等。所有AT指令都是以ASCII编码的形式传输的,例如“A”的ASCII编码是41H,“T”的ASCII编码是54H,数字“0”的ASCII编码是30H等等。详细的ASCII编码对照表见附录。3.单片机控制GSM模块的工作,S

41、IM卡的短信工作模式必须设置为PDU格式,即AT+CMGF=0。4.MCU向手机发送每条指令后,都必须以回车结束,回车的ASCII码为0DH。例如,单片机向手机发送“AT+CMGF=0”指令,其ASCII编码序列为“41H,54H,2BH,42H,4DH,47H,46H,3DH,30H,30H,0DH”。最后一个字节0DH是回车,表示该指令结束。如果没有回车,GSM模块将无法识别它。4.1.1单片机主程序设计主程序是对单片机系统框架的描述。本系统主程序的作用是在上电后完成系统的初始化,然后在主程序中进行循环判断。有来电就挂一次电话,没有就执行。如果有新消息,调用短信读取子程序,通过外部控制后向

42、上位机发回短信,从而通过模拟串口向上位机发送数据。如果没有新的短信,就回去继续循环判断。主程序流程图如图4-1所示。开始开始呼叫呼叫MCU初始化子程序向向AT发送指令以进行网络访问检测。调用调用300毫秒延迟子程序。回“OK”回“OK”算成功吗?Y判断是否有立刻挂断电话判断是否有立刻挂断电话Y普通普通Y判断是否有新消息。判断是否有新消息。调用短信阅读子程序调用短信阅读子程序解码和控制装置解码和控制装置回复短信回复短信发送到主机。发送到主机。图6.1.1主要行程图4-14.1.2重要子程序流程图1.TC35完成SIM卡初始化子程序的流程图设计。该子程序是完成SIM卡的初始化,流程图如图4-2所示

43、。开始开始以+以+cmgf = 0发送 r选择短消息格式PDU等待时间等待时间5SAt+cpmsAt+cpms = sm 选择SMS存储区域。等待时间等待时间5S&Wr&Wr保存设置返回返回图4-2 SIM卡初始化子程序流程图2.模拟串口发送子程序流程图设计。该子程序是完成单片机与上位机的通信。因为双串口的单片机比较贵,所以选择了单片机,自己的串口接TC35通讯。选择P3.3(TXD)和P3.4(RXD)作为模拟串口的I/O端子,用于与上位机通信。开始开始设置波特率设置波特率关闭中断关闭中断TXD清除到0将将8位数据放入BUFTXDTXD被设置为1返回返回图4-3模拟串口流程图3.短信接收子程

44、序的设计。短信接收子程序是单片机控制系统程序的重要组成部分。当有新的短信时,它接收收到的PDU数据包并放入内存,然后对PDU进行解码,取出对方手机、日期时间、短信长度、容量等信息。流程图如图4-4所示。开始开始将将TC35发送的PDU数据放入串口地址。获取PDU获取PDU数据包数据解码数据解码目标目标图4-44.发送短信子程序的设计。短信发送子程序是整个单片机程序的核心部分。初始短消息的编码PDU数据包存储在内存中,所以需要发送时,可以直接从内存中提取,然后MCU发送AT指令与TC35通信,发送PDU数据包。流程图如图4-5所示。开始开始在在+CMGS= 延迟300延迟300毫秒你回到“”你回

45、到“”了吗?Y延迟延迟300毫秒发送数据的Unicode发送数据的Unicode编码普通发送发送Ctrl+z,后跟 0 终止符。你回到你回到“OK”了吗?Y目标目标图4-5发送短消息子程序4.2单片机上短消息收发程序的实现与上位机通信。4.2.1短信收发的实现方式。本设计是计算机串口与单片机通过模拟串口经RS232进行串行通信。MCU然后与GSM调制解调器通信,GSM调制解调器接收短消息并向MCU发送PDU包。单片机解码分析数据控制电机和灯光,单片机将解码后的数据通过模拟串口发送给上位机的串口调试软件。这种设计是一种适合小规模项目开发的实现模式。这种方法需要熟悉AT指令集和串口编程。4.2.2

46、收发短信的功能实现。打开串口调试软件,选择串口COM 1,9600波特率,无奇偶校验,8位数据和一个停止位,等待接收GSM模块发送的数据。当有新的短消息时,TC35模块会将SIM卡接收到的PDU包通过串口发送给MCU,MCU会对PDU包进行解码并分析解码后的容量,然后控制被控对象,再将短消息信息通过串口发送给上位机的串口调试软件。4.2.3发送短消息的程序实现。分析了发送PDU字符串的编译。编译后的PDU字符串存储在MCU中,通过相应的AT指令实现短消息的发送。用来发送消息的AT指令是:AT+CMGS。以之前的发送PDU字符串为例,即发送容量为“2号开”,接收方手机号码为;需要注意的是,这里省

47、略了SMSC地址格式和SMSC地址,采用SIM卡设置的SMSC地址。即发送的PDU字符串为09105F011000D955F3253F75F00。具体程序如下:unsigned char SMS _ sendtc 35 SMS(unsigned char * PDU _ str,unsigned int length)at_cmd_str15的无符号字符idatasprintf(at_cmd_str, AT+CMGS=%dr ,长度);tc35 _ SendAtCommand(at _ cmd _ str);ES = 0;dt = 100while(dt)while(RI=0)&(dt!=0)

48、feed看门狗();RI = 0;if(SBUF= )打破;如果(dt=0)#ifdef调试PrintMessage(not wait )。#endif返回(假);dt = 2;而(dt)feed watchdog();tc35 _ SendAtCommand(PDU _ str);at _ cmd _ str0= Ctrl _ Z;at _ cmd _ str1= 0 ;tc35 _ SendAtCommand(at _ cmd _ str);tc35 _ waittc 35 respond();返回(假);程序定义了一个pdu_str指针,指向pdu数据包,长度为短消息的21。发送AT+C

49、MGS=21r,等待TC35回复“”,打开串口发送PDU数据,以Ctrl_Z+0 结束。程序中的FeedWatchdog是一个用来处理延时操作的自定义函数,因为需要在两个连续的AT指令之间设置一定的间隔时间(设置为1秒),为每个发送的指令提供响应时间。4.2.4接收报文的程序实现。首先介绍一些相关的AT指令,(1)AT+CPMS,优先信息存储。该命令用于指定读写信息的存储区域。在此设置为+cpms = sm 、 sm 和 sm 。收到的短消息存储在GSM模块的SIM卡中,而不是存储在模块本体的存储器中。(2)AT&W,用于保存所做的设置。(3)AT+CNMI,新信息指示,可用于设置某类短消息到

50、达时如何处理。这里就不介绍它的详细指令语法了。这里设置为AT+CNMI=3,1,这样当收到新消息时,系统会收到提示消息,格式为:+CMTI:“SM”,1。保存上述设置后,当软件收到新消息到达的提示消息时,MCU将PDU包存储在一个字符串中。收到的PDU数据包如下:00005 f 0040d 991 f 230660 a 8597 dff 01 .1.一些方案的实施如下:void tc35_InitTc35(void)dt = 4;而(dt)feed watchdog();tc35 _ succeedtc 35 command( AT+CMGF = 0 r );tc35 _ succeedtc

51、35 command( AT+CNMI = 2,1 r );dt = 4;而(dt)feed watchdog();tc35 _ SendAtCommand( AT+CPMS = SM , SM , SM r );tc35 _ waittc 35 respond();dt = 4;而(dt)feed watchdog();tc35 _ succeedtc 35 command( AT & W r );本程序是选择短消息格式(PDU)与存储位置,最后保存并退出。2.一些方案的实施如下:if(es _ buf3= = T )& &(es _ buf4= = I )ins MSF = 1;返回;本程

52、序是单片机通过串口将GSM MODEM发送的数据存储在es_buf中。在上面的过程中,我判断接收到的数据是否包含“T”和“I”。如果是,则“inSmsF”的新短信标志高,返回。3.一些方案的实施如下:void sms_SetMenuBySMS(void)无符号字符数据索引;for(索引= 1;index = SmsEntryMaxindex+)if(sms_CheckTc35SMS()=0)返回;if(inCallF=1)in callf = 0;tc35 _ hangupinecall();feed看门狗();if(SMS _ read TC 35 SMS(index)= = false)返

53、回;sms_DeleteTc35SMS(索引);phone _ SMS();这个程序调用短信读取子程序sms_ReadTc35SMS,读取sms_ReadTc35SMS中的短信,然后执行短信删除子程序sms_DeleteTc35SMS。第五章测试结果及分析5.1运行结果运行程序结果如图5-1所示:图5-1操作结果用TC35模块给MCU上电,连接RS232,打开串口调试软件,选择9600波特率,选择好端口。GSM调制解调器初始OK出现在上图的开头!初始化正常,网络已找到。等待短信,后面显示发短信的手机+时间+容量。在本地手机中,发送容量“3”是控制电机转动,“2”是控制电机停止。动作完成后,自动

54、向本地手机返回动作完成短信。5.2系统性能分析系统的抗干扰抗干扰设计是单片机应用系统设计的重要组成部分。没有良好的抗干扰措施,系统就不能安全可靠地工作。当然,我们只能通过系统软硬件的设计,尽可能的减少干扰的影响,但不可能完全消除干扰。该系统在抗干扰方面考虑了以下问题。加宽地线和电源线,加宽的地线和电源线是信号线的7倍。所有芯片可靠接地,接地线形成回路。手动布置组件和布线,并使连接尽可能短。5.2.2通信延迟分析任何网络都存在时间延迟,使用以短信为载体的GSM无线数据传输,不可避免的会遇到同样的问题。以两个ms之间收发短信为例。发送短消息,发送方首先按照协议结构自顶向下封装用户数据,然后通过信令

55、信道发送到MSC,通过PLMN路由到SC,完成SM-MO业务。SMS-SUBMIT在SC中解封装,然后封装到SMS-DELIVER中。SMS-DELIVER通过PLMN路由到MSC并发送到接收方MS。短消息在MS中解封装并提交给用户或应用程序以完成SM-MT服务。在这个过程中,每个环节都需要处理时间,发送和接收一条短信的时间间隔称为传输时延。短消息服务通过GSM网络的信令信道传输,因此MS可以同时发送或接收短消息,即使它已经在打电话。当MS处于正常状态时,SDCCH信道用于发送和接收短消息,而SACCH信道在用户忙时使用。后者比前者需要更多的时间来发送或接收下一条完整的短消息。此外,GSM网络

56、或SC中的拥塞无疑会导致更大的时延。利用单片机系统发送短消息,受系统速度和串行波特率的影响,从内存到GSM MODEM的数据打包和数据传输也会有一定的传输延迟。与前者的网络延迟相比,这个延迟相对固定,相对较小,所以通常可以像上位机一样忽略不计。5.2.3短消息传输时延的测量和结论为了对数据传输延迟有一个清晰的认识,我们可以通过实验的方法粗略的测量一下。基本的测试方案是:分别比较网络忙闲时间段,使用不同的传输时间间隔,使用不同长度的数据包,得出如下结论:1.不同时间段对短消息传输延迟的影响;选择9: 00、16: 00的繁忙时段和12: 00、20: 00、22: 00的空闲时段,每隔5s连续发

57、送短信,短信的数据部分只携带6字节的时间值。传输时延过大被认为是不良数字,在数据统计中会被剔除。根据有效数据分析可知:传输延迟主要集中在5s和6s,但繁忙时段多为6s,空闲时段多为5s;空闲时间延迟4s的百分比远远高于繁忙时间。得出网络空闲时间的通信效果优于繁忙时间的结论,因此可以在网络空闲时间设置系统查询好的。2.不同传输时间间隔对短信传输时延的影响选择9: 00时间段,分别间隔5s、10s、30s连续发送。SM数据部分仅携带6个字节的时间值。5s测试过程中,有时(通常在繁忙的一天)会出现一个异常现象:在一个测试周期的开始,传输延迟为4s-6s,这是正常的。短信发送数量超过五六十条后,后续所

58、有短信的传输延迟都非常大,最长可达10分钟甚至更长。当传输时间间隔延长到10s、30s时,这种现象就会消失。得出传播密度越小(时间间隔越长)越有利于传播的结论,符合客观实际。3.不同数据长度对短信传输时延的影响选择了70字节的SM数据长度和140字节的满载的两种典型情况。测试过程中发现,在一个测试周期内,发送模块每隔5s连续发送几条短信后,SC因为无法及时处理这么快的数据流而返回错误信息,导致测试中断。当扩展发送间隔设置为l0s时,一切都很顺利。显然,随着SM数据长度的增加,传输延迟变得更长。综上所述,我们可以认为以30s的时间间隔发送满负荷的用户数据可以获得满意的传输效果。如果数据不是满负荷

59、的,可以以更短的时间间隔连续发送数据。系统开发中的困难项目开发的难点主要集中在软件上。我们可以通过调试软件清楚的了解单片机部门的工作情况,但是对于GSM模块的状态,我们只能通过单片机向其发送AT指令,等待其响应。根据响应值判断软件的正确性。如果响应值有误差,就要分析原因。往往与当时GSM模块的状态和GSM网络本身的状态有关,所以错误类型不是唯一的,有很多种。有时MCU甚至接收不到模块的响应,给调试带来很大的麻烦。所有AT命令的响应只有通过大量的实验才能掌握。第六章结论本课题是一个基于GSM网络的数据传输系统,通过现有的GSM网络,采用短消息方式,利用单片机控制GSM模块向另一台计算机终端发送数

60、据。到目前为止,GSM网络在短消息方面的应用具有很大的优势,通过GSM网络的短消息业务实现远距离数据通信的技术才刚刚起步,在车辆调度、安全、导航、监控、监视等领域已经开始有一定的研究和应用。特别是在偏远地区,如江海等架设通信线路困难或不经济的地方,利用GSM网络的短信实现其远程监控是一种实用有效的技术手段和必然趋势。此外,本文还考虑了短消息服务的时延等问题。因此,本课题本身具有很大的现实意义和一定的参考价值。特别是对一些关键技术进行了详细介绍,为以后的应用项目打下了基础。6.1论文的创新点1.利用GSM网络的短消息实现数据通信。目前这项技术处于领先水平。尤其是利用AT命令来掌握MCU与GSM模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论