伴随着预测性维护和大数据分析的需求在自动化领域的日益增加,设备级过程数据的重要性也越来越突出。赫优讯推出的设备级物联网嵌入式研发产品netIC IOT,是基于netX 52多协议芯片研发的一款智能DIL-32封装通讯IC,集成通用对象接口,通过OPC UA和MQTT实现IoT通讯,并在同一根物理线缆上与实时以太网通讯并行地传输数据。netIC IOT采用netPROXY技术,基于对象的抽象层,面向应用程序开发,并通过netX Studio工程工具进行参数配置。
引言
近年来,随着工业4.0、万物互联时代的来临,越来越多的设备制造商和工业设备终端用户都纷纷进行“互联网+制造业”的大转型。通过充分利用信息通讯技术和网络空间虚拟系统——信息物理系统(CPS)相结合的手段,将制造业向智能化转型。其中,实现工业自动化物联网通讯是必不可少的一个环节,而设备是工业物联网互联互通的基础元素,所以设备上云将成为其最具先导性的一个突破点[1]。
工业设备上云更多的是依赖无形的“数据驱动”要素,进行大数据处理,以及数据之间的关联性分析。然而,设备上云不仅仅是采集和存储设备的过程数据,以实现预测性维护。从数据全面性来说,更重要的是,能够充分汇聚设备的状态数据、生产中的工艺过程数据、质量检验数据,实现整个生产过程中运营数据的整体贯通和连接。将关键过程数据与企业管理流程相结合,利用数据洞察企业管理问题,在一定程度上降低生产成本和能耗,并提高效率和质量,提升企业经营的精细化管理[2]。
在技术层面上,需要建立一个从现场设备到管理层一致的面向对象的数据模型,并且设备上云迫切需要解决工业协议多、接口难统一这一实际问题。德国赫优讯针对这一难题,推出设备级物联网产品netIC IOT,一款用于现场设备的智能多协议模块,通过OPC UA和MQTT实现IoT通讯,并与实施以太网通讯并行,采用独立于协议的对象接口进行应用程序的开发,定制化的设备描述文件和源代码,可无缝集成到用户的应用中。netIC IOT的整体应用系统如下图所示:
图1开发实例系统
1、物联网通讯协议
1.1 OPC UA
OPC UA 是一套集信息模型定义、服务与通讯标准为一体的标准化技术框架,其中 OPC 是用于过程控制的 OLE (OLE for Process Control)技术,是由 OPC 基金会组织管理、用于工业通讯的标准。OPC UA 作为一种面向服务的通信协议,目的是使工业化通讯有据可循,可以理解为一个 UA 服务端和 UA 客户端的实时数据库框架。UA 服务端负责数据管理与逻辑运算,并通过OPC UA 通讯协议对 UA 客户端程序提供相应的数据与服务[3]。
UA 服务端既可以是可编程逻辑控制器 (PLC)、I/O控制器或传感器等设备上二次开发的应用程序,也可以是 MES、SCADA等物联网应用平台。UA 客户端是 UA 服务端进行通讯的系统或设备,可以是ERP系统、大数据平台、物联网系统,也可以是任意物联网设备[4]。OPC UA整体架构如下图所示:
图2 OPC UA整体架构
为打通异构信息系统集成的信息渠道,实现数据的互联互通和无缝传递,OPC UA 技术需具备独立于平台、可伸缩性、高度可利用性、可植入因特网服务等特点,不但可实现独立于各大设备制造商,还独立于各个主流操作系统,并支持多种编程语言实现软件应用开发。OPC UA作为物联网通讯协议有以下几大优势[5]:
(1) 不仅实现原始数据采集,还采用基于语义和面向服务的统一架构和模式;
(2) 支持跨平台应用,可扩展且设计数据传输安全(TLS);
(3) 支持设备之间的互操作性;
(4) 可轻松集成到现有IT网络中;
(5) 配置和维护更加方便。
1.2 MQTT
MQTT协议(MessageQueuingTelemetryTransport),即遥信消息队列传输,是一种轻量级基于代理的发布/订阅消息的传输协议,其设计思想是开放、简单、轻量、易于实现,适合在宽带、计算和处理能力受限的环境下工作。MQTT协议采用客户端-服务器的基本结构,基于主题订阅/消息发布进行消息传输,使通信的参与者在空间、时间和控制流上完全解耦,在轻松实现拓扑结构扩展的同时,保留了实时的特性以及服务质量的可配置性[6]。所以,MQTT是适合物联网场景的通讯协议,其协议架构如下图所示:
图3MQTT协议架构
MQTT协议作为物联网通讯有以下特点[7]:
(1) 传输消耗少,最短的消息只有两个字节,可实现最大程度的降低网络负载;
(2) 协议简单、开放、易于实现,MQTT协议采用订阅/发布的消息模式,提供从1到n的消息转发,降低通信双方的耦合度;
(3) 为不同的场景提供三个级别的消息传输服务质量;
(4) MQTT的遗嘱机制使得客户端在发生异常连接中断时,相关终端可以接收到本客户端的遗嘱消息。
1.3 netIC IOT集成物联网通讯
工业4.0与IoT一个关键的需求是通过IoT通讯从现场设备传输信息至云端,netIC IOT就是如此定位的,过程数据及服务数据已经预定义在抽象对象中,因此能够转换成通讯模块中的信息。除了实时以太网协议栈,支持IoT通讯的netIC IOT还集成了OPC UA服务器以及MQTT客户端。OPC UA或MQTT连接将建立在同一根线缆上与实时以太网通讯并行的TCP/IP通道,不会影响PLC运行。
在工厂自动化中,将现场设备连接至云端提升了安全机制的重要性。除了IT架构的标准安全,系统设计人员必须考虑用于现场设备及控制的信息安全概念。
netIC IOT在技术上更进了一步,设备制造商可以通过SPI连接TPM(Trusted Platform Module)信息安全芯片,从而能够增强netIC额外的安全机制,如“安全启动”。
图4 netIC IOT的工作机制
2、netIC IOT系统设计
netIC IOT基于netPROXY框架面向应用程序开发,采用netXStudio开发工具进行配置。netPROXY为设备开发提供了一整套基于对象的框架,具有统一的、独立于协议的主机接口。netXStudio配置工具采用自上而下的设计原则,有利于开发人员在开发界面管理程序。
2.1 netPROXY框架
每种网络系统都提供特定的服务,这些服务需要用户移植进他的应用中。这需要对每种系统的功能都具有很深的了解,并且在应用软件中对于每种新的网络需要花费额外的精力。这就是netPROXY技术旨在解决的问题。
netPROXY的基本思想是在应用和通讯间建立一个面向设备的对象接口与服务接口。这一抽象层能够隐藏不同协议API的复杂性,使用一些简单的服务即可实现周期与非周期数据交换。用户只需在他的应用中移植这个通用对象接口,netPROXY根据相应的网络服务自动记录对象,因此能够开发完全独立于任何网络特定需求的应用,最终实现一个真正的多协议设备。
netPROXY提供了一个对象模型作为服务或数据的通用抽象层,为产品开发提供了一个基于对象的框架,有助于显著降低处理多个协议栈项目的开发成本。可以将netPROXY视为用户应用程序和协议堆栈之间的中间层,图4显示了有没有采用netPROXY技术的差别,右侧可看出netPROXY如何在具有透明对象模型的协议栈之上建立应用程序抽象层。
图5netPROXY工作机制
netPROXY技术旨在实现在不同协议栈上层用户应用程序开发过程中的协同作用,通过这种方式,netX自动化平台的主要优势体现在不仅可以在硬件方面使用netX处理器,还可以在不同通讯系统中再次使用应用软件。
2.2 netX Studio工程工具
net Studio Basic/Engineering Tool是一款基于Eclipse的设备开发工具,可实现以下功能:定义对象及映射关系、配置设备、生成设备描述文件、装载设备文件及Firmware等。
netX Studio工具根据“模块化设计原理”运行,经过一次创建的模块可以重复使用,一次创建的对象定义以及整个对象库可以在不同类型的应用程序中应用,对象的定义对整个产品系列都有效。如果以自己的用户对象形式定义设备的属性,则可以根据预设的产品设计和组合,将对象库中的对象或预定义的标准对象以任何变量的形式组合在不同的应用程序中,规划一套自己的产品系列。一次定义的对象,可以反复使用在新产品中。例如,在为温度传感器创建值、状态和操作模式作为元素的对象,可用于具有不同功能范围的设备。
图6netX Studio配置界面
2.3 netIC IOT设计原理
netIC IOT通信模块集成到主机系统中需要相应的硬件组件和软件API接口,采用netXStudio进行开发。在开发netIC IOT模块时,需要进行的操作主要分为硬件设计和软件设计,如下图所示:
图7netICIOT开发原理
2.3.1 硬件设计
netIC IOT模块的硬件接口灵活,提供了不同的功能,通过netXStudio工程工具就能轻松实现,主要步骤如下:
(1) 创建对象库的定义
以手动创建对象为例,点击Object Model→User→input data,右键input data→ New Object,如下图所示:
图8 创建一个新的对象
需对所创建的对象进行命名,本文对其命名为Sensor-simple,对其进行设置。一般情况下,对于新创建的对象,需要设置其基本属性和设备的元素。在Properties配置中,需定义对象的Identifier、Name、Description、Version、Type name、Labels,客户可根据自己的具体应用对其进行设置。
设置对象的Elements,点击右侧的Add按钮添加一个新的元素,如下图所示:
图9添加对象元素
对于Attributes来说正是体现了netPROXY的工作机制,面向对象的原理,独立于协议栈,可通过多种方式(Peripherals、Application、Network)实现通讯设置,如下图所示:
图10通讯属性设置原理
图11 Attributes选择
(2) 通讯设置
在netXStudio配置工具中,选择通信系统(协议)创建的每个应用程序的变量,需要单独地执行通信设置。除了通过实时以太网进行网络通讯外,还可以执行物联网通讯设置,通过WebServer,OPC UA或MQTT配置对对象数据的访问。
对于已添加的通讯设置,每个应用程序变量都会显示在“Connections”编辑器中,根据已添加的对象,将设备的属性在通讯模型中显示出来,包括相应的数据类型,根据通讯路径,设定该数据被映射到输入输出数据。因此,在应用程序变量的I/O数据映射视图中,显示该应用程序变量的循环通讯设置,以及其功能范围和相应的设备属性。
图12通讯设置
在配置EthernNet/IP和PROFINET通讯过程中,也可以实现将对象数据映射到非周期网络通讯。在EtherNet/IP中通过Explicit Messaging配置,在PROFINET中通过Acyclic Data Exchange来配置。
(3) 产品和供应商信息设置;
netX Studio配置工具可以配置产品的详细信息,包含以下信息:
① 产品信息:名称、ID、类型、订单ID、配置文件ID、配置文件类型;
② 产品版本信息:产品修订、硬件名称和版本、软件名称和版本、引导加载程序名称和版本。
(4) Web页面设置和用户管理;
在netXStudio中,WebBuilder充当WebServer页面的一种内容管理系统,可将自定义的网页和图形(例如产品名称和图片)分配给不同的产品和设备。在构建过程之后,可以将定制的Web内容与在netX Studio中创建/管理的其他数据一起下载到各个目标设备(例如,固件,配置数据,设备和制造商ID等),整个流程如下图所示:
图13Web Builder应用过程
(5) netIC IOT硬件引脚配置
netIC IOT的设计优势之一就是使用户可根据其需要修改DIL-32管脚定义。除了部分用于供电及通讯的预定义管脚,所有其他管脚几乎都能够自由配置,比如,可以在UART、I2C、SPI、GPIO、LED、CAN以及SSIO间选择。通过netX Studio配置工具对netIC IOT硬件进行设置,包含操作模式和引脚分配、接口配置和将对象映射到相应的接口,如下图所示:
图14硬件引脚配置界面
进行完以上所有配置,可完成netIC IOT模块的整个对象模型的创建、特定的设备描述文件(EDS)和集成的源代码(.h),将配置文件装载到硬件中,同时包含对协议栈的下载。在通讯设置中可同时设置几个通讯,下载协议栈时根据实际通讯网络下载不同的协议栈。
2.3.2 软件设计
netIC IOT模块提供的主机接口是netPROXY,用户应用程序通过netPROXY来访问模块。如下图所示,可采用ST公司的STM32系列的MCU作为主MCU,其Host应用程序通过netPROXY接口进行数据的访问,可有效节约开发时间。netPROXY Host API用于通过HIF DPM访问netIC IOT,需通过cifX API访问DPM,如下图所示:
图15 netIC IOT与主机接口连接模式
netPROXY的优势在于为使用简单对象模型以通用方式描述设备应用程序数据提供了一种可能性,这可以仅通过一次设计覆盖特定设备应用程序功能,达到重新使用以将这些数据转换为不同的网络协议的目的。netPROXY使用对象模型不仅可以管理和访问数据,还可以在netPROXY对象网络服务之间执行自动转换。
3、netIC IOT实例PROFINET Slave+OPC UA应用
通过netIC IOT的开发板,连接STM32,进行PROFINET Slave+OPC UA的测试。NIOT-I-ICEB-RE开发板通过USB接口连接到计算机,通过netX Studio工具对其进行配置,然后将配置文件及协议栈下载到硬件中。完成配置之后,连接至STM32开发板,对其进行应用程序的调试。将以太网口连接到主站cifX 50-RE,并通过外设SSIO接口连接NIOT-I-ICEB-SSIO扩展板。在SYCON.net中创建工程,进行PROFINET通讯调试。然后采用Softing的OPC UA Client进行OPC UA通讯测试。硬件连接图如下图所示:
图16硬件连接图
通过OPC UA Client可以抓取到netIC IOT在PROFINET网络中与主站进行数据交换的周期数据,若将数据上传至云服务器或通过云服务器的OPC UA Client获取数据,在进一步对数据进行分析或预测性维护。通过OPC UA Client观测数据变化如下图所示:
图17 OPCUAClient监测图
由此可见,通过netIC IOT设备级物联网通讯模块进行产品研发,可节省投入成本,并轻松实现设备上云。
4、结束语
netIC IOT通讯模块在同一硬件上支持现主流的实时以太网从站协议,用户可在netXStudio工程工具生成用于其设备的并独立于协议的对象模型,而且在应用软件中只需要移植一次。根据不同的现场网络应用,只需在netXStudio中配置并下载不同的协议栈即可。对于应用来说无需对不同的通讯网络作相应的设计,仅一次软硬件设计就可以实现真正意义上的多协议设备研发。
2024-11-15
2024-11-19
2024-11-19
2024-11-18
2024-11-15
2024-11-21
2024-11-21
在E维智库第12届中国硬科技产业链创新趋势峰会暨百家媒体论坛上,我们有幸见证了一系列关于未来汽车技术的精彩演讲。这些演讲不仅展示了LED照明、射频技术、高性能存储器、端侧AI应用、以及SiC技术在新能源汽车领域的最新进展,还揭示了这些技术如何塑造智能汽车的未来。
评论
加载更多