您现在的位置: 首 页 >> 经济论文 >> TimedSEFM:嵌入式实时控制系统的编程模型探讨

TimedSEFM:嵌入式实时控制系统的编程模型探讨

作者:美术论文
出处:www.lunrr.com
时间:2019-10-16

1简介

典型的嵌入式控制系统的设计和实现分别由控制工程师和软件工程师完成。控制工程师对系统行为和交互环境进行建模,得出控制逻辑,设计和优化控制模型,并仿真仿真的功能和性能;软件工程师根据控制模型的时间将控制模型中的计算分解为不同的实时任务。约束,操作系统调度机制和目标平台性能将优先级和任务期限分配给任务。软件工程师需要反复尝试以确保实际执行时间符合设计要求。如果任务在实验过程中错过了指定的期限,则需要重新指定任务优先级和期限,然后再次进行实验。此外,传统的Bounded ExecutionTime(Bounded ExecutionTime)模型不具有I/O可组合性,也就是说,在向系统添加新任务时,其他任务的完成时间将受到影响,因为RTOS和实时调度程序提供了不能满足实时要求的保证。传统的RTOS和实时调度程序无法保证任务完成时间的确定性。尽管通过反复测试可以使系统具有足够的信誉,但该方法本身仍存在缺陷。根本原因是:(1)编程模型中缺少明确的描述时间属性的语法; (2)线程本身具有不确定性; (3)任务的收起时间难以准确测量,并且在任务协同运行时,尤其是在多核系统中,很难确保时间属性。

2定时SEFM模型概述

完整的定时SEFM控制程序包括基本定义,例如服务,数据端口,任务,模块和模式。

2.1服务

该服务是SEFM +操作系统模型中最基本的功能单元和调度单元。服务用四进制表示),其中sn是全局唯一的服务名称; f是一段内部没有同步点的代码,并实现了服务sn表示的功能;输入和输出分别是一组输入和输出数据端口。如图1(a)所示。输入数据端口提供运行服务所需的所有数据,而输出数据端口用于存储外部可见的运行结果。服务是组成任务的基本元素。服务在不同的任务中服务于不同的实例。

2.2数据端口

数据端口是用于存储类型化数据的结构。数据端口有三种类型:服务的输入数据端口(IDP),服务的输出数据端口(ODP)和全局数据端口(Global Data Ports,GDP)。前两个绑定到服务以实现服务的数据输入和输出。后者不受任何服务的约束,用于实现服务之间的松散耦合数据交换。

为了避免不确定的竞争和同步,必须明确执行服务之间的数据交换:只有SEFM +内核函数Data TransferDriver(DTD)才能被调用以在数据端口之间交换数据(如图1(b)所示,带有dtd标记)。显示连接)。也就是说,数据是由DTD从GDP或其他服务的ODP导入到服务的IDP的;服务的末尾直接写入其ODP,ODD中的数据由DTD传输到指定GDP或其他服务的ODP。为了确保数据的一致性和完整性,严格限制了对数据端口的访问:(1)DTD只能在有限的时间范围内访问服务输入(在服务启动之前,只能写操作)和具有有限特权的输出(服务完成后,读取-only)数据端口; (2)服务在操作期间只能访问自己的IDP和ODP

2.3模块和模式

模块是描述控制逻辑的结构,该控制逻辑描述了任务和逻辑时间属性之间的交互。在实时控制软件中,在某些情况下,一组任务可能需要用另一组任务代替。定时SEFM使用模式开关来满足此类设计要求。一个模块由一组模式组成。模式是任务的集合。任何时候模块中只有一种模式处于活动状态,称为活动模式。仅可以计划运行处于活动模式的任务的服务实例。

一个模块使用六元组,其中Mn是全局唯一的模块名称; p是模块获取执行流程的时间(即CPU时间); t是在模块的每个周期中获得的执行流程时间,并且将t分配给处于活动模式的当前每个任务;模式是组成模块的模式列表; Nms是模式切换周期(MSP),为p的倍数; switch是模式切换功能,它是用户编写的C语言功能。激活的模式。为了确保模式切换不会影响系统中其他模块的操作并确保系统的时间确定性,只有在模式切换周期MSP到来时才能进行模式切换。 MSP指定为p的Nms倍,即系统将每Nmsp次。每隔一段时间执行一次功能开关,该功能将返回需要激活的模式m(m个模式)。如果m 1当前处于活动模式,则会发生模式切换。

