过程控制系统中的模块技术MTP

news/2024/12/2 17:35:31/

        在过程自动化行业中,模块化设备概念近年来越来越受欢迎。其中最热门的是MTP。MTP称为模块类型封装,它是过程工业自动化技术用户协会(NAMUR)提出的过程自动化行业的模块化标准,通过这种模型,开发工作的重点从以设备为中心转移到以模块为中心,从而可以根据 不断变化的需求轻松、灵活地对设备进行调整。该标准是即插即用制造的重要一步。

NAMUR(过程工业自动化技术用户协会)。这家总部位于德国的国际集团代表了自动化技术的用户,包括过程控制技术专家。NAMUR在全球拥有150多家成员公司,他们及其成员了解即插即用模块的价值 。他们还了解工厂操作员希望如何工作:标准数据与标准接口。该小组正在帮助创建一种模块化的特定标准,称为模块化类型包(MTP)(VDI/VDE/NAMUR 2658),包括涵盖从数据方面到人机界面 (HMI) 的所有内容的各个部分。该标准描述了使用 OPC 统一架构 (UA) 的功能,例如通信、警报、安全等。

        对于过程控制制造商来说,水平集成(机器对机器自动化)和垂直集成(机器对工厂自动化)通常是生产前的最后一步。这些步骤包括在成套设备(如撬块)上限定可编程逻辑控制器 (PLC) 代码操作,以及调试负责全厂自动化的分布式控制系统 (DCS)。工厂自动化工程师通常在DCS中使用功能框图对象,而设备专家则使用PLC中的梯形图逻辑。

        随着人们对模块化的兴趣日益浓厚,制造商面临的潜在挑战也随之增加:一家公司提供全厂分布式控制系统(DCS),另一家公司为生产设备提供自动化组件,甚至在其他设备上使用多个第三方组件。结果,进入工厂的可编程逻辑控制器(PLC)数量成倍增加。

        MTP标准与其他NAMUR建议兼容:NE148和工业参考架构模型(RAMI)4.0。MTP已经发展到关于设施中组件生命周期的IEC标准。它基本上说一切都应该模块化,以便随时轻松升级或更换部件。我们将在熟悉一些关键术语后探索它的功能VDI 2776 第 1 部分

  1. 过程设备装配(PEA) — 一种自动化的,从安全角度来看,几乎自主的模块化工艺单元,由一个或多个功能设备组件组成,代表模块化工厂内的加工步骤或提供基础设施
  2. 流程编排层(POL) — 跨越自动化和信息技术级别的设备组件,用于模块化系统的操作. 修改时,不再需要完全重新编程设备,因为 大部分逻辑都存在于各个模块中。上位控制 器只是协调模块及它们所提供的服务,这就是为什么它被描述为流程编制层(POL).PEA与POL 之间通过OPCUA 实现信息交换。
  3. MTP — 模块化过程单元自动化技术的接口和功能的正式描述。

        模块/设备供应商提供的MTP文件是MTP标准的核心,代表PEA的接口。该文件包含POL设置其通信,标签,服务和HMI的所有必要信息,以便它可以监视/控制PEA。

        MTP文件使用国际标准(IEC 62714)自动化特定的XML数据格式称为自动化标记语言(AML),用于定义每个设备。例如,具有自己的控制和可视化系统的生物反应器将提供一个MTP文件,该文件定义了其中可用的各种内容,包括:

服务 — 加热、搅拌、pH 控制

数据 —温度、压力、流量

可视化 — 与 POL 操作相关的操作员图形

警报

事件/条件

用于获取上述项目的OPC UA连接和标签信息.

        符合 MTP 标准的 POL 从其系统内的各种模块(skid)导入 MTP 文件,并使用这些信息开发工厂级可视化和批处理系统来监视和控制这些模块块。现在,POL 允许工厂级操作员使用统一的图形和对象来监视和控制模块(skid)。POL 还允许批处理系统使用标准配方监视和控制服务,而与模块(skid)功能或供应商无关。

:英文中Skid 我觉得是模块的意思,自接翻译成“滑块”好像怪怪的。不知过程控制专业中如何反映?

实现技术

AutomationML语言描述

     MTP 模块的描述使用了AutomationML 语言。PEA读取AML 描述的MTP 文件,生成一个符合标准 的 PLC 模板,在这个模板中,所定义的元素 被映射到 MTP 专用的IEC 61131 软件库中的功能块。这样可以最大限度地减少开发人员 编程模块时的工作量,例如服务关系可以自 动实现。开发人员只需编程特定过程的服务状态。

