工赋开发者社区 | 工业数字孪生:西门子工业网络与设备虚拟调试案例(TIA+MCD+SINETPLAN)

news/2024/4/25 9:02:32/文章来源:https://blog.csdn.net/Exiaomeng88/article/details/129184033

PART1

案例背景及基本情况

新生产系统的设计和实施通常是耗时且高成本的过程,完成设计、采购、安装后,在移交生产运行之前还需要一个阶段,即调试阶段。如果在开发过程中的任何地方出现了错误而没有被发现,那么每个开发阶段的错误成本将大大增加,未检测到的错误可能会在调试期间造成设备重大的损坏。

数字孪生对实施过程的前中后进行容错冲销,将大部分的操作-除了最后安装之外全部移到虚拟层,设计、开发、调试等工作都是虚拟层进行,得到最优和最确定的方案后有相当的把握再上线使用。

随着工艺要求和控制复杂度的增加,使得本来就很棘手的设备调试变得更加棘手,脱离了现场运行环境,机械、电气部件和自动化软件就得不到充分的调试,设备设计的正确性和有效性等得不到有效的保障。在调试阶段,工程师会发现错误,修改设计,编写和优化程序,以及对操作人员进行新设备、新操作流程培训。

工艺设计和虚拟调试,特别适合一些禁止远程调试的业务场景。其实这些事情很多供应商也干过,只不过未必是数字孪生罢了:模拟安装环境啊,而且还不是局部模拟,是全局模拟。当然有条件的设备供应商可以自己模拟一个小型环境,如果成本太高,也可以用数字孪生来模拟一个虚拟的调试和安装环境。通过现实的运行机理导入数据和流程到数字孪生,这里我们再超前一点:数字孪生能不能搞用户化和通用化呢,当然也可以。

这个阶段是难以计划,会延迟生产,也会造成成本超支,并可能导致延迟发货,影响客户满意度。由于数字孪生是物理资产的准确表征,可以用于对新网络或设备设计的虚拟调试。

在虚拟调试时,如果发现问题需要进行设计优化,则可以在计算机上对虚拟的系统模型进行更改,虚拟调试允许重新更改网络规划、重新编程机器人或更改变频驱动器、PLC 编程等操作。一旦重新编程,系统会再次进行测试,如果通过,则可以进行下一阶段的物理部署。

通过虚拟调试实现对设备的设计进行仿真验证,缩短从设计到物理实现的时间;

使用虚拟调试来提前测试设备运动部件以发现机械干涉以及提前验证自动化 PLC 编程和上位软件,这样可以使现场的调试速度更快,风险更低。

PART2

系统框架

网络规划和仿真验证系统

在设计阶段,通过 SINETPLAN 实现对工业网络 PROFINET 的规划设计和仿真,识别潜在的问题并避免发生。

新建、组态 PROFINET 网络,或导入现有项目,进行网络负载仿真,流量整形保证网络运行安全可靠,优化网络资源和透明化网络利用率;也可以对已安装 PROFINET 网络进行在线扫描和验证。

网络架构让真正网络工程师去搞,我不懂。知道它是啥就行,不用什么都通,面面俱到:知道需要什么,输出什么,标准是什么,流程是什么差不多了,再配合配合嘛。

设备的数字孪生

在设备开发中应用虚拟调试,首先要创建一个设备的数字孪生即虚拟设备,虚拟设备构成主要有三部分,即物理和运动系统模型电气和行为模型自动化模型

其中:

物理和运动系统模型主要是机械组件,比如设备主体、执行机构、输送带、工装夹具等;

电气和行为模型主要是一些活动组件例如驱动器、阀门和外设行为;

自动化模型是 DCS,PLC 程序和上位机软件。

这三种模型都需要数字孪生仿真

虚拟调试系统(这个东西是核心,其他都是辅助)

虚拟调试系统分软件在环(SiL: Software in Loop)和硬件在环 (HiL:Hardware in Loop),根据不同的仿真环境可以选择软件在环或硬件在环。

软件在环是把整体设备完全虚拟化,即由虚拟控制器 CPU、虚拟 HMI、虚拟信号及模型算法、虚拟机械模型组成;

(软件在环就是软件虚拟化,仿真化,不仅仿真软件模型,贴张图说这个就是HMI视图也可以,还要仿真的软件的功能)

硬件在环是把设备主要的硬件放在仿真环境中,使用真实 HMI、真实控制器 CPU、现场 IO 设备与虚拟机械模型组成虚拟设备模型。

(硬件在环是将现实的硬件设备和虚拟硬件设备仿真模型连接起来,共同组成一个硬件仿真环境,无论是软件也好,硬件也好,最终都是仿真实体的模型和机理,就这两件事,看清楚了就不觉得复杂了。)

