【御控物联】JSON结构数据转换在物流调度系统中的应用(场景案例三)

文章目录

  • 一、前言
  • 二、场景概述
  • 三、解决方案
  • 四、在线转换工具
  • 五、技术资料

一、前言

物流调度是每个生产厂区必不可少的一个环节,主要包括线边物流和智能仓储。线边物流是指将物料定时、定点、定量配送到生产作业一线的环节,其包括从集中仓库到线边仓、从生产线的上游工位到下游工位、从工位到缓冲仓。智能仓储是以信息交互为主线,使用条形码、RFID、传感器、定位系统、智能小车(AGV)等先进的物联网技术,可以实现物料运输、物料入库存储、物料搬运、产品分拣等作业全流程自动化、智能化。

随着越来越多新技术、新产品的出现,很多工厂正在逐步通过引进新产品,对既有产线物流进行升级改造,直接造成系统和系统之间、系统和设备之间交互逻辑越来越多,越来越复杂,从而增大了公司的运维成本。如何利用技术手段减少各系统之间、系统和设备之间交互逻辑的定制开发、降低运维成本、提高管理效率是每个企业亟待解决的问题。

增大运维成本主要受两方面影响,第一,系统与系统之间、系统与设备交互逻辑定制化,比如WMS和WCS,WCS和各种智能设备(AGV、叉车)之间,一旦出现业务变动,各交互系统都需要技术人员更新代码逻辑。第二,数据格式不统一,这一方面也是引起运维成本增加的部分,比如(WMS、WCS)采用的JSON数据格式和(WCS、AGV)之间交互采用的JSON数据格式不一致,这就造成WCS需要针对不同的交互对象维护两套不同的数据格式解析代码,一旦数据格式有调整,将造成成本的无限增加。

针对第一方面影响,工厂可搭建零编程、可拖拽、支持在线调式的规则引擎中间件,此中间件可实现与各业务单元的逻辑交互,减少系统与系统之间、系统与设备之间的交互,进而保证业务逻辑协同化;针对第二方面的影响,工厂应该考虑在系统中集成灵活实现数据格式转化的功能,而且支持业务人员操作,这样可降低开发成本和以后的运维成本。

本文针对第二方面影响提出我们的解决方案,一套JSON数据格式转换代码库(JS),在业务系统集成此库可灵活应对各类JSON数据格式的相互转化,包括从外部系统对接过来的JSON数据,也支持将自己数据编码后转发给其它业务系统或设备,实现JSON数据格式自由转换。目前支持以下映射关系转化:数据源键(Key)->目标键(Key)、数据源键(Key)->目标值(Value)、数据源值(Value)->目标键(Key)、数据源值(Value)->目标值(Value)。

在这里插入图片描述

本文结合案例对JSON格式数据转换进行如下讲解。

二、场景概述

某工厂生产线具备MES、WMS、WCS业务系统,同时配备了AGV小车、立体库等智能设备。具体业务场景如下图所示。工人在组装产品过程中需要A物料,然后通过MES系统将物料信息发送给WMS,WMS系统收到数据后进行解析,找到物料所在位置及数量,WMS系统确认后会给WCS系统下发去C库区001号位置获取物料,WCS反馈物料到位信息;然后WMS会向AGV发送任务指令(拣选、搬运和配送),AGV将物料送至位置后反馈执行状态和进度给WMS,同时MES也会给WMS一条反馈指令,告知物料已到位,形成物料配送闭环。

在这里插入图片描述

以上系统与系统交互、系统与设备交互均采用HTTP通讯方式,数据交互格式采用JSON,由于供应商不同,造成数据交互结构层次各不相同。

WMS与MES交互数据格式如下:
在这里插入图片描述
WMS与WCS交互数据格式如下:
在这里插入图片描述
如果没有我们的JS库,WMS需要针对以上三种数据交互格式定制化开发三套代码,非常不利于产品的打磨,尤其在项目前期,业务变动非常大,一些小的数据格式改动,都会引起大的开发工作,进而提高了开发成本。

三、解决方案

如果系统引入JSON数据格式转换JS库后,只需要业务人员根据不同厂家的数据结构进行关系映射,即可应对各类数据格式变换的场景,无需技术人员修改代码。

WMS与MES建立映射关系如下:

在这里插入图片描述

WMS与WCS建立映射关系如下:
在这里插入图片描述

