基础使用
本章介绍 Darra PLC IDE 的日常使用:打开软件、建立连接、扫描现场设备、配置 IO。掌握本章内容即可完成大多数工程准备工作。
快速索引
| 想做什么 | 看哪里 |
|---|---|
| 认识界面 | IDE 外壳 |
| 第一次建项目 | 基础教程 → 新建项目 |
| 写第一段程序 | 基础教程 → 第一个 PLC 程序 |
| 下载到控制器 | 基础教程 → 下载运行 |
| 连接 PLC | 连接 → PLC 连接 |
| 扫描局域网控制器 | 连接 → 网络扫描 |
| 接 Modbus/S7 等设备 | 通讯协议 |
| 配置 EtherCAT/Modbus IO | IO 系统 |
推荐学习顺序
完成以上 4 步,就可以进入 PLC 编程 或 机器人控制 了。
IDE 总体定位
Darra PLC IDE 是一款面向工程师的集成开发环境, 围绕"一个工程一套工具"的思路把 PLC 编程、运动控制、HMI 画面、通讯配置、IO 组态、调试诊断全部收敛在一个主窗口里。用户不需要在多个软件之间切换, 也不需要手工对接配置文件。IDE 的定位是:
- 工程中心: 所有工程产物 (程序块、变量表、HMI 页面、IO 映射、通讯连接) 都保存在一个
.darra工程包里, 整体版本化、整体交付 - 现场桥梁: 一键扫描局域网 Runtime、一键扫描现场 IO/总线设备, 所见即所得地把硬件拖进工程
- 生产可靠: 编译通过即可运行, 下载过程原子化 (要么全部成功, 要么回滚), 不允许"编译成功但运行异常"
- 多产品共用: 同一个 IDE 既能做纯 PLC 工程, 也能做机器人工作站, 也能做"PLC + 机器人 + HMI"一体化工程
工程组织
一个 Darra 工程的物理结构如下:
MyProject.darra/
├── project.xml 工程元信息 (名称、ID、创建时间)
├── references.xml 外部库引用清单
├── plc/
│ ├── programs/ OB / FC / FB / DB 源码
│ ├── variables.xml 全局变量表
│ ├── udt/ 用户自定义类型
│ └── tasks.xml 任务配置 (周期、优先级)
├── robot/
│ ├── robots.xml 机器人实例清单
│ ├── teach/ 示教点
│ ├── frames/ 坐标系
│ └── programs/ 机器人程序 (G 码 / Rapid-like)
├── hmi/
│ ├── pages/ 画面 xaml
│ ├── templates/ 页面模板
│ └── resources/ 图片/字体
├── io/
│ ├── devices.xml IO 设备清单
│ ├── mapping.xml IEC 地址 ↔ 硬件端口映射
│ └── esi/ EtherCAT ESI 文件
├── comm/
│ ├── connections.xml 通讯连接清单 (Modbus/S7/OPC UA...)
│ └── poll-groups.xml 轮询组
├── reports/ 报表模板
└── history/ 版本历史快照 (可选)
所有文件都是纯文本 (XML / JSON / SCL), 便于 Git/SVN 版本化。工程打开时 IDE 会把这些文件加载到内存数据模型, 保存时反序列化回盘。任何对工程的修改都必须通过 IDE 完成, 避免手工编辑破坏一致性。
多人协作
推荐把 MyProject.darra/ 目录直接纳入 Git。IDE 侧的改动粒度到单个文件, 多人分支合并时冲突最小。避免用 MyProject.darra.zip 整体打包, 那样合并不了。
典型工作流
一个完整的工程开发闭环:
主要模块一览
| 模块 | 入口 | 作用 |
|---|---|---|
| 项目浏览器 | 左侧 | 所有工程内容的总目录 |
| 代码编辑器 | 中央 | SCL / LAD / CFC 多语言编辑 |
| 变量表 | 编辑器区 (表格) | 全局/局部变量定义、地址、初值 |
| IO 组态 | Ribbon → IO | 总线扫描、从站配置、地址映射 |
| 通讯配置 | Ribbon → 通讯 | Modbus / S7 / OPC UA 等外部连接 |
| HMI 设计器 | 编辑器区 (画面) | 拖拽控件、绑定变量、导出 |
| 机器人调试 | Ribbon → 运动 | 点动、示教、程序运行 |
| 调试在线 | Ribbon → 调试 | 变量监视、强制值、趋势 |
| 日志与报警 | 底部 | 编译输出、运行日志、报警 |
| 设置中心 | Ribbon → 设置 | 主题、快捷键、路径、License |
与 Service / Panel / Runtime 的关系
Darra PLC 总共有三个可执行层:
- IDE (本文档主题) — 工程师使用的开发工具, 只在开发/调试时启动
- Service (永驻进程) — 承担项目托管、授权校验、对多个 Panel / IDE 的服务
- Panel / Runtime (现场运行) — 真正执行 PLC 周期扫描的进程, 面向操作员
IDE 不直接与内核驱动 (DarraRT_PLC.sys) 通讯, 而是通过本机或远程的 Service 中转。下载流程就是 IDE 把编译产物 (.plcx) 推给 Service, 由 Service 加载到 Runtime。
IDE (开发) ←→ Service (中转) ←→ Runtime (执行) ←→ DarraRT_PLC.sys (内核)
遇到"下载成功但程序没跑"的情况, 先确认 Runtime 是否启动、Service 与 Runtime 是否连通。详见 IDE 外壳 → 连接状态。
新手五分钟速通
- 打开 IDE, 开始 → 新建项目 → 模板选"空白 PLC"
- 项目树 → 程序块 → 右键 → 新建 OB1, 编辑器里写一行
Q0.0 := NOT Q0.0; - Ribbon → PLC → 启动本机 Runtime
- Ribbon → PLC → 编译 (F6) → 下载 (F8)
- 看到状态栏变绿, 打开 IO 监控就能观察
Q0.0在闪
完成!继续深入请看 基础教程。