1、基于WiFi的智能LED调光APP设计学 生 姓 名: 学 院: 专 业: 班 级: 学 号: 指 导 教 师: 审 阅 教 师: 完 成 日 期: 摘 要在现在的信息时代,互联网已经成了家喻户晓的通信工具,智能化控制也将成为社会发展趋势。随着无线通信技术和电子技术的发展,人们对舒适生活观念的提升,对家庭电器智能化、使用便捷化的需求越来越强。对于本课题,基于WiFi智能LED调光无疑会进入当下科技研究发展的潮流。本程序采用Java Android语言,在My Eclipse程序开发平台上进行设计,实现了通过手机WiFi连接LED进行亮度、颜色、闪烁灯功能的控制。关键词:WiFi;LED调光;A
2、ndroidAbstractIn the information era, the Internet has become a communication tool of intelligent control make known to every family, will also become the trend of social development. With the rapid development of wireless communication technology and electronic technology, people enhance the comfor
3、table life concept, the more strong demand for home appliances intelligent, convenient and. For this project, WiFi LED intelligent dimming will enter the current trend based on scientific research and development.This procedure using Java Android language, designed by My Eclipse program development
4、platform, to achieve the control of brightness, through the mobile phone WiFi connection LED color, flashing light function.Keyword:WiFi;LED dimming;Android目 录基于WiFi的智能LED调光APP设计I摘 要IIAbstractIII目 录IV1 绪论11.1 课题研究的背景11.2 国内外现状11.3 课题研究的意义31.4 论文结构52 系统设计分析62.1 可行性分析62.1.1 技术可行性62.1.2 经济可能性62.1.3 操作可
5、能性62.2 开发工具72.2.1 Java android程序设计语言72.2.2 My Eclipse程序开发平台93 需求分析113.1 需求分析113.2 课题研究内容以及解决的问题123.2.1本课题要研究的内容123.2.2解决的主要问题124 系统实现134.1 配置路由器134.2 安装Android手机App134.3 连接智能LED电路144.3.1 连接智能LED电源144.3.2 连接网络154.3.3 等待智能LED网络连接好174.4 搜索和使用智能LED174.5 APP主界面174.6 调色功能184.7 亮度调节194.8 频率调节195 程序测试与维护205
6、.1 系统的配置205.2 系统的维护205.3 系统测试21结 论23参考文献24致谢25附 录26261 绪论1.1 课题研究的背景20 世纪 90 年代以来,随着计算机技术和网络技术的迅速发展和普及,全球互联网用户数大幅度增加,网上资源日益丰富,受关注程度也越来越高,电子商务和网络经济也随之应运而生,并且受到越来越多的行业、企业和网民的关注与参与,逐步进入高速发展阶段。随着网络技术的不断发展,信息传递速度比以往要变得更为迅捷,同时我们获取信息也因为移动通信技术的发展变得更加便捷。用户使用移动终端设备来获取信息也由于GPRS技术运用变得更为便捷。网络的资源利用率也由于计算机网络和电信网络的
7、结合获得极大的提高。Android平台主要是由Java和Linux组成的。由于该平台的架构相对简单,其硬件资源的性能也得到了充分发挥。此外,由于Android的开源性和手机软件的低成本开发的特性,Android逐渐成为现在手机操作系统市场上移植性能最好的一种。而且现在的Android手机价位也不是很高,用户可以非常容易地在市场上购买到这种手机,并非常方便地使用它获取自己所需要的各种信息。本课题就是采用Android移动平台来研究与实现一种能够调节LED灯亮度和颜色显示的移动应用。1.2 国内外现状这些年来,智能手机的发展已经逐渐成熟,各种功能和性能也得到不断地完善和提高。现在越来越多的开发人员
8、将研究的主要精力投入到基于各种移动手机平台的研究与开发应用当中来。接下来将简要介绍一下当下主要流行的手机开发平台(1)苹果IOS平台IOS是苹果公司开发的一种用于移动平台设备的操作系统,它主要可以分为四个层次:可轻触层(the Cocoa Touch Layer),媒体层(the Media layer),核心操作系统层(the Core OS layer),核心服务层(the Core Services layer) 。 IOS的用户界面的概念基础上是能够使用多点触控来直接进行操作的。控制方法主要包括轻触开关及按键,多点触控操作和滑动等。同时还可通过挤压,轻按,滑动及旋转与系统进行互动。截止
9、到2011年11月,根据Canalys的数据显示,IOS已经占据了全球智能手机系统市场份额的30%,在美国的市场占有率为43%。(2)RIM平台BlackBerry OS是由Research In Motion为黑莓手机开发的一种专用操作系统。该操作系统支持多任务处理,并具备特定的输入装置,其优势主要体现在它可以为用户提供无线咨询服务,丰富的软件开发资源,对Java软件的高兼容性和成熟的无线网络技术。(3)Symbian平台Symbian的架构和很多用于电脑的操作系统比较相似,具有内存保护、多执行绪和先占式多工等特性。Symbian的便携式装置是其最大的优势,同时在资源有限的情况下,可以执行一
10、段很长的时间。但是Symbian系统在多媒体的支持方面的疲软是因为其在硬件方面的低配,而且Symbian系统的低兼容性也给大家带来了很大了困扰,这也使得Symbian的市场份额日益萎缩。截止到2012年2月,Symbian系统的全球市场占有量仅为16.9%,中国市场占有率则降至18.7%,均被Android超过。(4)Windows Phone平台Windows Phone是由微软公司发布的一种新的手机操作系统,它将旗下的Zune音乐、独特的视频体验与Xbox LIVE游戏整合至手机中,以严格控制运行它的硬件规范。Windows Phone 7的推出宣告了 Windows Mobile系列彻底
11、退出了手机操作系统的市场。(5)Android平台Android平台是一款以Linux为核心的开发式手机开发平台,为移动设备提供了一个包含操作系统、中间件及应用程序的软件叠层架构。Android SDK为开发人员使用Java语言编写Android平台下的应用程序提供了必要的API。与上述手机操作系统相比,Android手机操作系统具有的优点有:应用程序的相互平等、应用程序之间的无界限、真正的开放性和应用程序开发的快速方便等。为了推动Android开发平台的发展,Google与移动手机厂商、软硬件供应商、移动运营商和手机芯片供应商联合组成了开发手机联盟(Open Handset Alliance
12、, OH A),中国移动和中国联通都是这个联盟的成员。目前,Android在全球的市场份额居全球第一,截至2012年2月数据,Android占据全球智能手机操作系统市场52.5%的份额,中国市场占有率为68.4%。1.3 课题研究的意义作为有线通信的补充和发展,无线通信系统自20世纪,特别是21世纪初以来得到了迅猛的发展。无线通信系统开始进入千家万户,其应用使人们的生活进入信息化智能化阶段。同时,新兴的发光二极管(LED ,Light Emitting Diode)因其低耗能及环保的特点,正在逐步取代传统灯具。这里将无线控制(WiFi)以及自组网技术引入灯具中,只需要打开灯具,再打开软件就可以
13、随时控制,操作简单,使用方便。在原有的LED灯集成WIFI模块即可以实现对LED灯无线控制,通过WIFI信号将 LED灯与智能WIFI终端连接,在智能WIFI终端就可以实现控制LED灯光的色彩和亮度。LED 是继白炽灯、荧光灯和HID 灯后的一代新型电光源,LED 发光效率高,易于调光控制,调光控制范围较白炽灯、荧光灯和HID 等都要宽,使用灵活方便,重要的是调光可以使照明环境更适于人的照明需求,节能效果明显。而智能调光,利用现有的网络技术和通信技术,可以方便地实现调光控制。世界上一些大照明厂商也推出了有关LED 无线调光控制产品,使用方便,节能效果明显。在照明领域引入智能控制技术,可以极大地
14、改善照明调光控制效果。LED 采用智能调光控制技术,可以很方便地对照明的有关控制效果进行照明效果的预先设定,可以实现定时开关灯和对一些特殊照明效果的控制。例如,通过智能照明控制,可以使照明效果随音乐的变化而变化,营造特殊的照明效果。由于LED 智能调光可以充分发挥LED易于控制和使用方便等优点,而且LED易于联网控制,LED 调光不仅可以营造舒适的照明环境,并且节能。随着物联网技术(IOT)的不断完善,LED 智能调光控制的应用范围会不断扩展,对照明节能、改善照明控制效果有很重要的意义。国外许多厂商都很看好LED 智能调光技术的推广,利用现有的蓝牙技术、ZigBee 和WiFi技术就能实现LE
15、D 的智能调光控制,国外厂商也推出了相关解决方案。在LED 智能照明中,采用的无线传输标准有ZigBee、Wi-Fi以及蓝牙等。蓝牙和WiFi已经成为目前市面上智能手机的标配,只需在灯具添加低功耗蓝牙或者WiFi调光方式,通过应用软件,终端消费者就可以简单地去控制灯光的开关、强弱,实现节能省电的目标。家庭照明是家庭电器组成中最重要的一环,在此领域,节能环保的LED 照明因其低耗能及环保的特点,正在逐步取代传统照明,而且智能LED照明系统已成为了一个研究热点。传统的照明具有有线固定式开关,颜色亮度大多不可调不可控,随着人们对方便的无线开关方式以及对室内灯色多彩多变的追求以及环保观念的增强,传统照
16、明方式正向着无线控制、多变、节能的方向发展。同时,在实际的工程应用中,传感器网络开放性部署特点,使得节点极大可能遭受恶意行为的攻击和干扰,所以要采用一套系统特有的通信协议,以加强无线控制系统的健壮性。无线网络作为可移动的通信网络,能够灵活方便地为用户提供随时随地通信服务。因此,无线控制技术作为一种方便有效的无线通信技术,应用于家庭LED 照明系统的控制当中,将使使用者不受固定开关模式的制约,人们只需安坐在沙发上或者家中某个角落,就能方便快捷地控制室内的照明亮度和颜色,随时改变照明系统的状态。另外移动互联网产品的社交化、位置化以及移动化特性吸引了大量用户,越来越多的用户开始去使用并依赖各种移动互
17、联网产品。移动互联网产业的兴起,同时促使大量公司投入人力物力去进行移动互联网产品(Applications 简称 APP)的设计开发。目前在国内各大 APP 市场中提供下载的APP 有数十万款,然而多数下载量并不乐观,甚至有部分无人问津。不能向用户提供良好的用户体验是目前大多数 APP 存在的问题,它们有的无法满足用户需求,有的操作方式繁琐,有的甚至会给用户带来负面情绪。APP 设计与其他设计相比,具有一定的特殊性。首先,信息传递要清晰、明确。APP 所应用的平台多为移动设备,受限于硬件参数,不仅与用户之间的信息交流主要依靠视觉传递,同时可视区域的尺寸也制约着所要传递的信息量,因此与用户之间的
18、信息交流尤为重要。其次,操作方式要简单、方便。APP 的操作方式多为按键和触屏,并且有向触屏发展的趋势,手指的触屏操作定位精确度低并且误操作几率大,所以在设计中应该减少不必要的操作,让用户在使用时无障碍的完成特定任务。最后,使用心情要愉悦。重力感应装置、电子罗盘、重力加速器等设备为移动设备带来了新的操作方式,不但简化了复杂的操作,还给用户提供了愉悦的操作体验。对于一款 APP,为了拥有良好的市场竞争力,必须提高用户黏度,这就需要通过用户体验来吸引忠实的用户。在如今的移动互联网产品竞争中,随着各种技术的代码开源化以及从业人员的频繁调动,技术已不在是产品的核心竞争力,产品之间更多的是用户体验度营造
19、的竞争。一款成功的 APP 需要有好的用户体验。 具体来讲,LED调光APP 具有极高的实用价值。能够让使用者通过该 APP,可以远程操控家庭或工作中灯具,给用户带来了巨大的便捷。本课题是在导师的指导下完成的课题。主要的研究任务是基于Android平台的WiFi只能LED调光APP的设计与实现。该课题的研究将实现通过手机无线连接对LED灯的红绿蓝三原色的控制来实现LED灯多种颜色的显示。1.4 论文结构第一章绪论,介绍课题研究的背景,国内外现状,课题研究的意义等内容。第二章系统设计分析,主要阐述系统开发的可行性,以及对开发系统要使用的工具进行深入了解。第三章需求分析,对于本次毕业设计的具体需求
20、情况进行分析,分别包括系统的数据分析等内容。第四章系统功能展示。第五章系统测试与维护。最后是结论和参考文献。2 系统设计分析2.1 可行性分析 在系统调查和业务流程分析的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。并且可行性研究主要集中在以下三个方面:2.1.1 技术可行性根据本系统的功能需求,我们采用My Eclipse程序开发平台作为后台数据支持,程序设计选择Java Android程序设计语言进行程序编写,Java And
21、roid语言经过多年的发展和更新,已经成为了一门非常完善的语言,因此本此课题研究在技术层面上,是完全可行的。2.1.2 经济可能性本环节通过分析新系统的成本效益,其中包括估计项目开发的成本,开发费用和今后的运行、维护费用以及新系统将获得的效益,估算开发成本是否高于项目预期的全部经费。本系统为安卓手机设计,通过使用本系统能够实现手机对LED灯的无线调节,因此,本系统在经济上是可行的。2.1.3 操作可能性软件界面的友好性,操作界面简洁大方、布局合理,用户很容易上手。软件开发成本低,现有安卓手机即可提供该系统开发工作需要的所有硬件设备环境。软件程序开发是否能够取得成功,一是市场的需求,二是程序开发
22、所需要软件开发工具,以及开发技术和当时硬件的发展水平。从这两个方面而言,基于WiFi的只能LED调光APP设计的操作性是可行的。2.2 开发工具2.2.1 Java android程序设计语言Android是基于Linux内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统,早期由Google开发,后由开放手持设备联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。底层Linux内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以Java编写。应用程序Android以J
23、ava为编程语言,使接口到功能,都有层出不穷的变化,其中Activity等同于J2ME的MIDlet,一个 Activity 类(class)负责创建视窗(window),一个活动中的Activity就是在 foreground(前景)模式,背景运行的程序叫做Service。两者之间通过由ServiceConnection和AIDL连结,达到复数程序同时运行的效果。如果运行中的 Activity 全部画面被其他 Activity 取代时,该 Activity 便被停止(stopped),甚至被系统清除(kill)。View等同于J2ME的Displayable,程序人员可以通过 View 类与
24、“XML layout”档将UI放置在视窗上,Android 1.5的版本可以利用 View 打造出所谓的 Widgets,其实Widget只是View的一种,所以可以使用xml来设计layout,HTC的Android Hero手机即含有大量的widget。至于ViewGroup 是各种layout 的基础抽象类(abstract class),ViewGroup之内还可以有ViewGroup。View的构造函数不需要再Activity中调用,但是Displayable的是必须的,在Activity 中,要通过findViewById()来从XML 中取得View,Android的View类
25、的显示很大程度上是从XML中读取的。View 与事件(event)息息相关,两者之间通过Listener 结合在一起,每一个View都可以注册一个event listener,例如:当View要处理用户触碰(touch)的事件时,就要向Android框架注册View.OnClickListener。另外还有Image等同于J2ME的BitMap。中介软件操作系统与应用程序的沟通桥梁,并用分为两层:函数层(Library)和虚拟机(Virtual Machine)。 Bionic是 Android 改良libc的版本。Android 同时包含了Webkit,所谓的Webkit 就是Apple S
26、afari 浏览器背后的引擎。Surface flinger 是就2D或3D的内容显示到屏幕上。Android使用工具链(Toolchain)为Google自制的Bionic Libc。Android采用OpenCORE作为基础多媒体框架。OpenCORE可分7大块:PVPlayer、PVAuthor、Codec、PacketVideo Multimedia Framework(PVMF)、Operating System Compatibility Library(OSCL)、Common、OpenMAX。Android 使用skia 为核心图形引擎,搭配OpenGL/ES。skia与Lin
27、ux Cairo功能相当,但相较于Linux Cairo, skia 功能还只是阳春型的。2005年Skia公司被Google收购,2007年初,Skia GL源码被公开,目前Skia 也是Google Chrome 的图形引擎。Android的多媒体数据库采用SQLite数据库系统。数据库又分为共用数据库及私用数据库。用户可通过ContentResolver类(Column)取得共用数据库。Android的中间层多以Java 实现,并且采用特殊的Dalvik 虚拟机(Dalvik Virtual Machine)。Dalvik虚拟机是一种“暂存器型态”(Register Based)的Jav
28、a虚拟机,变量皆存放于暂存器中,虚拟机的指令相对减少。Dalvik虚拟机可以有多个实例(instance), 每个Android应用程序都用一个自属的Dalvik虚拟机来运行,让系统在运行程序时可达到优化。Dalvik 虚拟机并非运行Java字节码(Bytecode),而是运行一种称为.dex格式的文件。硬件抽像层 (Hardware Abstraction Layer)Android 的 HAL(硬件抽像层)是能以封闭源码形式提供硬件驱动模块。HAL 的目的是为了把 Android framework 与 Linux kernel 隔开,让 Android 不至过度依赖 Linux kern
29、el,以达成 kernel independent 的概念,也让 Android framework 的开发能在不考量驱动程序实现的前提下进行发展。HAL stub 是一种代理人(proxy)的概念,stub 是以 *.so 档的形式存在。Stub 向 HAL“提供”操作函数(operations),并由 Android runtime 向 HAL 取得 stub 的 operations,再 callback 这些操作函数。HAL 里包含了许多的 stub(代理人)。Runtime 只要说明“类型”,即 module ID,就可以取得操作函数。编程语言Android 是运行于 Linux k
30、ernel之上,但并不是GNU/Linux。因为在一般GNU/Linux 里支持的功能,Android 大都没有支持,包括Cairo、X11、Alsa、FFmpeg、GTK、Pango及Glibc等都被移除掉了。Android又以bionic 取代Glibc、以Skia 取代Cairo、再以opencore 取代FFmpeg 等等。Android 为了达到商业应用,必须移除被GNU GPL授权证所约束的部份,例如Android将驱动程序移到 userspace,使得Linux driver 与 Linux kernel彻底分开。bionic/libc/kernel/ 并非标准的kernel h
31、eader files。Android 的 kernel header 是利用工具由 Linux kernel header 所产生的,这样做是为了保留常数、数据结构与宏。目前Android 的 Linux kernel控制包括安全(Security),存储器管理(Memory Management),程序管理(Process Management),网络堆栈(Network Stack),驱动程序模型(Driver Model)等。下载Android源码之前,先要安装其构建工具 Repo来初始化源码。Repo 是 Android 用来辅助Git工作的一个工具。2.2.2 My Eclipse
32、程序开发平台My Eclipse企业级工作平台(My Eclipse Enterprise Workbench ,简称My Eclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, Java Android, CS , Javascript, Spring , SQ , Hibernate。My Eclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,My Ec
33、lipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。My Eclipse目前支持Java Servlet, AJAX, Java Android, JSF, Struts, Spring, Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说My Eclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具。1根据官方最新消息,My Eclipse 2013已经正式发布!My Eclipse 20132支持HTML5、JQuery和主流的Javascript 库。随着My Eclipse 2013支持Html5,你可以添加音频、视频和A
34、PI元素到你的项目,从而为移动设备创建复杂的Web应用程序。你甚至还可以通过HTML5 可视化设计器设计令人难以置信的用户界面。同时,随着My Eclipse 2013支持JQuery,你可以通过插件提升性能,并添加动画效果到设计中。在结构上,My Eclipse的特征可以被分为7类:1JavaEE模型2 WEB开发工具3EJB开发工具4应用程序服务器的连接器5 JavaEE项目部署服务6数据库服务7 MyEclipse整合帮助对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下
35、,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse5.5以前版本需先安装Eclipse。MyEclipse5.5以后版本安装时不需安装Eclipse。3 需求分析3.1 需求分析需求分析也称可行性研究,是决策部门在采取一项重大改革或投资行动之前,对该项目的必要性和可能性进行分析与论证的活动。可行性分析已被广泛应用于新产品开发、基建、工业企业、交通运输、商业设施等项目投资的多个领域。在展开一项开发行动之前,必须对用户提出的目标的必要性和可能性进行必要的论证。在系统调
36、查分析的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。根据本系统操作流程,了解了各层对象的功能需求,分析得出了本系统使用者的功能模块图,如图下所示:图3.1 系统功能模块图3.2 课题研究内容以及解决的问题3.2.1本课题要研究的内容1. WiFi通信模块;2. 智能调光的功能模块;3. 美观的用户界面设计。3.2.2解决的主要问题1. 具备WiFi通讯功能,能够通过家用无线路由器组成的局域网与其他设备终端(室内机,移动终端(IO
37、S,Android)进行通讯,从而可以通过其他终端设备实现对灯光的开,关,调光控制等。2. 基层通讯采用UDP协议,控制协议需要具备安全,可靠,可扩展的特点。WiFi信号符合国家相关行业的技术标准。3. 每一个控制器都具备在系统中唯一识别自己的机制,在有多个控制器共存的系统里,控制器能够被准确,唯一的识别出来。4. 能实现灯光的开关控制,能实现灯光的亮度调节控制。5. 能反馈当前灯光的开关状态,其他控制终端可以得到当前灯光是开,还是关的状态,并显示给使用者。6. 对于亮度可调的灯光,当灯光是开的状态的时候,能够得到当前灯光的亮度值,其他控制终端可以得到当前灯光的亮度值并以某种方式显示给使用者。
38、7. 实现24小时的无故障的控制 。8. 良好的用户体验,和美观,人性化的界面设计4 系统实现4.1 配置路由器配置路由器的DHCP网段为192.168.3.0192.168.3.254配置路由器的网关为:192.168.3.1如下图配置:图4.1 配置路由器4.2 安装Android手机App将smartLed.apk安装到手机上,安装完成后图标如下图所示:图4.2 APP图标4.3 连接智能LED电路4.3.1 连接智能LED电源本次设计的硬件电路需要12V的电源电压,电源模块如下图所示:图4.3 电源模块将电源插头连接到开发板上给设备供电,如下图所示:图4.4 供电插头4.3.2 连接网
39、络网线一端连接电路板,一端连接路由器。将网线插到路由器的lan口上,如下图所示:图4.5 开发板网线接口图4.6 路由器网线接口4.3.3 等待智能LED网络连接好观察电路板上的网络口,若网口的灯持续亮着并且有稍微的闪动,则说明电路板已经和路由器连接。也可以使用ping命令,通过电脑ping 192.168.3.105 -t来检查电路板是否连接上。4.4 搜索和使用智能LED打开手机的SmartLed程序,点击搜索按钮,搜索到无线路由器的IP地址进行连接,如下图所示: 图4.7 连接WiFi4.5 APP主界面连接到WiFi之后就进入APP主界面,可以看到通过此程序可以对LED灯进行亮度调节,
40、饱和度调节,还可以进行RGB调色,以及控制LED闪烁频率等功能,如下图所示:图4.8 APP主界面4.6 调色功能调节蓝色和绿色就可以将LED灯设置成紫色,如下图所示:图4.9 LED灯调色4.7 亮度调节通过亮度调节功能可以对LED灯的亮度进行调节,如下图所示:图4.10 LED灯亮度调节4.8 频率调节通过频率调节可以让LED灯以不同频率进行闪烁,闪烁功能无法截图查看,请老师看验机操作。5 程序测试与维护基于WiFi的只能LED调光APP在完成系统开发,投入正常运行之后,就进入了系统运行与维护阶段。5.1 系统的配置1、硬件配置要求:CPU:2GHz以上。 内存:1GB以上。机身储存:5G
41、B以上(可用空间最好在3GB以上)。2、软件配置要求:Android操作平台。5.2 系统的维护系统维护的目的是保证管理信息系统正常而可靠地运行,并能使系统不断得到改善和提高,以充分发挥作用。换言之,系统维护就是为了保证系统中的各个要素随着环境的变化始终处于最新的、正确的工作状态。系统维护的工作量往往是很大的,其费用大约占整个生命周期的60%,所以我们必须对系统维护给予足够的重视。1、系统维护的内容按照维护对象的不同,系统维护的内容可分为以下几类:(1)系统应用程序维护(2)数据维护(3)代码维护(4)硬件设备维护2、系统维护的类型系统维护的重点是系统应用软件的维护工作,按照软件维护的不同性质
42、,可以划分为下面四种类型: (1)纠错性维护:诊断和修正系统中遗留的错误。(2)适应性维护:使系统适用环境的变化而进行的维护。(3)完善性维护:为满足用户的需求而进行的维护。(4)预防性维护:为将要发生的变化或调整而进行的主动性维护。3、系统维护的组织与管理系统维护工作,首先必须建立一个维护组织,确定进行维护工作所应遵循的原则和规范化的过程,此外还应建立一套适用于具体系统维护过程的文档及管理措施,以及进行复审的标准。5.3 系统测试在Java Android程序开发过程中采用了多种措施保证软件质量,但是实际开发过程中还是不可避免地会产生差错,系统中通常可能隐藏着错误和缺陷,不经周密测试的系统投
43、入运行,将会造成难以想象的后果,因此系统测试是程序开发过程中为保证软件质量必须进行的工作。大量统计资料表明,系统测试的工作量往往占Java Android程序开发总工作量的40%以上。因此,我们必须重视测试工作。由于程序中隐藏的缺陷只在特定的环境下才有可靠显露,系统缺陷通常是由于对某些特定情况考虑不周造成的。因此测试不是为了表明程序正确;成功的测试也不是没有发现错误的测试。有意义的软件测试应该是从“破坏”软件系统的角度出发,精心设计最有可以暴露程序系统缺陷的测试方案。因此软件测试的目标应该是以尽可能少的代价和时间找出软件系统中潜在的错误和缺陷。从产品角度看,测试计划中的测试项目包括软件结构中的
44、分系统层、子系统层、功能模块层、程序模块层中的各类模块,从测试本身看,分为单元测试,组合测试,确认测试等。测试对象是随着阶段而异的,最基本、最初的测试是单元测试,后面的组合测试、确认测试都是以被测过的模块作为测试对象的。在具体的测试中,一般应遵循以下原则:由程序设计者之外的人进行测试;测试用例应由两部分组成:输入数据和预期输出结果;应选用不合理的输入数据与非法输入测试;不仅要检验程序是否实现预期功能,还应检查程序是否做了不应该做的工作;集中测试容易出错的程序模块;对程序修改以后,必须重新进行测试。在开发本系统时,为了使系统能够稳定运行,对本系统进行了有针对性的全面测试,采取的方式是:(1)按钮
45、项测试:为了保证每一个按钮项能够正确实现系统设计的功能,我把相关的基础数据,基本上全部输入到本系统中,并对每一个按钮项进行反复的增加、删除、修改等操作,从而保证了按钮功能的正确实现。(2)数据跟踪:完成按钮项测试后,我又对系统内的每一个数据进行了跟踪。经过实践证实,说明该功能完全正常,对其它的功能模块也进行了类似的设置。(3)综合测试:在以上测试的基础上对系统功能进行了整体的测试,依次来检验系统功能是否符合系统设计的要求。结 论通过几个月的努力,基于WiFi的只能LED调光APP在指导老师的全心指导下,在同学的积极配合与帮助下,基本功能顺利完成。我学到了不少关于Java Android和My
46、Eclipse的知识。开发时遇到了许多的困难,但是通过自己的努力,还有老师同学们的帮助,最终还是迎刃而解了。在系统的开发过程中,充分的借鉴了开源社区的优秀代码段和设计思想,使用面向对象的编程方式,完整的实现了系统的需求。而且使用到了模版和程序分离的模式,对于系统管理员来说,前台的设计工作将变的更加轻松。而优秀的程序开发平台My Eclipse本身所具有的良好性能,对于繁杂而且庞大的数据处理有明显的优势,这就为系统的使用提供了稳定性和安全性。然而,作为基于WiFi的只能LED调光APP,在数据信息管理实现过程中,本身需要有良好的性能来防范可能出现的任何漏洞,对程序代码本身的安全性要求相当高,从这个方面来看,还需要进一步的工作来完善,在确保功能流程的前提下为用户提供体验性好而且可信任的服务。参考文献1 李刚. 疯狂 Android 讲义(第二版) M. 北京: 电子工业出版社, 2013.2 朱生, 牟星亮, 单康康等. 基于 Android 平台的应用程序开发研究 J. 网络安全技术与应用, 2013, (10): 46-47, 64.3 姚昱旻, 刘卫国. Android 的架构与应用开发研究 J. 计算机系统应用, 2008,17(11): 110-112, 24. 4 Android SDK 程序设计与开发范例/陈会安著 .北