毕业论文(设计)
题 目 基于 iOS 的气象传感网信息发布系统设计与实现
学生姓名
杨蓉
学
学
专
号
20101308015
院 计算机与软件学院
业 计算机科学与技术
指导教师
王保卫
二O一四 年 五 月 二十 日
声
明
本人郑重声明:
1、 持以“求实、创新”的科学精神从事研究工作。
2、 本论文是我个人在导师指导下进行的研究工作和取得的
研究成果。
3、 本论文中除引文外,所有实验、数据和有关材料均是真
实的。
4、 本论文中除引文和致谢的内容外,没有抄袭其他人或其
他机构已经发表或撰写过的研究成果。
5、 其他同志对本研究所做的贡献均已在论文中作了声明并
表示了谢意。
作者签名:
日
期:
目 录
1 绪论 ................................................... 3
1.1 研究背景 ..............................................................3
1.2 国内外研究现状 ........................................................3
1.3 研究目的及意义 ........................................................4
2 系统相关技术 ........................................... 4
2.1 iOS 操作系统 ..........................................................4
2.2 Xcode ................................................................ 5
2.3 Objective-C 语言 ......................................................6
2.4 设计模式 ..............................................................6
2.5 气象传感器网络 ........................................................7
3 系统概要设计 ........................................... 8
3.1 需求分析 ..............................................................8
3.2 系统模块设计 ..........................................................9
4 详细设计与实现 ........................................ 10
4.1UI 设计与实现 .........................................................10
4.2 数据的请求和解析 .....................................................11
4.2.1 数据请求 .......................................................11
4.2.2 数据解析 .......................................................13
4.3 菜单选择 .............................................................16
4.4 地图查看节点 .........................................................18
4.4.1 百度地图的管理 .................................................18
4.4.2 添加百度地图标注 ...............................................19
4.5 节点实时信息发布 .....................................................21
4.6 节点历史信息发布 .....................................................22
5 系统测试 .............................................. 24
5.1 功能测试 .............................................................24
5.2 健壮性测试 ...........................................................25
6 总结与展望 ............................................ 25
参考文献: .............................................. 26
I
致谢 .................................................... 27
II
基于 iOS 的气象传感网信息发布系统设计与实现
杨蓉
南京信息工程大学计算机与软件学院,南京 210044
摘要:近年来,随着极端天气的出现,获取准确快捷的气象信息和数据、建设气象信息发布
平台势在必行。本文针对这一需求设计并实现了基于 iOS 的气象传感网信息发布系统。该系
统通过对传感器网络中的节点数据的处理,实现了在百度地图上对传感器网络中的节点空间
分布的查看,利用可视化的图表,在时间上展示了节点的实时气象数据与历史数据。数据从
远程服务器实时获取,并可实时刷新,能够直观地看出观测数据的变化,满足用户实时获取
气象信息的需求。该系统采用 C/S 结构,以 iOS 作为系统开发和运行环境,使用 Objective-C
编程语言、Xcode 开发工具进行设计,系统的数据均来自专业的气象传感网。
关键字:iOS;气象信息;传感器网络;百度地图
1
The Design and Implementation of Meteorological Sensor
Network Information Issuing System Based on iOS
Yang Rong
School of Computer and Software,NUIST,Nanjing 210044,China
Abstract:In the last few years,to get the meteorological information and data accurately and
quickly,building the platform of meteorological information issuing is imperative with the
happening of extreme weather.According to this demand,this article expounds the design and
implementation of meteorological sensor network information issuing system based on iOS.By
dealing with the data of the nodes in the sensor network,the system finished looking over the
spatial distribution of nodes in the sensor network on Baidu Map and using visual charts to show
the meteorological data and historical data in time.The data is from the remote server and we can
refresh it in real time,the user can see the change of data intuitively.The system uses C/S
structure,using iOS as the system development and operation environment,and uses Objective-C
programming language with Xcode development tools for the design.The data of the system all
from the professional meteorological sensor network.
Key words:iOS;meteorological information;sensor networks;Baidu Map
2
1 绪论
1.1 研究背景
气象信息是人类社会生产和生活中必不可少的一部分,它对工业、农业甚至航空业等都
有着重大的影响。随着全球气候变暖、温室效应的加剧,各种极端天气,如高温、干旱、雾
霾、暴雨、洪涝、热浪等也频繁出现,这些极端天气的发生给人类社会、经济发展、国家和
人们的生产生活都造成了巨大的损失。我国是自然灾害频发的国家之一,为了避免极端天气
带来的危害,降低损失,及时做好防御工作,越来越多的人开始关注气象信息的变化。方便
快捷地获取精准的气象观测信息、气象信息的实时发布与传播是防灾减灾和减少伤亡和损失
的重要手段,在应对气候变化方面发挥着积极的作用。
随着信息技术的飞速发展,移动互联网也变得越来越强大,各种移动设备也走进了大众
的生活。手机以其方便快捷的特点在这一领域独占优势,人们不再受空间、设备、距离等条
件约束就能够获得无线通信服务,iPhone 手机更是以其简约的设计和强大的功能受到大众的
追崇。
气象传感器网络是将传感器网络技术运用于气象观测的一种分布式的网络系统。传感器
网络在固定区域内设置一定数目的网络节点,这些节点都配备有一个或多个传感器,例如气
象传感器网络一般会配有温度、湿度、降雨量、风速、风向、大气压、光照等传感器,节点
之间共同协作,采集传感器获取的数据并处理和分析。与传统的气象观测设备相比,气象传
感器网络的数据采集具有成本低、效率高、数据精确等特点,在未来的气象事业方面具有潜
在的发展前景。
为了满足越来越多的 iPhone 用户、充分利用气象传感器网络的优势,建设基于 iOS 的气
象传感网信息发布系统势在必行。
1.2 国内外研究现状
随着气象信息服务的迅速发展,气象信息发布的形式也趋向于多向化。就国内而言,中
国拥有几大权威的气象信息发布网站,如:中国气象网、中国天气网等,这些网站为公众提
供了权威的天气气象信息获取平台,它能够实时发布和刷新天气状况、气象预警以及台风、
暴雨雪等气象灾害的具体情况,为人们的生产生活提供全方面的气象信息服务。除了网站,
手机也提供了更加快捷的渠道。手机用户可以拨打天气咨询电话查询天气情况和预报或者利
用手机客户端软件来查询气象信息,如中国天气 2.0.2 For iPhone、墨迹天气等软件。此外,还
有一些比较常见的形式,如广播、收音机、LED 显示屏等气象信息接收显示设备,气象信息
的发布也越来越自动化。
目前,发达国家的气象信息发布主要通过网络、手机和媒体等方式完成。如在加拿大,
3
气象信息服务是由天气网络 TWN(The Weather Network)提供的,其国内很大部分天气信息
数据的获取都来源于该网络,人们根据这些气象信息安排自己的出行和工作。而在美国,美
国海洋和大气管理局 NOAA(National Oceanic and Atmospheric Administration)负责向公众提
供无偿的气象信息服务和天气预警。同时,美国的天气气象信息服务不仅是天气预报,人们
还可以从网上下载免费的原始数据,其中,预测数据总会提前一周公布并且每小时刷新一次。
美国还提供了一套手机短信气象信息服务,在需要天气预警时,美国政府会根据用户手机与
信号塔之间的交互判断用户是否在受灾范围内,如存在则发送预警短信,该体系不仅能够及
时成功地进行天气预警,降低灾难损失,而且能够避免垃圾短信给公众带来的困扰。
1.3 研究目的及意义
气象信息发布系统是提供气象信息服务的手段和方法,为天气预警预报、气候变化研究
等气象发展奠定了基础。传统的气象观测数据总是依赖于电缆传输,虽然这样的有线传输方
式使得气象数据的采集能够很好的实现,但是,也面临着设备成本高、电缆铺设困难和维修
繁琐等问题。本设计采用无线传感器网络进行气象数据的采集和监测,因其具有成本低、效
率高、不受地理因素影响等特点,能够很好的解决有线方式下存在的问题。本系统中气象传
感器网络节点均采用专业的气象监测设备,数据采集达到专业气象服务的标准,可以通过布
置兴趣节点关注该地理位置的具体气象信息及其变化。同时,该系统还改善了在没有电脑的
情况下进行气象信息查询的方式,能够不受时间、地点、位置、设备等客观条件的限制,使
得获取气象信息更加方便、简单,更为日益增多的 iPhone 用户提供了一个更加快捷高效的平
台。
2 系统相关技术
2.1 iOS 操作系统
iOS 操作系统(原命名为 iPhone OS,2010 年正式更名为 iOS)是苹果公司在 2007 年推出
的一款手持移动设备操作系统。iOS 同样是一款类 Unix 的操作系统,该操作系统约占内存
240MB 空间,处理器速度极快。最新的 iOS 版本是 2014 年 4 月 23 日发布的 7.1.1 版本。本文
采用的是 2013 年 9 月 18 日发布的 7.0 正式版。
相比于前几个版本,iOS7 操作系统具有更加绚丽多彩的界面、强大的内置功能和超强的
稳定性,新增加的共享处理、多任务处理以及车载功能使该系统变得更加快捷方便和智能,
更受广大用户的青睐。iOS 系统架构按照各自的功能服务可以分成四个层次:Cocoa Touch 层
(轻触层)、Media 层(媒体层)、Core Services 层(核心服务层)、Core OS 层(核心操作系统
层)[1]。如图 2.1 所示,iOS 架构从上往下看是设备硬件和应用程序的接口,下层为上层提供
基础和服务,各个层次都包含了一些复杂的技术和功能,也提供了一些应用程序开发框架。
4