基于物联网的共享洗衣机平台设计与实现
陈添威;韩磊;胡建鹏;荆翔
【摘 要】基于物联网设计共享洗衣机平台,通过将微控制器、通用分组无线服务技术(GPRS)等硬件模块与云计算、移动计算技术相结合,改造传统洗衣机控制系统,实现在手机端进行洗衣预约、在线支付、模式选择等功能.用户可以通过公众平台或手机APP查询洗衣机运行状态的实时信息,解决了传统投币式洗衣机需排队等待、现金支付、洗衣模式单一等弊端.从投放初期的市场反响来看,共享洗衣机平台既方便用户自助洗衣,又降低商家运营成本,有较好的市场前景.
【期刊名称】《上海工程技术大学学报》
【年(卷),期】2018(032)002
【总页数】5页(P179-183)
【关键词】物联网;共享洗衣机;通用分组无线服务技术(GPRS)
【作 者】陈添威;韩磊;胡建鹏;荆翔
【作者单位】上海工程技术大学电子电气工程学院,上海201620;上海工程技术大学电子电气工程学院,上海201620;上海工程技术大学电子电气工程学院,上海201620;上海工程技术大学电子电气工程学院,上海201620
【正文语种】中 文
【中图分类】TP393.4
随着共享经济概念的流行,衍生出大量的共享平台,如共享单车、滴滴出行和知乎等具有相当规模和一定名气的共享平台[1].共享经济模式的兴起不仅为人们日常生活提供了便利,打破了人们过去对物品私有化的观念,也在一定程度上拉动了IT行业软硬件生产、无线通信领域、信息终端等产业的高速发展.在2005年的信息社会世界峰会上,物联网概念首次被明确.大会指出信息与通信技术的目标已经从满足人与人之间的沟通发展到人与物、物与物之间的沟通.通俗地讲,物联网就是物物相连的互联网[2].
共享洗衣机平台的设计与实现是基于共享经济这一理念实现传统设备的物联网改造.目前国
内大多数高校、酒店、公共宿舍楼等仍使用老式的投币洗衣机或刷卡洗衣机[3],但工作时间不可预约,导致许多客户排队等待;洗衣模式单一,导致许多名贵衣物可能损坏;现金支付且需要硬币等诸多弊端限制了投币洗衣机在市场上的进一步发展,于是基于物联网的共享洗衣机应运而生[4].
1 平台总体方案设计
本平台的设计既要有利于用户轻松实现人机交互,不用排队洗衣,又要有利于运营商合理安排设备,提高效率.在设计之初充分考虑到投币洗衣机没有传送实时工作状态的缺点,通过加入通信服务器将用户手机端与洗衣机端连接起来,平台体系结构如图1所示.平台总体设计方案从软件设计与硬件设计两方面出发.软件设计方面,首先进行测试版的Web App编写,经过实际测试后再移植到主流手机操作系统iOS和Android上;接着研究开发具有可扩展、响应速度快的Web云端服务器实施方案;同时,运用弹性伸缩云计算技术,在面对客户数量剧增的情况下能够第一时间提高服务器处理能力,避免出现服务器崩溃、服务请求响应不及时的情况.硬件设计方面主要是洗衣机的显示部分、通信部分和控制部分.在软硬件均设计完成后进行系统联调,完善总体功能.
图1 共享洗衣机平台体系结构Fig.1 Architecture of sharing washing machine platform
根据平台总体设计方案,具体再划分成5个小模块,分别为云端服务器、通用分组无线服务技术(GPRS)模块、单片机信息处理模块、洗衣机控制模块和手机客户端模块.系统软硬件模块结构如图2所示.系统的基本工作流程为:使用单片机控制GPRS模块与云端服务器建立通信;从云端服务器获取洗衣机的工作状态以及用户信息,回传的信息就是AT指令;服务器端设置一个监听端口,在SIM300处设置端口连接,待GPRS模块连通后就可以收发数据;对接收的数据进行判定是否收发完毕,既判定洗衣作业是否完成,又将相应的判定结果返回到云端服务器,同时发送信息到客户端,这样客户即可实时查看衣物清洗状态信息.
图2 系统软硬件模块结构图Fig.2 Software and hardware modules structure of washing machine
2 软件设计
2.1 Web App开发设计
jquery源码在线
由于研发主流手机操作系统的App成本过高且耗时太多,所以首先在网页上进行测试版的We
b App开发,步骤如下.
1) 分析用户需求:客户端业务流程图如图3所示.该App需要具有查询空闲洗衣机,实现一键预约以及上门取送衣物,根据衣物种类选择不同清洗模式以及在线支付等主要功能.次要功能主要为开设个人中心模块,让用户完成注册,每次洗衣完成后得到相应积分并以此来进行相应的活动来促销,提供较好的用户使用体验.
2) 产品原型设计:调查用户的使用习惯并以此为基础进行分析,设计业务流程图以及大致要实现的功能,以此为基础设计App的使用结构,模拟出界面基本结构,进行界面的初步搭建.
3) UI视觉设计:美化产品原型的页面设计,设计出既人性化又简单明了的符合用户审美的操作界面.
图3 客户端业务流程图Fig.3 Business process diagram of clients
4) 数据库搭建:分析用户需求并按照整理出来的功能数据处理情况,建立合理的数据库表结构,优化数据处理算法,提升数据的处理效率,保证用户在使用App过程中数据的安全性、准确性、稳定性和及时性.
5) Web服务端开发:采用PHP+MySQL进行开发,基于Web开发的最佳组合“LAMP模式”(Linux 操作系统、Apache网络服务器、MySQl 数据库、PHP语言).
6) iOS客户端开发和Android客户端开发:在iOS客户端以Xcode为平台,运用适用于最新系统iOS 10的swift语言进行程序编译.使用CoreLocation进行定位,实现一键预约、定位推荐的功能.使用AVFoundation框架读取与解密二维码,通过向支付宝或等在线支付平台申请进程识别号(PID)和下载软件开发工具包(SDK)来实现扫码洗衣和在线支付的功能;Android客户端则在基于Java的开放源代码的可扩展开发平台Eclipse上进行开发.使用Eclipse+JDK+Android SDK+Android Developer Tools组合开发Android应用,是目前非常主流的Android开发平台[5].
2.2 云端服务器
在调研国内较成功的共享单车云端服务器设计方法后,本平台设置系统管理员、运营管理员、商户和用户等不同角,利用基于角的权限访问控制(RBAC)实现用户角的访问控制.此思想是在用户和访问权限之间引入角的概念,将用户和角联系起来,通过对角的授权来控制用户对系统权限和功能的访问.角是访问权限的集合,通过赋予用户不同的角
使其获得角所拥有的访问权限.一个用户可拥有多个角,一个角可授权给多个用户;一个角可包含多个权限,一个权限可被多个角包含.用户通过角享有权限,它不直接与权限相关联,权限对存取对象的操作许可是通过角实现的.系统利用RBAC可更好地管理不同用户和权限,提高系统安全和稳定性.
通过第三方短信服务器(SP)提供的短信应用程序编程接口(API)发送接口与系统中相关模块集成,实现短信发送.在实际应用中将其设置为提前5~10 min提示用户其衣物即将清洗完毕,这可以有效地避免因客户忘记取回衣物导致洗衣机长时间处于待机状态.利用PHP结合jQuery框架中的Ajax实现计划任务、定时执行功能.通过用户设定相关计划任务,系统定时检测任务时间是否到达,时间到时,相应任务被执行,并将执行结果即时显示到界面上,达到数据信息同步更新.利用Node.js实现信息推送功能,该平台的构建基于Chrome's JavaScript runtime对引擎Google V8进行封装,是一套用来编写高性能网络服务器的JavaScrip工具包.系统利用Nodejs的扩展Juggernaut.js做服务端,PHP页面和Android应用作为客户端实现消息推送.
3 硬件设计
3.1 微控制器(MCU)
洗衣机控制器各部分功能电路是一系列相对独立的模块,各模块在单片机的控制下完成各自功能.本系统从显示部分、通信部分和控制部分3部分进行设计,控制器结构如图4所示.
图4 洗衣机控制器结构图Fig.4 Architecture of MCU

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。