0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

兼容SOA体系架构的数控设备WEB服务网关的设计

电子设计 来源:郭婷 作者:电子设计 2019-06-25 08:05 次阅读

1、 引言

SOA (Service Oriented Architecture) 是分布式企业级应用架构的新一代标准,其粗粒度和松耦合等特点恰符合敏捷制造的需求,开发人员可以集中精力来处理应用的业务逻辑,可简化开发的复杂性、缩短开发时间、降低开发成本,是面向中小企业的敏捷制造ASP中管控一体化信息集成的理想技术。敏捷制造ASP平台上制造联盟的动态性决定了其应用的敏捷性,因此,联盟企业内部的大量的遗留系统和非敏捷数字制造单元需要融入系统管理之中。

本文所介绍的WEB服务网关可以封装传统的数控设备功能接口成WEB服务,使之兼容于平台SOA体系架构的要求。这样,通过敏捷制造ASP平台将制造单元或者其他制造过程所需资源 (如检测监控仪器等) 共享,使远程监控、远程诊断和远程维护变得非常容易,便于智能化管理和异地协同制造,可提高制造设备的生产效率以适应敏捷制造快速响应变化的需求。本WEB服务网关把数控加工设备映射为相应的制造WEB服务。以太网上的节点可以通过SOAP协议实时访问WEB服务网关,而WEB服务网关把来自生产加工设备上的信息自动地发布到企业内部网络上。

2、 WEB服务网关硬件设计

工业自动化控制中, 数控机床、传感器、智能仪表等大多数设备只提供RS232RS422/ RS485 串行通信接口等现场总线。而在敏捷制造ASP平台中将制造设备看作是制造服务的执行者,所以需要将数控设备映射为相应的制造WEB服务, 数控单元WEB服务网关可将现场总线设备连接到互联网并发布为制造WEB服务。

本服务网关设计采用嵌入式系统实现现场总线到网络服务间的协议转换,计算能力受限于所采用的MCU,需要精减TCP/IP协议栈的实现才可以移植成功。我们选择的MCU芯片SST89E564.RD是基于51内核的,该芯片具有64 KB的内部程序FLASH,支持在线调试和在线下载功能,外部接口丰富,有1个SPI口,1个UART口,1路PVM输出,可以作为外部控制扩展口。处理网络数据包要消耗较多的存诸器空间,我们选择RAM芯片uPD43256 32K x 8bit作为外部扩展存储器。网络接口芯片选用Reltek的8019AS,其10Mb/s 的数据流量完全满足应用需求且价格低廉。X5045集看门狗、电压监控和串行EEPROM三种功能于一体,看门狗和电压监控功能对系统提供了运行时保护,内置的容量为512 x 8个字节的串行EEPROM可以用来储存系统配置信息,如模块的MAC地址、IP地址、网关、DNS、远端服务地址等网关初始化信息。本数控单元WEB服务网关的硬件结构框图如1所示。

兼容SOA体系架构的数控设备WEB服务网关的设计

3、 WEB服务网关软件设计

TCP/IP协议簇中的协议多数定义都是采用16位或32位的数据单元,Linux中的TCP/IP协议栈实现并不能够直接运行在8位的MCU中。成功移植TCP/IP协议的关键是精心裁减TCP/IP协议、合理分配单片机内外部资源和优化代码实现以提高程序执行效率。本WEB服务网关软件设计采用模块化思想,由图2可知网关软件主要分为系统层、协议层和服务层等几个功能层次。

兼容SOA体系架构的数控设备WEB服务网关的设计

系统层的下层负责驱动外围设备,包括网络接口芯片RT8019AS, 串口及其他现场总线接口等。其上诸层仅通过本层所定义的设备接口函数操纵外设无须直接对外设进行读写,这样不仅简化了对外设使用还使得系统更具可扩展性。系统层上层为实时任务调度模块,负责MCU资源的分配和切换,系统的时钟源和中断向量也由这个部分产生。本设计中,采用实时嵌入式操作系统来保证任务调度模块的工作稳定、实时、高效。

服务网关的关键功能是实现数据协议的转换,将收到的现场总线接口的数据转换为SOAP包的形式发送到以太网中。当前所实现的SOAP/HTTP方式中,首先要实现TCP/IP簇内相关的协议,才能够处理封装有SOAP包作为负荷HTTP包的传送。在嵌入式环境中系统资源有限,需要精简TCP/IP协议簇的完整实现 (约80 KB)。可参照RFC1122定义的TCP/IP实现的兼容性建议列表,根据系统资源和应用实际需求决定具体实现何种特性。如放弃对报文分段的支持,不实现滑动窗口协议仅支持单包发送,不考虑流量控制和拥塞控制,只支持预配置的WSDL服务描述等。简化后的协议包括IP、UDP、TCP、SOAP等核心协议的关键功能,且尽可能保持协议功能和机制上的完整性。

