在 TwinCAT 中,有没有办法从 PLC 代码外部获取实时(隔离)CPU 用法?

In TwinCAT, is there a way to get the real time (isolated) CPU usage from outside of the PLC code?

非 RT 内核的 CPU 使用在 MDP 中可用(通过 ADS 或 UA),但我无法找到任何方法来获得隔离内核的 CPU 使用来自用户空间(即 Windows)。

我觉得应该有一种简单的方法来阅读这篇文章,因为 TcXaeShell 能够显示 RT 核心使用情况 in a chart。

有谁知道如何做到这一点,或者,作为最后的手段,如何嗅出 TcXaeShell 用来获取此信息的协议?

UPDATE:多亏了下面的评论,TC_CpuUsage FB 只是在后台使用 ADS 读取,我能够找到 ADS 参数我需要在 TC_CpuUsage FB:

起初我错过了 AMS 端口应该是 TwinCAT 实时服务器端口 (200) 而不是运行时端口(默认 851)的细节,所以我收到了 ADS 错误。一旦我更改了端口,我就能够在我的 .NET 应用程序中通过 ADS 获得 RT 内核的CPU 使用。

TC_CpuUsage 功能块不是您要找的东西吗?如果您希望 CPU 使用 1 个以上的核心,您需要 运行 在分配给每个核心的任务的每个程序中都有一个此 FB 的实例。