基于安卓的无线传感温室监控系统的研究与应用——毕业论文_第1页
基于安卓的无线传感温室监控系统的研究与应用——毕业论文_第2页
基于安卓的无线传感温室监控系统的研究与应用——毕业论文_第3页
基于安卓的无线传感温室监控系统的研究与应用——毕业论文_第4页
基于安卓的无线传感温室监控系统的研究与应用——毕业论文_第5页
免费预览已结束,剩余89页可下载查看

下载本文档

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

文档简介

摘要 分类号 密 级 UDC 全日制硕士专业学位研究生学位论文全日制硕士专业学位研究生学位论文 基于安卓的无线传感温室监控系统的研究与应用基于安卓的无线传感温室监控系统的研究与应用 作作 者者 姓姓 名:名: 指指 导导 教教 师:师: 教授教授 专业学位名称:专业学位名称:农业推广硕士农业推广硕士 领领 域域 名名 称称 :农业机械化农业机械化 研研 究究 方方 向向 :农业电气化工程农业电气化工程 所所 在在 学学 院院 : 工程学院工程学院 论文提交日期:论文提交日期: 浙 江 农 林 大 学 年 月 日 摘要 摘摘 要要 传统搭载于电脑端的智能温室存在着造价昂贵,系统复杂不灵活,软件集 成度低,用户体验差等不足。为此本文提出了一种基于 Android 平台的无线传 感温室监控系统。 系统设计包括数据管理、设备管理、软件设置以及信息发布四大部分。分 别有数据图表、环境评分、专家指导、视频及拍照监控、无线设备控制、用户 管理、推送管理、系统升级以及信息发布等主要功能点。 温室环境因子数据由部署在温室内的传感节点采集,通过 ZigBee 网络经底 层无线传感网络传输至云服务器数据库内,最终实现在 Android 客户端上的数 据可视化,实现远程客户端查看温室内各项环境参数的实时数据及历史数据。 在线视频功能中,温室内的图像信息由高清网络摄像头采集,信号传输稳定图 像清晰占用带宽小,能够实现在 3G 网络带宽下即可清晰监控作物长势及病虫 草害情况。功能丰富实现有语音对讲、拍照、录像等功能。 通过 Okhttp 等方法实现数据库的管理,最终温室内智能设备能够通过屏幕 按钮点击实现远程控制,基于语音识别听写功能实现了通过语音与数据库进行 交互式管理进而实现远程控制温室内智能设备。为了能够实现更多接口还具有 二维码扫描功能,实现丰富的外部接口和功能。系统设置模块中能够开关系统 后台推送消息以及检查版本更新情况,方便用户对本应用进行管理。 系统软件还进行了兼容性测试及性能测试,测试结果符合实际使用要求。 两百款机型测试得出系统兼容性为 100%,安装打开速度快,内存和 CPU 占用 率低。为了确保数据的稳定性,在项目地多次实地测试数据稳定收发情况。测 试得出系统数据丢包率低于 0.6,稳定性满足系统实际温室生产要求。 关键词:关键词:ZigBee,Android,无线传感,语音识别。 ABSTRACT ABSTRACT Traditional computer-side intelligent greenhouse has many shortage such as cost expensive, system rigid, low software integration, poor user experience. This paper presents a kind of sensor network and intelligent management based on the Android platform of the intelligent greenhouse monitoring system. System design including data management, equipment management application Settings and information release. Provide data chart, environmental rating, expert guidance, video and picture monitoring, a wireless device control, user management, delivery management, system upgrades, and the main function such as information release point. The wireless sensor nodes gather the environment factors in the greenhouse, through ZigBee wireless sensor network transmission to the server, finally achieved the data visualization on the Android client. The system achieve the remote client to view the greenhouse environment date in real- time and inquire the historical data. Through the Online video surveillance function, the image information catched by HD-Webcam which established in greenhouse. The Signal transmission stabilizing image information in Low-Flow situation, achieved under the 3g-network can be clear monitoring crop condition and situation. Function rich implement a voice intercom, photos, video, and other functions. Through the developing tools such as Okhttp-tool administer the database, achieved the intelligent greenhouse device remote control by android equipment screen click. Based on speech recognition dictation function achieved by using voice information and database management remote control the intelligent devices. In order to achieve more interface also provided the QR-code scanning function. System settings module can switch push and version update checking. Do more user friendly to this application. System application also has carried on the compatibility and performance testing. According the test results explain the application meet the requirements. Two hundred types Two hundred models of the test android equipments compatibility is 100%, install and open speed quickly, low memory and CPU occupied. In order to ensure the stability of the data, in the project to field test data transceiver is stable for many times. Testing system data loss rate less than 0.6, the stability of system actual greenhouse production requirements. Key words: ZigBee ; Android ; Wireless Sensor ; Speech Recognition 目录 目 录 摘 要.I ABSTRACT II 1 绪论1 1.1 选题背景.1 1.2 国内外研究现状.2 1.2.1 国外研究现状2 1.2.2 国内研究现状3 1.3 课题研究目的和意义.4 1.4 课题优势与面临困难.5 1.5 论文主要内容及章节安排.6 2 系统的相关技术理论8 2.1 引言.8 2.2 Android 系统8 2.2.1 Android 系统概述.8 2.2.2 Android 系统构架.8 2.2.3 Android 应用程序组件.10 2.2.4 Android 系统的优势.12 2.3 数据库技术分析13 3 系统研究方法和总体设计14 3.1 引言.14 3.2 研究解决的主要问题14 3.3 系统研究方法15 3.4 系统总体设计方案.16 3.5 数据信息系统的实现.18 3.5.1 树形网络拓扑结构18 3.5.2 二维码功能模块19 3.5.3 语音识别功能模块20 3.6 视频监控系统的实现.21 3.6.1 RTP 流媒体传输协议.21 3.6.2 H.264 视频压缩标准21 3.6.3 视频监控系统设计22 3.7 本章小结.23 4 基于 Android 的无线传感温室监控系统设计.24 4.1 引言.24 4.2 上位机数据库设计.24 ABSTRACT 4.2.1 数据库选择24 4.2.2 数据库关系表分类25 4.3 管理平台设计.32 4.3.1 数据图表模块34 4.3.2 视频监控模块37 4.3.3 信息服务模块39 4.3.4 专家指导模块42 4.3.5 后台推送模块44 4.3.6 按钮控制及语音控制模块46 4.3.7 软件设置模块48 4.4 本章小结.51 5 系统应用分析52 5.1 引言.52 5.2 兼容性及性能测试.52 5.3 实际应用环境.53 5.4 数据稳定性测试.54 5.5 图像传输测试.56 5.6 本章小结.56 6 总结与展望57 6.1 总结.57 6.2 展望.58 参考文献59 附录65 致谢85 1 绪论 1 绪论 1.1 选题背景选题背景 我国是农业大国,但农业生产模式相对滞后。广泛存在着粗放型、劳动力型的 传统农业生产模式,科技应用水平较低。伴随着电子信息技术飞速发展,国家提出 的“互联网+”行动计划上升到国家战略层面。产业数字信息化在各行业内,特别是 在工业上取得了空前的发展提高,特别的是 Android 手机作为与大众最息息相关的 互联网终端,得到了最大化的发展和运用。 巨大进步的同时不难看出,信息科技在农业的应用不够广泛层次也较低。为弥 补这一不足,本课题实现了一种基于 Android 平台的无线传感温室监控管理系统。 Android 是一种基于 Linux 的自由及开放源代码的操作系统,主要使用于移动设 备,如智能手机和平板电脑,由 Google 公司和开放手机联盟领导及开发1。第一部 Android 智能手机发布于 2008 年 10 月,全世界采用这款系统的设备数量已经达到 10 亿台2。2015 年智能手机出货量,Android 市场份额约为 81.5%,iOS 市场份额约 为 14.8%。 Android 软件开发中使用的语言主要为 Java 语言,Java 语言通用性高开发着众 多,语言学习成本较为小,所以市面上 Android 软件数量已经超过 20 万3。随着电 子产业技术发展,软件开发者可以实现高级图形渲染,能够做到优异的用户体验4。 并且 Android 软件特有的内存处理机制,在手机性能允许的条件下可以实现空前的 数据并发处理功能,很适合本系统实现的数据可视化以及数据并发传输功能。 物联网技术从提出之后就一直受到极大的关注,经过十余年的发展,理论概念 已经十分充足,各类硬件的研发也已经进入了量产化阶段。在部分产品量产化的背 景下,整体系统价格已经能够被普通大众消费。物联网与 Android 系统平台也有了 许许多多的结合,智能家居领域已经可以实现在室内范围的局域网内实现智能设备 的控制。在物流领域可以通过各类标签设备,实现物流产品的全程可控,十分高效。 近年来物联网得到人们广泛重视的原因是因为物联网技术为人们带来了许多美好的 梦想,根据权威专家预测,世界信息化产业在继计算机、互联网与移动通信网络之 后的第三次技术浪潮,将由物联网技术引领5。 近年来,物联网技术空前火热,结合手机客户端平台在许多领域都有广泛的运 用。特别是在智能家居以及物流管理行业中,起到了很好的实际效果,极大的提高 人们的生活质量以及生产效率6。但是我国作为农业大国,迅猛发展的电子信息技 1 绪论 术特别是物联网技术广泛运用与农业生产中的例子并不多见。整体产业电气化、自 动化、信息 化程度偏低,存在的粗放式的生产方式。与欧美发达国家在早些年实现的精细化农 业管理有很大的差距,显然不足以满足一个大国的实际农业生产需求。国家经济水 平上涨,农民生活水平的提高,往往农民也期望能够降低农事活动中的人力物力财 力。 早期设施农业中的智能温室大多采用有线网络以及 AC 电源供电,系统依赖于有 线的供电以及数据传输,能够较为稳定的工作7。同样受制于有线供电以及网络, 施工中的复杂程度相当大,传感器的灵活性也大打折扣,系统维护也需要“牵一发, 而动全身” ,在实际使用中很难满足现今要求便捷化、交互性强、可用性高的使用需 求8。为解决上述问题,本文提出一种基于 Android 平台的无线传感温室监控系统, 能够打破空间的限制,不需要大面积安装线路,并且可以灵活放置传感器及节点。 同时能够实现系统半年以上电池供电,减少资源消耗和后期维护成本。本文实现的 基于 Android 平台的智能温室监控系统可以较好的解决以上问题。且 Android 软件因 为其开发语言的通用性所以开发周期短,开发成本较为低廉。运行设备均为 Android 智能手机,用户使用人群基数大。所以本系统也很适合作为此项目的开发平台。 本文所述温室,指的是一种能透光、保温、加温,用来栽培作物的设施。可以 在不适宜植物生长的季节,提供特定的生长环境,以满足作物生长需要,增加作物 产量。多用于低温季节喜温蔬菜、花卉、林木等植物栽培或育苗等。 通常出于客户对自身成本收回周期考量,本系统对标客户通常为大、中型农业 合作社或者公司。在以往的项目中,客户硬件设施普遍基础较好,例如风机、喷灌、 卷帘机都已经具备并可正常使用。通常会根据需要,增加智能控制中心、智能控制 柜、传感器及传感网络形成完整的系统。 1.2 国内外研究现状国内外研究现状 1.2.1 国外研究现状国外研究现状 美国、荷兰等西方发达国家,在上世纪 80 年代就进行了传统农业向精细农业转 型的相关研究,并加大投入积极推进精准农业的全面推广,最终取得了有目共睹的 丰硕成果9。随后,西方发达国家为实现农业的可持续发展,降低农业生产中对环 境造成的破坏,通过科学技术的发展来提高生产效率。精准农业也被西方国家放在 显要发展位置。 起初受技术水平的限制,监测系统对温室的环境参数采用单因子控制,即对温 度、湿度、二氧化碳浓度和光照强度等分别进行监测和控制10。例如,在对温度进 行控制时,监测系统只控制温度的变化,而对其他的环境参数不做处理,若要控制 其他因子,需要实施另外的控制过程11。但由于外界天气的变化会随时影响到温室 大棚里的环境,单靠人工采取相应的措施难以办到,再加上各个环境参数之间相互 影响,使难度再次加大12。 西方国家早些年依照各种作物的特性,开发出了基于 Android 的温室监控系统。 对作物生长环境内的温度、湿度、光照强度等生长参数进行实时监测和控制1314。 美国和荷兰综合利用温差管理技术结合 Android 手机应用,对花卉、果蔬等产品的 开花期和成熟期进行自动化控制,来满足生产和市场的需要15。 2015 年,韩国的 Kim, Dong-Eon 等人为了减轻农民的工作强度,为使温室环境 能够得到有效控制,让农业生产更加方便,提出了一种基于安卓应用的温室环境远 程控制方案。通过传感器采集数据,最终在安卓应用上数字表示温室环境中的信息 和控制情况。使用增强现实技术(Augmented Reality 简称 AR)、RTSP 媒体流协议来观 察及远程控制温室环境。并且通过屏幕监控由温室内的传感器获得的信息(温度, 湿度,照度)并且使用 RTSP 协议在远程传输温室的视频图像。16 2016 年西班牙的 Prez-Castroa 和 Snchez-Molinab 等人提出了一种基于物联网 的智能安卓灌溉遥控系统,用以提高节水灌溉的精度。包括一套功能齐全的网站远 程灌溉系统,SMS 短信远程灌溉系统以及基于手机开发的 Android 平台的自动灌溉 手机客户端。实现通过浏览器,电话,短信,手机客户端实现实时信息采集,监控, 灌溉等各种方案,利用采集的数据结合作物所需的生长环境要求,实现精准控制功 能。17 1.2.2 国内研究现状国内研究现状 我国对温室的研究最早开始于 20 世纪 30 年代,但由于技术水平的限制,在寒 冷的冬季只有耐寒性强的植物能够在温室内生长,而不能提供喜温植物的生长条件。 从 20 世纪 70 年代开始,我国开始出现了塑料大棚和日光温室,并将国外的先进技 术手段和环境控制设备引入到温室中。 随着信息技术革命,国内的信息化产业发展壮大,特别是在“互联网+”发展战 略口号后,高水平信息化的发展脚步越来越快。我国的专家学者在引进和吸收国外 先进技术的基础上,开始研发和设计适合我国国情、适应我国农业信息化发展方向 的 Android 温室监测控制系统,并取得了一定成绩,促使我国农业向产业化、科学 化方向发展又迈上一个新台阶18。 由北京工业大学陈桂鹏等人研发的基于 Android 手机农业信息采集系统,针对我 国以农户为主的小规模农业生产特点,设计实现了一套低成本的农业环信息采集系 统,该系统由环境感知及扩展、数据存储、手机蓝牙通信等基于 ARM 的信息采集终 端与基于 Android 系统的数据管理软件组成,信息采集终端通过蓝牙将感知的农业 环境信息传输给 Android 手机,手机端的数据管理软件对农业环境信息进行处理与 存储,并利用无线网络功能将数据发送到远程农业环境数据中心1920。 山东省农科院的李佳毅的等人研发的基于 Android 平台的智能温室视频无线监控 系统,该系统采用的视频无线监控技术不仅综合成本低,性能更稳定,而且易于扩 展,有效地解决了温室中不方便使用有线网络的问题,与本系统相比传统的视频监 控系统一般采用台式机作为监控终端,需要在指定的地点并且有专用网络设备支持 的情况下才能对目标现场进行监控,大大限制了监控系统的应用范围和灵活性21。 2015年,陈详等人根据国内温室现状提出了一款基于物联网的智能温室监控系 统,该系统可实现远程控制,具备较高的扩展性和实用性,该系统通过Ajax实现了 数据的局部更新,优化了管理平台,根据实际应用经验,系统设计了完整的控制逻 辑,手动和自动可自由切换,并引入了复杂的温控数学模型,在实际应用中得到了 验证22。 2016年,南京农业大学古炜豪等人针对温室作物信息实时采集的需要,设计了 基于安卓手机的信息实时采集系统。系统用一台智能小车完成信息的采集,智能小 车以ARM9处理器为核心构建硬件平台,以Linux操作系统构建软件平台;系统采用 安卓手机作为控制和信息传输终端,设计的安卓手机控制软件通过手机无线操作模 块对温室的执行部件进行控制,采集的信息也通过无线方式传回手机。系统可以通 过智能小车上安装的多种传感器采集信息,并通过安卓手机控制智能小车行走,从 而完成对整个温室作物信息的实时采集23。 为此,本系统提供了一种更好实现在小带宽下实现可交互式的数据展示模块, 更清晰、功能丰富的视频监控模块,具备云语音的智能设备控制模块。实现后台消 息报警推送、富媒体推送功能,还具备二维码扫描等等丰富接口模块。 1.3 课题研究目的和意义课题研究目的和意义 我国农业长期存在规模小、水平低的问题,农业机械化、信息化普及率低、发 展缓慢。在“十三五”规划中,将农业信息化提升为我国国家发展战略24。目的以 逐步实现信息化带动包括农业机械化在内的产业提升,逐步将我国目前存在的传统 农业过渡到现代化信息农业的过程,是充分利用现代信息技术来改造传统农业从而 更加有效地应对自然风险和市场风险,追求更高的农业经济效益促进生产发展,提 高农民收入。 我国目前大部分温室还是传统意义上的简易温室,并且温室环境的各项指标采 集需要耗费大量劳动力,简易温室能够取得收效的多少取决于农业从业人员的经验。 传统温室显然已经不足以满足精细农业生产的发展趋势。所以需要一种能够基于 Android 手机客户端的,能够实现数据自动采集、智能控制的温室系统已经是大势所 趋。 本文提出的系统,旨在通过软件工程技术以及物联网电子信息技术在农业生产 中进行合理运用,将各类传感器广泛地采集温室环境信息、视频监控信息等农业相 关信息,建立一个可管理的 Android 智能温室监控管理平台。利用信息技术及互联 网技术,将从温室内获取的空气温湿度、土壤温湿度和光照强度以及温室外获取的 风速、风向和小时降雨量等海量农业信息进行分析处理,实现农业产前、产中、产 后的过程监控、科学管理和即时服务,为实现温室综合生态信息参数的自动监测、 温室环境的自动控制和智能化管理提供科学依据和装备2526。 目前,国内所研究的基于物联网的智能温室管理系统已经有实际项目用于实践, 项目整体较为成熟。但是不难发现还有部分技术及功能有待完善,传统智能温室采 用电脑客户端,有造价昂贵、集成度低、使用复杂和维护困难的缺点。而且还具有 不能随身使用,在温室内不能操作,不能实时提醒用户,需要建立单独网站以供展 示等不足不能切实起到“工具”的作用。Android 作为一个强大的平台,能够极为有 效的作为中间件很好的融入系统,完善系统并实现更丰富更具有物联网特性的功能。 1.4 课题优势与面临困难课题优势与面临困难 基于 Android 的无线温室管理客户端与传统物联网温室管理系统相比,更能结 合当前最新信息化技术,能够 24 小时起到管理系统的作用,同时能够节省资源,为 农户增产增收起到作用。Android 无线传感网络在智慧农业中主要优势有以下几个主 要内容: (1)作为一个随身移动平台,系统能够随时随地被查看、被管理,可以在温室内 实时查看温室内各项环境因子参数信息。用户黏性强,能够随身携带,且不需要另 配置价格不菲的计算机及显示设备。 (2)以往在电脑端,系统客户端非常庞杂,需要软件环境并且不确定因素和使用 异常现象非常多。而在 Android 移动端仅需要安装应用包即可使用,并且客户端不 需要进行维护,节约使用者维护成本。 (3)传统物联网温室管理系统各个功能模块,甚至是由多个软件拼接而成。本系 统软件集成度高,各模块紧密相连。如数据查看,智能控制,专家指导,视频监控 等功能都集成在一个应用中。 同时可以发现农业物联网由于工作条件较为恶劣,特别在产品稳定性等方面还 有待提升,仍然很多问题有待解决,主要面临的困难如下: (1)软件使用的底层采集网络系统整体较为稳定,但是在夏季特别是高温高湿条 件下稳定性大打折扣。高温对于传感器采集的数据信息也会出现较大偏离,对于独 立供电的电池也会造成永久性的损坏。能够提高在极端天气下的硬件稳定性无疑是 现阶段温室智能设备网络的研发主要攻坚方向。 (2)软件界面往往决定了用户的第一印象。一个美观、设计人性化的 UI 界面无疑 很能够提升用户体验,调高用户粘性。但是对于程序开发者往往对于界面的美工基 础较为薄弱,后期版本更新也将会投入精力进行美工工作。 1.5 论文主要内容及章节安排论文主要内容及章节安排 主要章节安排如下: 基 于 安 卓 平 台 的 无 线 传 感 温 室 监 控 管 理 系 统 研究现状及问题提出 总体方案设计 相关技术介绍 应用分析 总结展望 总体方案实现 1 绪论 2 安卓开发技术和相关理论的介绍 3 安卓无线传感温室监控系统总体设计 4 系统平台及功能模块的设计和实现 5 系统应用分析 6 论文总结与展望 图 1.1 论文章节安排 Figure 1.1 Arrangement of paper chapter 详细介绍: 第 1 章,绪论部分介绍了课题的研究背景,研究课题的目的与意义,国内外研 究现状。同时提出了研究课题的优势与不足,并介绍了本课题的研究流程安排。 第二章,本章重点介绍了 Android 系统及数据库相关技术理论,还介绍了系统 的需求分析。详细叙述了 Android 系统的构架和四大程序组件,简要说明了活动的 生命周期理论。分析了采用本系统为开发平台的具体优势。进行了云端数据库的分 析与选择,进行了优劣对比。 第三章,本章首先提出了本系统的软件系统研究方案,再进一步详细叙述了系 统设计方案。根据本系统设计要求叙述了系统数据及视频系统设计方案,报考无线 传感拓扑结构,视频流压缩标准的选择。还有视频图像采集系统的原理和设计方案。 第四章,本章详细的介绍了本系统的实现。主要分为软件实现以及硬件实现。 首先介绍了本系统的数据库设计方案,其次介绍了系统的各功能模块,并在下文进 行了详细的分析论述。介绍了模块的设计思路和方案,进行了系统优化。介绍了配 置 Andriod 系统应用软件开发平台,做到功能需求与软件界面设计匹配; 在现有智能温室大棚数据基础上共享数据资源并整合实现移动端数据库修改及 控制功能;版本维护与更新等功能。介绍了功能的实现,基于云平台数据库的搭建, 实现数据可靠处理的同时,提高了数据的安全性和实用性。逐步完善功能提升系统 稳定性及后续更新灵活性。完成数据采集查询、数据信号源指示、历史数据查询、 异常状态告警、声光找寻功能、后台提醒功能和自动化专家指导等功能。 第五章,本章主要介绍了系统的实际应用情况。首先介绍在真机测试环境下得 出的兼容性测试数据以及性能报告。进行了数据稳定性测试及视频稳定性测试,并 得出系统主要功能稳定性分析报告。各项数据通过测试得出性能稳定,数据收发情 况良好,图像质量稳定优异。 测试得出数据丢包率较小,能够很好的满足数据传输的需要。传感器具有独立 供电的特点,依靠内置的锂电池供电,一次充电可以实现 150 天以上的工作电量。 视频监控的实际应用中,Android 手机能够很好的实现 3G、4G 以及 WIFI 条件下实 现对温室内整体情况以及作物长势进行查看,图像清晰,云台控制流畅。 第 6 章,本章主要介绍了系统的实际应用情况。为弥补以上缺点与不足,本文 设计并且搭建了基于安卓的无线温室监控管理系统。系统由底端无线传感器、网关、 中继以及无线控制器构成的传感网络实现环境数据的采集,由工控机汇总数据输送 至云端服务器,最后由 Android 端实现数据可视化,实现对温室电器设备的无线控 制。为了近一步的简化系统减少温室内过多的线路设置,摄像头采用高清网络摄像 头,基于局域无线网的传输技术可以实现在 Android 手机端实时获取温室内的图像 信息以及其他丰富的功能。视频图像清晰稳定,可以对温室整体情况进行监视,可 以以图像的形式查看各类电器设备运行状况。 安卓系统中软件实现方面主要包括客户端、服务器端、项目地控制中心、数据 接口等方面。除少部分工具库文件(library 库)及第三方 SDK 外,代码实现均由 本人独立完成。 2 系统的相关技术理论 2 系统的相关技术理论 2.1 引言引言 伴随着信息技术水平突飞猛进,特别是“互联网+”行动计划的提出,信息产业 在各行各业都得到充分的重视。Android 手机作为与大众最息息相关的互联网终端得 到了最大化的发展和运用。Android 技术及其硬件平台开放性强、集约性高和使用便 捷的优点在智能客户端领域占有重要位置。 本章首先介绍了 Android 系统,从系统概述、系统构架以及系统优势等多个方 面介绍了 Android 系统,对比常用的几种移动智能客户端系统,突出了本文选用安 卓系统的原因。 2.2 Android 系统系统 2.2.1 Android 系统概述系统概述 Andy Rubin 于 2013 年 10 月创立了 Android 公司,并在成立 22 个月之后,于 2005 年 8 月被 Google 收购,Google 继续交由 Andy Rubin 公司发布了基于 Linux 内核 的自由及开源的智能操作系统27。Android 系统最开始只支持用于智能手机设备,现 今 Android 系统几乎可以安装在任意智能设备上,现在的 Android 系统是真正意义上 开放开源的智能移动终端开发平台,目前绝大多数手机制造商都采用了 Android 系 统,并且除智能手机以外,部分平板电脑也采用了 Android 操作系统28。 其应用程序的开放性、设备陪适性强以及开发周期短的特点,给用户和开发人 员带都来了全新的体验。在其官方网站上是这样描述安卓操作系统的, “安卓平台是 由多层叠加而成的,开发人员通过使用安卓 SDK(Software Development Kit),软件 开发工具包)来创建应用程序的平台,应用程序是由 Java 语言编写的,在 Dalvik(用于安卓平台的 Java 虚拟机)上运行,它是运行在 Linux 内核上的”29。 2.2.2 Android 系统构架系统构架 Android 系统的架构为分层架构,可以很形象的认为是多层的蛋糕,从底部到顶 部分别是是 Linux 内核(LinuxKernel)、函数库(Libraries)和 Android 运行时 (AndroidRuntime)、应用程序框架(ApplicationFramework)和应用程序(Application)30。 每个层级之间界限并不十分明确,功能有相互融入的功能,每个层级有其自己的主 要功能特点,其系统架构图如图 2.1 所示31: 2 系统的相关技术理论 图 2 .1 Android 系统架构图 Fig2.1 The architecture diagram of Android system (1)Linux 内核(LinuxKernel) Linux 内核主要负责系统及硬件底层服务,包括进程、内存管理和硬件驱动等。 实际上,它处在系统硬件与软件堆栈之间,是一个内部抽象层32。 (2)函数库(Libraries) 函数库很多内容是由 C/C+语言编写的核心库文件,并且可由开发者自由开发, 这些库文件能被系统组件随时调用。要想使用内部核心库可以直接声明,外部库需 要导入到源程序指定库文件夹内才能够被调用33。 (3)Android 运行时(AndroidRuntime) AndroidRuntime 由 Android 核心库集与 Dalvik 虚拟机两部分构成34。该核心库 包括了 Java 语言核心库所使用的大多数功能。Android 应用程序虽然是用 Java 语言 编写的,但并非使用传统的 Java 虚拟机执行,而是在定制的 Dalvik 虚拟机中编译和 2 系统的相关技术理论 执行的35。每个应用程序都有一个独立的 Dalvik 虚拟机实例,并且运行在自己的进 程中36。 (4)应用程序框架(ApplicationFramework) ApplicationFramework 是 Android 开发的基础,它使程序员拥有与核心应用程序 相同的 API 框架访问权限,并且简化了应用程序组件的重用37。每个应用程序都可 以对外发布自己的服务功能,其他应用程序都可以在满足框架安全性要求的条件下 调用和使用这些服务功能38。 (5)应用程序(Applications) Android 系统原生自带一些用户初装必备的基本应用程序。所有应用软件均由 Java 语言开发,同事必须是运行在 AndroidRuntime 内的虚拟机 Dalvik 上,主要包括 E-mail(电子邮件) 、Browser(浏览器) 、SMS(短信) 、Phone(电话程序) 、 Contact(联系人)管理程序等39。 2.2.3 Android 应用程序组件应用程序组件 Android 应用程序是指开发者使用 Java 语言在例如:Eclipse 或者 Android Studio 上开发的应用程序。在程序代码中,没有如同 Java 程序中的 main()方法一样的主程 序入口。Android 应用程序一般由一个或多个不同功能的组件组成,其核心组件包括 Activity(活动) 、Service(服务) 、BroadcastReceiver(广播接收器) 、 ContentProvider(内容提供者)40。每个组件提供不同的功能,并且 Android 程序是 可以层叠。每开启一个新的活动,就会覆盖在原活动上。点击返回就会销毁在栈顶 的活动,下面的一个活动就会重新显示在屏幕上41。具有鲜明的生命周期定义该组 件是如何被创建和销毁的。组件的使用必须在 Android 配置清单 AndroidMainfest.xml 文件中进行注册方可运行,否则使用未注册的组件则无响应在调试时报错42。 (1)Activity(活动) Android 组件中 Activity 无疑是出现频率最高的组件。为用户提供可视化界面, 主要用于处理前端事务,通常一个 Activity 就是意味着一个手机界面,是一个可视化 的区域,开发者能够在 Activity 内放置系统 API 提供 TextView、ImageView 以及形式 多样的自定义控件来设计视图效果43。绝大多数应用程序会含有多个 Activity,并且 通过 Intent(意图)等方法来实现 Activity 之间的跳转及信息传递,还可以使用 Bundle 向前或者向后 Activity 传递数据实现程序的交互。 Activity 初始化每一个的初始化比较复杂,包括创建一个新的 Linux 进程、所有 用户界面对象的内存分配、解析 XML 文件和图像渲染等,如果每次离开一个 Activity 就将其销毁将造成很大浪费,所以 Android 使用 ActivityManger 机制来自动管理 2 系统的相关技术理论 Activity 的生命周期44。机制主要是通过对内存堆栈方式来管理所有的 Activity。在 手机内存允许的情况下,会记录从主页面到每一个应用的每一个运行过的 Activity。 如果内存不够则记录的未被销毁屏幕会很少,甚至没有记录45。Activity 生命周期如 图 2.3 所示。 Activity Starts A Ac ct ti iv vi it ty y i is s s sh hu ut t d do ow wn n o on nC Cr re ea at te e( () ) o on nS St ta ar rt t( () ) o on nR Re es su um me e( () ) o on nP Pa au us se e( () ) o on nS St to op p( () ) o on nD De es st tr ro oy y( () ) Activity is running 另一个Activity转入 该Activity之前 P Pr ro oc ce es ss s i is s k ki il ll le ed d 内存低 由用户操作返 回该Activity 该Activity以 后都不可见 该Activity再 次返回前台 该Activity再 次返回前台 o on nR Re es st ta ar rt t( () ) 图 2.2 Activity 的生命周期 Fig2.2 The life cycle of Activity (2)Service(服务) Service 是 Android 中实心程序后台运行的解决方法,是无可视化界面的应用程 序组件46。适合处理一些不需要和用户交互并需要长期运行的操作。与 Activity 相 比,Service 的生命周期相对简单。一般情况下,Service 的生命周期受开发人员控制 较多,当对应的应用程序被杀死后,Service 也就停止了。开发者在优化代码时,需 要考虑到 Service 的生命周期,避免不必要的资源浪费,能够减轻内存和 CPU 的占用。 2 系统的相关技术理论 (3)BroadcastReceiver(广播接收器) 为方便进行系统级别的消息通知,Android 也引入了一套类似于 IP 网络广播地 址数据的广播消息机制。Android 中的广播机制会显得更加的灵活,因为每个应用程 序都可以感兴趣的广播进行注册。开发者可以在一个应用程序中添加多个广播接收 器,还能够使广播接收器为任何特定广播消息做出相应。 (4)ContentProvider(内容提供器) 内容提供器,主要用于实现在不同应用程序间实现的数据共享47。安卓 API 提 供了一套按照 CRUD 原则设计的接口方便不同程序之间共享数据48。手机上安装的 应用程序将数据通过内容提供器公开出来,其它的应用程序可以在再对这些公开的 数据进行操作等,不同于传统软件系统单独封闭,Android 能够实现很好的实现应用 程序关联。不同组件之间需要 Intent 才能进行必要的调用与协调工作,Intent 封装 了应用中事件的动作、动作的相关数据以及其它相关数据等内容,Android 应用便按 照该 Intent 的内容,找到相应的组件,并把 Intent 封装的数据传递给被调用的组件, 最终完成组件的调用49。 2.2.4 Android 系统的优势系统的优势 随着电子设备及通讯技术的飞速发展,人们越发的依赖手机来方便日常生活, 通讯功能只是手机的一部分功能,更多的是定位于一个移动智能客户端。本课题选 择安卓平台为软件操作系统为“无线传感温室监控系统的研究与应用”的开发平台。 是该平台有主要以下几方面的优势: (1)Android 系统开发选用 JAVA 语言,JAVA 语言通用性较高,所以能够缩短 学习、开发周期。原生的 Eclipse 工具能够实现兼容性强,大部分的第三方开发包都 有配适 Eclipse 开发工具的版本,能够完成其他非原生工具不可比拟的有点。例如本 文主要选用的 Jpush 以及讯飞云语音均提供开源第三方安卓开发包,而其它安卓应 用平台出 Android Studio 外均无开发包可以使用。 (2)系统开放性高。因为 Android 系统提供代码开源,开发人员可以实现对系 统底层代码实现修改。则可以实现对 WIFI、电话接听等原生应用做出一定的修改, 实现更符合系统的功能50。在本系统的开发中,需要不时查看系统源码中的一些特 定方法,相当方便并且节省开发时间。 (3)能够实现更丰富的数据接口功能。在新版本的 Android API 中提供了更加 便捷的诸如新的 OKhttp 方法,可以做到简单的配置文件即可实现以往复杂的 GET、POST 等方法。而例如 iOS 等开发在开发时则系统方法相对较为老旧,相应的 2 系统的相关技术理论 服务器交互方法复杂且不易于学习,使用中开发速度较慢。 (4)Android 拥有巨大的用户数量。Android 近年来用户数量激增,Android 系 统占据了智能手机市场的主导地位。据悉 2015 年智能手机出货量,Android 市场份 额约为 81.5%,iOS 市场份额约为 14.8%。通过对项目的实地调查,绝大部分的农事 从业人员使用的均为安卓系统的智能手机。 综上所述,无论从安卓系统手机的覆盖率还是从软件开发的方便程度甚至是系 统后续维护的成本出发,选用 Android 系统为本课题开发平台无疑是最佳的选择。 2.3 数据库技术分析数据库技术分析 MySQL 操作简单稳定,事件处理能力强,方便管理易于后期维护。属于适合中 小型软件的数据库,并且开源适合独立开发者使用51。在大型互联网公司内开发移 动端软件时,通常大公司会选用处理并发数据量能力较强的 Oracle 数据库。但随着 MySQL 版本升级,不断的技术革新能够在除极端攻击条件下稳定处理数据,目前 MySQL 已经是独立开发着的首选数据库。但主要有以下两个方面的原因: (1)互联网技术的发展随着互联网技术的发展,越来越多的解决方案被提出, MySQL 有了更多的用武之地52。在 MySQL 发布初期功能相对简单,对于较大数据量 的查询管理较为吃力,但是随着系统革新以及硬件水平的提高,网络带宽越来越大 的今天,MySQL 越来越显示出其有点。例如:云计算、大数据、虚拟化、商业智能、 数据仓库等等,这些技术与 MySQL 相结合能够发挥出更高的性能。 (2)当然,我们看到 Android 手机自带有 SQLite 轻量级数据库,可以进行低并 发小数据量的数据处理5354。但是本课题“基于安卓的无线传感温室系统”数据量 相对较大,储存或者转储在手机内浪费资源。SQLite 是安卓手机系统内置的免费开 源数据库,并且无需再装任何软件安卓应用便可调用它。SQLite 可以最大储存 2Tb 的数据库内容,但是由于手机的内存通常较小。每天大量的数据储存在手机上不符 合实际情况,所以采用部署在上位机上的 MySQL 数据库要合理的多。 (3)MySQL 数据库对于硬件的要求较低,售价相对 Oracle 数据库低廉许多, 运行效率又比免费的 SQLlite 数据库效率高许多。且使用 PHP 语言即可以实现 CRUD 等等主要功能。支持查询的 SELECT 和 WHERE 语句的全部运算符和函数,并且可以 在同一查询中混用来自不同数据库的表,从而使得查询变得快捷和方便。 支持 JDBC、ODBC 等多种数据库连接途径,可以实现 JAVA 程序进行数据库操作,本文后 台报警推送即是根据这一功能实现的数据库实时对比。 3 系统研究方法和总体设计 3 系统研究方法和总体设计 3.1 引言引言 根据上一章提到的安卓技术理论和数据库技术分析,在此基础上,本章节研究 并设计了基于这两种技术的 Android 智能温室监控系统的总体设计方案。主要包括 数据管理、信息服务、设备管理和软件设置四大模块。分别提出了研究要解决的主 要问题,详细论述了系统的研究方法和总体设计方案。 3.2 研究解决的主要问题研究解决的主要问题 (1)软件开发 配置 Andriod 系统应用软件开发平台,开发相应的页面布局文件,实现

温馨提示

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

评论

0/150

提交评论