智能家居的远程通信关键技术研究*

2020-07-25 06:56雷思敏蔡俊陈龙温如春
科技与创新 2020年14期
关键词:服务端理工大学指令

雷思敏,蔡俊,陈龙,温如春

智能家居的远程通信关键技术研究*

雷思敏,蔡俊,陈龙,温如春

(江西理工大学 电气工程与自动化学院,江西 赣州 341000)

为了实现智能家居远程控制技术,基于套接字技术建立了远程通信模式。在智能家居应用中设计了服务端和客户端应用程序。通过对通信系统进行读写测试,实现了简单、高效的数据通信。

智能家居;远程通信;套接字;家居环境

智能家居系统是将家电设备控制与家居环境调节紧密结合的网络化智能控制和管理系统。智能家居的控制分为内部控制和远程控制,内部控制保证家居设备之间协调工作,远程控制负责异地环境下的家居调控。传统家居只能进行内部控制,应用范围受限。远程通信技术是实现智能家居远程控制功能的基础,也是区别智能家居与传统家居的关键。本文基于套接字技术研究并实现了智能家居系统中手机端和家居系统的远程通信功能。

1 功能设计

智能家居设计的根本目的是营造一个更为高效、人性化的家居环境,从用户层面看,设计需要实现的功能应该包含用户注册登录、实时获取室内环境参数(温湿度和烟雾浓度)等。目前,远程通信通常基于套接字Socket实现。在一台网络设备上选择一个空闲端口来新建一个套接字,另一台设备可以通过套接字在网络中找到该设备所监听端口号对应的程序,从而实现两个进程间的信息传输。

2 远程通信实现

2.1 消息格式规定

服务端需要向客户端发送家居环境参数以及家居状态等数据,客户端需要向服务端发送对家居设备的调控指令,且双方收到消息后需要进行回复。

请求指令和响应均以字符串格式发送,各关键信息之间用空格分开以便解析指令内容,获取指令功能以及该功能所需参数。服务器分割出关键信息后对数据库进行相应操作或将指令转发至控制端,执行完成后向客户端返回提示信息。

2.2 通信模式建立

设计所选通信协议为TCP协议。基于TCP协议的Socket程序调用过程中,服务端程序创建服务套接字之后,需要为这个套接字赋予一个端口号以便客户端找到该通信进程。客户端创建套接字时则需要另外指定服务端通信程序的地址并调用connect函数建立连接。连接建立成功后,服务端调用1个accept函数即可取出连接进行处理。

3 服务端软件设计

服务端通信程序是一个在服务器上保持运行状态的进程,该进程使用JAVA编写再打包成JAR包运行。该程序除了需要和客户端进行远程通信完成查询功能,还需要对数据库进行操作以完成用户的注册登录等请求,如图1所示。程序启动后,新建一个ServerSocket,等待连接。连接成功并收到请求后,在前述请求指令标准的基础上,根据所接收字符串内容判断客户请求内容,分割提取关键信息然后进行相应处理。

图1 服务端程序设计流程

注册登录等用户个人信息相关请求需要在服务端操作数据库来实现。查询数据,则需要服务端配合控制端实现。控制器连接服务器的关键在于网络模块的使用,设计选用GPRS GA6模块,通过发送AT指令“AT+CIPSTART=TCP,IP,PORT”向服务器发起连接。客户端发起查询请求时通信过程如图2所示。服务端作为消息中转媒介,传递查询请求反馈查询结果。

图2 查询请求过程

4 客户端软件设计

客户端软件面向用户,需要设计用户界面,包括注册、登录、参数显示界面等。使用相对布局,基本固定不同功能区域的相对位置,以便针对不同终端的屏幕进行自动调整。

远程通信功能使用Java.net.Socket类新建Socket连接服务端的ServerSocket,如图3所示。登录完成后系统跳转至个人界面,即可发送查询请求。信息的传输通过套接字分别获取输入流和输出流。对输入流使用read方法即可获取服务端发来的信息,对输出流使用write方法即可向服务端发送指令。另外,在Android程序中需要在子线程中建立TCP连接,避免直接在主线程进行网络通信,以防止程序出现崩溃闪退等问题。

客户端程序设计流程如图3所示。

图3 客户端程序设计流程

5 系统测试

确认控制器和各类传感器以及网络模块通讯正常,客户端APP处于正常联网状态且与硬件系统保持足够远的距离,分别连接服务器。使用处于正常联网状态的客户端APP在20 km外和服务端以及控制端进行远程通信,对客户端发出请求和请求结果进行记录。测试结果如表1所示。其中,参数平均偏差是指客户端显示数值和实际数值的偏差平均值。

表1 远程通信测试结果

操作操作次数操作成功次数参数平均偏差 注册请求300300/ 登录请求300300/ 查询温度请求3002990.14 查询湿度请求3002980.26

由表1可见,系统的各类请求操作成功次数趋近100%,查询请求因和控制端硬件设备状态相关,偶有失败情况发生。从数值统计上看,温度平均偏差值为0.14 ℃,湿度平均偏差值为0.26%,远程通信状态可靠。

6 结束语

论文基于TCP套接字实现了智能家居中的远程通信功能设计,用户通过服务端对数据库进行操作实现注册登录功能,实时查询温湿度等室内环境参数。基于套接字技术实现智能家居中的远程通信简单有效,让居家环境更为舒适、随性,符合现代家居发展趋势。

[1]魏振涛,浦晓亮,徐向群,等.基于物联网技术的智能家居的发展[J].科技与创新,2019(13):97-98.

[2]刘哲.基于移动互联技术的智能家居系统设计研究[J].信息记录材料,2019,20(5):201-202.

[3]李时辉.基于无线传感器网络的温室智能监测系统研究[J].江西理工大学学报,2013(1):70-73.

[4]陈为民,胡向臻.基于智能视频监控的安防系统设计[J].江西理工大学学报,2013(1):74-78.

[5]凌滨,王战金,张树帅,等.基于云平台的智能家居系统研究与实现[J].科技创新与生产力,2019(12):71-73,76.

TP29

A

10.15913/j.cnki.kjycx.2020.14.014

2095-6835(2020)14-0045-02

2019年江西理工大学大学生创新创业训练计划项目(编号:DC2019-063);2018年江西省教育厅教改课题(编号:JXYJG-2018-125);2018年江西省教育厅教改课题(编号:JXJG-18-7-24);2019年国家级大学生创新创业训练计划项目(编号:201910407021)

雷思敏(1997—),女,江西南昌人,本科,研究方向为自动化。

温如春(1972—),女,江西赣州人,硕士,江西理工大学副教授,研究方向为嵌入式系统。

〔编辑:张思楠〕

猜你喜欢
服务端理工大学指令
昆明理工大学
《太原理工大学学报》第七届编委会
基于时间同步1553B协议的开关指令协同管理方法
《单一形状固定循环指令G90车外圆仿真》教案设计
新机研制中总装装配指令策划研究
多人联机对战游戏的设计与实现
基于三层结构下机房管理系统的实现分析
基于三层结构下机房管理系统的实现分析
Mathematical models for the repairs of the Kariba Dam
共享