英语原文共 9 页,剩余内容已隐藏,支付完成后下载完整资料
起重机控制系统的反馈控制调度方案
一、引言
在嵌入式控制系统,特别是起重机控制系统中,调度是一个关键的部分。传统的调度算法,即速率单调(RM)和最早截止时间优先(EDF)不能在干扰和不确定环境中保证高系统性能和资源利用率。此外,所有这些经典的调度算法都是开环,并且建立在对任务集的执行时间和截止时间的完整了解的基础上。反馈控制调度可以作为嵌入式控制系统的科学基础,但是控制系统本身又是构成嵌入式计算系统的一个重要子类。在过去的几年中,嵌入式系统的硬件软件(Hw/Sw)协同设计复杂性增加了。由于大量的实时约束和要求,几个实时任务必须争夺一个嵌入式处理器。因此,整个系统的性能不仅取决于控制算法的设计,而且还依赖于对共享计算资源的有效调度。为了满足实时要求和约束,将反馈控制器理论与实时计算系统集成在一起。在设计层面,反馈控制调度(FCS)将控制调度理论和实时计算理论结合在了一起。这样可以最好地利用可用的系统资源,并且可以最优化系统的整体性能。反馈控制调度背后的基本思想是将调度问题视为控制问题。在嵌入式计算系统中引入反馈闭环,就能够持续监视CPU负载。图1所示为控制调度协同设计的基本架构,它集成了反馈控制技术(即模糊逻辑控制器或神经网络控制器)与嵌入式系统调度算法(即速率单调或最早截止时间优先)。
图1:基于反馈的控制调度协同设计的基本架构
传统上,硬实时系统在封闭环境中运行,基于任务的最坏执行时间来完成调度器的设计。但近年来,实时系统运行在开放和不确定的环境中,系统任务的执行时间可能会出现较大的变化和不确定性。一个关键的挑战是在事先不知道控制任务的时间限制的前提下,提供一个在最后期限内完成任务的实时保证。使用传统的最坏执行时间分析,由于任务的执行时间超过最坏执行时间,CPU在出现故障时会出现过度利用。现在的要求是将基于反馈的控制调度与传统的嵌入式系统协同设计集成在一起,可以根据实时时间变化调整调度参数,同时保证实时性。为了解决这些问题,基于反馈的调度控制是一种有效的技术。
二、反馈控制的相关研究
文献[8,9]提出了最早截止时间优先反馈控制(FC-EDF),一种基于反馈的控制实时调度的通用架构,作者介绍了一种基于PID的反馈控制器,通过调整CPU利用率和任务周期来控制任务的截止失败率。该算法对负载变化和I / O延迟具有很强的鲁棒性。这种方法在文献[10]中有了进一步地探讨。在文献[11]中,作者将控制理论应用于基于预留的反馈调度器,并提出了一个基于反馈的精确控制调度器模型。文献[12]介绍了一个组合反馈弹性调度器来评估Linux环境下的CPU负载。在文献[13]中,作者使用相同的方案在一段时间内为每个线程分配一定比例的CPU使用周期。作者设计的基于反馈的自适应调度器能够完成比例和周期的自动分配。文献[14]给出了一个用于分布式实时系统的双环反馈调度器。这项研究的目标是控制最后期限的错过率在期望值之下,并实现高CPU利用率。文献[15]设计的基于比例积分(PI)的反馈控制调度器使用了类似的方法。为了应对实时系统的时变性和非线性特性,文献[16]给出了软实时嵌入式系统的混合自适应反馈控制调度器。文献[17]给出了一种将一部分分配资源实时分配以满足任务需求的闭环控制方法。对于实时任务,文献[18]提出了一种为软实时系统实现CPU共享资源的最佳分配的方法。文献[19]介绍了动态电压调节(DVS),用于功耗感知型实时计算系统,目标是降低能耗,同时保证系统的高性能。作者描述了一种用于多媒体系统的正式反馈控制算法,这项工作的目标是在保持所需播放速率的同时降低多媒体解码能力。对于硬实时嵌入式系统,文献[20]提出了基于反馈的动态电压调节的框架。在这项研究中,作者将反馈控制理论和动态电压调节方法相结合,为静态和动态工作负载生成节能调度器。在文献[21]中,作者描述了一个模型预测控制框架,以尽量减少功耗,同时满足时变工作负载的实时约束和服务质量的要求。文献[22]介绍了一种动态电压调节的控制理论,通过控制CPU利用率来达到能耗与控制性能之间的平衡。文献[35]对控制任务的反馈前馈调度进行了研究,但没有考虑系统的容错性。同样的方法在文献[36]中得到了进一步研究,作者使用神经网络控制器为控制系统安排多任务。在文献[45]中,作者提出了容错硬实时系统的能量管理控制理论。在文献[46,47]中介绍了实时嵌入式系统的容错方案与反馈控制调度的集成。
文献[23,28]研究了反馈控制理论在ORB中间件系统、无人驾驶系统[24]和网络控制系统[25]的实际应用。文献[26,27]研究了资源管理中间件框架控制器和自动代理调整。总之,这些系统在一个完成软件层面反馈控制系统集成时,在他们的控制周期和整个执行时间内缺乏对安全关键任务和非安全关键任务因素的考虑。
三、基于反馈的控制调度体系结构
反馈调度程序通过分配任务工作周期来使处理器利用率达到期望利用率,进而优化总体控制性能。这种方法非常适合抢先式实时操作系统(RTOS)控制下的实时任务的采样周期的“准连续”变化。反馈调度是一种能够更好地使用计算资源的动态调度方法,特别是在当由于加入新任务等导致工作负载改变时。图2给出了将任务周期作为控制输入、将测量的CPU利用率作为控制输出的反馈调度器体系结构的示意图。通过调整安全关键(SC)和非安全关键(non-SC)任务的调度参数(即任务周期),根据资源可用性来控制CPU活动。外部循环(调度控制器)与在计算机活动所测量的实时调度参数相适应,例如计算机的CPU负载。反馈控制系统定期工作的速度大于安全关键任务和非安全关键任务的采样周期。系统结构在事件发生时沿着离散时间尺度发展,例如用于新任务许可或异常处理。所有任务首先进入任务控制器提交的任务队列,然后根据控制质量控制器的级别[37]排列,只有那些在接受的任务队列中可用的任务被调度。
图2:反馈控制调度框架。
离线迭代优化用于完成周期、增益和等待时间的完全计算,根据可用的计算资源和实施条件限制确定所要求的控制性能。最佳控制时间是通过重新计算新的任务周期来实现的:
公式中是期望利用率,是任务在时间时的任务周期,是测量到的CPU负载,是是任务在时间时的任务周期。优先级必须根据其相对紧迫性分配给任务,而在动态调度程序的情况下,此排序保持不变。同在最早截止时间优先算法一样,动态优先权仅改变正在运行的任务的排列,但是无法调整计算与控制要求相关的负载。因此,我们选择了任务周期作为运行在固定优先级调度器之上的系统的主要执行器。由任务引发的处理器负载由定义,其中和分别是任务的执行时间和周期。因此,任务引起的处理器负载在调度控制器的每个采样周期中可通过以下公式计算:
公式中是当前分配给任务的采样频率(即在每个采样时刻的),是其测量的作业执行时间的平均值。是用于平滑度量的遗忘因子。是任务在时间和周期引起的处理器负载。由于任务在出现故障时的执行时间变化,预估的CPU负载被定义为任务周期的函数:
公式中为任务的频率。图3给出了一个单一的控制任务系统,系统使用在线预估的执行时间来调整原始CPU系统的控制器的增益(这允许补偿作业执行时间的变化)。
图3:CPU资源的控制方案。
公式中取决于任务的“标准化”线性模型的运行时间环境(例如处理器速度)(即取决于执行时间),用于调度控制器综合,其中忽略的影响,并将通过在线增益调度进行补偿,如下所示。
通过这种控制方案,控制器的设计可以使用现在的任何控制方法,例如PID控制、模糊逻辑或神经网络控制。在本文中,我们使用模糊逻辑控制器。
四、研究目的与内容
嵌入式控制系统的设计是基于控制理论和实时计算系统的关注点的不同。这些关注点是基于如下假设而出现的:反馈控制器可以被看作是一个控制任务,其特征在于三个固定参数:周期、计算时间和截止时间。控制任务的执行速度远高于用户定义的任务的执行速度。通常由于部署嵌入式系统的环境恶劣,因此系统(任务)随时会发生故障。由此,预测控制任务的执行时间非常困难。目前的仿真工具特别是Matlab\Simulink、TrueTime、Jitterbug和Ptolemy-II都有其自身的局限性。这些工具不能捕获集成的软硬件协同设计过程中的反馈控制调度特性(任务周期,CPU负载和I / O延迟)。由于缺乏对目标系统任务执行时间的确切了解,需要很多时间才能得出性能与稳定性之间的结论。在本文中,我们将从实际角度探讨这些难题,即反馈控制器如何与整个硬件/软件协同设计周期集成?在软件方面,需要什么样的改进来提升动态任务时段分配?应该进行哪些硬件修改来进行持续的CPU利用率监视?如何使用当前的实时操作系统调度器实现反馈控制器?在出现故障时,控制任务的执行时间如何变化? 反馈调度程序是否能够在补偿用户定义任务的执行时间变化的同时,保持任务调度的完整性?哪些调度参数应该离线测量(在调度之前)?哪些调度参数应该在线测量(在调度时动态调整)?
五、起重机控制系统体系结构模型
起重机控制系统的系统结构构成一个分布式的共享硬件平台,具有网络拓扑结构,每个硬件节点可以与其他节点通信。图4显示了系统架构的高级模型和系统资源的划分。它还描述了节点通过网络总线连接的应用程序执行环境。 每个节点都有两个分区。分区A专用于安全关键任务,分区B包含非安全关键任务,共享处理器运行混合关键应用程序。节点资源由一个CPU、一个I / O控制器、传感器和执行器、RAM、ROM和CPU利用率监视器组成。 系统集成架构中的每个节点都使用相同的配置。
图4:系统体系结构模型遵循集成方法,其中每个核心分为两部分。部分A执行安全关键任务,部分B执行非安全关键任务。安全关键任务和非SC任务可以在任何硬件节点上执行。
起重机控制系统由两大部分组成:人工控制单元(OCU)和机器控制单元(MCU)。人工控制单元和机器控制单元都包含两个微控制器(主机和从机)Renesas M16C62p,这是用于工业自动化的电机行业最常用的微控制器。它还包含一个用于处理器间通信的内置I2C总线。人工控制单元和机器控制单元都包含一些安全关键和非安全关键任务。安全关键任务被复制到两个处理器上以确保任务的正确执行。检查点复制是起重机控制系统中实施的容错方案,该任务的副本取决于其关键性和安全完整性等级。
表1:安全完整性等级(SIL)表
人工控制单元和机器控制单元通信是通过电报无线传输进行的。每个报文都是32字节的信息,如图5所示。每隔1毫秒人工控制单元将发送一个报文到机器控制单元。如果在人工控制单元上没有按键被按下,则发送称为短电报的简短形式的电报。在简短的报文中,所有的数据字节都是零,这可以减少传输损耗并增加电池寿命。当机器控制单元收到正确的报文时,它会将确认报文(握手协议)发送回人工控制单元。
图5:前两个字节包含开始序列。接下来的两个字节包含报文编号和时间信息。每个报文有23个字节的数据信息。最后五个字节包含停止序列和循环冗余校验(CRC)。两个控制器在传输之前比较报文字节。
六、反馈控制系统和软硬件系统设计的集成
反馈控制理论在整个系统的功能描述之前进行分析。在反馈控制理论整合过程中,最重要的一步是选择反馈控制器和调度参数。反馈控制器的选择完全取决于系统描述。模糊逻辑控制器是本文使用的反馈控制器。反馈控制器的输入是每当新任务被接受时在线更新的控制任务的周期。新任务周期的值由服务质量级别和CPU负载(未充分利用或过度利用)的当前值得到。输出是测量的CPU利用率。在软件方面,反馈控制系统位于实时操作系统的顶层,其目标是实现高CPU利用率和资源管理。在硬件方面,提供连续的CPU利用率监控,如图6所示。
图6:与软硬件协同设计周期的反馈控制调度集成。在软件端反馈控制器被实现为控制任务,任务周期高于用户定义的任务周期。在硬件方面,通过测量CPU负载来监控CPU利用率。
反馈控制系统估计CPU状态和系统中引入的延迟。这些延迟是由于I2C网络延迟或者一个任务正在等待某个由另一个任务占有的资源导致的。反馈控制系统也取决于安全关键任务的采样间隔。CPU监控处理器计算实际CPU利用率并将当前利用率值反馈给反馈调度控制器。如上所述,起重机控制系统中使用的容错方案是在检查点的状态复制。在复制中,任务在另一个处理器上复制,并且在检查点时,任务被分为n个子任务。每个任务都包含故障检测、故障恢复和检查点损耗。安全关键任务的状态保存在每个检查点,以避免出现故障时的执行开销。两个检查点/采样间隔之间的任何一点都可能发生故障。当检测到故障时,有两种选择:一是回退,一是前进。通过在每个检查点保存任务的状态,可以节省很多重新执行时间(重新执行任务从任务最后的状态开始)。图7展示了如何在反馈控制系统使用检查点执行安全关键任务。
图7:每个安全关键任务分为n个子任务(T1_1.1和T2_2.1)。每个子任务代表一个检查点/采样间隔。这些子任务在两个不同的硬件节点(节点N_1和节点N_2)上执行。在故障检测开销期间,将比较两个子任务的状态以查找可能的故障。在故障恢复期间,任务的执行会回滚到上次保存的检查点。在检查点的开销期间,任务的状态被保存在稳定的存储器中。
为了提高系统的性能,只有安全关键任务被复制,并且非安全关键任务被安排在安全关键任务之间。同一个硬件节点上安全关键和非安全关键任务的任务调度方式如图8所示。
图8:SC和非SC任务的反馈控制调度。只有SC任务在两个不同的硬件节点上复制,而非SC任务可以在任何可用的硬件节点上执行。
分配给特定处理器的所有任务都会在提交的
全文共6719字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[16450],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。
您可能感兴趣的文章
- 2.3港口吞吐量预测外文翻译资料
- 使用多标准移动通信分层遗传算法的阻抗 匹配网络的宽带优化外文翻译资料
- 移动RFID标签阅读与非重叠串联阅读器在输送带的应用外文翻译资料
- 利用数字图像进行的全场应变测量方法外文翻译资料
- 自然灾害中并发事件的多种应急资源的分配外文翻译资料
- 基于主机的卡仿真:开发,安全和生态系统影响分析外文翻译资料
- 实现基于Android智能手机的主机卡仿真模式作为替代ISO 14443A标准的Arduino NFC模块外文翻译资料
- 探索出行方式选择和出行链模式复杂性之间的关系外文翻译资料
- 信息系统研究、教育和实践的基本立场及其影响外文翻译资料
- 仓储和MH系统决策模型的设计优化与管理外文翻译资料