通过搭建虚拟调试平台,对包含多物理场以及通常存在于机电一体化产品中的自动化相关行为进行 3D 建模和仿真,使机械、电气和自动化设计能够同时工作,并行协同设计一个项目:

a)对工业网络 PROFINET 进行高效规划、布局、仿真和验证。(网络规划)

b)机械工程师可以根据三维形状和运动学创建数字模型。(实体数字模型,前面的基础知识篇中有这些概念,感兴趣的小伙伴可以去看一下)

c)电气工程师可以选择并定位传感器和驱动器等行为模型。(行为模型仿真,别忘了还有上一篇里面提及的动作控制柜,什么原理呢,所有相关的物理性操作的集成封装到一个控制系统中)

d)自动化编程人员可以设计设备的控制逻辑和 HMI 程序,然后与机械模型、电气模型连接,实现基于事件或命令的控制和运动模型。

(视图交互模型,没有这个称不上数字孪生,最多算个仿真分析程序)

PART3

案例特点

虚拟调试不同于在物理世界中调试新网络或设备,而是通过在虚拟世界中创建数字孪生,然后模拟新网络或设备的功能测试和模型验证,这样可以实现:

a)规划-仿真-测试

b)虚拟环境中的程序代码测试和调试

c)设备运行仿真,可以发现设计问题以及对解决方案的快速评估

d)机器人单元操作的仿真

e)仿真新设备的产能,识别空间限制和对现有操作的影响,以便在安装前解决这些问题

f)对设备操作人员的培训

PART4

实施步骤

对PFOFINET工业网络的规划、仿真与测试,通过三步即可达到目的,包括创建/加载项目、调整、分析并输出报告。

对设备的虚拟调试,需要以下几个主要步骤:

1.建立虚拟设备模型

首先要了解设备的真实控制机理,分析每个运动的真实物理场景中

所对应的控制信号,在 NX MCD 建立虚拟设备模型,创建及匹配相应的信号,并使用信号来控制运动模型的动作,仿真实际机械部件的运动情况,

为后续使用 PLC 的虚拟调试做基础。

2.建立虚拟控制系统

在 TIA Portal 中编写 PLC 控制程序和 HMI 画面,编程和 HMI 工作完成后,启动 PLCSIM Advanced 建立虚拟 PLC,与真实 PLC 具有相同的功能,将 PLC 控制程序下载到虚拟 PLC 中;并启动 HMI 人机界面仿真器建立虚拟 HMI 人机界面。

3.建立虚拟模型与虚拟控制系统的映射关系

将 PLC 中的输入、输出变量与 NX MCD 中输入、输出信号建立联系,从而达到 PLC 中的输出信号作为 NX MCD 的输入信号,反之 PLC 中输入信号作为 NX MCD 的输出信号。

4.通过虚拟调试试验验证设计的可用性

启动虚拟 PLC,在线监控 PLC 控制程序的运行情况;在 NX MCD 中运行虚拟设备模型,查看程序控制的运动情况。通过虚拟设备模型的运动和控制逻辑仿真,优化改进自动化模型、电气和行为模型,以及物料和运动模型,而不会造成硬件资源的浪费。

这个流程说明我们昨天扯的还是比较正确的,数字孪生怎么实现:先用传统的方式把流程走出来,然后用数字孪生的技术进行赋能。这也是个人比较建议的一种方式。MES的系统怎么实现,先用数据采集去完成数据完整性效验,在此基础上对着需求和MES的框架或核心功能去构建。说白了,就是在数据的基础上用MES的理论和框架进行赋能。ERP也是一样的道理。什么意思呢?先用传统的方式把整个业务流程理清楚了,把数据准备好了,最后再此基础上用数字化进行赋能。什么是系统:主体就是数据和业务流程,其他都是服务。这20%搞定了也就平衡了80%的系统需求。为什么要搞用户化和通用化,就是这个原因。

PART5

核心技术

软件在环仿真技术

软件在环(SiL: Software in Loop)仿真是采用虚拟控制器模型和虚拟对象模型连接起形成闭环,以运行仿真对象来模拟其运行行为和状态,可以完成一些实际中难于实现的场景测试。

(因为软件本身就是半虚拟的,其实说白了就是在数字孪生的场景中把软件的功能集成进来,就这么个事情。比如网络监测软件,是检测网络通信本身的状态,或者网络电缆的检测软件-探伤功能,这些都可以集成进来)

硬件在环 (HiL: Hardware in Loop) 仿真是将实时处理器和虚拟对象结合起来运行仿真模型来模拟仿真对象的运行行为和状态,通过 I/O、OPCUA 及网络等接口与被测对象相连接。也称为半实物仿真,是将需要仿真的部分系统硬件直接放到仿真回路中的仿真系统,仿真时,实际系统的一部分设备与计算机通过各种信息通道相连,计算机和实际硬件共同完成仿真工作,并将仿真结果在电脑中进行分析,从而判断硬件的运行情况。

