鸿道(Intewell)操作系统应用于PC-Based扩展运控板卡项目案例
案例背景
为了利用Windows生态,客户通常选择X86工控机作为上位机来运行HMI和视觉应用,并通过PCIe接口扩展运动控制板卡,以执行对实时性要求较高的运动控制算法。虽然该方案中的总线延迟较低,但Windows系统的非确定性特性会导致算法执行时出现较大的抖动,从而无法充分展现运控板卡的高性能优势。
实践概述
本项目向客户提供了一套基于国产化技术的高性能运动控制解决方案,采用了Windows与鸿道(Intewell)的混合架构。通过鸿道Intewell-H实时扩展操作系统,我们特别分配了一个内核运行运动控制算法,以驱动PCIe运动控制卡完成EtherCAT通讯,而其他内核则用于运行客户现有的非实时Windows系统应用。实时与非实时任务之间通过共享内存或虚拟网络进行高效通信。此方案确保了Windows应用程序无需进行跨平台移植,同时实现了非实时Windows系统与实时系统的分区隔离,即使非实时Windows端发生故障也不会影响实时业务的运行。此外,该架构还能支持多个RTOS实例,允许多个实时业务并行运行,从而提供更高的灵活性和可靠性。
应用效果
本方案成功解决了客户在Windows系统下难以实现高实时性和高精度运动控制的问题,确保了运动控制算法应用的时间确定性和高实时性。同时,方案保留了客户的Windows生态应用,实现了Windows应用的兼容性与实时运动控制的并行运行,满足了客户的需求。
本方案分区隔离,非实时应用如视觉等与实时运用如运动控制互不干扰,保证设备控制的稳定性;也弥补了Windows实时性差的缺陷,系统在最严苛强压力环境下,总线任务定时抖动在任务周期(250us)的5%(12.5us)以内。