3编译并运行支持

定时SEFM程序的功能部分和控制部分是独立编译的,而功能部分是由C语言编译器编译的。编译后,将形成一组二进制代码和数据并将其存储在连续的内存中。控制部分由定时SEFM编译器编译,并编译形成一系列触发器。

显示定时SEFM的编译和运行环境。除了诸如内存管理器,时钟,调度程序和数据传输驱动程序之类的基本功能外,SEFM +内核还提供了命名服务和触发器管理器,作为对定时SEFM程序的运行支持。命名服务建立端口名到存储地址,服务名到功能入口地址的映射。触发器管理器负责触发器的创建,停用,激活和停用。触发器分为定时触发器和条件触发器:定时触发器用于定义在指定时间点执行指定操作的结构;条件触发器用于定义满足指定条件时执行指定操作的结构。前者可以指定诸如使一组触发器有效,使一组触发器无效,释放基本服务,在端口之间传递数据,创建定时触发器等动作。后者可以指定操作:在端口之间传递数据并激活服务实例。

定时SEFM控制程序编译后,每种模式对应一组触发器。指定了以下操作:当任务逻辑开始时间到来时,全局端口的数据将传递到任务的输入数据端口,并且服务实例被激活,并且服务运行。完成数据传输并激活指定的服务,并在任务逻辑期限到期时将任务的输出端口数据传递到全局数据端口。

4个结论

本文中,上述汽车控制系统通过三种方案实现:(1)在μCOS上使用传统的BET模型; (2)使用现有的LET模型:使用Giotto控制程序和μC任务共同实现将电机移植到μCOS。 (3)通过定时SEFM实现。表1列出了测得的SEFM +内核的几个重要性能指标。图10显示了在不同情况下一段时间内提交的每个任务的实际时间与设计时间之间的误差。从实验结果可以看出,定时SEFM具有相对较好的时间确定性。在传统的BET模型中,任务提交执行结果的时间受实际的调度过程和任务的实际执行时间影响。平均时间误差很小,但是偶尔会产生较大的误差值。在Giotto中,相对比较任务时间属性。稳定,上下浮动值也相对较小。但是,E机器解释该指令并花费一定的时间,从而引入了不可忽略的时间误差。在定时SEFM中,提交任务执行结果的时间仅受端口读写操作的影响。时差的上限是读/写操作。花费的时间(即DT和DT')是相对确定的。本文介绍的定时SEFM编程模型使用LET模型来实现控制设计,并清楚地描述了任务的时间属性。改进的SEFM模型用于实现功能设计,并且每个功能单元都明确地交互。最好避免发生不确定的竞争和同步,以使系统具有更好的时间确定性。

最新论文
关于社会治理视阈下《回疆则例》的立法考察
关于Java的在线鲜花定购系统的研究
从法律角度探讨劳动者权益的保护
中高职教育衔接立交桥的搭建策略
企业财务风险的形成原因与防范措施
事业单位经济管理行为分析与改进建议
传统配器法课程教学中电脑音乐的实践
事业单位经济管理行为分析与改进建议
关于工商企业管理专业人才培养模式及其创新思路
传统配器法课程教学中电脑音乐的实践
关于工商企业管理专业人才培养模式及其创新思路
企业财务风险的形成原因与防范措施
热门论文
关于信息化时代的企业项目管理实施策略的研究
四年级数学综合实践活动中微课程教学的应用
关于Java的在线鲜花定购系统的研究
探讨自媒体基础上创新心理健康教育的方法
不同退火温度对Zn/N共掺杂Ti02_膜性能和结构的影响
研究分析初中数学智慧课堂减负增效的打造策略
关于机电设备安装通病及解决方案的分析
班主任工作对小学生心理健康教育的影响分析
试析小学数学课程中道德教育资源的渗透
关于中介市场主体的成长法则的思考
传统配器法课程教学中电脑音乐的实践
关于信息化时代的企业项目管理实施策略的研究
浅谈初中英语教学中如何渗透德育
热门标签
日期归档
2019年10月
2019年09月