虹科 KPA Automation softPLC
虹科 KPA Automation softPLC 是 为 Linux 、 Xenomai 、 INtime 、 Windows 等 实时 操作 系统 开发 PLC 的 编程 环境 ， 十分 适合 需要 使用 IEC61131-3 和 PLCopen 标准 的 控制 技术 和 进行 PLC 编程 的 用户 。 本 篇 文章 将 介绍 如何 在 虹科 KPA Automation softPLC 中 通过 编写 自动化 脚本 来 实现 强大 的 应用 程序 。
创建 新 向导 以 构建 新 项目 的 框架
创建 自动化 或 导入 I/O 配置 的 向导
自动 生成 有关 项目 项 的 文档
任何 导入 / 导出 程序
为此 ， 不 需要 额外 的 工具 ， 也 不 需要 了解 例如 VB 或 C ++ 等 编程 或 脚本 语言 ， 只 需 使用 Workbench 即 可 开发 、 测试 和 运行 您 的 脚本 。 该 脚本 是 使用 IEC 语言 （ 通常 是 结构化 文本 ） 编写 的 。
工作台 可以 自动 创建 或 更改 您 的 IEC 61131-3 项目 。 通过 使用 ST 语言 编写 自动化 脚本 ， 可以 实现 许多 强大 的 应用 程序 。 下面 将 介绍 项目 自动化 工具 的 原理 。
# 01
原理
项目 自动化 脚本 是 用 IEC 语言 编写 的 程序 。 结构 化 文本 通常 用作 脚本 的 编程 语言 ， 因为 它 最 适合 自动化 功能 。 该 脚本 作为 一 个 项目 开发 ， 链接 到 一 个 名为 AUTOMATION 的 专用 库 。
图 1 项目 自动化 工具 的 原理
当 Workbench 用于 开发 项目 自动化 脚本 时 ， “ 模拟 ” 和 “ 在线 ” 命令 被 用于 执行 脚本 的 “ 执行 脚本 ” 命令 代替 。 与 其他 IEC 项目 不同 ， 脚本 的 程序 只 执行 一 次 ， 并且 不 会 从 一 个 循环 到 另 一 个 循环 重复 。 脚本 既 可 用于 生成 新 项目 的 框架 ， 也 可 用于 更改 / 完成 现有 项目 。 因此 ， AUTOMATION 库 不仅 包含 用于 构建 项目 的 函数 ， 还 包含 用于 枚举 和 更改 项目 现有 项 的 函数 。
# 02
创建 一 个 新 的 项目 自动化 脚本
要 创建 新 的 项目 自动化 脚本 ， 请 从 菜单 中 运行 文件 / 新建 项目 命令 ， 然后 在 项目 创建 对话 框中 选择 自动化 脚本 选项 。
图 2 自动化 脚本 选择
然后 按照 说明 进行 操作 。 您 必须 指定 脚本 的 使用 方式 ：
从 头 开始 生成 一 个 新 项目
修改 现有 项目
修改 项目 或 创建 项目 （ 如果 尚 不 存在 ）
在 创建 脚本 时 ， 您 已经 可以 定义 一些 参数 ， 以便 在 脚本 启动 时 由 用户 输入 。 系统 会 自动 创建 ：
脚本 项目 中 将 成为 参数 的 一些 全局 变量 。
变量 分组 参数 列 表 。
接下来 ， 将 提示 用户 输入 参数 的 几 行 ST 代码 。 该 脚本 是 使用 以下 工作区 生成 的 。
图 3 默认 的 项目 工作区
# 03
开发 并 测试 脚本
一 个 自动化 脚本 的 开发 与 任何 使用 工作台 的 项目 一样 ， 但 有 一些 特殊 的 限制 。 最 大 的 区别 是 ， 脚本 是 一 个 只 执行 一 次 的 程序 （ 一般 用 ST 语言 编写 ） ， 不 会 在 各 个 周期 重复 。 主程序 就 是 自动化 脚本 。 您 可以 自由 地 创建 子程序 和 UDFB 来 被 这个 程序 调用 ， 但 建议 只 保留 一 个 脚本 的 最 高级 程序 （ 主 程序 ） 。
脚本 项目 指 的 是 一 个 名为 AUTOMATION 的 特殊库 ， 它 包含 了 开发 脚本 的 所有 必要 功能 。
图 4 AUTOMATION 库 的 内容
在 开发 脚本 项目 时 ， 项目 菜单 的 “ 模拟 ” 和 “ 在线 ” 命令 被 “ 执行 脚本 ” 命令 所 取代 。 此 命令 可以 运行 您 的 脚本 以 进行 测试 ， 并 打开 以下 对话 框 ：
图 5 自动化 脚本 运行 示例
在 上面 的 对话框 中 输入 目标 项目 的 名称 （ 要 创建 或 更改 ） ， 然后 按 Go ! 。 任何 跟踪 消息 或 错误 报告 都 会 显示 在 下面 的 列表 中 。
# 04
将 脚本 注册 为 “ 新 项目 ” 向导
如果 您 的 脚本 旨 在 为 新 项目 创建 框架 ， 您 可以 注册 它 ， 以便 工作台 在 其 标准 的 新 项目 程序 中 调用 它 。 为此 ， 您 只 需 复制 已 安装 好 KPAAsoftPLCStudio 应用 程序 数据 的 脚本 文件夹 ， 它 位于 AUTOMATION \ SCRIPTS \ 文件夹 下 。 然后 您 的 脚本 将 可 用 于 从 工作台 创建 新 项目 。
# 05
从 其他 应用 程序 运行 脚本
命令 行
可以 使用 随 Workbench 安装 的 K5Script.exe 实用 程序 直接 从 Windows 控制台 或 从 . BAT 文件 执行 脚本 。 语句 ： K5Script.exe <script> <target_project >
对象 ：
< script > ： 包含 脚本 的 文件夹 的 名称 。 如果 未 指定 路径 名 ， 则 在 AUTOMATION \ SCRIPTS \ 下 搜索 脚本 文件夹 。
< target _ project > ： 要 由 脚本 创建 或 修改 的 目标 项目 的 完全 限定 路径 名 。
从 C / C ++ 应用 程序
您 的 “ C / C ++ ” 应用 程序 可以 链接 到 安装 的 Workbench 所在 的 K5NETAS.DLL ， 并 使用 以下 导出 函数 运行 脚本 ：
从 C 语言 ：
LPCSTR declspec ( dllimport ) K5NETAS_RunScript (
LPCSTR szScript , LPCSTR szDest
) ;
从 C ++ 语言 ：
extern " C " LPCSTR declspec ( dllimport ) K5NETAS_RunScript (
LPCSTR szScript , LPCSTR szDest
) ;
对象 ：
szScript ： 包含 脚本 的 文件夹 的 名称 。 如果 未 指定 路径 名 ， 则 需要 在 安装 Workbench 的 “ AUTOMATION \ SCRIPTS \ ” 文件夹 下 搜索 脚本 文件夹 。
szDest : 脚本 要 创建 或 修改 的 目标 项目 的 全 限定 路径 名 Return
价值 ：
该 函数 返回 一 个 指向 包含 报告 的 字符串 的 指针 。
在 实际 操作 过程 中 ， 虹科 技术 工程师 整理 了 部分 功能 的 参考 示例 ， 包括 project level services 、 delaring objects 、 generating documents 等 ， 若 您 在 开发 过程 中 需要 帮助 或 想要 了解 更 多 关于 虹科 Automation softPLC 的 相关 信息 ， 欢迎 随时 通过 info@hkaco.com 联系 虹科 。
若 想 了解 更 多 信息
欢迎 联系 虹科 工业 控制 团队 ！
▎ 往期 回顾
