![便携式气象数据采集系统的研究与实现_第1页](http://file3.renrendoc.com/fileroot_temp3/2021-12/3/c833b905-b788-4459-840e-b07cc0ad4455/c833b905-b788-4459-840e-b07cc0ad44551.gif)
![便携式气象数据采集系统的研究与实现_第2页](http://file3.renrendoc.com/fileroot_temp3/2021-12/3/c833b905-b788-4459-840e-b07cc0ad4455/c833b905-b788-4459-840e-b07cc0ad44552.gif)
![便携式气象数据采集系统的研究与实现_第3页](http://file3.renrendoc.com/fileroot_temp3/2021-12/3/c833b905-b788-4459-840e-b07cc0ad4455/c833b905-b788-4459-840e-b07cc0ad44553.gif)
![便携式气象数据采集系统的研究与实现_第4页](http://file3.renrendoc.com/fileroot_temp3/2021-12/3/c833b905-b788-4459-840e-b07cc0ad4455/c833b905-b788-4459-840e-b07cc0ad44554.gif)
![便携式气象数据采集系统的研究与实现_第5页](http://file3.renrendoc.com/fileroot_temp3/2021-12/3/c833b905-b788-4459-840e-b07cc0ad4455/c833b905-b788-4459-840e-b07cc0ad44555.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、硕士学位论文论文题目便携式气象数据采集系统的研究与实现研究生姓名刘文俊指导教师姓名施国梁专业名称通信与信息系统研究方向计算机通信论文提交日期2011年5月便携式气象数据采集系统的研究与实现 中文摘要便携式气象数据采集系统的研究与实现中文摘要在日常的生活以及工农业的某些生产过程中,通常需要对某个地域或者某些特定地点的温度、湿度、气压等气象信息有所了解。但传统的人工测量以及手工抄表的方式不仅费时费力,而且难免也有很大的误差。为了更为方便、快捷、准确地采集气象信息,开发更为良好的数据采集系统势在必行。本课题在总结现有研究的基础上,构建了一个便携式气象数据采集系统。通过该系统采集终端的温湿度传感器、气
2、压传感器以及GPS定位模块,测得当前的温湿度、露点、气压以及时间位置信息,在LCD液晶屏上实时显示出来,并经由GPRS模块发送到网络终端。网络终端通过创建数据库,构建WEB站点,完成对采集信息的呈现与管理。课题完成了采集终端的软硬件设计和网络终端的软件设计,并进行了硬件稳定性和软件功能的测试。经实验验证,该系统可以稳定地采集与管理气象信息数据,达到了预期的设计目标。该气象采集系统借助了微型计算机、通信、传感器等技术方面的发展优势而设计,对气象状况的监测不仅准确高效,而且其便携灵活的特点,也使得使用者操作得更为方便快捷。关键词:气象数据采集,GPS,GPRS,SQL数据库 作 者:刘文俊指导老师
3、:施国梁IAbstract On the Research and Realization of Portable Meteorological Data Collection SystemOn the Research and Realization of Portable Meteorological Data Collection SystemAbstractIn our daily life, and in the industry and agriculture production process, we need some meteorological informtions s
4、uch as temperature, humidity and barometric etc. However, the traditional methods, manual measurement and manual reading meter, not only make a waste of time and manpower, but also make some errors. So it is a must to develop a more advanced data collection system so as to collect the meteoralogical
5、 informations more conveniently,faster and accurately. In this thesis, a portable meteorological data collection system is proposed and developed. In this system, informations including temperature, humidity, dewpoint, barometric, time, location and so on, are collected by temperature/humidity senso
6、r, barometric sensor and GPS, real-time displaying in LCD, and sent to network center by GPRS. In the network center, the database and website are created and the collected informtions are taking on and managed by the website. Both hardware and software of the data collection terminal have been desi
7、gned. And the software of the network center has also been designed. The tests to prove the stability and performance of the complete system have also been given. Experimental results show that the system can collect and manage meteorological informtions stabilitily and achieve the expected goal.Met
8、eorological data collection system is designed and based on the advanced technology of MCU, communication, sensor and so on. So the meteorological informations are collected more accurately and efficiently. Whats more, it can be operated more conveniently by user for its portable characteristic.Keyw
9、ords: meteorological data collection,GPS, GPRS, SQL databaseWritten by: Liu WenjunSupervised by: Shi Guoliang目 录第一章绪论11.1 本课题的研究背景及选题意义11.2 国内外研究动态及发展前景11.2.1 国内研究动态11.2.2 国外研究动态21.2.3 发展前景21.3 本课题的研究内容与任务3第二章便携式气象数据采集系统硬件设计42.1 系统总体框架42.2 单片机及外围电路设计52.2.1 电源模块52.2.2 单片机模块62.2.3 串口扩展芯片电路设计72.3 温湿传感器
10、模块电路设计82.4 气压传感器模块电路设计92.5 GPS模块电路设计112.6 LCD显示模块电路设计122.7 GRRS模块电路设计12第三章便携式气象数据采集系统软件设计143.1软件设计总体框架143.2 串口模块程序设计153.2.1 SP2338编程原理153.2.2 SP2338串口程序设计163.3 LCD模块程序设计183.4 温湿度采集模块程序设计203.4.1 SHT11程序设计流程203.4.2 温湿度补偿及露点算法223.5 气压传感器模块程序设计233.5.1 MS5540编程原理243.5.2 气压采集算法及程序设计流程253.5.3 海拔高度的程序设计273.
11、6 GPS模块程序设计303.6.1 GPS编程原理303.6.2 GPS程序设计流程323.7 GPRS模块程序设计34第四章气象采集系统网络终端软件设计364.1 系统设计结构364.2 数据库设计374.2.1 设计数据库374.2.2 实现数据库384.3 数据访问层设计404.3.1 配置数据库连接414.3.2 Database类的设计424.4 数据访问接口层设计424.4.1 得到安全数据434.4.2 得到安全SQL语句444.5 Web 界面设计444.5.1 信息检索页面的设计444.5.2 信息统计页面的设计474.5.3 管理员登录页面的设计494.5.4 系统管理页
12、面的设计514.5.5 管理员注册页面的设计53第五章气象数据采集系统的系统调试与实验结果565.1 系统调试565.1.1硬件调试565.1.2软件调试585.1.3综合调试595.2 系统实验结果605.2.1采集终端实验结果605.2.2 WEB页面的设计结果635.3 系统可靠性与稳定性实验675.3.1 高温实验675.3.2 低温实验685.3.3 高湿实验705.4 系统性能分析72参考文献73攻读硕士学位期间公开发表的论文75附录一硬件设计电路图76附录二图片目录78致 谢81便携式气象数据采集系统的研究与实现 第一章 绪论第一章绪论1.1 本课题的研究背景及选题意义在人类生活
13、的地球周围,环绕着一层深厚的大气。大气的冷、暖、干、湿等物理状况和大气中发生的风、雨、雷、电等自然现象,统称为大气现象,简称为气象。研究大气现象的成因和大气运动变化的规律,以及这些现象、规律对人类影响的科学叫做气象学 薛伟民.当代中国的气象事业M.北京:中国社会科学出版社,1984.。气象科学是人类在与大自然作斗争的长期实践中产生的,是人类认识自然与改造自然的重要手段之一。气象学发展为现代科学不过是几百年的历史,因此,气象学是一门年轻的科学。气象与人类的关系密切,从日常生活到各种生产活动,无不直接或间接地受到气象条件的影响与制约。我国地域辽阔,天气气候复杂。只有充分认识、研究和掌握天气气候的变
14、化规律,才能利用有利的气象条件,使之造福于民。气象科学又与我们的生活息息相关,从防灾减灾、工农业生产、交通运输、城市规划、工程建设,到居家生活,出外旅行,处处都需要气象科学。及时准确的气象监测对于帮助我们科学地进行生产、生活安排、筹备具有非常重要的意义。而作为便携式的气象采集系统,更能够帮助我们随时随地了解当地的天气状况,以便能够及时地作出相应的调整。无论是个人旅行,还是车队运输,抑或是行军打仗,便携式的气象数据采集系统,在方便与快捷方面起着不可估量的作用。1.2 国内外研究动态及发展前景1.2.1 国内研究动态我国自动气象数据采集系统研制工作始于20世纪50年代后期,至今已经有了相当大的进展
15、。目前,国内有多个厂家生产自动气象站,如北京华创升达高科技发展中心和天津气象仪器厂的CAWS 系列、长春气象仪器厂的DYYZ II系列、江苏无线电研究所的ZQZ_C II系列、广东省气象技术装备中心的ZDZ II型和北京阿斯曼科技发展公司的ASM、XYZ系列。其中CAWS600、XYZ06以及机场地面气象观测自动化系统在军队和地方台站得到了广泛的推广和应用 高太长,刘西川,刘磊等.自动气象站及气象传感器发展现状和前景分析J.仪器仪表学报.2008年8月第29卷第8期增刊.127-33.。尽管如此,我国的气象采集系统仍然存在不少问题。首先,大部分自动气象站采用集中式结构,数据采集器必须与具体的传
16、感器匹配,系统开放性不高。其次,受技术水平和生产工艺的限制,国产传感器的准确性、可靠性较差,距世界先进水平还有一定的差距,气象传感器主要依赖进口。再者,国产自动气象站所采用的数据采集器大多与相应的自动气象站配套使用,当需要扩充自动气象站观测功能,增加新的气象要素传感器时,不能直接进行升级,必须更换,从而造成重复建设和资源浪费。1.2.2 国外研究动态国外的气象采集系统自上世纪50年代末以来,已经经历了三代的发展,特别是进入90年代以后,自动气象站在许多发达国家得到了迅速的发展。如美国的自动地面观测系统(ASOS),日本的自动气象资料收集系统(AMeDAS)、芬兰的自动气象观测系统(MILOS)
17、和法国的基本站网自动化观测系统(MISTRAL)等。目前,全世界的70多个国家和20多个地区和组织基本上都是使用芬兰VAISALA公司的气象产品进行气象观测,VAISALA公司自动气象站的代表系列是MAWS系列,目前在全球的大多数国家和地区使用的是MAWS201系列,该系列现已发展到了MAWS301、MAWS410系列 胡玉峰.自动气象站原理与测量方法M.北京:气象出版社,2004.。国外的自动气象站不仅拥有技术先进、精确稳定的气象传感器,而且还可以根据用户的不同需求定制传感器的种类和数量,采用通用的数据传输格式,用户能自由配置数据的输出格式。自动气象站采用良好的防护措施,能够适应各种不同的环
18、境。在装备使用的机动性、操作的便捷性、维修的快捷性、恶劣环境的适应性等方面都做得较好。1.2.3 发展前景通过国内外气象采集系统现状的对比,可以看到,国内的气象采集系统虽然有了较大的发展,但是与国外的发展水平相比,仍有较大的差距。因此,为了提高我国气象监测事业的整体水平,必须重点发展新一代自动气象站,对气象传感器、数据处理等关键技术进行改进。随着微型计算机、新一代通信技术以及新型传感器的不断推广与应用,我国的气象监测系统必然将转向微功耗、多功能、智能化、高精度、高可靠性方向发展,必将为我们的生产和生活提供更可靠,更详细的气象信息。1.3 本课题的研究内容与任务本课题讨论的便携式气象数据采集系统
19、由数据采集终端和上位机处理程序两部分组成。数据采集终端以深圳宏晶科技生产的STC89C58RD+单片机芯片为核心,设计一种多功能、低功耗数据采集器,不仅能完成对现场温湿度、气压等信息的采集与实时显示,而且还能将现场定位信息和采集信息进行远程传输。上位机程序则是在PC机上设计数据库,创建WEB站点,以完成对采集信息的存储与管理。要构建此便携式气象数据采集系统,本论文主要做了以下工作:首先对气象采集系统进行了硬件设计。对系统要实现的功能和系统的性能进行合理的构思和规划,选择满足功能需求的元器件、单元电路模块,然后进行原理图的绘制,PCB的制作以及电路板的焊接,并进行硬件调试,确保自己设计的电路系统
20、能够顺利的工作。其次是软件的设计。软件设计包括对数据采集器的编程以及上位机WEB站点的设计。通过对数据采集终端的编程,使其按照指定的采样周期,对温湿度、气压等信息进行采集、处理以及实时显示。上位机程序的设计则实现对采集信息的存储与管理。最后,对系统进行整体的测试与实验,给出运行结果及实验分析。35便携式气象数据采集系统的研究与实现 第二章 便携式气象数据采集系统硬件设计第二章便携式气象数据采集系统硬件设计2.1 系统总体框架本系统要实现的功能是采集大气的温度、湿度与气压信息,进行处理与实时显示,并把采集点的地理信息以及气象信息上传到网络中心,以便做到科学的存储与管理。所以,从实现的功能出发,系
21、统至少应该由温湿传感器(完成温湿度采集)、气压传感器(完成气压采集)、GPS(完成定位信息采集)、LCD(完成采集信息实时显示)以及GPRS(完成采集信息发送)等模块构成。其系统结构框图如图2- 1所示。图2- 1 系统结构框图从系统的结构框图上可以看出,本系统的硬件设计包括以下几个部分:STC单片机的基本外围电路设计,如电源管理、按键控制、晶振、复位、以及程序下载接口电路的设计。这是一个电路能够正常工作的最小系统,它的正常运作为整个系统的协同工作提供了最基本的保障。温湿传感器电路的设计,使其能够准确的采集大气的温湿度以及露点信息。气压传感器电路的设计,完成大气气压的监测,并在此基础上计算出当
22、地的海拔高度。GPS模块电路的设计,完成对监测地点的准确定位。LCD显示模块的电路设计,使其能够实时准确的显示出当地的气象信息及GPS定位信息。GPRS模块电路的设计,完成对监测信息的远程传输,上传到网络中心,以便更好的管理与分析。功能扩展模块,可以扩展CAN收发器接口以及其他气象采集传感器,以便系统的更新与升级。硬件电路为自己设计并制作,整体效果如图2- 2所示,本章第二节将对各个模块的实现要点进行详细介绍,扩展辅助模块如晶振、复位电路等也将在各个模块的介绍中一并讲述。图2- 2 气象采集系统硬件整体效果图2.2 单片机及外围电路设计2.2.1 电源模块系统只有正常的供电才能稳定的工作,所以
23、电源模块的设计尤为重要。由于各个单元电路供电电压不完全相同,其中单片机模块、温湿传感器模块、GPS、GPRS以及LCD显示模块的供电电压为5V,而GPRS发送模块以及气压传感器模块供电电压为3.3V,故电源电路的设计要兼顾各个部分的要求。图2- 3 电源电路图图2- 3为气象采集终端电源电路图,外部供电电压为5伏。电路给出了两种不同的供电方法:USB接口供电法和5伏电源插头供电法,以便更好的适应不同的工作场合。5伏到3.3伏的电平转换采用的是美国ADMOS公司生产的AMS1117稳压器Advanced Monolithic Systems, Inc.AMS1117 datasheetEB/OL
24、.http:/www.advanced- August 2009.。AMS1117系列稳压器具有功耗低、体积小、压差小等特点,符合本系统的设计思想,因此硬件设计时用它来进行电平转换。2.2.2 单片机模块由于数据采集终端的数据量并不是很大,也并不需要内嵌操作系统,所以可以尽量选用价格低廉,性能优越的单片机作为采集终端的控制核心。而宏晶科技生产的STC89C5XRC/RD+系列单片机 宏晶科技.STC89C51RC/RD+系列单片机器件手册EB/OL.,是高速、低耗、超强抗扰的新一代51系列单片机,指令代码完全兼容传统8051,但速度快于普通8051单片机。其工作频率范围是040MHz,相当于普
25、通8051的0MHz80MHz。另外其价格低廉,工作电压也与5伏供电电压完全吻合,无需电平转换即可稳定工作,所以STC89C5XRC/RD+系列的单片机完全符合本系统的设计要求。图2- 4 STC89C58RD+及其外围电路连接图如图2- 4所示,即是STC89C58RD+单片机以及包括滤波、复位、晶振在内的外围电路连接图。其中单片机两侧各连接了一排20针的插针,是为了方便调试与扩展其他功能。而8个LED灯的设计不仅能更好的反应单片机的数据接收与发送情况,也方便整个系统的调试与排错。同时为了增强系统交互功能,本系统设计了四个按键,配合LCD显示屏完成系统的操作与显示工作。另外,该单片机有一个显
26、著特点是使用时无需专用编程器/仿真器,可以通过串口(P3.0/P3.1)直接下载用户程序。然而GPS模块与GPRS模块也同时会用到串口接收、发送数据,STC89C58RD+单片机的一个串口明显不够用,所以要采用串口扩展芯片,再扩展出两个串口。本系统采用的是成都视普科技公司生产的SP2338串口扩展芯片。关于SP2338串口芯片的功能及电路设计在下一小节中详细介绍。2.2.3 串口扩展芯片电路设计SP2338采用低功耗CMOS工艺设计,它可轻松将单片机原有的一个UART串行口扩展成3个全新的全双工UART串行口 成都视普科技有限公司.SP2338数据应用手册EB/OL.(3个子串口的波特率最高可
27、达9600bps,所有UART串行口可同时独立接收数据和发送数据)。与其他多串口单片机及UART扩展专用集成电路相比,SP2338不仅具有宽工作电压、低工作电流、高工作速率、输出误差小等工作特性,而且使用简单,价格低廉,开发周期短,与本系统的设计思想完全吻合,故本系统采用其作串口扩展芯片进行电路设计。图2- 5 SP2338电路原理图SP2338电路原理图如图2- 5所示,其中,ADRI0、ADRI1管脚为SP2338的输入地址线,用来确定单片机向SP2338的哪个子串口发送数据,本系统将其分别连入单片机的P25、P26管脚。ADRO0、ADRO1管脚为SP2338的输出地址线,用来确定SP2
28、338的哪个子串口向单片机发送数据。OSCI、OSCO为SP2338正常工作的时钟电路,本系统在此接入20MHz的晶振。RX0TX0、RX1TX1为SP2338的子串口,分别与GPS、GPRS模块的串口相连。RX3TX3为SP2338的母串口,与单片机的串口(P3.0/P3.1)相连。而RX2TX2也为SP2338的子串口,由于本系统并没有用到,所以将RX2与VCC相连,TX2管脚悬空。2.3 温湿传感器模块电路设计温湿传感器模块完成大气中温湿度信息的采集。为了使设计的温湿度采集电路精度高,误差小,同时为了加强系统的集成性,减少系统的额外开销,本系统采用瑞士Sensirion公司生产的SHT1
29、1数字温湿度传感器 Sensirion Corporation. SHT1x (SHT10,SHT11,SHT15) datasheetEB/OL. 2010.进行大气温度与湿度的测量。每个SHT11传感器都在极为精确的湿度校验室中校准过,校准系数以程序的形式存储在OTP内存中,因此,采用其设计的温湿度采集电路具有品质卓越、超快响应、抗干扰能力强等优点。SHT11传感器芯片正常工作必须连接好四个管脚:VCC,GND ,SCK以及DATA管脚。VCC管脚给芯片供电,GND管脚接地,SCK管脚用于微处理器与SHT11之间的信号同步,DATA管脚用于向单片机输出采集数据。具体的设计电路如图2- 6。
30、图2- 6 SHT11接口电路l 电源引脚SHT11供电电压为2.45.5V。传感器上电后,要等待11ms以越过“休眠”状态。在此期间无需发送任何指令。电源引脚(VDD,GND)之间增加一个100nF的电容,是为了达到去耦滤波的作用。l 串行时钟输入(SCK)SCK用于微处理器与SHT11之间的通讯同步。由于接口包含了完全静态逻辑,因而不存在最小SCK频率。本系统将其连接于单片机的P16管脚。l 串行数据(DATA)DATA三态门用于数据的读取。DATA在SCK时钟下降沿之后改变状态,并仅在SCK时钟上升沿有效。数据传输期间,在SCK时钟高电平时,DATA必须保持稳定。为避免信号信号冲突,微处
31、理器应驱动DATA在低电平。本系统将其连接于单片机的P17管脚,并用一个外部上拉电阻将信号提拉至高电平。2.4 气压传感器模块电路设计气压传感器模块电路的设计完成气压数据的采集。经过综合考虑,本系统采用瑞士Intersema公司生产的MS5540C数字气压传感器 Intersema Corporation.MS5540C datasheetEB/OL.ersema.ch/products/documentation/datasheets/doc/41/raw, July 2010.。它是由压阻传感器和A/D传感器混合组成的一个表贴器件,可以提供16比特的气压值和一个温
32、度值。MS5540C模块提供了6个补偿系数,通过软件设计可以精确地计算出传感器的气压值。MS5540C的管脚定义如表2- 1所示:表2- 1 MS5540C的管脚定义管脚序号管脚名称方向功能1GND地芯片的地2SCLK输入串行接口的时钟3DOUT输出串行接口输出数据端4DIN输入串行接口输入数据端5MCLK输入工作时钟6VDD电源芯片电源7PEN输出编程使能8PV电源编程负电压其中,MCLK为MS5540C主时钟,频率为32.768kHz;SCLK为串行总线时钟,最高频率为500kHz;DIN为串行数据输入引脚;DOUT为串行数据输出引脚。图2- 7 MS5540C接口电路图MS5540C的接
33、口设计电路如图2- 7所示。由于MS5540C供电电压为3.3V,而单片机的供电电压为5V,所以增加了一个5V到3.3V的电平转换电路。气压传感器的主时钟MCLK则由频率为32.768kHz的有源晶振提供。有源晶振与无源晶振相比,不需要CPU的内部振荡器,信号质量好,比较稳定,而MS5540C对时钟的要求也较高,所以采用有源晶振较为合适。串行口时钟SCLK则连接于单片机的P20口,最高频率为:500kHz;串行数据输入口DI连接于单片机的P21口,串行数据输出口DO连接于单片机的P22口。SCLK、串行数据输入DI和串行数据输出DO组成串行口的读写时序,得到气压传感器的数据。2.5 GPS模块
34、电路设计为了使设计的GPS电路集成度高、定位精准,本系统采用的是天祥电子公司生产的GPS模块进行电路设计。该模块采用瑞士u-blox公司的NEO-5Q主芯片 U-blox Corporation.NEO-5 datasheetEB/OL.http:/www.u- February 2009.,成本低,体积小;采用最新的KickStart微弱信号攫取技术,提高了系统的定位速度与定位性能。GPS模块电路的工作原理是:当系统上电后,GPS模块会通过固化在其主芯片里的程序,每隔一定的时间,将采集信息以某种特定的格式发送至单片机的串口。单片机接收到该字符串后,通过程序处理将定位信息提取出来,以用户容易理
35、解的格式呈现在LCD显示屏上。因此GPS模块的电路设计主要完成GPS模块串口与单片机串口的正确连接。具体的电路设计如图2- 8。图2- 8 GPS接口电路图图2- 8为GPS接口设计电路图。从图中可以看出,NEO-5Q还支持USB,IIC,SPI接口。由于本系统采用串口通信方式采集定位信息,所以其他接口并未连出。另外由于单片机的串口资源有限,本系统采用SP2338串口芯片扩展了两个串口,GPS串口管脚TXD1RXD1分别连于SP2338的RX0TX0子串口。NEO-5Q的供电电压为3.3伏,所以本系统采用AMS1117-3.3进行了电平转换。在VCC_RF管脚与天线接口之间连接一个电阻和电感的
36、串联电路,是利用电感的通直流阻交流特性,滤去电路中的高频及尖峰脉冲,达到抗干扰的目的。2.6 LCD显示模块电路设计LCD模块电路设计主要完成LCD模块VDD,VSS,RS,R/W,E,DB0DB7,PSB等管脚的电路连接。LCD正常工作除了必需的供电与接地外,还必须接受相应的命令驱动。RS管脚和DB0DB7管脚配合完成数据/命令的选择和输入/输出,PSB管脚则完成数据模式的选择。所以,电路正常工作,必须完成这些管脚的正确连接。具体的电路设计如图2- 9。图2- 9 LCD显示模块接口电路图图2- 9为LCD显示模块接口电路图。由于本系统采用的是8位并行连接方式,所以RSRWE管脚分别连入单片
37、机的P10P11P12,以进行数据/命令的选择、读/写信号的控制以及使能信号的输出。D0到D7代表8路并行数据信号,分别连入单片机的P00到P07管脚。另外,该液晶模块的供电电压为5V,可以直接与单片机电源管脚相连,不需另行设置电平转换电路。2.7 GRRS模块电路设计为了缩短开发流程,加快开发进度,本系统采用永强电子生产的sim300开发板进行GPRS模块的电路设计。该模块内嵌TCP/IP协议族 谢希仁.TCP/IP协议族M.北京:清华大学出版社,2006,6.,所以选用该开发板的好处是,可以直接使用AT指令控制GPRS工作,以完成对采集信息的发送。由于sim300自身携带供电电源,且该模块
38、是通过串口来接受AT控制指令的,所以在制作系统开发板时,只需在板子上设计GND、RXD、TXD这三个插排,就可以与sim300配套相连,进行正常的通信,电路设计简化许多。具体设计如图2- 10所示。图2- 10 GPRS接口电路图如图2- 10,GPRS的TXD/RXD管脚与串口扩展芯片SP2338的子串口RX1/TX1相连,GND接地就可以正常工作。由于sim300内嵌TCP/IP协议族,使用时,只需通过串口发送AT指令,就能控制GPRS进行数据的收发,不需细究具体的通信协议,又进一步缩短了开发流程,为下一步的开发工作节省了宝贵的时间。便携式气象数据采集系统的研究与实现 第三章 便携式气象数
39、据采集系统软件设计第三章便携式气象数据采集系统软件设计如前所述,系统由温湿传感器模块、气压传感器模块、GPS模块、LCD模块、GPRS模块等部分组成,那么软件设计也要相应得分为温湿度采集程序模块、气压采集程序模块、GPS定位采集程序模块、LCD显示程序模块以及GPRS程序发送模块。整个软件的设计思路是:当电源上电后,各模块初始化程序开始初始化,初始化完毕后,LCD显示初始化完毕信息,同时各模块开始采集数据。然后按着屏幕提示,按相应的翻页键,显示相应模块的采集信息,按发送键,GPRS将采集信息发送给网络中心。整个软件设计过程中,由于GPS和GPRS都要用到串口来采集和发送数据,所以串口中断程序的
40、合理设计,是各个程序模块协调运行的关键所在。3.1软件设计总体框架气象采集程序设计流程如图3- 1所示,程序从主程序入口点开始,依次执行串口初始化程序,LCD初始化程序,SHT11初始化程序,MS5540C初始化程序,GPS初始化程序以及GPRS初始化程序。紧接着进行一个判断,如果初始化完毕,各模块开始进行数据采集并循环扫描按键动作,如果没有,返回程序入口点,继续进行初始化。其中串口初始化程序,完成串口工作模式的设置,波特率的设置,定时器的设置与开启,总中断以及串口中断的开启。按键动作增强了系统的交互能力,按K1键进行GPS第一页面的显示,按K2键进行GPS第二页面的显示,按K3键进行温度、湿
41、度、露点、气压的显示。按K4键,启动GPRS,将采集信息发送到网络中心。图3- 1 采集终端软件设计流程图如图3- 1即为采集终端软件设计流程图。本程序设计采用模块化的设计思想,将每一个要实现的功能作为一个独立的子程序来编写,然后在主程序中调用这些子程序,以实现各个功能。这样使得整个程序设计结构紧凑,清晰明了,不仅移植性强,也便于系统调试。下面这些小节中,将一一介绍这些模块的程序实现。3.2 串口模块程序设计如前章所述,由于GPS和GPRS模块都要用串口收发数据,而STC单片机只有一个串口,这就造成了资源的短缺。本系统通过SP2338串口扩展芯片,解决了这一问题,所以对SP2338串口芯片的编
42、程,成为GPS和GPRS正常工作的关键所在。3.2.1 SP2338编程原理SP2338母串口和所有子串口内部都有独立的数据发送缓冲存储器和接收缓冲存储器,并且所有UART串行口都支持全双工异步传输模式即所有串行口都可以独立接收和发送数据且不会丢失任何数据。母串口波特率:K1 = 1920 * Fosc_in,子串口波特率:K2 = 480 * Fosc_in(Fosc_in按照“MHz”计算,且Fosc_in<=20.0MHz)。母串口和所有子串口都是TTL电平接口,可直接与其他单片机或TTL数字电路匹配。上位机通过改变ADRI1、ADRI0地址线状态的方式选择3个子串口的任意一个,3
43、个子串口的地址分别为:“00”,“01”,“10”。地址“11”用于执行SP2338芯片本身的“复位指令”、“睡眠指令”、“延时指令”以及“喂狗指令”等。上位机向“11”地址发送“0X00”,是一条延时指令,也可以认为是一条“NOP”指令,用于确定上位机什么时候可以向某个子串口发送下一字节数据。3.2.2 SP2338串口程序设计SP2338串口程序设计分为串口发送程序和串口接收程序两部分。设计串口发送程序时,单片机首先通过I/O口写子串口地址ADRI0及ADRI1,然后将欲发送的数据发送至SP2338母串口RX3。当单片机向两个子串口分别发送数据时,可以先分别向两个相应的子串口发送一个字节数
44、据,再执行3条“NOP”指令,再分别将数据的下一个字节发送的两个子串口,依次循环。程序设计流程如图3- 2。设计串口接收程序时,单片机从SP2338的母串口TX3接收数据,并根据ADRO0及ADRO1的状态判断接收到的数据来自哪个子串口。然后将接收到的数据存入相应的数据缓存区。程序设计流程如图3- 3。图3- 2 串口发送设计流程图图3- 3 串口接收设计流程图如图3- 2及图3- 3为串口的发送与接收设计流程图。本设计将其放在串口中断程序里实现。GPS通过串口中断向单片机发送数据,而GPRS通过串口中断接收单片机发送过来的数据。由于只有在串口发送缓冲区为空的情况下,串口才能发送数据,所以在串
45、口初始化程序中,除了完成中断的开启外,还要将各个子串口的发送缓冲区清零。具体的串口中断程序,会在后续的章节中介绍。3.3 LCD模块程序设计LCD模块程序设计是针对LCD模块进行编程,以驱动LCD进行采集信息的显示。当单片机向LCD发送控制命令的时候,需要对LCD写入命令字,而当LCD显示字符信息的时候,则是向LCD读取数据,所以在编写LCD显示程序时,首先应该了解LCD模块的读写时序 长沙太阳人电子有限公司.SMG12864G2-ZK器件手册EB/OL. 2011,3.。单片机写资料到模块:图3- 4 写命令数据时序图单片机从模块读出资料:图3- 5 读命令数据时序图如图3- 4及图3- 5
46、为LCD写命令数据时序图和读命令数据时序图。本设计中当向LCD写命令和字符时,需要参照写命令数据时序,当读取LCD的忙状态时,需要参照读命令数据时序。在LCD显示模块程序中,主要定义了LCD读忙状态子程序、写命令字子程序、读命令字子程序、LCD初始化子程序、设定显示位置以及显示一行字符子程序。当模块在接受指令前,微处理器必须先确认模块内部处于非忙碌状态,即读取忙状态BF标志时,BF需为0,方可接受新的指令;如果在送出一个指令前并不检查BF标志,那么在前一个指令和这个指令中间必须延迟一段较长的时间,即是等待前一个指令确实执行完成。本文,设计了一个Lcd_Busy()子程序,完成LCD忙状态的读取
47、。根据读命令数据时序图3- 5,子程序中,首先将RS选择端拉低,R/W管脚拉高,以表示读命令,然后将E管脚拉高,以启动读命令时序。延时一段时间,接着将P0口和0x80相与赋给结果result,最后清除使能信号,将结果result返回。程序根据返回的结果,判断LCD是否处于忙碌状态。写命令与写数据分别由Lcd_WriteCmd(uchar cmd)和Lcd_WriteDat(uchar dat)子程序实现。它们的程序结构基本相同,不同点在于RS的值,当RS=1时,表示写数据,当RS=0时,表示写命令。在程序开始时,它们同样要将RW管脚拉低,以表示写命令数据。关闭使能,延时,将数据命令赋给P0口,
48、延时,开启使能,将数据写入,最后关闭使能。LCD初始化程序由Lcd_Init()程序完成。在程序开始时,将PSB管脚拉高,以表示选择并口连接方式。接着写命令字0x34,表示开启扩充指令操作,写命令字0x30,开启基本指令操作,写命令字0x0C,显示开启,光标关闭,写命令字0x01,清除LCD显示内容。当要LCD显示汉字和字符时,除了要了解写命令数据程序外,还需要了解LCD的显示坐标。在程序设计时,本文主要用到了汉字显示坐标,如表3- 1所示。表3- 1 LCD汉字显示坐标X坐标Line180H81H82H83H84H85H86H87HLine290H91H92H93H94H95H96H97HL
49、ine388H89H8AH8BH8CH8DH8EH8FHLine498H99H9AH9BH9CH9DH9EH9FH参照表3- 1,本文编写了Lcd_SetPos(uchar X,uchar Y)程序及Lcd_DispLine(uchar line, uchar pos, uchar *str)程序来设定显示位置及显示一行字符。当X=0时,令X=0x80;当X=1时,令X=0x90;当X=2时,令X=0x88;当X=3时,令X=0x98,具体的位置及为X+Y的值。由此可见,X表示LCD显示的行位置,Y表示LCD显示的列位置。显示一行字符就是首先调用位置设定函数,确定显示位置,然后依次写入字符串的
50、每个字符,直到字符串结束为止。如上介绍即是LCD程序模块所完成的程序编写,将这些函数的声明写进LCD.h头文件中,以便主程序模块及其他程序模块调用。3.4 温湿度采集模块程序设计温湿度采集模块程序设计是针对瑞士Sensirion公司生产的SHT11数字温湿度传感器进行编程,使其兼有温湿度采集以及露点测量功能。3.4.1 SHT11程序设计流程在对SHT11编程时,首先要完成SHT11的初始化工作,以便使温湿传感器的数据端口处于复位状态。接着进行温度与湿度信息的采集,一次采集结束后,进行一次判断,如果采集正确,则根据采集的信息对温、湿度以及露点进行补偿计算,以获得正确的结果,否则,返回重新进行初
51、始化。整个程序设计流程如图3- 6。图3- 6 SHT11程序设计流程SHT11初始化程序是通过一个for循环语句将数字0者1赋给DATA数据端口以及SCK数据端口,以模拟SHT11初始化时序,如图3- 7。图3- 7 SHT11初始化时序图温湿度采集程序设计则是通过编写程序将启动传输命令、地址位命令以及温湿度测量命令赋给DATA和SCK数据端口以开始采集温湿度信息,然后等待测量结束后,将测量到的两字节数据及奇偶校验数据依次赋给DATA数据口。单片机通过读取DATA数据口,就可以获得温湿度采集信息了。温湿度程序的设计其实便是用程序模拟如图3- 8所示的温湿度采集时序。图3- 8 SHT11湿度
52、采集时序图当通过温湿度采集程序获得温湿度信息后,还需要通过补偿算法的计算才能得到正确的温、湿度以及露点信息。具体的算法在下一节中详细介绍。3.4.2 温湿度补偿及露点算法为了补偿湿度传感器的非线性以获取准确数据,使用公式(3.1)修正输出数值: (3.1)温度转换系统如表3- 2:表3- 2 温度转换系数表SORHc1c2c312bit-40.0405-2.8*10-68bit-40.648-7.2*10-4实际测量温度与25相差较大时,应考虑温度传感器的温度修正系数,如公式(3.2) (3.2)表3-2 温度补偿系数表SORHt1t212bit0.010.000088bit0.010.00128SHT11是由能隙材料PTAT(正比于绝对温度)研发的温湿度传感器,因此,测量的温度具有极好的线性。可以用公式(3.3)将数字转换为温度值: (3.3)温度转换系数表如表3- 3。表3- 3 温度转换系数表VDDd1d1SOTd2d25V-40.00-40.0014bit0.010.0184V-39.75-39.5512bit0.040.0723.5V-39.66-39.393V-39.60-39.282.5V-39.55-39.19SHT11除了能够准确的测量温度与湿度外,还兼有露点测量的功能。虽然露点值并不是SHT11直接测量得到,但可以通过温度和湿
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 我的拿手好戏弹钢琴作文
- 2025年食品安全管理师理论考试复习题库(含答案)
- 2025年江西枫林涉外经贸职业学院高职单招职业适应性测试近5年常考版参考题库含答案解析
- 2025年江苏商贸职业学院高职单招语文2018-2024历年参考题库频考点含答案解析
- 《税收管理业务指导》课件
- 专题04:人称选用(练习)
- 食品工厂卫生作业内容
- 蔬菜基地租赁承包合同范本
- 物业招标合同书
- 建筑消防系统技术服务合同
- 2025年华侨港澳台学生联招考试英语试卷试题(含答案详解)
- 2024-2025学年北京石景山区九年级初三(上)期末语文试卷(含答案)
- 第一章 整式的乘除 单元测试(含答案) 2024-2025学年北师大版数学七年级下册
- JD37-009-2024 山东省存量更新片区城市设计编制技术导则
- 中国高血压防治指南(2024年修订版)
- 北京市海淀区重点中学2025届高考数学押题试卷含解析
- GB/Z 44765.3-2024用户端能源管理系统和电网侧管理系统间的接口第3部分:架构
- 《春酒》琦君完整版
- 北师大版(2024新版)七年级上册数学第四章《基本平面图形》测试卷(含答案解析)
- 湖南省邵阳市武冈市2024届高三上学期期中考试地理含答案解析
- 春节后复工安全教育培训考试试题及答案
评论
0/150
提交评论