




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
采用嵌入式移动网络的远程控制系统序 言进入二一十一世纪以来,计算机网络、通信技术、自动化技术、遥感技术、传感器技术以及大规模集成电路无不飞速发展,而其中最为引人瞩目的当是无线通信技术及无线通信网络飞速普及和应用。现今,无论国外还是国内通用的、覆盖广泛的无线网络已基本建设完成,例如中国移动的GSM网可实现全国及全球漫游,使手机等无线终端设备得以快速普及,可以说世界已经进入无线时代。而无线通信不仅仅可以传输话音信号,从本质讲,它是数据通信技术与移动通信技术结合的产物,数据通信才是无线传输的核心内容。近年来,移动通信的数据业务获得了迅猛发展,其年增长率远远高于电话业务,广阔的市场前景使得各大通信制造业巨头们纷纷投入到移动数据业务的竞争之中。作为数字蜂窝系统的典范,GSM系统已在全球获得了巨大的成功,其广阔的覆盖范围和良好的漫游性、安全性,再加上各种基于GSM的数据传输技术的不断发展,使得在GSM上进行数据通信成为在3G(第三代移动通信的简称)到来之前最好的一种手段。随着GSM无线通信技术的不断发展和成熟,可用于实现快速、准确、独立、经济的远程监控、读取、控制远方的调控测量仪器,例如无人值守加油站、家用电力用表、水表、煤气表等,正在被越来越广泛应用到各种新的系统,具有非常广阔的应用前景。本课题是借助公共移动通信网络进行远程控制和数据传输,比使用专门无线电波段及设备、或者架设专线进行远程控制和数据传输,都有非常大的优势。本课题把GSM模块作为信息传递的载体,使其与单片机和PC机结合起来构成的应用系统有着强大的生命力和广阔的应用空间,特别是在远程数据传输、远程监控领域更是受到人们的关注。并且具有造价低、可靠性高、不受地域限制、实现方便快捷、运行费用低廉等特点。我借助于本地手机和远端设备的GSM模块、利用移动通信公司的服务,通过本地手机对远端设备发送指令进行控制、数据采集。远端设备是以单片机为核心,单片机对GSM模块和被控设备进行控制,并在上位机显示接收到的号码等数据。本课题研究主要包括以下几方面的内容: 1. GSM网络的基本结构、SMS短消息协议和传输过程的简单介绍。 2.基于GSM网络数据传输系统设计方案。主要包括数据发送终端系统结构设计和原理和GSM MODEM的设计。3.数据传输系统的上下位机GSM通信接口部分,实现对被控对象实行监控。 第1章 概述1.1 概述我的课题主要由监控中心计算机、GSM(全球移动通信系统)模块、远端单片机控制板等部分构成。该系统应用了计算机软件编程技术、硬件接口技术、移动通信网络数据传输技术等。系统借助于控制中心和远端设备的GSM模块、利用移动通信公司的服务,通过本地手机对远端设备发送短信指令进行控制。远端设备是以单片机为核心,单片机对GSM模块和被控设备进行控制,并在监控中心计算机上显示接收的数据。该系统是借助于公共移动通信网络进行远程控制和数据传输,比使用专门无线电波段及设备、或者架设专线进行远程控制和数据传输,都有非常大的优势,具有造价低、可靠性高、不受地域限制、实现方便快捷、运行费用低等特点。1.2 硬件设计硬件设计其核心是西门子公司的TC35模块,该模块功能强大,能够进行语音传输、数据传输等,并且获得有我们国家的通信入网证。硬件主要由单片机、RS232、TC35模块、SIM卡、接口电路、天线、被控对象等组成。其电路框图如下图1-1所示。TC35单片机上位机SIM卡本地手机被控对象图1-11.3 软件设计软件编程实现主要是以下几个方面:(1)主程序开始要对模块进行初始化,并且设置异步串口通信方式,设置波特率9600bps,无校验位,8个数据位。(2)通过串行口发送相应的AT指令进行操作。(3)对PDU数据包的解码以及通过串行口发送到上位机。1.4 主要技术指标该设计可以远程控制灯的亮灭以及电机的开启和停止,GSM相关的AT命令,GSM模块的使用。计算机以及单片机串口通信技术等。1.5 应用我的课题具有很广泛的应用。可以应用于工业控制、数据采集系统;电信基站自动测量监控系统;高速公路收费系统、铁路系统;降雨量远程监测系统、地下水远程监测系统;电力系统数据采集与控制系统、变电站数据远程测控系统;各类量度表远程自动抄表系统;河道水位自动监测系统;油井在线生产数据采集与控制系统;家庭所有设备的控制等,应用领域极其广泛。因此该项目有非常好的推广应用前景,并且能够产生极好的经效益。第2章 GSM系统的设计2.1 GSM系统提供的业务GSM是以加入窄带综合数字业务网(ISDN),向其用户提供ISDN业务为目标的,它所支持的业务主要有三大类: 1.基本电信业务:包括电话、短消息、紧急呼叫、传真、话音信箱、智能用户电报等,可以与PSTN(公共电话网), ISDN等互通。 2.数据传输业务:包括300b/s和1200b/s异频双工数据传输,1200b/s,2400b/s, 4800b/s, 9600b/s同步双工数据传输,以及它们的分组式传输等,并与PSTN, ISDN和PDS(综合布线系统,Premises Distributed System)等互通。3.补充业务:包括3方通话、会议电话、呼叫转移等。2.2 SIM卡2.2.1 SIM卡的功能用户识别模块(Subscriber Identity Module)是一种带微处理器的封装在塑料中的智能IC卡,它是GSM系统中不可缺少的一个重要部分,是用户进入GSM网络的登记凭证。在SIM卡中,包含有用户识别信息,辅助业务信息、短消息、移动性信息和无线电资源信息等。在GSM系统中,通过对SIM卡的物理接口、逻辑接口的明确定义,来完成与移动终端的连接和信息交换,同时在SIM卡内进行用户信息存储、执行鉴权算法和产生加密密钥等工作。只有插入SIM卡,移动终端才能接入网络。它由CPU(8位)、程序存储器(3-8bit )、工作存储器(6-16bit )、数据存储器(128-256kbit )和串行通信单元五部分组成。SIM卡分为3V和5V两种。手机最初使用的是5V的SIM卡;1998年后陆续使用3V的SIM卡;5V的SIM卡容量小且功耗大,容量一般在3K左右,能存储30个电话号码,3V的SIM卡容量大且省电,容量为8K,能存储100个电话号码及其对应的姓名文字,15组短消息等。SIM卡正面图上有20值数码。前面6位(898600)是中国的代号;第7位是业务接入号,在135, 136, 137, 138, 139中分别为5, 6, 7, 8, 9;第8位是SIM卡的功能位,一般为0,现在的预付费SIM卡为1;第9, 10位是各省的编码;第11, 12位是年号;第13位是供应商代码;第1419位则是用户识别码;第20位是校验位。SIM卡正面图如图2-1。 图2-12.2.2 SIM卡的存储内容SIM卡是GSM的用户资料卡,它存储着用户的个人电话资料和保密算法、密钥等,下面就SIM卡中所存储的主要内容加以说明: 1.国际移动用户识别码(IMSI)IMSI是全球统一编码的唯一能识别移动用户的号码,一般由3个部分组成:移动台国家识别码+长途区号+移动用户号码,其中移动国家识别码3位数,我国为460,后两项共7-12位数。IMSI被存在SIM卡中,且IMSI与用户电话号码又一一对应地存储于网络的归属用户数据库里。当移动台用户在归属地或漫游地进入系统时,网络系统均能首先从用户的SIM卡中获取用户识别码,从而识别用户归属于哪个国家,哪个电信部门,甚至哪一个移动业务服务区。2.个人识别码(PIN)和SIM卡解锁密码(PUK)PIN码是SIM卡上的个人密码,主要用来验证SIM卡使用者的身份是否有效。为了防止他人擅用SIM卡,在移动台接通电源,将SIM卡插入移动台时,就会被要求输入4-8位的PIN码,否则将不能正常通信。如果用户连续三次输入错误的PIN码,移动台就会提示用户卡己被锁住,这时用户需输入PUK码才能解开。如果连续十次输错PUK码,SIM卡就将永久报废,无法再使用。3.用户使用的存储空间SIM卡中大部分信息是经营者或制卡者所输入且不能更改。但SIM卡中也可存储部分个人信息,如固定的短消息、号码簿等,用户可以用移动台的键盘来完成个人情息的存储和读出。这就是所谓SIM卡中的个人存储空间。2.2.3 SIM卡的物理结构SIM卡的物理结构如图2-2所示。SIM卡共有8个触点,通过这些触点与移动终端接口,进行相互间的信息传输,并提供SIM卡电路工作时所需的电源。SIM卡各触点的定义如下:C1:Vcc电源电压(3V),TC35模块提供过来的电压。C2:RST复位端。C3:CLK时钟,时钟速率通常由移动终端提供,SIM卡支持15MHz时钟,它在指定时间内运行监权过程时至少需要13/4MHz的时钟频率,其它情况下使用13/8MHz的时钟频率。C4:无定义,为将来使用保留。C5:GND地。C6:Vpp编程电压。C7:I/O输入输出。C8:无定义,为将来使用保留。 图2-2SIM卡的电性能要求为使SIM卡能正常工作。各触点的电性能以及电源开/关时的电性能都是有所要求的。SIM卡开启电源期间,各触点的激活顺序为:RST为低电平状态;Vcc加电;I/O处于接收状态;Vpp加电,提供稳定的时钟信号。SIM卡关闭电源时,各触点的去活顺序为:RST为低电平状态,CLK为低电平状态,Vpp去电;I/O为低电平状态;Vcc去电。电源开启时,SIM卡有两种工作方式,即工作方式和空闲方式。在工作方式时完成与移动终端之间的信息传输,在空闲方式时SIM卡将保留所有相关数据,并支持内部全休眠、指令休眠和时钟休眠三种休眠方式。 2.3 短消息业务SMS短消息是Short Message Service的英文缩写,是通过移动网络用手机接收和发送有限长度文本信息的一种通信体制。文本信息可以是汉字,数字,字母或符号以及它们的组合。GSM的协议规范规定,一条短消息最多可以包含160个英文字母的7-bit编码或是70个汉字等Unicode编码。世界上第一条短消息是在1992年12月从英国沃达丰(Vodafone)公司的GSM网络由电脑发送到一部手机上的,此后几年内短消息并未得到广泛应用。直到1998年,欧洲的语音业务渐趋饱和,移动数据业务市场广大,运营商开始注意到短消息市场,Sonera, Vodafone, Mannesmann等公司大力发展短消息业务,使欧洲的短消息迅速火爆。随着手机在中国的普及,2000年开始,中国移动和中国联通开始开发中国的短消息市场,在中国掀起短消息的热潮。2.3.1短消息业务的特点短消息采用存储一转发的模式,防止了短消息的丢失。短消息先发送并存储到短消息服务中心,然后由短消息服务中心转发给接收方。如果接收方不在服务区内或是关机,则短消息服务中心先保存该短消息,等接收方处于服务区内再转发给他。短消息的收费十分低廉,这是短消息风靡的决定性因素。无论距离的远近,接收方免费接收短消息,发送一条短消息网内收费0.1元,网间收费0.15元。并且发送一定量的短消息运营商会给出一定的优惠政策,这对某些消费群体具有很大的吸引力。短消息的升级版本EMS和MMS能够承载多种数据。它们的内容可以是文本、声音、图像等,更大程度的满足人们交流的方式。手机中的SIM卡可以对发送短消息进行加密,接收方的手机将信息解密,实现了传输中的安全可靠行。短消息可以与话音、数据、传真等业务同步传输。短消息使用S7信令传输数据分组,是非对称业务,即使在业务信道处于高峰期时,仍然可以进行顺利通信。2.3.2短消息业务的现状和前景 1.短消息业务的现状 短消息业务的广泛发展给各地的运营上带来了丰厚的利润,同时它方便了人们的生活,成为我们生活中必不可少的一部分。但是它也带来了一些负面影响,例如现在的一些垃圾短信经常充斥我们的手机,严重防碍了我们的正常生活;再如一些不明不白的收费让很多人大伤脑筋。 2.短消息业务的前景 SMS的升级版EMS:Enhanced Message Service (EMS)增强消息业务是爱立信公司向ETSI/3GPP委员会提交的技术标准。大多数手机制造商支持EMS经过稳步发展,EMS已成为3GPP技术规范的一个完整部分。EMS和SMS的实现原理基本相同,也是存储一转发机制,使用信令信道,因此不用对基础网络升级。EMS能够支持格式化文本、黑白图片、声音、简单的动画等媒体。 SMS的下一代版本MMS:Multimedia Message Service (MMS)多媒体信息服务支持移动图像、卡通、交互式视频等多媒体信息,可以把文本、声音、图像、视频等集成在一起,通过手机发送电子贺卡、屏保等。从2002年开始,很多手机厂家推出了支持MMS的手机,更多的运营服务商参与MMS的研发。到目前为止,MMS已有了广泛的应用。2.3.3短消息业务的主要应用短消息业务的应用十分广泛,总结如下: 1.最基本的手机用户之间的相互交流信息的功能。 2.资讯服务。包括新闻、天气预报、股市行情、话费查询、火车、航班时刻查询等。 3.移动商务。移动证券交易、移动银行、预订车票等。 4. E-mail应用。E-mail主要信息提示和全部信息浏览、回复简单的E-mail。 5.娱乐。铃声图片下载、智力问答、手机游戏。 6.远程监控。对工业、地质、水文等数据采集和远程控制。 7.企业服务。对企业内部信息进行交流和管理。2.4 GSM 模块介绍及应用方法2.4.1 GSM模块的结构和特点随着GSM应用的不断推广和深化,GSM无线技术和实现手段也在不断提高:各种GSM无线终端模块的不断涌现,简化了用户端仪器的开发,同时也大大扩展了无线应用领域。GSM模块基于GSM底层协议,实现了移动台所有功能。这些模块不仅按照GSM移动台与终端设备(TE)的连接规则,提供相应引脚,同时按照上层应用协议规定,提供标准AT指令支持。它们大多还集成了语音信号处理和编码,以及键盘、显示、天线、声音等接口,极大的降低了用户终端的开发难度和开发周期。现在,许多大型通信公司都生产GSM模块,例如MOTOROLA公司的D10/D15, SIMENS公司的TC35/37, WAVECOM公司的WISMO2B/2C等等,支持不同等级要求的应用。本系统采用的是SIMENS公司的TC35模块。SIMENS公司的TC35模块。它是西门子公司最新推出的无线通讯模块,可以快速安全的实现数据、语音等的传输,短信息服务SMS和传真,可以工作在GSM 900kHz和1800kHz两个频段,RS232数据口符合ETSI标准GSM0707 和GSM0705,且易于升级为GPRS 模块。该模块集射频电路和基带于一体,向用户提供标准的AT 命令接口,为数据、语音、短消息和传真提供快速、可靠、安全的传输,方便用户的应用开发及设计。1.主要功能和参数如下:可以快速、安全、可靠地实现系统方案中的数据、语音传输、短消息服务(Short Message Service)和传真。TC35模块的工作电压为3.34.8V,可以工作在900MHz和1800MHz两个频段,所在频段功耗分别为2w(900M)和1w(1800M)。通过一个ZIF(Zero Insertion Force,零阻力插座)连接器引出40个引脚。短信息服务功能(GSM或GPRS状态):支持中英文字及PDU,点对点(MT/MO),小区广播。可选波特率300bps115kbps,支持数据、语音、短消息和传真电流消耗休眠状态为3.5mA,空闲状态为25mA,发射状态为300mA(平均),2.5A峰值。2.4.2 AT指令GSM模块通过AT命令与单片机通信。所有的AT命令(除了重复命令A/以外)都由AT开头,除了发送短消息最后是以+结束外,其余的都是以回车符结束的。响应形式都是。表2-1列出了AT命令的语法规则。 表2-1 AT命令的语法规则测试命令AT+CXXX=?模块返回由相应写命令或内部处理设置的参数和值范围列表读命令AT+CXXX?模块返回当前设置的参数或参数值写命令AT+CXXX=?模块返回用户定义的参数值执行命令AT+CXXX读取在GSM内部处理器的不变参数1.常用初始化指令(1)设置单片机和GSM模块的通信波特率AT+IPR=, 是回车符号。指令正确则模块返回OK, 是回车换行符号。参数rate可以是300, 600, 1200, 2400, 4800,9600, 19200, 38400, 57600, 115200。其中300至115200表示固定波特率的数值;当通信波特率超过1200时,可设为0,表示自适应波特率,模块根据单片机的串口数据的波特率调整本身与之相同。本设计中参数rate设为0,单片机的串口的波特率为9600b/s。(2)设置短消息中心号码AT+CSCA= +8613800519500(常州市短消息中心),设置正确则模块返回OK。短消息中心号码可能会因不同手机或不同区域而不同。如果读取短消息服务中心则使用命令AT十CSCA=?,模块应该返回+CSCA:“8613800519500 。(3)设置短消息发送格式AT+CMGF =0,设置0代表PDU模式,指令正确则模块返回OK 。(4)保存当前的设置AT&W。把前面设置的通信波特率、短消息中心号码和短消息发送格式写入模块。2.常用短消息操作指令(1)发送短消息指令。PDU模式中,首先发送短消息数据的长度。AT+CMGS=。等待GSM模块返回ASCII字符“”,则可将PDU数据输入,PDU数据以+作为结束符,短消息发送成功,模块返回OK 。(2)设置短消息到达自动提示AT+CNMI=1, 1, 0, 0, 1,设置正确则模块返回OK。错误则返回+CMS ERROR:。设置此命令可使模块在短消息到达后向单片机发送指令+CMTI: SM , INDEX(信息在SIM中的存储位置)。(3)读短消息指令。模块接收到新的短消息时,向单片机发送字符串+CMTI : SM ,INDEX。于是读取该短消息的AT命令为AT+CMGR=INDEX,则模块返回刚刚收到的PDU格式的短消息内容。 (4)删除短消息。由于SIM卡只能存储有限条短消息,为防止SIM卡中短消息存满而不再接收短消息,收到一条短消息后,在进行数据分析处理后,将此消息立刻删除,删除短消息的指令为AT+CMGD=INDEX,删除后模块返回OK。2.4.3短消息的模式与Unicode编码方式ETSI制定短消息协议作为整个GSM标准中的一部分。该协议为在MT(移动终端,相当于GSM MODEM)和TE(终端设备,相当于单片机或微机)之间传送短消息定义了三种接口协议。分别为Block Mode(阻塞模式)、Text Mode(ASCII模式)、PDU Mode(二进制模式)。阻塞模式是用来封装GSM3. 40中定义的SMS PDU的二进制协议。该协议包括差错检测,适合应用于终端间的链路受差错控制,连接不是非常可靠的情况。这种模式常见于需要对远方设备控制的情况。阻塞模式有着与另两种模式完全不同特性的协议,当进入此种模式,此状态就将一直保持下去,直到程序主动退出阻塞模式,退出阻塞模式以后将返回到V.25ter命令状态,或者在线命令状态。应用部分组合的二进制串应包含报头和短消息PDU。ASCII模式是基于AT命令的接口协议,适用于非智能的终端和仿真器,以及一些基于命令结构的应用软件。在ASCII模式,所有的AT命令都是以ASCII码的形式回答的。应用将消息按简单文本传递到MS组成TPDU。ASCII模式提供功能比阻塞模式和PDU模式少。ASCII模式不需支持或自动传送到达消息给应用,而仅仅是通知消息到达。PDU模式是以16进制编码传输消息块的接口协议,在此模式中,短消息(包括短消息的头部分)都是经过16进制编码的,也即,只有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码的前128个位置就足以表达全部的字符。用PDU模式收发短消息可以使用三种编码:7-bit编码、8-bit编码和UCS2编码。7-bit编码用于发送普通的ASCII字符;8-bit编码通常用于发送数据消息,如图片或铃声等;UCS2编码用于发送Unicode字符。由于在本系统中要实现中文短消息的发送,所以选择用UCS2编码,即中文Unicode码。Unicode是一种统一字符编码标准,采用双字节对字符进行编码。这是Apple和Xerox公司于1988年建立的一个技术标准。Unicode提供了一种简单而又一致的表示字符串的方法。由于Unicode用一个16位的值来表示每个字符串,因此总共可以得到65000个字符,这样,它就能够对世界各国的书面文字中的所有字符进行编码,远远超过了单字节字符集的256个字符的数目。这种Unicode的特点是所有的字符是以两个字节表示、不仅中文使用两个字节。而且英文也使用两个字节表示。汉字的十六进制PDU编码直接采用汉字的Unicode编码,由于汉字的编码是十六位的,当中英文出现在同一短消息的时候,中文每个汉字是十六位的,但是字母和数字是八位的编码,这时统一采用十六位编码,也就是在八位的ASCII码前面补0。61H是“a的ASCII码,补齐十六位后的Unicode编码为0061H。本系统采用PDU模式进行收发短消息,统一使用Unicode的编码形式。下而举例说明PDU串的结构和编排方式。例如,需要发送信息“1号开”到手单片机首先通过串口向模块发送数据串AT+CMGS=21 ,然后单片机等待模块返回ASCII字符“”,然后输入PDU数据“0891683108509105F011000D91683119057294F000080006003153F75F00”。长度21不包括PDU数据中“0891683108509105F0”。对各个数据域进行分析如表2-2所列。表2-2发送短信格式ABCDEFGHI表2-3 发送信息的PDU串分析发送短信格式符数据说明A0891683108509105F008是短信中心号长度,91是短消息中心号码的类型即TON/NPI,指在号码前面需加“+”号。91后面的数据是经过编码之后的短消息中心号码。B11指的是正常发送短消息C00信息类型,一般为00D0D91683119057294F00D为被叫号码长度为13(8613915027490),91为目标电话号码类型E00标准情况下的MS-to-SC短消息传送F08UCS2(16bit)数据编码方式G00信息有效期TP-VPH06长度TP-UDLI003153F75F00信息内容,是采用USC2编码后的内容,“1号开”单片机可以通过读指令AT十CMGR=INDEX来读取SIM卡指定位置的短消息。例如读取的短消息是由手机号码用户发送的“1 。则模块返回给单片机的PDU串为0891683108509105F0040D91683119057294F0000808508051003301020031。对各个数据域进行分析如表2-4和表2-5所列。 表2-4接收消息格式ABCDEFGHI表2-5 接收消息的PDU串分析 接收短信格式符数据说明A0891683108509105F0短信服务中心号码及长度B04PDU类型C0D目标电话号码长度的十六进制表示D91683119057294F091为目标电话号码的类型,后面是经过编码后的目标电话号码E00PID,协议标识F08指短信内容采用的UCS2编码G08508051003301SCTS短消息发送时间,08/05/08/15:00/33.10H02短信内容长度I0031经过编码后的PDU数据,“1”2.4.4 GSM模块测试GSM无线模块可以通过RS232和计算机通信,为了测试连接是否成功,可以通过串口调试软件来测试。此测试中使用COM4,端口参数设置如下:波特率为 “9600 bps”,数据位为“8”。奇偶校验为“无”。停止位为“1”。当参数设置好后,进入串口调试软件,命令执行如下:AT OK 在接收区“OK”,表明设备连接成功,且设备能正常工作。AT+CMGF=0 设置短消息输入和输出的格式,“0”表示PDU模式,“1”表示文本模式OK AT+CSCA?+CSCA: +8613800577500,145 返回短消息中心,前面为“+”是为第2个参数为145,否则为129OKAT+CNMI=1,1,0,0,1 设置新消息指示,该设置可使模块在短消息到达后向单片机发送指令+CMTI:”SM“,INDEX(信息在SIM卡中的存储位置)OKAT+CMGR=3 读取第3条短消息+CMGR: 1,300891683108507705F0240D91683159786058F30008504022016035000A523054EA91CC4E86FF1FOKAT+CMGS=28 发送一条短信到手0011000B913185679792F80008A70E00500044005577ED4FE16D4B8BD5+CMGS: 235OKAT+CMGD=1 删除第一条短信OK 以上面方式与上位机可以通信,证明TC35模块是好的,然后就开始设计单片机电路与TC35接口电路了。第3章 基于短消息业务的系统硬件设计3.1系统整体结构本系统共分两个部分:由单片机控制的GSM终端数据发送接收部分和PC机端数据接收部分。系统框图如图3-1所示:PC机SIM卡GSM模块本地手机 图3-1 系统框图被控对象3.2 SIM卡通信接口的硬件设计图3-2TC35使用外接式SIM卡, 2429为SIM卡引脚,如上图3-2所示,SIM卡同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 时钟/机器周期,而且它具有倍频功能,本方案采用了11.0592MHz的晶振,那么整个单片机的指令周期为125ns,在以上的指令中是最小的,因此它传送数据的速度是最快的!它是可电擦除的ROM型单片机,数据存取器容量比较大,它为真正的看门狗,缺省为关闭(冷启动),启动后无法关闭,可放心省去外部看门狗。内部 Flash 擦写次数为 100,000 次以上,STC89C51RC/RD+ 系列单片机出厂时就已完全加密,无法解密。用户程序是用 ISP/IAP 机制写入,一边校验一边写,无读出命令,彻底无法解密。STC89LE58RD+ 有四个典型特点:1.增强型 6 时钟/机器周期2.工作电压:5.5V-3.4V(5V单片机)3.工作频率范围:0-40MHz4.片上集成1280字节RAM3.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模块通过数据口以串行方式接收指令并向外输出数据。理论上讲,在数据口中找出RXD、TXD和GND引脚与单片机的串口(P3.0,P3.1)对应连接即完成了串口的硬件连接。然而,由于本设计所用GSM模块为TTL电平,所以能直接与由4.2V供电的单片机串口直接相连接,而单片机与上位机的连接需要通过RS232进行电平转换。RS- 232C是由美国电子工业协会(EIA)正式公布的在异步串行通信中应用最为广泛的标准总线。它包括了按位串行传输的电气和机械方面的规定。适合短距离或带调制解调器的通信场合。它适合于数据传输速率在020000b/s范围内的通信。这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。由于通信设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机和单片机系统中广泛采用。本系统中MODEM与单片机的接口就是RS-232。目前电脑上较为常用的串口有9针串口(DB9),DB9常用信号脚说明如表3-1 所示。 表3-1 DB9常用信号脚说明表9针串口(DB9)针号功能说明缩写1数据载波检测DCD2接收数据RXD3发送数据TXD4数据终端准备DTR5信号地GND6数据设备准备好DSR7请求发送RTS8清除发送CTS9振铃指示DELL本设计单片机与上位机通信采用DB9作为通信接口。它们通信过程只有三个脚有用,第一个是2脚接收数据,第二个是3脚发送数据,最后一个是5脚接地。其他的脚为无关脚,这里可以不需要考虑。RS-232的电平为-3-15表示逻辑“1”,315表示逻辑“0”,所以必须进行电平转换,MAXIM公司生产的MAX232是性能比较优秀转换芯片,最终我们考虑的是用MAX232电平转换专用芯片。第4章 基于短消息业务的系统软件设计4.1单片机端程序设计单片机系统除了必要的硬件支持外,还需要进行软件设计。单片机端的软件程序是用C语言编写的。单片机与GSM模块的软件接口其实就是单片机通过与GSM短消息有关的AT指令控制GSM模块的控制技术,主要是GSM模块的一些本身的顺序控制以及发送短消息和接收短信。然而,执行一条指令,也并非如某些资料中介绍得那么简单。事实上,指令的执行过程需要单片机与GSM模块交互应答完成,每一次发送或接收的字节数都有严格的规定,二者必须依据这些规定实现数据交换,否则,通信就是失败的。对几个问题说明如下:1.在给模块上电之前需要给TC35的IGT脚约100ms的低电平脉冲,然后上电初始化。2.所有AT指令的指令符号、常数、PDU数据包等都是以ASCII编码形式传送的,比如“A”的ASCII编码为41H,“T”的ASCII编码为54H,数字“0”的ASCII编码为30H等,具体详细的ASCII编码对照表见附录。3.单片机控制GSM模块工作,必须把SIM卡的短信息工作模式设置为PDU格式,即通过指令AT+CMGF=0完成。4.单片机向手机发送每一条指令后,必须以回车符作为该条指令的结束,回车的ASCII编码为0DH。例如,单片机向手机发送“AT+CMGF=0”这条指令,其ASCII编码序列为“41H,54H,2BH,42H,4DH,47H,46H,3DH,30H,30H,0DH”,最后一个字节0DH就是回车符,表示该条指令结束,如果没有这个回车符,GSM模块将不识别这条指令。4.1.1单片机端主程序设计主程序是对单片机端系统框架的描述。本系统的主程序的功能是上电后,完成系统的初始化,然后在主程序里循环判断,如果有来电,就一次性把电话挂了,没有就往执行,判断有无新短信,有就调用读短信子程序,完成对外部的控制后回发一条短信出去以及把数据通过模拟串口发送到上位机。没有新短信就返回继续循环判断。主程序流程图如图4-1所示。开始调用单片机初始化子程序发送指令AT进行入网检测调用延时300ms子程序返回”OK”成功吗? N Y一次挂断电话判断有无电话YNNY判断有无新短信调用读短信子程序解码及控制器件回复一条短消息发送到上位机 图6.1.1 主程 图4-14.1.2重要子程序流程图1TC35完成SIM卡初始化子程序流程图设计。该子程序是完成SIM卡初始化工作,流程图如图4-2所示。开始发AT+CMGF=0r选择短信格式PDU等待时间5SAT+CPMS=”SM”选择短信存储区等待时间5S 发AT&Wr保存设置返回图4-2 SIM卡初始化子程序流图2模拟串口发送子程序流程图设计。该子程序是完成单片机与上位机通信,因为带有双串行口的单片机价格较昂贵,所以选择了单串行口单片机,把它本身自带的串行口与TC35相连接通信,在与上位机通信选择了P3.3(TXD)、P3.4(RXD)作为模拟串行口的I/O端。开始 设置波特率关中断TXD清0把8位数据放到BUF里 TXD置1 返回图4-3 模拟串口流程图3接收短消息子程序设计。接收短消息子程序是单片机控制系统程序的重要部分,当有新短消息时,把接收到的PDU数据包接收放在存储器中,然后把PDU进行解码,把对方手机号码、日期时间、短信长度、内容等信息取出。流程图如图4-4所示。开始从串口把TC35传过来的PDU数据放到地址里取出PDU数据包 数据解码结束 图4-44. 发送短消息子程序设计。发送短消息子程序是整个单片机程序中的核心部分。初始短信息已经经过编码后的PDU数据包存放在了存储器中,所以当需要发送时,可从内存中直接提取出来,再通过单片机发送AT指令与TC35通信,把PDU数据包发送出去。流程图如图4-5所示。开始发AT+CMGS=延时300ms返回”了吗?NY延时300ms发数据的Unicode编码 发送Ctrl+z再加0结束符N返回”OK”了吗?Y结束 图4-5 发送短消息子程序4.2 单片机端短消息收发程序以及上位机通信的实现。4.2.1短消息收发的实现模式。本设计是计算机串口通过模拟串口通过RS232和单片机串行通信,单片机再和GSM MODEM串行通信,用GSM MODEM接收短信,把PDU数据包传给单片机,单片机进行解码并分析实行控制电机和灯,单片机并且通过模拟串口把解码出来的数据发到上位机的串口调试软件里,本设计是比较适合于小型项目开发的一种实现模式。这种方法要求对AT指令集和串口编程比较熟悉。4.2.2 短消息发送和接收的功能实现。打开串口调试软件,选择串口COM 1,9600波特率,无奇偶校验,8位数据,一个停止位,等待接收GSM模块发送过来的数据,当有新短信时,TC35模块会把SIM卡接受到的PDU数据包通过串行口发给单片机,单片机把对PDU数据包进行解码,并对解码的内容进行分析,然后对被控对象进行控制,再把短信的信息通过串口传送到上位机的串口调试软件里。4.2.3 发送短消息的程序实现。前面已经对发送PDU串的编制进行了分析,对于编好的PDU串存储在单片机内部,通过相应的AT指令来实现短消息的发送。用来实现消息发送的AT指令是:AT+CMGS。以前面用的发送PDU串为例,即发送内容为“2号开”,接收方手机号需要说明的是,在此省去了对SMSC地址格式和SMSC地址这两个分段的编写,采用了SIM卡设置的SMSC地址。即发送的PDU串为:0891683108509105F011000D91683119858955F700080006003253F75F00。具体程序如下: unsigned char sms_SendTc35SMS(unsigned char *pdu_str,unsigned int length) unsigned char idata at_cmd_str15; sprintf(at_cmd_str,AT+CMGS=%dr,length); tc35_SendAtCommand(at_cmd_str); ES=0; dt=100;while(dt) while(RI=0)&(dt!=0) FeedWatchdog(); RI=0; if(SBUF=) break; if(dt=0) #ifdefDebugPrintMessage(not wait );#endifreturn(false); dt=2;while(dt)FeedWatchdog(); tc35_SendAtCommand(pdu_str); at_cmd_str0=Ctrl_Z; at_cmd_str1=0; tc35_SendAtCommand(at_cmd_str); tc35_WaitTc35Respond(); return(false); 程序中定义了一个pdu_str指针,把指针指向PDU数据数据包,length为短信的长度21。发送AT+CMGS=21r,等待TC35回复“”,打开串口把PDU数据发送出去,并以Ctrl_Z+0结束。程序中的FeedWatchdog是本人自定义的用来处理延时操作的函数,因为在连续的两个AT指令之间需要设置一定的间隔时间(设为了1秒),为每一条发送的指令提供响应时间。4.2.4 接收消息的程序实现。先介绍几个相关的AT指令,(1)AT+CPMS,优先信息存储。该命令用来指定读写信息的存
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年网络安全工程师专业模拟题与答案解析
- 2025年炼钢原理及实践应用面试题解析
- 2025年高级营养师专业能力提升考试模拟题与答案解析
- 湖北省恩施土家族苗族自治州2024-2025学年八年级下学期期末语文试题(含答案)
- 2025年英语六级阅读理解冲刺试卷 阅读理解实战
- 2025至2030中国国际快递行业市场发展现状分析及有效策略与实施路径评估报告
- 2025至2030中国医药检测服务行业市场发展分析及前景趋势与行业项目调研及市场前景预测评估报告
- 2025至2030中国菊花石市场运行现状与发展前景趋势预测报告
- 辣椒栽培考试题及答案
- 零冠词的考试题及答案
- 高层建筑火灾扑救
- 香港中文大学博士英文复试模板
- 南京大学介绍
- DL-T-255-2012燃煤电厂能耗状况评价技术规范
- 【视频号运营】视频号运营108招
- 青少年运动员运动损伤的预防和处理
- 幼儿园拍摄技巧培训
- (正式版)JBT 14682-2024 多关节机器人用伺服电动机技术规范
- 村社区干部任职培训课件
- 2024年个人车位使用权转让协议书(通用)-(含多款)
- 《北京传统美食》课件
评论
0/150
提交评论