跳到主要内容

LAD 编辑器

Darra IDE 的梯形图编辑器提供完整的图形化编辑能力,支持从元件拖放到梯级编排的全程可视化操作。

编辑器界面布局

┌─────────────────────────────────────────────────────┐
│ 工具箱 编辑区 属性面板 │
│ ┌───────┐ ┌─────────────────────────────┐ ┌──────┐ │
│ │触点 │ │ 梯级 1 │ │变量 │ │
│ │ ├── │ │ ┌─┤ ├──┤ ├──( )──┐ │ │ 名称 │ │
│ │ ├/├ │ │ └────────────────┘ │ │ 类型 │ │
│ │线圈 │ │ 梯级 2 │ │ 注释 │ │
│ │ ( ) │ │ ┌─┤ ├──┤ TON ─┤ ├──( )┐ │ │ │ │
│ │ (S) │ │ └──────────────────────┘ │ │ │ │
│ │定时器 │ │ 梯级 3 │ │ │ │
│ │ TON │ │ ┌─┤ ├──┬──┤ ├──(S)┐ │ │ │ │
│ │ TOF │ │ │ │ │ │ │ │ │
│ │计数器 │ │ │ └──┤ ├──(R)│ │ │ │ │
│ │ CTU │ │ └────────────────┘ │ │ │ │
│ │ CTD │ │ │ │ │ │
│ │比较 │ │ [状态栏: 编译通过 | 在线] │ │ │ │
│ └───────┘ └─────────────────────────────┘ └──────┘ │
└─────────────────────────────────────────────────────┘

三个主要区域

区域功能说明
工具箱(左侧)元件列表触点、线圈、定时器、计数器等,拖入编辑区
编辑区(中央)梯级编辑图形化编排梯级,支持缩放和平移
属性面板(右侧)参数配置选中元件后显示并编辑属性

工具箱分组

工具箱按西门子规则固定分组顺序:

基础元件
├── 常开触点
├── 常闭触点
├── 标准线圈
├── 置位线圈
├── 复位线圈
├── 取反线圈
├── 上升沿检测
├── 下降沿检测

定时器
├── TON (接通延时)
├── TOF (断开延时)
├── TP (脉冲)

计数器
├── CTU (递增)
├── CTD (递减)
├── CTUD (双向)

比较器
├── EQ / NE / GT / GE / LT / LE

数学运算
├── ADD / SUB / MUL / DIV / MOD
├── ABS / SQRT / SQR / NEG

移动与转换
├── MOVE
├── 类型转换 (INT_TO_REAL 等)

跳转
├── JMP / LBL / RET

功能块
├── 项目内 FB/FC 列表
├── 库 FB 列表

添加与删除元件

添加元件

  1. 从工具箱拖放:从左侧工具箱拖拽元件到梯级的指定位置
  2. 右键菜单插入:在梯级上右键 → 插入元件 → 选择类型
  3. 快捷键:选中位置后按快捷键添加(见下方快捷键表)
步骤:
1. 在编辑区点击梯级中希望插入元件的连线位置
(出现蓝色高亮插入点)
2. 双击工具箱中的元件,或拖拽到高亮位置
3. 元件自动嵌入梯级并完成连线

删除元件

  1. 选中元件(单击),按 Delete
  2. 右键元件 → 删除
  3. 删除后前后元件自动连线

连线操作

自动连线

  • 元件拖入梯级后,编辑器自动完成前后连线
  • 拖动元件到新位置,连线自动重绘

手动连线

  1. 将鼠标移到元件端口,出现连线光标
  2. 按住鼠标左键拖出连线
  3. 在目标端口释放完成连线
  ┌─ 元件 A ─┐      ┌─ 元件 B ─┐
──┤ ├──────┤ ├──
└──────────┘ └──────────┘
↑ 鼠标从端口拖出 ↑ 释放到端口

连线删除

  • 选中连线(单击连线中部)→ Delete
  • 右键连线 → 删除

分支与并联

插入并联分支

  1. 选中需要分叉的元件或连线
  2. 点击工具栏的"分支"按钮,或右键 → 插入分支
  3. 分支自动分为上下两路
  插入前:                插入后:
bCond1 bOut bCond1 bOut
──┤ ├───────( )── ──┤ ├──┬────────( )──

└──┤ ├── bCond2

嵌套分支

