当前位置:首页 > 工业控制 > 《机电信息》
[导读]摘要:提出将开源的Hypervisor嵌入式虚拟化实时系统管理程序Jailhouse应用到工业机器人控制系统的研究方案,用来提高工业机器人控制系统的实时响应性能。对比RTosonly、LinuxRT和嵌入式虚拟化实时系统实时性能,实验结果表明,虚拟化实时系统在重负载条件下实时性能相对于LinuxRT有了很大程度的提高。

引言

随着工业4.0技术的发展,工业机器人控制系统对工业物联网、工业大数据和人工智能等重负载的新技术开始有了应用需求,传统的工业机器人控制系统是基于实时操作系统(RTos)而设计的高度安全可靠的均衡型硬实时系统,同时伴随着系统复杂度的提高,出现了经过内核改造的实时Linux系统方案。但随着系统负载的逐渐加重,其实时性亦逐渐下降。若将通用Linux和RTos两者有机地结合起来,既能满足系统任务复杂性要求,又能兼顾系统实时性。

1Jai1house原理概述

与实时Linux系统单内核(LinuxwithPreemptRT)改造方案不同的是,Hypervisor方案本身并不改造Linux内核,而是利用Linux系统的开放性,增加一个或多个实时操作系统,实现多系统在一个多核处理器上运行。

Jailhouse是一个基于Hypervisor虚拟化技术的Linux静态分区管理程序,其可以运行裸机应用程序或RTos应用程序。为此,Jailhouse使用Cell单元节点来配置CPU和设备硬件平台的虚拟化功能,且各个节点分配的资源互不干扰。

一旦Jailhouse被启动,在Inmate空间就会运行裸机应用程序或RTos,也就是说在Linux端分配了相关的硬件资源给Inmate时,它完全可以独立控制硬件且不再需要外部系统的支持。在TIAM5728硬件平台上,CPU只有两个单元节点Cell:RootCell和InmateCell。Jailhouse软件框架如图1所示。

与基于Linux的全功能虚拟机管理程序(如KVM或xen)不同,Jailhouse不支持硬件的多单元节点复用,其希望用户仅分配需要安全隔离控制的外设硬件资源,这样能保证裸机应用程序或RTos最大限度减少因为应用虚拟化技术所造成的实时性损失。所有静态分配给RootCell操作系统端(Linux)的硬件资源(例如内存、CPU和外围设备),Jailhouse不执行任何调度。

2Jai1house工作过程

Jailhouse由三部分组成:内核模块、程序管理固件和相关工具,主要用来启用管理程序、创建节点Cell和加载InmateCell的二进制应用程序。在AM5728CPU中有两个ARMCortex二A15核,Linux使用sMP模式启动两个核,然后Jailhouse管理程序将由Linux端移至RootCell单元节点,此时Linux端依然使用两个ARM内核。

在创建新的InmateCell单元节点时,Jailhouse管理程序会调用cpu一own()来隔离两个CPU核心,这会使得Linux仅在核心0上运行,随后再加载运行在核心1中基于RTos的应用程序。新的InmateCell单元节点将使用核心1和所分配的硬件资源。

3Jai1house硬件资源配置

根据应用程序的使用情况来看,将外围设备分配给InmateCell单元节点使用的一般原则是保持InmateCell单元节点拥有的外围设备数量和资源数量尽可能少。通常,InmateCell单元节点会直接控制几个与实时控制相关的外围设备(如定时器、工业以太网总线的网口、UART和CAN等硬件接口),其余的外围设备如UsB或显示器,将由标准Linux驱动程序来驱动。

所以在Linux设备树中,为虚拟化管理程序保留16MB的物理内存,为InmateCell单元节点程序保留256MB的物理内存,并将Timer8和Uart9分配给InmateCell单元节点程序。

4测试分析及实验结果

4.1工业机器人EtherCAT应用程序实验测试条件

在基于AM5728平台的工业机器人控制系统中连接清能德创CoolDriveA8单轴伺服驱动,执行1ms总线周期的EtherCAT测试程序。在以下三种系统环境中分别在轻负载和重负载条件下进行系统实时性能测试:

(1)RTos+PRUEtherCAT:

(2)JailhouseLinux+RTos+PRUEtherCAT:

(3)LinuxRT+PRUEtherCAT。

轻负载:运行EtherCAT程序:重负载:运行EtherCAT、网络和科学计算程序。

4.2轻负载下EtherCAT应用测试结果

由表1测试数据可知,在CPU只运行RTos时,实时性能最好,抖动数据主要集中在3.2~6.4μs区间。在Jailhouse环境下由于使用了虚拟化技术造成了实时性能损失,但抖动数据仍然集中在3.2~12.8μs的区间呈正态分布。而LinuxRT实时系统由于其是通过改造内核的方式来达到硬实时的效果,受Linux自身调度机制影响,实时性呈现不规则状况且实时性最差。

4.3重负载下EtherCAT应用测试结果

如表2所示,在系统施加了重负载的情况下,三种系统环境实时性均受到了影响,其中RTosonly和LinuxRT受影响更为严重,最大延迟分别增加了127%和96.7%。但JailhouseRTos由于为双系统独立运行,在虚拟化技术的作用之下,实时性并未受到过大影响。

综上所述,嵌入式虚拟化实时系统非常适合用于复杂的控制系统中。

5结语

本文通过研究基于Hypervisor虚拟化技术的Jailhouse原理,使用虚拟化技术实现多操作系统同时运行在多核处理器上,并将其应用于工业机器人控制系统。通过测试实验得到使用虚拟化技术前后系统实时性延迟抖动数据的对比,测试结果说明在系统负载越重的情况下嵌入式虚拟化实时系统性能越优异,证明工业机器人控制器应用该方案具备基础条件和研究的可行性。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