通过JSON数据格式转化JS库可方便业务人员快速搭建各业务场景的数据映射,特别适用于不同厂家系统和设备的数据交互,减少业务定制,降低开发成本。

为了更直观体现JSON数据格式转化的功能,特此做了一套转化工具,以下为DEMO展示,可实现值对值映射,键和值映射,对象和数组内容映射

在这里插入图片描述

四、在线转换工具

为了让使用者更加方便的配置出映射关系,为此开发了一套在线转换工具,可在工具中通过拖拽即可配置想要的结构转换关系,并可对转换关系所能实现的效果实时进行预览更改。

工具地址:数据转换工具
在这里插入图片描述

五、技术资料

  • Github:edq-ebara/data-transformation-javascript: 数据转化(javascript) (github.com)
  • 技术探讨QQ群:775932762
  • 工具连接:数据转换工具
  • 御控官网:https://www.yu-con.com/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/512187.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

14种建模语言(UML)图形

前言 UML 中有四种关系:依赖、关联、泛化和实现。这四种关系是 UML 模型中可以包含的基本关系事物。这里介绍14种UML图形:类图,对象图,包图,构件图,组合结构图,部署图,制品图,用例图…

【Web理论篇】Web应用程序安全与风险

目录 🌲1.Web应用程序的发展历程 🍂1.1 Web应用程序的常见功能🍂1.2 Web应用程序的优点 🌲2.Web安全 🍂2.1Web应用程序常见漏洞🍂2.2未对用户输入做过滤🍂2.3 造成这些漏洞的原因是什么呢&…

数据安全之认识数据库防火墙

文章目录 一、什么是数据库防火墙二、数据库防火墙的主要功能三、数据库防火墙的工作原理四、数据库防火墙如何防护数据库免受SQL注入攻击五、数据库防火墙的部署方式六、数据库防火墙与网络防火墙的关系与区别七、数据库防火墙的应用场景 随着信息技术的快速发展,数…

数据结构进阶篇 之【选择排序】详细讲解(选择排序,堆排序)

民以食为天,我以乐为先 嘴上来的嘘寒问暖,不如直接打笔巨款 一、选择排序 1.直接选择排序 SelectSort 1.1 基本思想 1.2 实现原理 1.3 代码实现 1.4 直接选择排序的特性总结 2.堆排序 HeapSort 跳转链接:数据结构 之 堆的应用 二、完…

C++ | Leetcode C++题解之第7题整数反转

题目&#xff1a; 题解&#xff1a; class Solution { public:int reverse(int x) {int rev 0;while (x ! 0) {if (rev < INT_MIN / 10 || rev > INT_MAX / 10) {return 0;}int digit x % 10;x / 10;rev rev * 10 digit;}return rev;} };

The Google File System [SOSP‘03] 论文阅读笔记

原论文&#xff1a;The Google File System 1. Introduction 组件故障是常态而非例外 因此&#xff0c;我们需要持续监控、错误检测、容错和自动恢复&#xff01; 按照传统标准&#xff0c;文件数量巨大大多数文件都是通过添加新数据而不是覆盖现有数据来改变的&#xff0c;因…

基于springboot实现网上购物商城系统研发系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现网上购物商城系统研发系统演示 摘要 本课题是根据用户的需要以及网络的优势建立的一个基于Spring Boot的网上购物商城系统&#xff0c;来满足用户网络购物的需求。 本网上购物商城系统应用Java技术&#xff0c;MYSQL数据库存储数据&#xff0c;基于Spring …

最优算法100例之21-数组的逆序对

专栏主页:计算机专业基础知识总结(适用于期末复习考研刷题求职面试)系列文章https://blog.csdn.net/seeker1994/category_12585732.html 题目描述 逆序数: 在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一…

如何使用 Windows 文件恢复工具恢复丢失的数据

当您不小心删除了一个文件时&#xff0c;那种可怕的感觉就会席卷您。那种冰冷的感觉&#xff0c;想到失去工作、失去时间或失去记忆而感到的不安。 您会很高兴听到一切并没有立即丢失。如果您行动迅速&#xff0c;您有机会恢复已删除的文件。使用 Windows 文件恢复&#xff0c…

session学习

