首页 > 解决方案 > 如何在 Niagara-4 中获取站点正常运行时间(开始时间)信息?

问题描述

  1. 我正在尝试获取尼亚加拉站的开始时间。
  2. 我看到有一个 Sys Class 提供单例来访问所有功能。
  3. 我想获得车站的开始时间,但我找不到会导致这种情况的属性。
  4. 我可以在资源管理器中看到,当在车站监视时可以看到那里有开始时间信息,但我无法检索它。我通过以下命令访问这些信息:
    local:|foxs:|spy:/sysInfo
    local:|foxs:|view:chart:ResourceManager

我一直在玩的代码:

Sys.getStation().getSysInfo().getFacets()

sysinfo 方面看起来是空的。

标签: niagara-4

解决方案


您可以访问静态字段 Nre.bootTime,该字段在工作站启动时设置为 System.currentTimeMillis(),然后从“现在”中减去它以获得正常运行时间 - 如下所示:

import com.tridium.sys.Nre;
import javax.baja.sys.BRelTime;

long uptimeMilliseconds = BAbsTime.now().getMillis() - Nre.bootTime;
  
BRelTime uptime = BRelTime.make(uptimeMilliseconds);
  
System.out.println("Uptime:");
System.out.println(uptimeMilliseconds + " ms");
System.out.println(uptime);

推荐阅读