智能手机控制家用电器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
智能手机控制家用电器
一、引言
当前中国市场上,智能手机已经越来越流行。随之而来的智能手机应用软件也多种多样,内容也越来越丰富。如何通过智能手机这个平台来丰富自己产品的应用和功能,已经被许多的开发者所重视,并且市场上也已经出现了许多类似的软件应用。为了给消费者提供一个舒适、方便和高效的使用环境,摒弃掉那些华而不实,只能充作摆设的功能,产品力求以实用性、易用性和人性化为主。二、系统构成
本文设计的系统构成如上图所示。本系统由智能手机和网络家电两组成,这两部分通过无线局域网络连接起来。
(一)智能手机:即现在市场上的使用android或ios等系统的手机。在智能手机上安装家电控制管理软件,即可通过智能手机来控制家用电器。
(二)网络家电:网络家电是将普通家用电器利用数字技术、网络技术及智能控制技术设计改进的新型家电产品。网络家电可以实现互联组成一个家庭内部网络。可见,网络家电技术包括两个层面:首先就是家电之间的互连问题,也就是使不同家电之间能够互相识别,协同工作。第二个层面是解决家电网络的通信,使家庭中的家电能够互相传递信息。要实现家电间互联和信息交换,就需要用到ssdp和http协议。
三、技术原理与实现
(一)ssdp协议:ssdp是一个“简单服务发现协议”,该协议定义了如何在网络上发现网络服务的方法。ssdp也规定了存放在xml 文件中的信息格式。ssdp信息的传送是依靠httpu和httpmu进行的。不论是控制点,或是upnp设备,工作中都必然用到ssdp,设备接入网络之后,要利用它向网络广播自己的存在(广播的信息中还有设备位置的描述),以便尽快与对应的控制点建立联系;控制点则利用ssdp来搜索自己将要控制的设备在哪里.并且可以排除已经存在的设备和控制点,只为新近的或尚未“联络”上的双方服务。智能手机接入局域网落后,会向局域网内保留地址
239.255.255.250:1900发送ssdp协议设备查询指令。路由器收到查询指令后,会在局域网内广播ssdp服务。网内支持ssdp服务的设备收到广播后,会向查询源(智能手机)返回ssdp服务应答指令。该应答指令包含设备的ip地址、server信息设备uid等内容。手机收到应答指令后,即实现设备之间的互联。
本系统使用的ssdp设备查询消息格式如下:
m-search * http/1.1 消息头
host:239.255.255.250:1900 协议保留多播地址和端口man:”ssdp:discover“协议查询的类型
mx:seconds to delay response 设置设备响应最长等待时间st:search target 设置服务查询的目标
(二)http协议:http(超文本传输协议)是互联网上应用最为广泛的一种网络协议。手机与家电之间信息的传递就使用http协
议。
本系统主要使用了http协议中的post方法,格式如下:
post/wan/dvdr/dvdr_ctrl.cgi http/1.1
content-type:application/x-www-form-urlencoded
……
按照http协议格式,把通信信息打包并通过http协议发送到目的家电。java语言库中提供一个http连接的类httpurlconnection,按照类说明配置相关属性就可以实现向目的地址发送数据的功能。实现代码如下:
hp = new url(ip); //访问地址
//开始配置连接属性
urlconnection hpcon = hp.openconnection();httpurlconnection httpurlconnection = (httpurl connection) hpcon;
……
//开始连接
httpurlconnection.connect();
//配置输出流,并发送数据
outputstream outstrm = httpurlconnection.getoutput stream ();
byte[] b= s.getbytes();
……
(三)实现控制家电:家用电器通过http协议接收到智能手机发来的信息后,会根据信息的内容做出相应的动作,比如开/关机、改变音量等。
而随着云技术的发展,也可以使云语音控制融入到控制系统中去,不需要专业的设备,任意一台智能手机或是平板电脑安装上软件即可,开启手机软件,启用监听模式,在声场的覆盖的范围内,即可与系统对话控制电气设备。
四、结语
本文通过对ssdp、http协议的应用,把家用电器的控制扩展到当前流行的智能手机平台上,给用户增添了另一种体验。随着智能手机和网络家电的不断发展,类似这样方便、舒适、人性化的功能会越来越多,越来越完善。
参考文献:
[1]bruce eckel.java编程思想[m].北京:机械工业出版社,2006,3.
[2]余志龙.google android sdk开发范例大全[m].北京:人民邮电出版社,2010,6.