1、基于GSM移动通信的分布式温度采集系统设计与实现合 肥 学 院课 程 设 计 报 告题 目: 基于 GSM 移动通信的分布式温度采集系统设计与实现 系 别: 电子信息与电气工程系 专 业: 通信工程 班 级: 08通信工程2班 学 号: 姓 名: 导 师: 成 绩:_ 2011 年 12 月 11 日 设计题目基于GSM模块的分布式数据采集设计类型应用型导师姓名胡国华主要内容及目标基于GSM移动通信的分布式温度采集系统是借助于GSM移动公网,将各采集点的温度数据以短信或以GPRS数据的方式发送到主控站。主控站可以主动查询或被动接受各数据采集点的数据,从而使被监控环境及设备可以做到无人职守,只要
2、有手机信号的地方,就可以设置数据采集点。要求:1、 具备一定的识图、用图和焊接的能力,能正确使用示波器、三用表等,有基本的电路调试能力;2、 掌握GSM移动通信AT信令;3、 掌握VB6.0软件,编写程序并调试实现;4、 实现温度实时采集;5、 自由发挥其他功能;6、 要求有系统框图,电路原理图,软件流程图,模拟仿真结果图。具有的设计条件根据设计要求提供相关的实验环境计划学生数及任务计划需要3人:1人主要对系统硬件设计和焊接1人运用 VB6.0软件编写程序并调试实现1人主要进行硬件测试实现及报告的编写计划设计进程1、从接题开始收集资料、准备设计2、第1周 系统硬件设计和焊接,软件编写程序并调试
3、实现;3、第2周 调试和完善,同时编写设计报告。参考文献1 李志强,屈国普,陈列尊,谭岳衡.基于GSM的温湿度远程监控系统设计J.核电子学与探测技术,2010,30(4):533-5362 黄欣荣.基于GSM短信模块的家庭防盗报警系统的设计J.中国新通信,2010,9:83-853 粱健,戈振扬,齐亚峰.基于GSM无线传输的温室温度监控系统的设计J.湖南农业科学,2010,4:135-146,1404 梁健.基于GSM技术的温室环境远程监控J.科技资讯,20109:49-515 施云波,周磊,修德斌,顾简,王立权.基于GSM的温湿度环境参数远程无线监测系统J.传感器与微系统,2010,4:96
4、-98通信技术综合课程设计课程设计任务书目录1 方案论证与选择 11.1 温度传感器模块 11.2 GSM模块 21.3 89C2051处理器模块 22 DS18B20简介和工作原理 32.1 DS18B20性能特点 32.2 DS18B20内部结构 42.3 DS18B20控制方法 52.4 高速暂存存储器 63 硬件工作原理电路 73.1 电路工作框图 73.2 硬件电路图 83.3 硬件引脚锁定 84 实验数据 95 小结 96 参考文献 10附:程序清单 11基于GSM模块的分布式数据采集摘要:本设计中,采用了新型数字温度传感器DS18B20以及GSM模块的应用。主要是基于GSM移动通
5、信的分布式温度采集系统是借助于GSM移动公网,将各采集点的温度数据以短信或以GPRS数据的方式发送到主控站。主控站可以主动查询或被动接受各数据采集点的数据,从而使被监控环境及设备可以做到无人职守,只要有手机信号的地方,就可以设置数据采集点。在本系统设计中共有以下三个模块组成:GSM模块、89C2051处理器模块、温度传感器模块。能实现以下两个基本功能:2位温度的输送、随时的测量室内温度并且发送给指定的手机上。关键字:89C2051、DS18B20、GSM1 方案论证与选择1.1 温度传感器模块方案一:用模拟温度传感器,比如普通的热敏电阻。热敏电阻的温度特性曲线是一条指数曲线,非线性度较大,因此
6、在使用时要进行线性化处理,线性化处理虽然能改善热敏电阻的特性曲线,但比较复杂。为此常在要求不高的一般应用中,作出在一定的温度范围内温度与阻值成线性关系的假定,才能简化计算。另外,温度与输出电压量是非线性的,读出的是模拟量,需要A/D转换器进行转换才能送给数码管显示,从而增加了软硬件的负担。方案二:采用数字温度传感器DS18B20作为温度传感器模块,它具有独特的单总线接口方式,需一根总线就能实现控制模块与DS18B20之间的半双工通信。DS18B20是集传感元件和转换电路于一体的小芯片上。另外,DS18B20也支持一线总线接口,测量温度范围为-55C+125C,在-10+85C范围内,精度为0.
7、5C。现场温度直接以一线总线的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V5.5V的电压范围,使系统设计更灵活、方便,体积更小。综上分析,DS18B20大大节约了I/O口资源,且在软件结构上省去建查找表这一繁琐的步骤,且它有精确的转换电路直接送出直观的数据,并且DS18B20拥有较高的温度分辨率0.0625度(采用默认的12位时),在价格方面,单个DS18B20市场价7元,与热敏电阻加A/D转换器ADC0809的组合价格相差不大。用它作为本设计传感器模块最恰当不过,固选择方案二。1.
8、2 无线模块无线模块使用的是华为GTM900,这是一款应用非常广泛的无线模块,许多手机上使用的就是这个模块,它的性能非常稳定,电路也十分简单,许多部分已经集成起来了,可以直接使用。其基本配置:丰富的AT命令集,40pinzip连接器,RS232双工串口,红外串口接口,SIM 3.OV和1.8V接口,2路模拟音频输入输出接口,电源输入接口和充电管理,电源为3.6V。其接线图如下:GSM模块1.3 89C2051处理器模块at89c2051与MCS-51产品指令系统完全兼容,2K字节可重擦写闪速存储器1000次擦写周期,2.7-6V的工作电压范围,全静态操作:0HZ-24MHZ,两级加密程序存储器
9、,128X8字节内部RAM,15个可编程I/O口线,两个15位定时计数器,6个中断源等等。下面是AT89C2051的管脚图 2 DS18B20简介和工作原理DS18B20数字温度计是DALLAS半导体公司生产的1Wire,即单线智能温度传感器,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。属于新一代适配微处理器的智能温度传感器,它具有体积小,接口方便,传输距离远等特点。 2.1 DS18B20性能特点 采用单总线专用技术,既可通过串行口线,也可通过其它I/O口线与微机接口,无须经过其它变换电路,直接输出被测温度值(16位二进制数,含
10、符号位)。 测温范围为-55-+125,测量分辨率为0.0625。内含64位经过激光修正的只读存储器ROM。适配各种单片机或系统机。用户可分别设定各路温度的上、下限。内含寄生电源。 2.2 DS18B20内部结构DS18B20内部结构主要由四部分组成:64位光刻ROM,温度传感器,非挥发的温度报警触发器TH和TL,高速暂存器。DS18B20的管脚排列如图1所示。 图1DS18B20引脚分布图表2引脚功能描述序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。3VDD可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。表
11、3:DS18B20高速暂存器共9个存存单元序号寄存器名称作 用 序号寄存器名称 作 用 0 温度低字节以16位补码形式存放4、5保留字节1、21 温度高字节6计数器余值2 TH/用户字节1存放温度上限7计数器/3 HL/用户字节2存放温度下限8CRC以12位转化为例说明温度高低字节存放形式及计算:12位转化后得到的12位数据,存储在18B20的两个高低两个8位的RAM中,二进制中的前面5位是符号位。如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625才能得到实际温度。 表4 温度高低字节存放说明
12、高8位SSSSS262524低8位232221202-12-22-32-42.3 DS18B20控制方法 在硬件上,DS18B20与单片机的连接有两种方法,一种是Vcc接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDD、GND接地,I/O接单片机I/O。无论是内部寄生电源还是外部供电,I/O口线要接5K左右的上拉电阻。 DS18B20有六条控制命令。表5 RAM指令表指 令 约定代码 操 作 说 明 温度转换44H启动DS18B20进行温度转换读暂存器BEH读暂存器9个字节内容写暂存器4EH将数据写入暂存器的TH、TL字节复制暂存器48H把暂存器的TH、T
13、L字节写到E2RAM中重新调E2RAMB8H把E2RAM中的TH、TL字节写到暂存器TH、TL字节读电源供电方式B4H启动DS18B20发送电源供电方式的信号给主CPUCPU对DS18B20的访问流程是:先对DS18B20初始化,再进行ROM操作命令,最后才能对存储器操作,数据操作。DS18B20每一步操作都要遵循严格的工作时序和通信协议。如主机控制DS18B20完成温度转换这一过程,根据DS18B20的通讯协议,须经三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。 DS18B20温度传感器的内部存
14、储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。配置寄存器 该字节各位的意义如下:表6: 配置寄存器结构TMR1R0111112.4 高速暂存存储器 高速暂存存储器由9个字节组成,其分配如表5所示。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如表1所示。对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。表7是对应的一部分温度值。第九个字节是冗余检验字节
15、。表7: DS18B20暂存寄存器分布寄存器内容 字节地址温度值低位 (LS Byte)0温度值高位 (MS Byte)1高温限值(TH)2低温限值(TL)3配置寄存器4保留5保留6保留7CRC校验值8根据DS18B20的通讯协议,主机(单片机)控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位操作,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,当DS18B20收到信号后等待1660微秒左右,后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。 表
16、8: ROM指令表指 令约定代码功 能读ROM33H读DS1820温度传感器ROM中的编码(即64位地址) 符合 ROM 55H发出此命令之后,接着发出 64 位 ROM 编码,访问单总线上与该编码相对应的 DS1820 使之作出响应,为下一步对DS1820 的读写作准备。 搜索 ROM 0FOH用于确定挂接在同一总线上 DS1820 的个数和识别 64 位 ROM 地址。为操作各器件作好准备。 跳过 ROM 0CCH忽略 64 位 ROM 地址,直接向 DS1820 发温度变换命令。适用于单片工作。 告警搜索命令 0ECH执行后只有温度超过设定值上限或下限的片子才做出响应。 3 硬件工作原理
17、电路公网31 电路工作框图32 硬件电路图硬件电路图33 硬件引脚锁定RS-232接口引脚定义RS232连线方式4 实验数据序号室内温度(度)发送温度(度)115.8 162 15.9 163 15.8 164 15.8 165 小结 经过两周时间的设计,我们的设计在硬件、软件方面都已经顺利完成。但是在实验室测试过程中,却遇到了一系列的问题。其中最主要的是串口线连接问题。我们用RS232串口线将PC与新的移动试验箱相连接时,用移动信令软件测试时,输入AT信令,点击发送,返回信息中没有显示OK或者0,即串口线连接出现问题。但是当我们用同一根串口线连接旧的移动试验箱时,输入AT信令,点击发送,返回
18、信息为0,即连接正常。从上面的测试结果中,我们三人推测到问题应该出现在实验箱或者焊接的电路板问题。我们用新的移动试验箱上配套的GSM模块测试,发现串口线连接还是出现异常。随后又换了新的移动试验箱,RS232串口线连接问题还是没有解决。就在昨天答辩的前一刻,我们还没有顺利的完成实验,跟胡老师说了下出现的问题,胡老师给了我们一根新的串口线。再次连接时,连接成功!把AT信令设置好后,顺利的完成了实验。 此次温度显示设计,一波三折的完成了实验。我们还是从中学到了不少东西。让我们学会了规范化的步骤和方法是很重要的,程序调试的各种方法以及解决调试过程中出现的一系列的问题。更重要的是让我们明白实验设计是多么
19、重要。试验中对于原理的理解,一定要彻底,在此基础上,要熟悉电路的每一个模块,对他的工作性质加以分析和了解,在经过自己细心的调节,才能得到自己期望的结果。 本次设计过程中,经过三个人的努力,加强了我们的团队合作能力,顺利完成了本次实验。但是在课程设计过程中,指导老师胡老师给了我们循序渐进地指导,在此特别感谢!6参考文献1 李志强,屈国普,陈列尊,谭岳衡.基于GSM的温湿度远程监控系统设计J.核电子学与探测技术,2010,30(4):533-5362 黄欣荣.基于GSM短信模块的家庭防盗报警系统的设计J.中国新通信,2010,9:83-853 粱健,戈振扬,齐亚峰.基于GSM无线传输的温室温度监控
20、系统的设计J.湖南农业科学,2010,4:135-146,1404 梁健.基于GSM技术的温室环境远程监控J.科技资讯,20109:49-515 施云波,周磊,修德斌,顾简,王立权.基于GSM的温湿度环境参数远程无线监测系统J. 传感器与微系统,2010,4:96-98附:程序清单Private Sub ChkHanziMessage_Click() Dim strSend As String Call MDIfrm.get_receive If gHanziMessage = False Then gHanziMessage = True cmdSendoutCommand.Visible
21、= False Frame1.Caption = 输入电话号码 strSend = AT+CMGF=0 txtSendCommand.Text = 1 Call MDIfrm.ComSend(strSend) txtReceive.Text = txtHistory.Text = 发送: & strSend & vbCrLf & vbCrLf & vbCrLf & txtHistory.Text Else gHanziMessage = False cmdSendoutCommand.Visible = True strSend = AT+CMGF=1 Call MDIfrm.ComSend(
22、strSend) txtReceive.Text = txtHistory.Text = 发送: & strSend & vbCrLf & vbCrLf & vbCrLf & txtHistory.Text txtSendCommand.Text = AT Frame1.Caption = 输入命令 End IfEnd SubPrivate Sub MSComm1_OnComm() Select Case MSComm1.CommEvent Case comEvReceive Dim Buffer_string As String Buffer_string = If msbytInstume
23、ntType = CRZ6001_MCU Or msbytInstumentType = CRZ6001_GSM Then MSComm1.InputMode = comInputModeText MSComm1.InputLen = 0 Buffer_string = MSComm1.Input If msbytInstumentType = CRZ6001_GSM Then If gRecieveTime = 10 Then frmPC2GSM.txtReceive.Text = End If gStartReceive = True gRecieveTime = 0 frmPC2GSM.
24、txtReceive.Text = frmPC2GSM.txtReceive.Text + Buffer_string Else msbytInstumentType = CRZ6001_MCU Then If Len(frmPC2MCU.txtReceive.Text) Len(frmPC2MCU.txtSend.Text) Then frmPC2MCU.txtReceive.Text = Left(frmPC2MCU.txtReceive.Text, Len(frmPC2MCU.txtSend.Text) End If End If Case Else End SelectEnd SubP
25、rivate Sub Timer1_Timer() If gHanziMessageStartSend = True Then If gHanziMessageSendTime = 10 Then frmPC2GSM.txtHistory.Text = frmPC2GSM.txtReceive.Text & vbCrLf & frmPC2GSM.txtHistory.Text Call frmPC2GSM.send_pdu End If End If If gStartReceive = True Then If gRecieveTime 10 Then gRecieveTime = gRecieveTime + 1 Else frmPC2GSM.txtHistory.Text = frmPC2GSM.txtReceive.Text & vbCrLf & frmPC2GSM.txtHistory.Text gStartReceive = False gRecieveTime = 10 If gHanziMessageStartSend = True Then Call frmPC2GSM.send_pdu End If End If End IfEnd Sub通信技术综合课程设计课程设计评语指导教师评语设计成绩备注
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1