摘要:PackML 乃是由 OMAC 开发且被 ISA 所采用的自动化标准 TR88.00.02,能够更为便捷地传输与检索一致的机器数据。PackML 的主要宗旨在于于整个工厂车间倡导通用的“外观和感觉”,并对行业创新予以支持和激励。其核心涵盖状态、模式与标签,使设
PackML 乃是由 OMAC 开发且被 ISA 所采用的自动化标准 TR88.00.02,能够更为便捷地传输与检索一致的机器数据。PackML 的主要宗旨在于于整个工厂车间倡导通用的“外观和感觉”,并对行业创新予以支持和激励。其核心涵盖状态、模式与标签,使设备操作得以简化,故障排除更为轻松,开发时间亦大幅缩短。
PackML 的三要素(状态、模式、标签):一台制造设备具备多样的模式(modes)(诸如生产、维护、手动、自定义模式等等)和状态(states)(复位中、暂停中、保持中、中止等等)。此外,PackML 还定义了标签(pack Tag),此乃一种标准化的变量结构,用于设备之间的交互以及设备与高层 HMI、MES 和企业系统的交互。
西门子亦开发了相应的 LPML 库,当下所使用的版本为 V3.0.2。
一、硬件及软件需求
硬件组件:CPU 1513 - 1 PN V2.0 抑或 CPU 1215C V4.2;软件组件:博图 V16 、NetToPLCsim 、EasyBuilder Pro 6.09.01s;二、Unit modes ()
编号相关描述0Invalid无效模式1Production Mode生产模式该模式用于日常生产。机器依照命令执行相应的逻辑,其命令可由操
作员直接输入,亦可由其他监控系
统发出。2Maintenance Mode维护模式该种模式允许适当的授权人员来运
行某个机器, 该机器独立于整个生
产线上其他机器。 其通常被用于故
障检查、机器测试(machine trials
)或测试操作改进。 这种模式还允
许调整机器的速度。(如适用)3Manual Mode手动模式该种模式提供了对机器某模块的直
接控制。 这一功能是否可用取决于
被执行机器的机械约束。 该模式可
用于调试驱动器, 验证同步驱动器
的运行, 调试驱动器, 进而来修改
机器参数。4-31User Mode 01-user Mode 28用户模式 01——用户模式 28用户定义模式根据机器及其应用的
不同而不同。 例如,典型的用户定
义模式是清除模式(cleaning mode
)
模式转换(Unit mode transitions)
只允许在等待(Wait) 状态下更改模式(状态类型:等待(Wait) ,例如停止(Stopped) 、空位(Idle) 、 暂停(Suspended) 、中止(Aborted) 、保持(Held) 和完成(Complete) )。 只有在请求的单元模式中也存在等待状态时, 才有可能更改单元模式。
三、状态(States)
编号状态描述0Invalid非合理模式1清除中(Clearing)状态类型: 执行(Acting)由一个状态命令发出,来清除在中止过程中(Aborting)可能发生的错误,和在进入停止状态(Stopped state)之前中止状态(Abortedstate)中发生的错误。2已停止(Stopped)状态类型:等待(Wait)在停止状态完成后,机器通电但静
止。与其他系统的通信都在运行(如适用)。复位(Reset)命令可将机器从停止状态退出到复位状态。3正在启动(Starting)状态类型: 执行(Acting)这台机器完成了启动所需的步骤。
该状态通过一个启动命令(本地或远程) 进行。按照此命令,机器将开始“执行”。4空位(Idle)状态类型:等待(Wait)该状态表明复位(Resetting)已完
成。机器将保持其在复位状态时达到的状态,并且在机器处于空位(Idle)状态时执行所需的操作。5已暂停的(Suspended)状态类型:等待(Wait)请参考(Suspending)状态。
该状态下,机器不生产产品,其处于停止运行或继续循环状态。直到外部状态恢复正常,机器才开始生产。 与此同时,在不需要其他操作员的干预下,机器将从暂停状态(Suspended state) 过渡到非暂停状态(Unsuspending state)。6执行(Execute)状态类型: 执行(Acting)一旦机器开始处理材料,其就处于
执行状态(Execute state)。不同的机器模式将造成其特定的执行活动类型。 例如,如果机器处于生产(Production)模式,其执行状态是指产品执行生产;在“清除(CleanOut)”模式下的执行状态是指执行清洁机器的动作。7正在停止(Stopping)状态类型: 执行(Acting)该状态是响应一个停止命令而进行输入的。当处于这种状态时,机器执行逻辑,使其进入一个受控停止的状态,由停止(Stopped)状态可反映出状态。除非进行了重置(Reset),否则机器无法正常启动。8正在中止(Aborting)状态类型: 执行(Acting)中止(Aborting)状态可在任何时间响应中止命令(Abort command),或机器发生故障时进行输入。其中止逻辑将使机器快速安全停止。9已中止(Aborted)状态类型:等待(Wait)机器保持与中止状态相关的状态信息。机器只有在执行一个明确的清除(Clean)命令后才能退出中止(Aborted)状态,然后进行人工干预来纠正和重置检测到的机器故障。
10
保持中(Holding)
状态类型: 执行(Acting)当机器内部(在这台机器内部,而不
是来自生产线上的另一台机器)的工艺条件不允许机器继续生产时, 该状态被使用,即机器因内部条件而执行。 这通常用于需要操作员维护才能继续生产的常规机器。
11已保持(Held)状态类型:等待(Wait)请参考 Holding 状态;在这种状态下,机器不能生产产品。它要么停止运行,要么继续无生产的循环。当内部机器条件发生变化或操作员启动释放(Unhold)命令时,机器将切换到 Unhold 状态。12解除保持状态(Unholding)状态类型: 执行(Acting)请参考 Holding 状态;当机器内部条件(例如,材料等)恢复到一个可接受的水平,机器将自动进入解除保持(Unholding)状态。如果操作员需要执行少量维护以补充材料或进行调整, 那么解除保持(Unhold)命令将被操作员启动。13正在暂停(Suspending)状态类型: 执行(Acting)当外部(在本机之外,但通常在同一集成生产线上)工艺条件不允许机器继续生产时,即由于生产线上的上游或下游条件,机器不再执行, 该状态被使用。 这通常是由于堵塞或短缺造成的。 该情况可由本地机器传感器或基于监视系统外部命令被检测到14
释放暂停(Unsuspending)
状态类型: 执行(Acting)请参考正在暂停(Suspending)状
态;该状态是工艺条件恢复正常的结果。 释放暂停(Unsuspending)状态初始化所有将机器从暂停(Suspended)恢复到执行
(Execute)状态转换的所需动作或序列。
15正在复位(Resetting)状态类型: 执行(Acting)此状态是由已停止(Stopped)状态或已完成(complete)状态的重置复位命令导致的。故障和停止可导致复位。复位通常会使安全装置通电,并将机器置于空位(Idle)状态,等待启动(Start)命令。在这种状态下不应该发生危险的动作。16完成中(Completing)状态类型: 执行(Acting)此状态是执行(Execute)状态的自动响应。正常操作已运行完成,即进料处的物料处理将停止。17完成(Complete)状态类型:等待(Wait)机器已经完成了完成中(Completing)状态, 现在正在等待复位(Reset)命令,然后再过渡到复位(Resetting)状态。状态转换(State transitions)
使用启动(Start)命令将机器空位(Idle)状态更改为启动(staring)状态。表格中
越靠右的命令,其更改状态的优先级更高。
附加信息:如果机器模式不包括完成中/完成(Completing/Complete)状态,那么
可使用复位(Reset)命令完成从执行(Execute)到复位(Resetting)的转换。
四、控制命令(Control commands)
编号控制命令0未定义(Undefined)1复位Reset2启动/开始(Start)3停止Stop4保持Hold5解除保持(Unhold)6暂停(Suspend)7释放暂停(Unsuspend)8中止Abort9清除Clear10完成Complete五、LPML 库之介绍
5.1 库资源
LPML_V30 库在主内存中的强制块 (UnitModeStateManager) 的总大小为 11.8
Kbytes, 在装载内存中是 113.5 Kbytes 。
5.2模块说明
5.2.1 LPMLV30_UnitModeStateManager (FB 30100)单元模式状态管理功能块
功能块 LPMLV30_UnitModeStateManager 是 LPML_V30 模块库中的主要部分,其
依据 OMAC 标准管理机器模式与状态的转换。
根据引脚参数enableBooleanInterface引脚状态,决定功能块实现方法。
项值实现方式1FALSE1)通过UnitMode值(0-31)UnitModeChangeRequest(0->1)实现UnitMode的切换(前提:机器当前状态为Wait状态)2)通过CntlCmd值(0-11)CmdChangeRequest(0->1)实现UnitMode的切换2TRUE·1)通过对应引脚ProductionModeRequest、MaintenanceModeRequest、ManualModeRequest、UserModeRequest01触发实现UnitMode的切换2)通过ResetCmdRequest、StartCmdRequest、StopCmdRequest、HoldCmdRequest、UnholdCmdRequest、SuspendCmdRequest、UnsuspendCmdRequest、AboortCmdRequest、ClearCmdRequest、CompleteCmdRequest触发实现机器状态切换5.2.2 FB LPMLV30_UnitModeStateTimes (FB 30101)
LPMLV30_UnitModeStateTimes 功能块是可选择的,其以秒为单位计算每个模式下
的每种状态的时间。
5.2.3 FC LPMLV30_ConfigureDisabledUnitModes (FC 30100) 禁用模式
该功能允许用户轻松地为 LPMLV30_UnitModeStateManager 功能块设置模式配置
。当然,也可以直接在 LPMLV30_UnitModeStateManager 功能块中设置配置。
使用该功能块时,用户必须将不同模式下相应的输入设置为“TRUE”。例如,“MaintenanceModeDisable := TRUE”,用于禁用维护模式。
如果将模式配置从功能块的输出写到相应的模式与状态管理器“UnitMode and State Manager”中,其 disabledUnitModes 输出必须连接到相应的
LPMLV30_UnitModeStateManager 功能块 FB 的输入 configuration 中。
5.2.4 FC LPMLV30_ConfigureDisabledStates (FC 30101)禁用状态
该功能块允许用户轻松地在 LPMLV30_UnitModeStateManager 功能块中设置每个
模式的状态配置。当然,也可以直接在 LPMLV30_UnitModeStateManager 功能块中设置状态配置。
使用该功能块时,用户必须将不同状态下相应的输入设置为“TRUE”。例如,“HeldDisable:= TRUE”,用于禁用保持状态。
5.2.5 FC LPMLV30_GetUnitModeStateNamesAsString (FC 30102)
该功能块是可选择性使用的,其提供了字符串的形式下的模式和状态名称。 默认名可以在 typeLPMLV30_NamesConfiguration 的 PLC data type 数据类型中进行编
辑。
5.2.6 LPMLV30_Constants 常数
(1)模式常量
(2)状态常量
(3)控制命令常量
(4)语言常量
(5)数组边界常量
6.测试结果
6.1测试界面
6.2使用enableBooleanInterface 为FALSE;
6.3 使用enableBooleanInterface 为TRUE;
参考:西门子官网 “基于 S7 - 1200 / S7 - 1500 的 OMAC PackML V3.0” ,链接为:
来源:景似幻梦