跳转至

系统架构

One 是一款分层控制器。每一层从上一层接收指令,经过处理后,向下一层发送命令。实时活动(如伺服循环)在较低层级处理,时间要求较低的活动(如程序编辑与显示)则在较高层级处理。以下软件组件按从最高层到最低层的顺序列出,请参考图:系统架构图。

第四层:Windows 应用程序

第三层:编程接口

第二层:控制器运行时

第一层:驱动器与现场硬件

随 One 控制器提供的基础软件包包含 .NET SDK、C API 以及 Coretech 实用程序。您可使用 C API 以 C 或 C++ 语言开发定制应用程序,也可通过 .NET SDK 以C#或任何其他 .NET 语言创建定制应用。实用程序则用于配置、故障排查及操作控制器。

MotionCoder、DigitalScope应用程序以及自定义应用程序可以同时在 PC 上运行,并可以同时连接同一台控制器。

图:系统架构图

表:第4层 Windows 应用程序

应用 描述
配置管理器 编辑参数、配置轴,查看系统状态的主程序。
运动编程器 开发 OneScript 程序、点动轴并查看状态。
数字示波器 收集并分析控制器实时数据,创建一维和二维图表。
定制应用 一个用户编写的应用程序,它使用一个或多个提供的软件接口。

表:第3层 编程接口

接口 描述
.NET SDK 使用 C#等 .NET 语言为 One 开发自定义应用程序的主接口,提供命令、参数、变量、任务与事件的完整对象模型。有关详细信息,请参阅 One 编程帮助文件中的 .NET 部分。
C API 使用 C 或 C++ 语言为 One 开发自定义应用程序的原生接口。.NET SDK 亦构建于其上。有关详细信息,请参阅 One 编程帮助文件中的 C 库部分。

表:第2层 控制器运行时

组件 描述
One 服务 以 Windows 服务方式运行的监管进程:启动并监护控制器进程,同时托管独立的固件更新通道。
控制器 面向所有 Windows 应用程序的命令服务:执行 OneScript 程序、管理参数与 EtherCAT 网络配置,并将运动指令下达给实时内核。
实时内核 运行在 PC 实时环境中的确定性实时组件,以实时周期执行运动任务、生成轨迹并与所有网络驱动器通信。实时内核的优先级高于 PC 上运行的所有 Windows 进程。

表:第1层 驱动器与现场硬件

组件 描述
实时总线 连接控制器与所有现场设备的实时现场总线,周期性地交换过程数据,最多支持 32 轴。
驱动器 Coretech 智能驱动器,在驱动器本地完成伺服控制与电流环,固件通常已预装在硬件上。
电机与编码器 电机包括无刷伺服电机、直驱电机等;反馈支持旋变与各类编码器。

表:通信通道

通道 描述
命令与数据通道 基于以太网的 UDP 通道,承载 Windows 软件层与控制器运行时之间的所有命令、状态与数据交换。
固件更新通道 独立于命令通道的以太网 UDP 通道,仅用于固件包的下载、校验与应用。
EtherCAT 现场总线 控制器运行时与驱动器之间的实时周期通信通道。

在实时分工上,Windows 应用程序只负责界面与程序编辑,不承担任何实时职责;实时内核以确定实时周期完成任务调度、轨迹插补与总线交换;驱动器则在本地以更高的频率闭合伺服环与电流环。因此,上层应用的负载不会影响运动的确定性执行。