(硬件的仿真就是虚实结合,实现实际设备和虚拟模型的敛收速率同步,其实就是状态和运行机理同步。数字孪生搞什么?模型状态和运行机理啊。)

硬件在环仿真不仅弥补了纯数字仿真中的许多缺陷,提高了整个模型的置信度,而且可以大大减轻编程的工作量。这种仿真的另一个优势在于它实现了仿真模型和实际系统间的实时数据交互,使仿真结果的验证过程非常直观,大大缩短了产品开发周期。

PART6

案例成效和意义

工业网络和设备的设计过程很难预测到生产和使用过程会不会出现问题,而虚拟调试带来许多好处之一就是验证工业网络和设备设计的可行性。

虚拟调试允许设计者在物理设备生产之前进行任何修改和优化,因为用户在测试过程中可以修复错误,及时对自动化系统或机械设计进行改进优化,可以节省时间。虚拟调试将每个设计细节都验证好之后,就可以把这台设备做出来,然后只要在物理设备上再做 15%或者 20%这样少量的软件优化,设备就可以正常运行。

通过数字孪生技术的应用,帮助企业在实际投入物理对象(如设备、生产线)之前即能在虚拟环境中进行设计、规划、优化、仿真、测试、维护与预测等,在实际的生产运营过程中同步优化整个生产流程,以明珞装备为例,通过虚拟调试系统在规划、设计和调试阶段与客户交换数据和协调,将项目周期缩短了 20%-30%,减少 50% 以上的工程现场调试时间,最终实现高效的柔性生产,提高企业核心竞争力。通过对 PROFINET 的规划与仿真,实现调试前的透明化,节约成本,变被动为主动。

· E小萌 ·

添加小助手微信

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

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

相关文章

建议收藏!数据可视化大屏设计必备步骤

相信对于从事大数据相关的人员来说,数据的可视化大屏是最能展现自己工作价值的一个途径。可视化大屏就是数据分析的最后成果的展示,而如果能设计出更直观、更酷炫、更具有科技感的大屏,更能获得客户的青睐。 那么客户喜欢的究竟是怎样的可视化…

嵌入式开发:在嵌入式应用程序中混合C和C++

许多嵌入式应用程序仍使用c语言编写,但越来越多的嵌入式开发人员现在使用C语言编写程序。某些应用程序甚至共享这两种语言。这有意义吗?C是嵌入式应用中最常用的编程语言。多年来,人们一直期待着向C过渡,但过渡速度相当缓慢。但是&#xff0…

Appium自动化测试 Inspector定位Webview/H5页面元素

目录操作步骤Python操作该混合App代码Appium在操作混合App或Android App的H5页面时, 常常需要定位H5页面中的元素, 传统方式是 FQ 使用Chrome://inspect来定位元素, 环境准备相当繁琐, 不仅需要想办法FQ, 而且还需要Android设备安装Google框架以及手机版Chrome浏览器以及相应的…

问题记录-网卡丢失导致Temporary failure in name resolution

没网了,ifconfig查看一下 发现是网卡丢失 使用如下命令: sudo ifconfig eth0 up sudo dhclient解决

postgresql 数据库 主从切换 测试

postgresql 数据库 主从切换 测试 文章目录postgresql 数据库 主从切换 测试前言环境:主从切换1. 查看数据库状态:2. 备库切换主库3. 旧主库切换成备库;4 查看状态后记前言 因数据库等保需要,需要对老系统的数据库进行主从切换来…

考出PMP证书到底有没有用?

我们将从三方面分享: 1. PMP 证书在国内的含金量怎么样? 2. HR 如何看待 PMP 证书? 3. 拿到 PMP 证书后,有哪些变化? 一,PMP证书的含金量 说到 PMP 证书的含金量,相信这个问题是所有学员都…

JS语法让人困惑的点 “==与===”

在JS中有很多神奇的语法,非常让人困惑,我们就先一一道来,相信你在开发中或多或少都踩过这些坑,或者让人无法理解。 今天我们就来说下【】和【】 这题对于很多没有系统学过前端开发的技术人员来说,算个重点&#xff0c…

Spring+MVC+MYbatis注解开发

Spring常见注解 注解一:Configuration 用在类上面,加上这个注解的类可以成为一个spring的xml配置文件,使用的是java代码的配置 注解二:ComponentScan 用在类上,加上注解可以指定扫描路径 注解三:创建对…

面试 | 递归乘法【细节决定成败】

不用[ * ]如何使两数相乘❓一、题目明细二、思路罗列 & 代码解析1、野蛮A * B【不符合题意】2、sizeof【可借鉴】解析3、简易递归【推荐】① 解析&#xff08;递归展开图&#xff09;② 时间复杂度分析4、移位<<运算【有挑战性&#x1f4aa;】① 思路顺理② 算法图解…