OPCUA协议

PEA和POL 之间采用了OPCUA 协议,这需要将MTP 的模型转换成为OPCUA 信息模型。

P&ID

     P&ID是英文Process & Instrument Diagram(工艺和仪表流程图)的缩写,是工程上最基本的图纸资料,在过程控制领域使用P&ID图来描述所有工艺、仪表、管道、设备的相关信息。MTP 中的某些文档好像可以从P&ID推导而来。

MTP 运行时

        MTP 文件下在到PLC或者DCS 控制器中,就能够执行。所以,PLC 或者DCS中有一个MTP 运行时 Runtime。

MTP 文档的基本结构

其中Services 是模块中的服务, 是采用PLC 的ST 语言编写的程序。

结束语

        任何一项模块化标准在开发阶段,软件工具和运行时非常重要。而技术成熟后,模块库才是决定成败的关键因素。正如我在文章中所说的,模块化技术将开发工作的重点从以设备为中心转移到以模块为中心。拥有MTP 技术的厂商声称,MTP提高了60% 的开发效率。这一结论只有当应用工程的大多数MTP 都可用的前提下才是正确的。如果为某一个特定的应用,采纳模块化技术的话,只会增加开发的复杂性。模块化的优势在于技术的复用。

笔者认为:  MTP厂商协助过程控制集成商和设备厂商开发MTP 模块是MTP 技术成败的关键。

我对过程控制不熟悉,对MTP 也不熟悉。本文只是一篇学习笔记。


http://www.ppmy.cn/news/38908.html

相关文章

C++中运算符new的深入讲解

目录一 new运算符语法二 new 如何工作(理解运算符new 和函数operator new)三 operator new函数四 一个综合性的例子五 使用new可能导致的内存泄漏写这篇文章的原因是:有一次,我见到了类似下面的代码,我感到很惊奇&…

miniprogram-to-uniapp使用指南(各种小程序项目转换为uni-app项目)

小程序分类:uni-app qq小程序 支付宝小程序 百度小程序 钉钉小程序 微信小程序 小程序转成uni_app 小程序转为uni_app 小程序转uni_app 小程序转换 工具现在支持npm全局库、HBuilderX插件两种方式使用,任君选择,HBuilderX插件地址&#xff1a…

PDF怎么加密?11 款最好的 PDF 加密软件

保护您的商业文档和机密数据免受黑客攻击和欺诈的愿望可能成为寻找最佳 PDF 加密软件的重要动机。此类程序可防止未经授权的入侵者访问您的数据。 黑客可以访问电子文档和表格,尤其是当您共享它们时。这意味着如果您不保护您的 PDF,您将面临很大的风险。…

Himall商城BillingApplication获取店铺财务总览、根据日期获取该日期的结算周期

/// <summary> /// 获取店铺财务总览 /// </summary> /// <param name"shopId"></param> /// <returns></returns> public static ShopBillingIndex GetShopBillingIndex(long shopId)…

【Java面试八股文宝典之MySQL篇】备战2023 查缺补漏 你越早准备 越早成功!!!——Day19

大家好&#xff0c;我是陶然同学&#xff0c;软件工程大三即将实习。认识我的朋友们知道&#xff0c;我是科班出身&#xff0c;学的还行&#xff0c;但是对面试掌握不够&#xff0c;所以我将用这100多天更新Java面试题&#x1f643;&#x1f643;。 不敢苟同&#xff0c;相信大…

含光热电站的冷、热、电综合能源系统优化调度【节点网络】(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

C/C++ 变量详解

文章目录前言一、静态变量与动态变量1. 概念2. 区别3. 使用方法和注意事项3.1 静态变量3.2 动态变量4. 结论二、全局变量与局部变量1. 区别2. 全局变量的使用方法和注意事项3. 局部变量的使用方法和注意事项4. 总结前言 对C学习感兴趣的可以看看这篇文章哦&#xff1a;C/C教程…

【从零开始学习 UVM】9.3、UVM Config DB —— uvm_config_db 示例【文章最后的表格对于理解路径索引很重要】

文章目录 Methods规则如何调试 uvm_config_db?示例1. Test and EnvCase #1Case #22. Test, Env, and two Agents推荐实战方式set 与 get 结果由类uvm_config_db访问的UVM配置数据库是在多个TestBench组件之间传递不同对象的好方法。 Methods 有两个主要的函数用于将数据放入…