网关内嵌软件流程如图3所示。制造单元WEB服务网关上电后,软件首先进行硬件初始化和完成各种参数的设置,然后调用网络守护函数将收到的SOAP请求作协议转换后发送至现场总线接口,或者调用串口的守护函数将收到的设备端现场数据转发至设定好的服务端点。

兼容SOA体系架构的数控设备WEB服务网关的设计

4 、SOAP包的压缩传输

简单对象交换协议 (SOAP) 是基于XML 的,可以用HTTP、FTP、SMTP等多种协议进行传输。用SOAP 通信所传输的实际上是XML格式的文本, 对于大部分企业数据来说文本格式的数据尺寸远较采用二进制等编码后的数据更为庞大,提高SOAP 消息传输效率的一个可行的办法是对SOAP 消息先行压缩后再发送。压缩后的文本大小一般可以减少至原文本尺寸的20% 左右,亦即意味着传输压缩的文本将会比直接传送原文少占用80%的空间。这也意味着在网络上传输只需花费更少的时间, 可使基于SOAP通信进行数据交换的应用程序表现出更优秀的性能。

一个典型的SOAP 结构包含Header 和Body两部分内容, 结构如图4所示。在SOAP 中, Header 存在的意义是提供一个灵活的框架, 以满足应用程序级的附加需求,例如在此提供权限验证、事务管理等信息。对于SOAP消息来说它是一个可选的部分,我们要传递的信息通常放在SOAP Body 域中。Body域是SOAP封包的主要部分,占据着绝大部分的空间, 因此要加速SOAP 传输,可以从压缩这一部分着手来减少传输的数据量。

兼容SOA体系架构的数控设备WEB服务网关的设计

我们可以将原内容重新编码形成一个新的压缩文本字符串, 将其加入到SOAP Message 的附件域中。比如将SOAP Body 域的内容压缩成二进制数据后, 再采用 BASE64 将二进制数据编码成MIME (Multipurpose Internet Mail Extensions, 多用途Internet 邮件扩展)文本, 将所得的MIME 文本放入SOAP Message 的Attachment 域中, 再在SOAP Body中加入压缩标记形成最终的SOAP文本,如图5所示。

兼容SOA体系架构的数控设备WEB服务网关的设计

这样, 在客户端发送一个请求到服务端调用一个服务, 服务端响应经过压缩的数据集合, 客户端检验SOAP Header 的COMPRESSED 标志, 如果是YES, 则对SOAP 附件部分进行BASE64 解码, 然后解压, 还原成原始的SOAP Message。同理, 对请求也可以进行文本压缩, 但一般请求的数据集合较小, 进行压缩和解压缩, 反而会降低效率。实验表明, 4kb 的数据压缩和解压过程只需大约10ms, 进行Base64 编码和解码需要100ms, 总共需要110ms左右。

5 、总结

运用上述WEB服务网关即可把数控加工设备映射为相应的制造WEB服务。数控设备的集成联网管理,可以更加有效地对设备进行管理和控制,提高生产效率。制造管控一体化系统将数控生产设备连接到开放的网络环境中,所有的生产信息、管理信息、加工信息及数控源程序都可通过网络的异地访问。生产设备集群组成的设备网与企业内部网之间以WEB服务网关为桥梁互相连通,以太网上的节点可以通过SOAP协议实时访问WEB服务网关,而WEB服务网关把来自生产加工设备上的信息自动地发布到企业内部网络上,甚至可以通过Internet远程完成设备管控,此时需要进一步考虑数据的安全性等问题。

创新点:(1) 以嵌入式处理器作为WEB服务网关的核心部件, 通过该网关为数控加工设备提供了WEB服务接口, 便于实现制造设备与面向服务制造信息系统的连接;(2) 通过压缩SOAP包提高了制造设备网关服务的实时性能。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2525

    文章

    48069

    浏览量

    739977
  • 数控机床
    +关注

    关注

    18

    文章

    613

    浏览量

    45414
  • 现场总线
    +关注

    关注

    3

    文章

    509

    浏览量

    38367