3次请求均有sessionID session的作用 跟踪用户的行为&#xff0c;方便日后推荐客户端和服务器交互相对安全些session是代表会话&#xff0c;也可理解为客户端和服务端的交互sessionID是服务器生成的唯一字符串&#xff0c;用来跟踪用户行为cookie是浏览器自带的&#xff0c;专…

【精品标准】最新数据安全评估标准合集

最新数据安全评估标准合集&#xff0c;以下是资料的目录&#xff0c;共12份。如需下载&#xff0c;请前往星球查阅和获取&#xff1a;https://t.zsxq.com/18JrHhWtQ 1、网络安全标准实践指南 2、数据安全风险评估方法 3、个人信息安全影响评估指南 4、数据出境安全评估指南 5、…

MQ消息队列详解以及MQ重复消费问题

MQ消息队列详解以及MQ重复消费问题 1、解耦2、异步调用3、流量削峰4、MQ重复消费问题&#xff0c;以及怎么解决&#xff1f;4.1、重复消费产生4.2、解决方法&#xff1a; https://blog.csdn.net/qq_44240587/article/details/104630567 核心的就是&#xff1a;解耦、异步、削锋…

AWS入门实践-S3生命周期管理

Amazon S3的生命周期管理是一个强大的功能&#xff0c;它允许你自动管理对象的生命周期&#xff0c;从而优化存储成本并自动删除不再需要的数据。它允许您定义一组规则,根据对象的age(存在时间)、前缀(文件夹路径)或标签等条件,自动转移对象到其他存储类别或删除对象。让我们详…

第117讲:深入MySQL性能优化:从多个角度提升数据库性能

文章目录 1.从哪些角度去考虑MySQL的优化2.数据库服务器的选型3.从操作系统层面去优化MySQL数据库3.1.关于CPU方面的优化3.2.关于内存方面的优化3.3.关于磁盘IO方面 4.应用端的优化5.数据库系统优化工具6.数据库系统参数优化6.1.最大连接数的优化&#xff08;max_connections&a…

vCenter Server出现no healthy upstream的解决方法

https://blog.51cto.com/wangchunhai/4907250 访问vCenter 7.0 地址后&#xff0c;页面出现“no healthy upstream”,无法正常登录vCenter&#xff0c;重启后依旧如此&#xff0c;该故障的前提是没有对vCenter做过任何配置&#xff0c;如下图所示。 尝试登录"VMware vCen…

目标检测、识别和语义分割的标注工具安装

计算机视觉 图像分类&#xff08;目标检测&#xff09;&#xff1a;一张图像中是否含某种物体物体定位&#xff08;目标检测与目标识别&#xff09;&#xff1a;确定目标位置和所属类别。语义分割&#xff08;目标分割和目标分类&#xff09;&#xff1a;对图像进行像素级分类…

Jenkins安装及自动化部署-Docker

docker安装新版 老版的Jenkins的插件容易安装不起&#xff0c;所以需要新版的Jenkins docker pull jenkins/jenkins:latest-jdk17编写docker-compose文件 docker-compose.yml # Copyright VMware, Inc. # SPDX-License-Identifier: APACHE-2.0version: "2"servic…

基于Java的商城网站系统设计与实现:Spring Boot后端与Vue.js前端

本文介绍了如何利用Java的Spring Boot框架和Vue.js技术构建一个商城网站系统。通过采用B/S结构&#xff0c;后端使用Spring Boot进行开发&#xff0c;前端采用Vue.js进行开发&#xff0c;实现了系统的设计与实现。 随着电子商务的兴起&#xff0c;商城网站成为了现代人购物的主…

蓝桥杯 - 受伤的皇后

解题思路&#xff1a; 递归 回溯&#xff08;n皇后问题的变种&#xff09; 在 N 皇后问题的解决方案中&#xff0c;我们是从棋盘的顶部向底部逐行放置皇后的&#xff0c;这意味着在任何给定时间&#xff0c;所有未来的行&#xff08;即当前行之下的所有行&#xff09;都还没…

双碳目标下DNDC模型建模方法及在土壤碳储量、温室气体排放、农田减排、土地变化、气候变化中的实践技术应用

由于全球变暖、大气中温室气体浓度逐年增加等问题的出现&#xff0c;“双碳”行动特别是碳中和已经在世界范围形成广泛影响。国家领导人在多次重要会议上讲到&#xff0c;要把“双碳”纳入经济社会发展和生态文明建设整体布局。同时&#xff0c;提到要把减污降碳协同增效作为促…