摘要:边缘计算节点连接现场设备网络,起到数据采集、通信联网、安全过滤和运行管理的作用,进而将现场设备域与云端应用域的连接。
关键词:边缘计算;通信协议;Python语言;传感;通信;控制
1 工业物联网组成与边缘计算节点
中国制造2025政策加快工业化与信息化的两化融合步伐,工业物联网及所用数据存储和计算处理等智能设备安装量大幅增加,以满足工业智能化和数字化的需求。从工业物联网的设备域、网关域、应用域功能来看(图1),工业物联网有不同于一般物联网系统的特性和要求。由于工业物联网有严格的连接性、实时性和安全性要求,这些数据如果不经过分析、处理、过滤就直接送到云端,不仅网络带宽无法负荷,云端的服务器也会耗费大量的资源来应对无效或无用的信息从而导致崩溃,而且在一些关键的场合,数据需要被立即处理并作出实时的反馈,如果通过云端再反馈回来,相关的数据已经失去时效性,因此,将关键业务部署于云计算平台将带来通信延时、业务中断和数据安全的风险。
(1)设备域是指构成生产需要的各种现场设备,主要包括智能传感器及仪表、智能制造设备、人机界面、可编程控制器、工业计算机等,通过工业总线组成现场网络。
(2)网关域是连接现场设备域与云端应用域的边缘计算节点设备及软件,起到数据采集、通信联网、安全过滤和运行管理的作用。通过开发部署相应的应用软件,实现数据采集、计算存储和智能处理,获取和集成企业MES及ERP业务数据,进而连接云端应用域实现企业业务上云。
(3)应用域是基于公有云计算平台构建的融合大数据和人工智能的智能物联网平台,具有设备接入、设备解析、设备管理、规则引擎、时序数据库、机器学习等一系列物联网核心产品和服务,帮助开发者快速实现从设备域到应用服务域的无缝连接,高效构建数据分析呈现、远程设备监管、预测性维保等各种物联网应用,帮助工业制造用户快速实现万物互联的商业价值。
2工业物联网边缘计算设备软件体系与协议
2.1 B/S模式的架构
B/S 结构,即 Browser/Server(浏览器/服务器)结构,是随着网络技术的兴起,对 C/S 结构(Client/Server 模式或客户/服务器模式)的一种改进的网络结构。这种网络结构模式以Web 浏览器为客户端最主要的应用软件,采用Internet的http协议标准和Web技术构筑内部网――Intranet,统一了客户端,将系统功能实现的核心部分集中到服务器上,基于Web开发管理信息系统软件,实现信息发布与数据共享。
B/S结构有诸多优点:用户界面友好,操作直观,易满足用户的使用习惯;对用户跨平台支持,可跨平台使用数据库、超文本、多媒体等多种形式的信息;提高了系统的可靠性、整体性、扩展性;客户端只须配置操作系统和Web浏览器,降低了对客户机的软硬件要求;更利于软件的开发、安装、升级,节省开发维护费用;在BS结构下,在很多用户的情况下仍能保持较好的性能。
B/S 模式具有分布性特点,可以随时随地进行查询、浏览等业务处理;业务扩展简单方便,通过增加网页即可增加服务器功能;维护简单方便,只需要改变网页,即可实现所有用户的同步更新;开发简单,共享性强。
2.2 通信协议比较:HTTP与MQTT
工业物联网边缘计算软件与协议密切相关,HTTP和MQTT是最常用的工业物联网开放互联协议,二者都是建立于TCP之上协议。使用安全套接字层(SSL)可以实现安全的传输加密。HTTP是以文档为中心的。MQTT是以数据为中心的,它以字节数组的形式传输数据内容,并不关心内容。
3 基于Python语言开发工业物联网边缘计算软件
下面以DIGI公司Connect Port X4为例介绍边缘计算节点的软件开发(图2)。一端通过Xbee连接无线传感网络――Xbee Sensor传感器模块、SP智能插座、XBee底板,另一端通过以太网连接乐联网物联网云计算平台(www.lewei50.com)。
3.1 Python编程连接现场设备
用import导入XBee传感和驱动设备驱动模块,编写Python代码连接、采集通过Zigbee无线通信连接的XBee设备,包括Xbee Sensor光照/温度传感器、Smart Plug智能插座(内置温度传感器、电流传感器)、Xbee扩展底板等三个设备,通过命令行输出结果,根据现场控制要求,可以编写复杂的控制程序。
期刊文章分类查询,尽在期刊图书馆
3.2 Python编程连接乐联网
将4.1获得的数据传送至乐联网物联网数据平台,并通过平台功能将数据可视化,需要按照乐联网的格式要求编写从X4设备发送程序。
(2)将实时数据发送至乐联网
使用HTTP发送,需要用import socket导入套接字,这样可以用TCP连接乐联网,IP地址是HOST = "101.37.32.173",端口号PORT = 9960。
import socket
HOST = "101.37.32.173"
PORT = 9960
用SOCKET建立连接对象:
zhang=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
zhang.connect((HOST,PORT))
组装发送数据包:
tx_data='{"method":"update","gatewayNo":"01","userkey":"fe34895698764685928b2ea423d6a356"}&^!'+'{"method":"upload","data":[{"Name":"t5","Value":"%s"},'%20+'{"Name":"L001","Value":"%s"},'%(sample['light'])+'{"Name":"A001","Value":"%s"},'%(sample1['current'])+'{"Name":"T002","Value":"%s"},'%(sample1['temperature'])+'{"Name":"OUTLET","Value":"%s"},'%(str(j))+'{"Name":"T001","Value":"%s"}]}&^!"'%(sample['temperature'])
发送数据命令:
zhang.send(tx_data)
(3)运行结果
通过乐联网工业物 联网数据平台,可以看到连接设备状态及数据刷新情况。乐联网支持强大的数据图形化功能,点击其中光照传感器变量可以打开并查看“数据-时间”曲线(图3),在设置策略、规则和域值后,可以通过邮箱、短信、微信等方式接收报警信息。
4物联网的发展趋势
业内专家认为,物联网一方面可以提高经济效益,大大节约成本;另一方面可以为全球经济的复苏提供技术动力。物联网的发展是以移动技术为代表的普适计算和泛在网络发展的结果,带动的不仅仅是技术进步,而是通过应用创新进一步带动经济社会形态、创新形态的变革,塑造了知识社会的流体特性,推动面向知识社会的下一代创新。开放创新、共同创新、大众创新、用户创新成为知识社会环境下的创新新特征,技术更加展现其以人为本的一面,以人为本的创新随着物联网技术的发展成为现实。要真正建立一个有效的物联网,有两个重要因素。一是规模性,只有具备了规模,才能使物品的智能发挥作用。二是流动性,物品通常都不是静止的,而是处于运动的状态,必须保持物品在运动状态,甚至高速运动状态下都能随时实现对话。
5结语
边缘计算设备不仅具备通信网关功能,融合计算、通信、控制实现复杂的功能。本文通过Python语言的边缘计算应用软件开发将现场传感节点网络与云端服务集成,实现现场XBee无线传感器网络通过边缘计算节点与云端服务的快速集成,使设备管理、数据处理和业务逻辑核心功能向应用层集聚,为工业物联网的快速部署和敏捷开发给出了重要的范例。
参考文献:
[1] Chun Bin Tang,探索 IBM Bluemix 上的 MQTT 和物联网服务
[2] 陈旖,张美平,许力,WSN应用层协议MQTT-SN与CoAP的剖析与改进,计算机系统应用,Computer Systems & Applications,2015年02期
论文作者:侯海萍
论文发表刊物:《电力设备》2019年第7期
论文发表时间:2019/9/18
标签:数据论文; 设备论文; 工业论文; 边缘论文; 云端论文; 现场论文; 节点论文; 《电力设备》2019年第7期论文;