收藏 人收藏

    评论

    相关推荐

    基于STM32F的智能家居服务网关设计

    随着物联网技术的飞速发展,将传统的Internet与新型的无线传感器网络整合的趋势越来越明显,嵌入式服务网关既是无线传感器网络的协调器网关,又是远程WEB服务器,它实现两个不同协议的
    发表于 09-17 18:23 7115次阅读
    基于STM32F的智能家居<b class='flag-5'>服务网关</b>设计

    基于SOA的数字电视中间件系统的研究与实现

    体系结构模型采用ESB服务总线,其基于Web服务等特性解决了异构网络的配置和协议的可重用性等问题,基本实现了数字电视演播室的互操作性和平台无关性.完成应用系统的集成。关键词:企业
    发表于 10-06 10:03

    如何跨多个SOA将RFID Web服务集成到EAI应用程序中

    在本文中,我将首先讨论两种开发 RFID 应用程序的方法:传统方法和 RFID Web服务。然后,我将 讨论把 RFID Web服务集成到多个 SO
    发表于 07-17 06:31

    怎么利用SOA实现RFID中间件设计?

    利用SOA系统具有可扩展性高、可维护性好的特点,以便为用户提供灵活的维护服务,还引入了面向服务体系架构SOA(Service Oriente
    发表于 07-31 07:25

    服务网关gateway的相关资料推荐

    目录微服务网关 gateway 概述[路由器网关 Zuul 概述]嵌入式 Zuul 反向代理微服务网关 gateway 概述1、想象一下一个购物应用程序的产品详情页面展示了指定商品的信息:2、若是
    发表于 12-23 08:19

    面向数控设备WEB服务网关

    SOA 的工业自动化控制中, 需要将数控设备所提供RS232 或RS422/ RS485 串行通信接口等现场总线,映射为相应的制造WEB 服务
    发表于 08-05 11:33 17次下载

    面向数控设备WEB服务网关

    SOA 的工业自动化控制中, 需要将数控设备所提供RS232 或RS422/ RS485 串行通信接口等现场总线,映射为相应的制造WEB 服务
    发表于 10-13 17:53 31次下载

    基于SOA与多软件人的智能交通系统架构

    SOA(Service-Oriented Architecture,面向服务体系架构)思想上,研究设计了服务总线结构,该结构通过
    发表于 12-30 16:59 17次下载

    面向数控设备WEB服务网关

    SOA的工业自动化控制中, 需要将数控设备所提供RS232 或RS422/ RS485 串行通信接口等现场总线,映射为相应的制造WEB服务
    发表于 07-13 15:39 11次下载

    基于STM32F107的智能家居服务网关设计

    0 引言 随着物联网技术的飞速发展,将传统的Internet与新型的无线传感器网络整合的趋势越来越明显,嵌入式服务网关既是无线传感器网络的协调器网关,又是远程WEB服务器,它实现两
    发表于 11-30 04:50 401次阅读
     基于STM32F107的智能家居<b class='flag-5'>服务网关</b>设计

    Web服务推荐SOA系统

    为解决Web服务决策过程中新增信息多且信息不精确的问题,提出一种基于Web服务推荐的面向服务体系结构(S
    发表于 02-24 14:59 0次下载
    <b class='flag-5'>Web</b><b class='flag-5'>服务</b>推荐<b class='flag-5'>SOA</b>系统

    SOA架构和微服务架构的主要区别

    SOA和微服务架构一个层面的东西,而对于ESB和微服务网关是一个层面的东西,一个谈到是架构风格和方法,一个谈的是实现工具或组件。
    的头像 发表于 05-04 14:11 5385次阅读
    <b class='flag-5'>SOA</b><b class='flag-5'>架构</b>和微<b class='flag-5'>服务</b><b class='flag-5'>架构</b>的主要区别

    Spring Cloud Gateway服务网关的部署与使用详细教程

    : 6、自定义全局异常处理器: 一、为什么需要服务网关: 1、什么是服务网关: 传统的单体架构中只需要开放一个服务给客户端调用,但是微
    的头像 发表于 10-11 17:46 1234次阅读

    基于Traefik自研的微服务网关

    数据平面主要功能是接入用户的HTTP请求和微服务被拆分后的聚合。使用微服务网关统一对外暴露后端服务的API和契约,路由和过滤功能正是网关的核心能力模块。另外,微
    的头像 发表于 04-16 11:08 1953次阅读

    Spring Cloud :打造可扩展的微服务网关

    Spring Cloud Gateway是一个基于Spring Framework 5和Project Reactor的反应式编程模型的微服务网关。它提供了丰富的功能,包括动态路由、请求限流、集成安全性等,使其成为构建微服务架构
    的头像 发表于 10-22 10:03 259次阅读
    Spring Cloud :打造可扩展的微<b class='flag-5'>服务网关</b>