使用变量 句法 $<Variablenname>$ 变量和表达式的有效 IEC 基本类型: INT , SINT , USINT , UINT , DINT , UDINT , BYTE , WORD , DWORD , REAL , 和 LREAL .例外情况包括 M 函数的 O 参数(它需要一个类型为 SMC_M_PARAMETERS ) 和 G36/G37 (其中也允许字符串变量)。 可以为
改变变量的值 G代码 : G36 , G37 功能 :命令更改变量的值。 G36 将指定值写入变量。 G37 将变量增加指定的值。 O$var$ 定义被编辑的变量。 D 定义写入的值 G36 或添加 G37 .例如,该命令用于条件跳转所需的循环计数器。 句法 G36 O D G37 O D G36 的 G 代码字 描述 O 写入的变量。如果 O 未定义,则使用内部解码器变量。 D 新变量值 G37
子程序 功能 : 子程序的调用 经常重复执行的任务,例如型腔铣削、钻孔和换刀,可以替换为 G 代码子程序并从那里调用。在调用过程中,可以将参数传递给子程序。数据类型 BOOL , LREAL , 和 STRING 允许用于此目的。 提示 如果使用子程序,则必须使用功能块 SMC_ReadNCFile2 和 SMC_NCInterpreter 代替 SMC_ReadNCFile 和 SMC_NCDe
表达式 功能 : 在 4.4.0.0 及更高版本中,可以使用数学、布尔和字符串表达式。这 SMC_ReadNCFile2 和 SMC_NCInterpreter 为此必须使用功能块(而不是 SMC_ReadNCFile 和 SMC_NCDecoder )。 提示 表达式仅适用于在线解码器(不适用于 CNC 编辑器)。 原则上,表达式可以在 G 代码中的两个位置使用: 作为 G 字的值(一个 G 字
局部变量 每个 G 代码文件都可以声明局部变量。对于主程序,必须在最开始插入声明;对于子程序,直接在子程序声明之后。 局部变量仅在声明它们的程序或子程序中可见。 (无动态范围) 提示 局部变量仅在在线解码器中起作用(不在 CNC 编辑器中)。 提示 每个子程序和主程序中局部变量的数量限制为 21 个。 声明的语法 语法类似于用于声明子程序参数的语法。每个块可以声明一个变量。该块不以 N 字开头。变
CNC实例01:直接生成OutQueue 见 CNC01_direct.project 安装目录下的示例工程 CODESYS 在下面 ..\CODESYS SoftMotion\Examples . 这个例子显示了一个有两个轴的 CNC 程序。以定义的速度和加速度接近 X/Y 平面中的四个位置。程序在路径上设置了两个路径切换点。该程序通过使用直接写入数据结构 SMC_OutQueue 编译模式。
CNC 实例 02:带变量的在线解码 见 CNC02_online.project 安装目录下的示例工程 CODESYS 在下面 ..\CODESYS SoftMotion\Examples . 该示例显示了如何 使用变量 解码 CNC 程序。 在 CNC 编辑器中创建 NC 程序 创建一个 CNCOnline 程序与 SoftMotion 控制器。 创建一个全局变量列表并声明两个变量。 VAR_
CNC实例03:在线进行路径预处理 见 CNC03_prepro.project 安装目录下的示例工程 CODESYS 在下面 ..\CODESYS SoftMotion\Examples . 该示例显示了如何在 PLC 上在线执行路径预处理。 延长 CNC02_online 带有一个路径预处理器的项目。那么运动的角度 CNConline 项目通过样条曲线进行舍入。这是通过 SMC_平滑路径 功能
CNC 示例 04:使用表格编辑器对 CNC 进行编程 见 CNC04_table.project 安装目录下的示例工程 CODESYS 在下面 ..\CODESYS SoftMotion\Examples . 在这个项目中,功能 CNC03_prepro.project 示例项目使用表格编辑器进行编程。与...对比 CNC03_prepro.project ,此项目中未使用 IEC 变量。相反,