嵌入式控制器
齿轮箱测试试验标准要求试验过程中每隔15min进行一次振动噪声信号采集和实时频域傅立叶分析,关心的频率分辨率为0.5Hz,带宽为 20kHz,16次谱平均,对于振动信号需要进行频带能量计算,噪声信号需要进行等效声压级计算。这就要求每次计算对时域振动噪声信号以80kS/s采样率采集2s,连续进行16次采集及计算。一次实时处理的程序代码如图4所示。
除上述振动噪声采集计算外,处理器还要同时进行流程执行、环境参数采集、运动控制通信及数字I/O通信等多项任务,这对处理器的速度和内存提出了更高的要求。另外由于系统需要实时监控直流调速器以及电机运行状态,控制器必须连续稳定运行,对危险状况具备紧急决断能力,因此为保证控制器的时间精确性和性能可靠性,在PXI-8106嵌入式控制器上运行实时操作系统,负责流程执行、数据采集、数据实时处理等时间紧急任务,使用TCP/IP协议通过千兆以太网卡与上位监控终端工控机进行通信,将配置、显示、存储、报表及查询等非实时任务转移到监控终端程序进行处理。
如果将监控终端应用程序和嵌入式实时控制器程序合并到一台运行Windows操作系统的PC机(配置和PXI-8106相同)上运行,采集程序和图4所示的计算代码连续运行16次需要4~5min,计算过程中,资源基本耗尽,有时还会出现内存溢出的情况。系统应用程序在实时控制器中可独立运行,保证高优先级的数据采集和控制任务优先执行,而且实时操作系统不需要外围设备,单任务运行平台,后台程序和服务少,在这样的系统设计保证下,内存和CPU资源得到分流,上述代码执行16次仅需40s,应用程序的时间精确性和稳定性得到提高,另外由于运行在实时操作系统上的应用程序使用多线程技术编程,与监控终端的通信在计算执行过程中基本不受影响,系统的性能得到大大改善。