回路编译器:有条件地插入元件的步骤

回路编译器动态编译回路时,回路元素选择可能需要有条件的元件插入。例如,可能需要在标记块的插入点处选择是插入“开始”按钮还是继电器常开触点。如果选择了瞬动型按钮,则应在标记有单独标记块位置处的按钮周围插入“密封”触点。但是,如果选择了继电器常开触点选项,则不需要插入密封触点,且必须修剪或删除导线。

  1. 打开包含选定元件标记块的回路模板图形,例如瞬动型按钮。注意其 ORDER 属性的值。
  2. 查找应接收有条件元件的导线。添加具有相同 ORDER 属性值的标记块。
  3. 为此有条件的标记块指定唯一的 CODE 属性值,例如“XY02”。
  4. 如果不需要条件元件,则查找要删除或修剪的导线。
  5. 在这些导线段中的每条上添加标记块。编辑 ORDER 属性值以与有条件元件标记块上的属性值匹配。
  6. 为每个导线标记块指定相同的 CODE 值,例如“XY01”。此 CODE 值不应与指定给有条件元件标记块的值相同。
  7. 保存回路模板图形。
  8. 打开回路编译器电子表格 ace_circuit_builder.xls。
  9. 查找回路类别和类型,例如类别:三相电动机回路和类型:水平 - 不可逆 - 非反转。
  10. 打开与 SHEET_NAME 值具有相同名称的回路代号表,例如 SHEET_NAME:3ph_H。
  11. 查找可选元件,例如代号:PB02,注释:开始,UI_PROMPT_LIST:开始。
  12. 为将需要有条件插入的选项编辑 COMMAND_LIST 列中的 API 调用。多个 API 调用可用于插入多个元件。例如:

    (c:ace_cb_insym #xyz nil "HPB11" #scl 8 nil)(c:ace_cb_insym "XY02" nil "HMS21" #scl 8 nil)

    请注意第二个调用中的差异。它传递“XY02”代号名称,而不是传递包含主标记块 XY 坐标的 #xyz 全局变量名称。这表示“HMS21”符号将插入到标记块“XY02”在插入模板中所在的位置处。

  13. 为需要修剪或删除导线的选项编辑 COMMAND_LIST 列中的 API 调用。例如:

    (c:ace_cb_trim "XY01" nil),其中“XY01”为指定给每个导线标记块的 CODE 属性值。

    将传递“XY01”代号名称,而不是传递作为第一个参数的 XY 坐标。这将指示回路编译器查找 CODE 属性值为“XY01”且具有目标 ORDER 值的所有标记块,并修剪或删除它们的基本导线。

    注: 有关详细信息请参见 API 文档。
  14. 保存电子表格。