啥是原神?女友说想要全角色语音+表情包,顺手用python把高清图也整下来了

原神全角色中日语音表情包高清图人生苦短 我用python表情包部分&#xff1a;1. 素材来自&#xff1a;2. 准备模块3. 调用浏览器驱动4. 页面滚动5. 保存数据5. 效果全角色语音高清彩图部分1.准备工具2. 准备模块3. 请求链接4. 本次目标5. 分析数据来源6. 开始代码7. 执行结果8. …

Revit操作 | 门和窗的载入与放置。

想要系统性掌握BIM技能&#xff0c;不能只停留在理论知识上&#xff0c;实操也是关键一步。 拒绝纸上谈兵&#xff0c;提升操作技巧&#xff0c;从点滴开始积累。今天我们来学习Revit实操小技巧之门和窗的载入与放置。 门和窗的载入与放置 门和窗是建筑中最常用的构件。在 Re…

单通道说话人语音分离——Conv-TasNet(Convolutional Time-domain audio separation Network)

单通道说话人语音分离——Conv-TasNet模型(Convolutional Time-domain audio separation Network) 参考文献&#xff1a;《Conv-TasNet: Surpassing Ideal Time-FrequencyMagnitude Masking for Speech Separation》 1.背景 在真实的声学环境中&#xff0c;鲁棒的语音处理通常…

Unity(二)--通过简单例子了解UGUI几个常用对象操作(Text,Image,Button)

目录 文本框等UI对象的添加Canvas 画布给Canvas添加脚本,绑定要操作的对象文本框Text的使用图像Image的使用更换图片Type:显示图片相关按钮Button的使用过渡导航事件绑定文本框等UI对象的添加 Canvas 画布 当创建一个UI元素的时候,如果没有Canvas 画布,就会自动创建一个画布…

PDMS二次开发(一)——PML类型程序类型与概念

目录前言一、PML类型与概念基础知识变量函数小例子注释PML表达式条件判断语句循环skip和break窗口程序在PDMS菜单栏中添加程序窗口自动定位PML常见控件前言 PDMS二次开发需要.net 有自带的PML语言和C# .net一般通常泛指的是C#语言 模型数据借助.NET的接口可以转换成数据库中的…

MSP430F2132IRHBR功能框图TPS259824LNRGER电路保护和电源管理解决方案芯片

概述&#xff1a;MSP430F21x2 16位超低功耗微控制器 (MCU) 是MSP430系列微控制器的一部分。这些MCU采用一种架构&#xff0c;加上5种低功耗模式&#xff0c;能在便携式测量应用中延长电池的使用寿命。这些器件具有一个强大的16位 RISC CPU、16位寄存器和用于获得最大编码效率的…

OpenStack手动分布式部署Glance【Queens版】

目录 Glance简介 1、登录数据库配置&#xff08;在controller执行&#xff09; 1.1登录数据库 1.2数据库里创建glance 1.3授权对glance数据库的正确访问 1.4退出数据库 1.5创建glance用户密码为000000 1.6增加admin角色 1.7创建glance服务 1.8创建镜像服务API端点 2、安装gla…

FinClip 的 2022 与 2023

相比往年&#xff0c;今年复盘去年与展望新年的文章来的稍慢一点。不过也希望能够借这篇文章&#xff0c;和关注 FinClip 的用户朋友们一起聊聊&#xff0c;我们在去年和今年的想法与计划。 2022 在过去的一年中&#xff0c;我们的身边发生了很多事情&#xff0c;这些事情在不…

CANoe-TestModule-vTESTstudio-Python -- 爱恨情仇

前面有聊过什么才是真正的自动化平台&#xff1b;其实说起来也是每个测试人的工作之路&#xff0c;从入门的测试执行、测试用例设计、自动化脚本开发、自动化架构开发、自动化平台开发&#xff0c;实际上我们大多数测试人都在纠结第一步的测试执行和第三步的自动化脚本开发&…

数据结构—堆(完全解析)

数据结构—堆&#xff08;完全解析&#xff09; 数据结构——堆&#xff08;Heap&#xff09;大根堆、小根堆 详解数据结构——堆 堆的基本存储 【从堆的定义到优先队列、堆排序】 10分钟看懂必考的数据结构——堆 【堆/排序】堆排序的两种建堆方法 【算法】排序算法之堆排序 C…

Mybatis学习记录

Mybatis学习记录一、MyBatis简介1.1、MyBatis历史1.2、MyBatis特性1.3、MyBatis下载1.4、和其他持久化层技术对比二、MyBatis框架搭建2.1、加入依赖2.2、创建MyBatis的核心配置文件2.3、创建Mapper接口2.4、 创建MyBatis的映射文件2.5、 测试环境2.6、 加入Log4j日志功能三、核…