基于android平台的智能电表服务设计与实现 大学论文Word文档格式.docx
《基于android平台的智能电表服务设计与实现 大学论文Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于android平台的智能电表服务设计与实现 大学论文Word文档格式.docx(39页珍藏版)》请在冰豆网上搜索。
App;
Android;
MyEclipse.
毕业设计(论文)外文摘要
Abstract:
Thesituationofenergyconsumptionchangedsuddenlybecausetheawarenessofenvironmentandenergyintheworldinrecentyears.Manypeoplepayattentiontosaveenergyinmostdevelopedcountriesandthatrenewableenergycancausethepowersystemsuchassolarenergyandwind.Sothesituationisalsothoughtofabigquestion.Sopeopleusethesmartmetertosaveenergyandkeepthepowersystemstablebecauseofthequestion.Thesmartmeteristhesmartgrid’sterminalandithasbeendifferentfromtraditionalmeter.Besidesthatithasalltraditionalmeter’sfunctions.Itcancontroluserend、transportmorekindsofdata、haveTwo-wayCommunicationfunctionandpreventstealenergyforadapttousingsmartgridandnewsourcesofenergy,itrepresentsafuturedirectionoftheuserintelligentterminal.
XXXisanapplicationforsmartmeters.Thebillionsofelectricityistransportedtothedemandsideeveryday,butweknowverylittleaboutenergyconsumptionwhetherhome-energy,business-energyorfactory-energy.XXXbuiltonanexcellentsolutionwhichusedtomanagetheenergyreasonably.Notonlyitcancollect,storageanduploadthepowerconsumptionwhateverthetypebutcanbecompatiblewithanyprotocol.Atlast,thepowerconsumptionwillbecollectedintheintelligentenergymanagementplatform,thenitwillgiveaprofessionalenergyreportafteranalyzingthedata.SoyoucanknowtheenergyconsumptionbyXXXwhereveryouare.
Themobilesoftwarewasdevelopedbasedonandroidplatform.AndroidisafreeoperatingsystemwhichbasedonLinux,itgivesopensourcecode.Googlesharesoversightoverandroidwiththeopenhandsetalliance,theyusedmaturesoftwaretodevelopitandandroidplaysanimportantroleinenterprisedevelopment.
Keywords:
WarehouseManagementSystem;
Database;
Java;
MyEclipse.
1绪论
从生产到使用,每天,数以亿计的电力被源源不断的输送到需求侧。
1.1课题的研究背景与意义
1.1.1课题的研究背景
近年来,因环境和能源问题意识在全球范围内高涨,情况突然发生了变化。
在这些潮流的推动下,智能电表的导入目的又增加两个。
一个是让用户依次掌握电力或燃气的使用量,并督促其减少使用,另一个是通过与电力/燃气公司和用户的EMS联动,达到总体供求平衡。
前者已经在部分国家进入实用阶段,从智能电表获取并显示信息的住宅用显示器已在美国等地实现产品化。
智能电表不仅会对电力及燃气系统,还会对家庭、企业、家电、通信及电动汽车等带来冲击。
由智能电表构建的基础设施将变成新服务和技术诞生成长的“摇篮”。
ADR可以说是这方面最典型的例子。
在智能电表进步的同时,兼顾“生活舒适性”和“节能性”的先进ADR服务和技术也会问世,为了与之对应,HEMS、BEMS、各种家电及电动汽车也有望取得进步。
当前世界各国为求电力使用的安全、品质及节约,均致力于智能电网基础建设发展。
智能电网成功运作的重要环节在于须完整且即时的汇集各电力用户用电资讯,因而处于供用电两端中介角色的先进读表基础建设(AdvancedMeteringinfrastructure,AMI)便成为智能电网顺利发展的关键设备;
而要完成AMI布建的基础建设,首先必须安装智能电表,故也促使世界各国优先投入智能电表建置。
1.1.2课题的研究意义
XXX建立在一套优秀的能源管理解决方案之上,使用采集器帮助您洞悉能源全局,它可以把能耗数据进行收集,存储,上传,不管下行采集是何种能耗形式,何种通信协议都能够完美兼容,最后这些数据在云智慧能源管理平台汇总,通过大数据分析,提供出专业的能源报告,无论你身在何处,通过XXXApp都能轻松接入平台,掌握能耗状态。
1.2 课题内容简介
本课题是做一款为智能电表服务的App,通过本App都能轻松接入平台,掌握能耗状态,功能模块如下:
1.系统各功能模块
(1)产品模块。
该模块即主要实现了对产品信息的展示和商品交易的一些操作,例如查看产品的详情,规格参数等,可以通过收藏和加入购物车对商品进行交易。
(2)应用功能模块:
该模块主要是服务于产品使用,采集到的数据在云智慧能源管理平台汇总,通过大数据分析,提供出专业的能源报告,无论你身在何处,通过XXXApp都能轻松接入平台,掌握能耗状态
(3)管理功能模块:
该模块主要包括回单管理,实时告警,历史告警,采集器异常告警,我的关注这几个功能。
(4)个人信息模块:
个人信息模块主要提供了一些个性化设置以及个人信息的查看,比如个人设备的订单,个人收藏以及购物车内容信息等,也包括了对智能电表设备的评价与分析等。
个性化设置主要体现在个人头像的设置,个人地址的设置等。
该模块还提供了注销当前登录以及更新版本的功能。
(5)登录模块:
XXX提供出两种登录方式,一是本地注册登录,另一个是第三方登录,可提供QQ,新浪微博以及微信登录。
1.3课题的调研
XXX是一款为智能电表服务的App,从生产到使用,每天,数以亿计的电力被源源不断的输送到需求侧。
在开发的准备过程中,我做了相关的调研:
(1)了解智能电表的操作。
(2)与云智慧能源管理平台的开发人员交流理解平台系统。
(3)学习基于Android开发的相关专业技术,有一定的系统开发功底。
(4)具有对复杂表进行综合处理的能力。
进过以上调研,本人在此基本上开发一个XXX智能电表服务app。
1.4可行性分析
1.4.1 技术可行性
开发环境:
(1)操作系统:
WindowsXPServer及以上服务器版本;
(2)数据库管理系统:
SQLServer2005;
(3)Web服务器:
apachetomcat6.0.14;
(4)编程工具:
编程软件为Myeclipse、使用基于android的开发框架、编程语言选用JAVA。
几个技术的介绍及优点
(1)Android:
Android以Java为编程语言,使接口到功能,都有层出不穷的变化,其中Activity等同于J2ME的MIDlet,一个Activity类(class)负责创建视窗(window),一个活动中的Activity就是在foreground(前景)模式,背景运行的程序叫做Service。
两者之间通过由ServiceConnection和AIDL连结,达到复数程序同时运行的效果。
如果运行中的Activity全部画面被其他Activity取代时,该Activity便被停止(stopped),甚至被系统清除(kill)。
View等同于J2ME的Displayable,程序人员可以通过View类与“XMLlayout”档将UI放置在视窗上,Android1.5的版本可以利用View打造出所谓的Widgets,其实Widget只是View的一种,所以可以使用xml来设计layout,HTC的AndroidHero手机即含有大量的widget。
至于ViewGroup是各种layout的基础抽象类(abstractclass),ViewGroup之内还可以有ViewGroup。
View的构造函数不需要再Activity中调用,但是Displayable的是必须的,在Activity中,要通过findViewById()来从XML中取得View,Android的View类的显示很大程度上是从XML中读取的。
View与事件(event)息息相关,两者之间通过Listener结合在一起,每一个View都可以注册一个eventlistener,例如:
当View要处理用户触碰(touch)的事件时,就要向Android框架注册View.OnClickListener。
另外还有Image等同于J2ME的BitMap。
(2)JAVA:
Java是由SunMicrosystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。
由JamesGosling和同事们共同研发,并在1995年正式推出。
Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的。
1995年更名为Java,并重新设计用于开发Internet应用程序。
用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:
跨平台、动态Web、Internet计算。
从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaapplet。
另一方面,Java技术也不断更新。
Java自面世后就非常流行,发展迅速,对C++语言形成有力冲击。
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
2010年Oracle公司收购SunMicrosystems。
(3)ADT:
AndroidDevelopmentTools
在Eclipse编译IDE环境中,需安装ADT(AndroidDeveloperTools)Plug-in,这是Android在Eclipse上的开发工具。
下载以及安装可以参照:
GoogleAndroid,Eclipse,JDK.[1]
目前Android开发所用的开发工具主要有AndroidStudio、intellijidea、Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。
SDK(SoftwareDevelopmentKit):
一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。
在Android中,它为开发者提供了库文件以及其它开发所用到的工具。
简单理解为开发工具包集合,是整体开发中所用到的工具包,如果你不用Eclipse作为你的开发工具,你就不需要下载ADT,只下载SDK即可开发。
(4)MVC:
MVC是三个单词的缩写,分别为:
模型(Model),视图(View)和控制Controller)。
MVC模式的目的就是实现Web系统的职能分工。
Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。
View层用于与用户的交互,通常用JSP来实现。
Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。
模型是应用程序的主体部分。
模型表示业务数据,或者业务逻辑。
视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。
控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。
1.4.2经济可行性
本app开发只需要简单的开发环境,投资较小,XXX是一款为智能电表服务的App,从生产到使用,每天,数以亿计的电力被源源不断的输送到需求侧。
不管是家用,商用,还是工业用电,我们对它的消耗却知之甚少,XXX建立在一套优秀的能源管理解决方案智商,使用采集器帮助您洞悉能源全局,它可以把能耗数据进行收集,存储,上传,不管下行采集是何种能耗形式,何种通信协议都能够完美兼容,最后这些数据在云智慧能源管理平台汇总,通过大数据分析,提供出专业的能源报告,无论你身在何处,通过XXXApp都能轻松接入平台,掌握能耗状态。
1.4.3 操作可行性
App的操作方法简易可懂,以游客身份与注册会员身份区分,游客可浏览首页产品图片等相关信息,注册后可获得相关应用的权限,如根据节点选择来浏览某天的用电信息以及折线图或者柱状图的趋势图表。
1.4.4法律可行性
本移动app的开发合法合理,是公司企业正规的开发,具有唯一性,合法性,无涉及任何版权问题。
1.5论文各章介绍
第一章引言
介绍课题研究背景、目的与意义、调研、课题内容和可行性分析,以及各章的内容概述。
第二章需求分析
介绍系统各功能模块的主要功能,还介绍系统功能需求分析、业务流、数据流分析、数据字典。
第三章系统设计
介绍了系统总体结构设计,系统数据模型设计以及系统开发工具等内容;
第四章总体模块设计。
介绍系统各功能模块的具体功能,例如产品展示,商城交易,电表应用(采集数据查询,以折线图或者柱状图进行数据对比,查看能耗趋势等),回单管理,个人信息以及登录等功能。
第五章app各功能模块设计
具体的介绍app的每个功能模块以及子功能模块。
第六章用户手册
针对app注册会员,介绍与游客登陆后不同的权限以及操作方法。
第七章系统评价
对本app的优缺点进行总结和评价,提出对该app的进一步发展方向的建议。
2系统需求分析
2.1业务流程分析
2.1.1 系统用例图
图2-1为XXX的系统用例图,游客身份进入app后可直接浏览首页中的产品信息,可以并且可通过第三方登录或者注册来登录来获得更多操作权限。
而注册会员除了获得游客对应的操作权限,还可以在应用功能模块中去使用用电查询,用电分析,用电对比以及远程调控的功能,可以比较直观的看到每个节点在某天的用电情况和折线图用电趋势。
注册会员可以在管理功能界面中使用回单管理,告警信息管理等功能。
在个人中心功能界面,用户可以修改个性信息,比如编辑自己的头像,交易信息的管理,例如订单信息,评论信息等,也可以检查版本更新。
图2-1XXX系统用例图
2.2数据流分析
数据流图的还可以作为分析和设计的工具。
分析员在研究现有的系统时常用系统流程图表达他对这个系统的认识,这种描绘方法形象具体,比较容易验证它的正确性;
但是,开发工程的目标往往不是完全复制现有的系统,而是创造一个能够完成相同的或类似的功能的新系统。
用系统流程图描绘一个系统时,系统的功能和实现每个功能的具体方案是混在一起的。
因此,我们希望以另一种方式进一步总结现有的系统,这种方式应该着重描绘系统所完成的功能而不是系统的物理实现方案。
数据流图是实现这个目标的极好的手段。
通过分析本APP相应实现的功能,可得到以下数据流图:
图2-2数据流图
2.3数据字典
1.名字:
企业代理商
描述:
公司代理商信息
定义:
公司代理商信息=ID+公司名+logourl
2.名字:
商家
商家信息
商家信息=ID+公司代理商ID+商家名
3.名字:
用户
用户信息
用户信息=用户ID+用户名+登陆密码+用户Email
4.名字:
权限信息
权限信息
权限信息表=权限类型ID+权限名+权限类型
5.名字:
用户权限
用户权限
用户信息=用户ID+权限ID
6.名字:
采集器信息
采集器信息
采集器信息=采集器ID+商家ID+采集器编号+采集器类型+采集器名称
7.名字:
电表信息
电表信息=电表ID+采集器ID+电表编号+电表类型+协议类型
8.名字:
回路信息
回路信息
回路信息=回路ID+电表ID+回路类型+回路编号+回路名称
9.名字:
采集器状态信息表
采集器状态信息
采集器状态信息表=采集器的ID+采集器的IP地址+采集器的端口+服务器端口+服务器IP地址+采集器活跃时间
10.名字:
开关控制表
开关控制信息
开关控制表=开关ID+回路ID+读取时间+状态
11.名字:
电力数据表
电力数据信息
电力数据表=ID+回路ID+读取时间+电表数据类型+电压数据+电流数据
12.名字:
温度数据表
温度数据信息
温度数据表=ID+回路ID+读取时间+温度数据
3Application设计
3.1Application总功能结构
本移动分为五个大模块:
XXX商城模块,能耗数据图形模块,采集器回单管理功能模块,个人中心模块和登录模块。
图3-1系统功能模块图
3.2系统数据模型设计
3.2.1XXXApp---E-R图
图3-2E-R图
对应各属性图如下:
公司代理商信息Company(ID,name,logo_url);
商家信息Customer(ID,company_id,name);
App用户信息Appuser(ID,username,password,Email);
权限信息Role(ID,description,name);
用户权限区分User_role(user_id,role_id);
采集器信息Receipt-collector(ID,customer_id,collector_no,collector_type,name);
电表信息Receipt-meter(ID,collector_id,meter_no,meter_type,protocol_type);
回路信息Receipt-circuit(ID,meter_id,circuit_no,circuit_type,name);
采集器状态信息Collector-status(collector_id,collector_ip,collector_port,server_port,server_ip,active_time);
开关控制Data-switch(ID,circuit_id,read_time,status);
电力数据Data-electricity(ID,circuit_id,read_time,