支持多级嵌套,最大深度由编辑器自动管理(通常不超过 8 层):

  bEnable   bKey                  bSafetyOK          bRun
──┤ ├────┬──┤ ├──────────────────┤ ├──────────────( )──

│ bOverride bAdmin
└──┤ ├───────┤ ├──

删除分支

  1. 选中分支点(并联交汇点)
  2. 右键 → 删除分支
  3. 分支合并为单路

插入行与列

插入行(梯级)

操作说明
点击梯级号区域的 +在当前梯级下方插入新梯级
右键梯级号 → 在上方插入在当前梯级上方插入空梯级
右键梯级号 → 在下方插入在当前梯级下方插入空梯级

插入列(元件位置)

操作说明
右键元件 → 向左插入在选中元件左侧插入空位
右键元件 → 向右插入在选中元件右侧插入空位
快捷键 Ctrl+I在光标位置插入空位

删除行/列

  • 删除梯级:右键梯级号 → 删除梯级
  • 删除空列:选中空位 → Delete,自动合并

撤销与重做

操作快捷键说明
撤销Ctrl+Z回退上一步编辑操作
重做Ctrl+YCtrl+Shift+Z恢复被撤销的操作
  • 支持多级撤销(默认 50 步)
  • 撤销历史在保存项目后仍然保留
  • 切换在线/离线状态时清除撤销历史

快捷键参考

编辑快捷键

快捷键功能
Ctrl+Z撤销
Ctrl+Y重做
Ctrl+C复制选中元件
Ctrl+V粘贴
Ctrl+X剪切
Delete删除选中元件/连线
Ctrl+A全选当前梯级
Ctrl+I插入空列
Ctrl+D复制梯级(整级复制)
F2重命名选中变量
Enter编辑选中元件属性

导航快捷键

快捷键功能
/ 上/下一个梯级
/ 梯级内左/右移动焦点
Tab下一个元件
Shift+Tab上一个元件
Home跳转到第一个梯级
End跳转到最后一个梯级
PageUp / PageDown上/翻一页
Ctrl+↑ / Ctrl+↓梯级上移/下移
Ctrl+G跳转到指定梯级号
+ / -缩放编辑区

视图快捷键

快捷键功能
Ctrl+0重置缩放为 100%
Ctrl+Wheel缩放编辑区
Space+拖拽平移编辑区(手形工具)
Ctrl+Shift+L切换 LAD/SCL 视图
Ctrl+Shift+F搜索元件或变量

梯级注释

每个梯级可以添加注释:

  1. 右键梯级号 → 编辑注释
  2. 在弹出框中输入注释文本(支持中文)
  3. 注释显示在梯级上方,灰色斜体
// 急停回路 — 任何急停按钮断开即停主继电器
bES1 bES2 bES3 bMainRelay
──┤/├──────┤/├──────┤/├────────────────( )──

// 风机启动 — 手动或自动模式均可启动
bManualFan bFanRun
──┤ ├──────────────────────( )──
bAutoFan
──┤ ├──

变量绑定

双击元件打开变量绑定对话框:

  1. 直接输入:在元件上直接键入变量名
  2. 从项目树拖放:从左侧项目树的变量列表拖拽到元件
  3. 下拉选择:双击元件,从变量下拉列表中选择
  4. 新建变量:输入不存在的变量名 → 自动创建新变量

变量绑定提示

  • 编辑器自动提示已存在的变量名(智能补全)
  • 变量类型不匹配时显示红色波浪线警告
  • 未绑定的变量显示为 ??? 标记

编译与错误提示

  • 编辑器实时检查语法错误,梯级左侧显示错误标记
  • 编译错误在输出面板列出,双击错误跳转到对应元件
  • 常见编译错误:
    • 变量未声明 → 红色标记
    • 类型不匹配 → 黄色警告
    • 线圈短接 → 编译报错
    • 分支未闭合 → 语法错误

右键菜单

菜单项功能
编辑打开属性编辑对话框
删除删除选中元件
复制复制选中元件
粘贴粘贴到光标位置
插入分支在选中点插入并联分支
插入空列右侧插入空位
插入梯级(上方)上方插入新梯级
插入梯级(下方)下方插入新梯级
切换类型切换触点类型(常开↔常闭)
切换线圈类型切换线圈类型(标准/S/R)
编辑注释添加/编辑梯级注释
转换为 SCL将当前梯级转换为 SCL 代码片段

相关文档