SIEMENS西门子 S-1FL2低惯量型电机 1FL2104-4AF00-1HC0
创建 MCL 程序 (S7-1500T) 5 Motion Control Language (MCL) 是一种用于指定运动作业的解释性编程语言。 该语言基于 DIN EN-61131-3 (IEC 61131-3) 中指定的 Structured Text (ST) 编程语言。 主要特征 MCL 通过解释器执行指令。 解释器是一种直接执行编程或脚本语言指令而无需先将其编译为机器语言程序的程序。 MCL 的结构包含许多运动和工艺特定的扩展。 MCL 的语法 (S7-1500T) 字符集 (S7-1500T) 在 MCL 中,允许的字符集由标准 ASCII 字符集的子集组成: • 从 A 到 Z 的小写和大写字母 • 阿拉伯数字 0 到 9 • 控制字符(ASCII 值 1–31) • 空格(ASCII 值 32) • 特殊字符 不区分大小写字母。 MCL 将 PLC 数据的注释和符号标识符解释为 UTF-8 格式的 Unicode 字符。 特殊字符 下表列出了 MCL 中使用的特殊字符及其说明: 字符 词汇规则 语法规则 : • 时间单位间的分隔符 • 赋值运算符的一部分 • 指示类型的分隔符 • 名称后、指令前: – 声明变量 – 函数 – CASE 指令 . • 表示浮点数的分隔符 • 时间间隔显示 • juedui寻址 访问结构内的结构化变量。 " " 符号介绍(仅用于 PLC 数据) _ 数值分隔符(出现在标识符中) $ • 访问解释器工艺对象中的变量以及分配 的运动机构工艺对象及其运动机构轴 • 用于指定字符串中的控制或代理字符的 系统变量转义字符量:解释器程序的执行 (S7-1500T) 解释器工艺对象 解释器工艺对象的以下变量与执行解释器程序相关: 变量 说明.ProgramName 当前加载的解释器程序工艺对象的名称 当前加载的解释器程序的来源 0 未加载解释器程序.ProgramSource 1 解释器程序工艺对象.MappingName 当前加载的解释器映射工艺对象的名称 当前加载的解释器映射的来源 0 未加载解释器映射.MappingSource 1 解释器映射工艺对象.ActualLineNumber 当前执行的程序行或Zui后执行的程序行的行号.StatusWord.X0 (Control) 解释器工艺对象上没有任何运动控制作业处于激活状态。.StatusWord.X5 (InRun) 工艺对象正在执行解释器程序。.StatusWord.X6 (Done) 解释器程序已执行完毕。.StatusWord.X7 (Stopping) 解释器程序执行即将或已经停止。.StatusWord.X9 (Loading) 工艺对象正在加载解释器程序。解释器程序准备正在运行。.StatusWord.X10 (Loaded) 解释器程序已加载并已准备。由解释器控制的工艺对象 执行解释器程序时,解释器控制的工艺对象的以下变量相关: 变量 说明.StatusInterpreterMotion.Interpreter 对于轴的工艺对象: 控制解释器工艺对象.StatusInterpreterMotion.StatusWord.X0 (ControlledByInterpreter) 当 MCL 作业准备好或激活,或通过 MCL 指 令“setControlledByInterpreter()”设置该位时,设置为值“TRUE”。.StatusInterpreterMotion.StatusWord.X1 (MotionByInterpreter) 当 MCL 运动作业生效时,设置为值“TRUE”。
标识符 (S7-1500T) 构造标识符的词汇规则符合 IEC 标准 61131-3。 标识符是字母、数字和下划线的组合,并且必须以下划线或字母开头。唯一例外是以字 符“$”开头的 AXIS_OBJECT 系统类型的特殊文字。 对于预定义或自由标识符,MCL 不区分大小写字母。使用无效标识符会导致运行系统错误。保留的默认标识符 未使用的关键字将被阻止,以确保 MCL 语法可能的扩展后解释器程序的兼容性。在 MCL 程序 中使用保留标识符会导致语法错误。以下类型的标识符在语法上保留: • 块名称/块关键字 • 定时器标识符 • 计数器标识符 • 地址标识符文字 (S7-1500T) 文字是基本数据类型的常量,其值出现在程序的文本中。以下文字可用: • 数字文字 • 时间文字 • 系统文字 对于数值数据类型,相应的文字可以选择显式类型化,即可以使用前面的数据类型规范。表达式 (S7-1500T) 表达式由操作数和运算符组成。 操作数是常数、标签和指令调用。 运算符区分以下表达式: • 算术表达式 • 逻辑表达式 • 比较表达式 表达式用于操作数的计算或独立使用。否则,表达式的结果将被丢弃,例如,对于没有返回值 的指令调用。注释 (S7-1500T) 注释用于记录 MCL 程序。它们对于程序的执行没有任何意义,会被解释器忽略。 MCL 区分行注释和块注释。行注释以“//”开始,至行尾结束。块注释以“(*”开头,以“*)”结尾。 可以在块注释中使用行注释。行注释中的块注释将被忽略。MCL 的附加属性 (S7-1500T) 以下附加条件适用: • 只能在为此目的提供的相应程序组织单元的声明小节中创建您自己的变量。 • 运动作业或工艺功能没有返回值。参数由必需元素和可选元素组成。对于可选元素,定义 默认值或模式行为。 • 支持模态参数,例如指定动态值。模态参数是在 MCL 程序开始时初始化的参数,它们保留 其值,直到被 MCL 程序中的“set”指令更改。因此,不需要在模态参数中指定 MCL 指令。 解释器随后会使用模态参数中的值。 • 与运动并行运行的同步动作(即设置输出、执行计算等)被单独标记为此类动作。 有关同步动作的概述和更多信息,请参见“同步操作 (页 99)”部分。 • 解释器不适合检测和处理运行系统错误,即不支持 PLC 端使用的 EN/ENO 机制。解释器中 的运行系统错误会导致报警消息并取消解释器程序。MCL 中的数据类型概述 (S7-1500T) 说明 数据类型是单个单元中值范围和运算的组合。 数据类型决定变量或常量的值在源程序中的使用方式: • 数据元素的类型和解释 • 数据元素的允许范围 • 允许的可执行运算 • 常量的表示法 基本数据类型 基本数据类型定义了无法再划分为更小单元的数据元素的结构。它们符合 DIN EN 1131-3 标准 中的定义。基本数据类型描述了固定长度的存储区域,并表示 MCL 中的位数据类型和数值数 据类型。 复合数据类型 复合数据类型描述了由固定数量的组件组成的数据类型。 对于数组数据类型,所有组件都具有相同的数据类型。 对于 STRUCT 数据类型,组件的数据类型可以不同。 TO_STRUCT_Ipr_* 数据类型描述了运动机构或坐标系的位置规范。数组数据类型 (S7-1500T) 说明 Arrays 具有一定数量的数据类型组件。MCL 中支持具有固定数量的统一数据类型的元素的 Arrays。数组组件可使用所有数据类型(包括 STRUCT,但不包括 ARRAY)。仅可声明一维 Arrays。数据类型 STRUCT (S7-1500T) STRUCT 数据类型描述了由固定数量的组件组成的范围,这些组件可以是不同的数据类型。指 定这些数据元素紧跟在组件声明中的 STRUCT 关键字之后。 STRUCT 数据类型的主要特性是数据元素也可以很复杂。这意味着允许嵌套 STRUCT 数据类 型。Zui大嵌套深度为 8。 语法和声明 结构涉及定义 STRUCT 和 END_STRUCT 关键字之间的各个组件。 可通过两种方法使用 STRUCT 数据类型: • 变量声明单元中的匿名结构定义 • 作为解释器的用户自定义全局数据类型的结构定义 变量声明单元中的匿名结构定义 新声明的用户数据类型的变量在主程序的变量声明部分或函数中定义。该结构的组件允许使用 所有数据类型。或者,可以在定义结构时使用默认值来初始化组件。 匿名结构必须在声明单元中定义,用于声明局部静态变量 - VAR - END_VAR。作为解释器的用户自定义全局数据类型的结构定义 新的全局数据类型可以在数据类型声明单元中声明后使用 - TYPE - END_TYPE。此声明单元的 编程必须在主程序之外进行(PROGRAM - END_PROGRAM 块),并且每个 MCL 程序仅允许声 明一次。数据类型 TO_Struct_Ipr_Position (S7-1500T) 说明 TO_Struct_Ipr_Position 数据类型用于定义世界坐标系或对象坐标系中的位置。 有关运动机构类型、运动类型、坐标系和框架以及运动机构轴的更多信息,请参见文 档“S7-1500T 运动机构功能。数据类型 TO_Struct_Ipr_AxPosition (S7-1500T) 说明 TO_Struct_Ipr_AxPosition 数据类型是一种变量类型,用于定义机床坐标系 (MCS) 中Zui多 6 个 轴的位置。 有关运动机构类型、运动类型、坐标系和框架以及运动机构轴的更多信息,请参见文 档“S7-1500T 运动机构功能。使用 MCS 包含所连接运动机构轴的位置数据,将轴位置组合为数组或向量。 该数据类型的每个变量的值范围取决于运动机构类型、框架类型以及使用该变量的指令。 TO_Struct_Ipr_AxPosition 数据类型用于变量的数据类型,变量可以是以下工艺指令的参数。数据类型 TO_Struct_Ipr_JtPosition (S7-1500T) 说明 TO_Struct_Ipr_JtPosition 数据类型是一种变量类型,用于定义运动机构轴在接头坐标系 (JCS) 中的位置,Zui多有 6 个自由度。 有关运动机构类型、运动类型、坐标系和框架以及运动机构轴的更多信息,请参见文 档“S7-1500T 运动机构功能。