• 欢迎来到论文发表网(www.lunwenchina.cn),我们为您提供专业的论文发表咨询和论文发表辅导!
受“清朗”行动影响,原网站QQ被封,新老作者请联系通过新的QQ:189308598。或者电话微信:15295038855

你的位置:论文发表网 >> 论文库 >> 计算机论文 >> 计算机应用 >> 详细内容 在线投稿

基于 raw-os 多任务实时操作系统控制的研究

热度0票  浏览146次 时间:2018年7月23日 16:27
  摘要:为了对嵌入式实时操作系统的实时性能做实际应用的测试,需要有较为先进的测试平台和测试方法。为此一个开源的操作系统被引入。在此基础上详细阐述了嵌入式实时操作系统测试的硬件环境、测试案例设计等。接着通过测试实际的运行效果和日志报告以及调用相应的实时性值,就能很直观地了解到当前嵌入式实时操作系统实时性能指标,并对结果进行比较分析。最后提出了该课题今后的研究方向为如何更好地使嵌入式实时操作系统在实时性方面和多任务的控制上有所提升。
  关键词:嵌入式实时操作系统;系统架构;raw-os;四轴飞行器;智能家居中图分类号:TM33 文献标识码:A 文章编号:1673-1131(2015)10-0113-02.
  0 引言
  嵌入式实时操作系统是嵌入式设备多任务运行并实时响应的以实时性响应为主的控制系统,操行系统多任务控制机制和实时响应机制等技术相配合,在在工业控制、军事设备、航空航天等领域能及时地做出响应。系统作出快速响应,并控制所有实时任务协调一致运行是衡量嵌入式系统稳定性的重要指标。在实时性测试中,搭载操作系统的设备不仅要及时地做出响应,同时还需要控制所有实时任务协调一致运行,也需要根据控制、监控要求,对于不同的平台进行大量的稳定性测试。相对于理论测试,控制平台进行实际控制,监控测试,完成大量的重复测试,这些都是理论测试很难完成的。因此对于嵌入式实时操作系统在实际控制平台的研究具有极其重要的意义。
  1 系统架构及测试用嵌入式操作系统
  在系统架构上,进行嵌入式实时操作系统的测试,不需要依托一个已经成熟的嵌入式操作系统内核竞选测试,在测试内核的选择上,经过多个操作系统的比较,选用了较为成熟的开源,免费的嵌入式实时操作系统 RAW-OS。
  Raw-OS 操作系统特性,符合 MISRA C 2004 编码规范,除了几个规则之外。采用了目前业界最先进的 hybrid(混合中断架构)不仅实现了最大关中断时间为 0us,cpu利用率更是远超越 ucos 3 等实时系统。内核最大关中断时间无限接近 0us(整个内核最大关中断时间只有 20 句汇编),小于 50 cycle,实现了业界最高实时性。支持 idle 任务级别的事件驱动(协程),基于状态机机制(fsm+hsm),所有idle级别的事件任务共享一个栈。支持 trace 跟踪功能,能够自动记录系统运行的每一个 api,用来洞察系统运行最深层次错误。支持 MPU 内存保护模块, 适用于高安全领域的医疗以及工控系统。支持 task 0 以及workqueue的中断下半部机制,轻松降低系统最大关中断时间到最低,以及大大提高了系统的实时性。支持内核最大关中断时间以及任务最大关抢占时间的测量。支持 task 256 个优先级,支持 task 无限多个,支持 semaphore 无限多个。支持 task级别的私有 semaphore,即一个任务有一个私有信号量。支持task 级别的私有 queue,即一个任务有一个私有 queue。支持mutex 无限多个,同时支持优先级继承算法和优先级置顶算法,当优先级反转发生的的时候。
  2 嵌入式操作系统在四轴飞行器上的实时性测试四轴飞行器,又称四旋翼飞行器、四旋翼直升机,简称四轴、四旋翼。这四轴飞行器(Quadrotor)是一种多旋翼飞行器。
  四轴飞行器的四个螺旋桨都是电机直连的简单机构,十字形的布局允许飞行器通过改变电机转速获得旋转机身的力,从而调整自身姿态。具体的技术细节在“基本运动原理”中讲述。
  因为它固有的复杂性,历史上从未有大型的商用四轴飞行器。
  以 STM32F4 为控制核心 STM32 高达 168MHz 的主频和抗干扰性强使飞行器的稳定性和实时性得以保证。由于STM32F4 的内核构架是基于哈佛结构哈的微处理器通常具有较高的执行效率。其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。提高了程序的执行效率。
  STMF4 强大的硬件资源和速度为嵌入式实时操作系统的良好运行提供了基础。
  STM32 通过向 MPU6050 三轴陀螺仪传感器实时获取前天状态下的飞行姿态信息,获取到当前状态下的信息后,通过算法将当前状态信息转化为弧度,最后通过 PID 输出相应的PWM 值给无刷电机,使四旋翼飞行器达到平衡的效果,最后通过 GPS 进行定位,达到定点悬停的效果。
  飞行器在飞行过程中对操作系统的实时性要求非常高,需要操作系统高速、实时地获取姿态值,并进行实时的大量数据的运算。为得到更为直观的测量结果,采用 RAW-OS 建立实时的任务,来完成控制工作,在完成设定工作的前提下,完成设定的任务,并打印监控日志。
  先建立任务 1,优先级设置为最高,开机运行,任务 1 完成的是每 1ms 实时获取一个三轴加速度姿态信息;当获取到姿态信息后,打开任务 2,任务 2 负责对实时更新的姿态信息进行运算,转化成控制需要的弧度信息;成功转化成弧度后,开启任务 3,任务 3 负责将运算完成的姿态信息通过 PID 算法,转化成运动控制量,控制电机运转保持平衡;任务 4 每 2ms实时响应一次GPS数据,更新一次坐标数据,将更新的坐标信息传递给任务 2,任务 2 融合 GPS 坐标信息,实现定点飞行。
  为了进一步地考验操作系统的实时响应能力和任务处理能力,增加了任务 6 负责实时获取摄像头数据,获取到摄像头数据后,开启任务 7,任务 7 将获取到的信息通过无线传输给接收端,实现实时监控。
  3 嵌入式操作系统在智能家居上的多任务测试
  智能家居(英文:smart home, home automation)是以住宅为平台,利用综合布线技术、网络通信技术、安全防范技术、自动控制技术、音视频技术将家居生活有关的设施集成,构建高效的住宅设施与家庭日程事务的管理系统,提升家居安全性、便利性、舒适性、艺术性,并实现环保节能的居住环境。
  智能家居测试方案选用的主控 STM32F103, 工作在 72Mhz,STM32 通过蓝牙向手机电脑等媒体设置获取控制命令等参数。通过热释电传感器获取是否有人接近,当检测到有人接近时,点亮 lcd 显示人机交互界面。当蓝牙接收到命令后,stm32 根据命令要求向分端 zijbee 发出控制命令。执行相应的操作。
  任务 1 以 1ms 一次实时获取热释电传感器的值,并实时做出判断是否有人体接近主控端,一旦检测到有物体接近检测端时,开启任务 4,点亮 lcd 显示器,并实时显示当前状态的数据信息。任务 2 负责监视蓝牙模块,当蓝牙端接收到从手机,电脑等媒体设备发送过来的命令后,开启任务 3,判断命令,并控制 ZigBee 做出响应。
  4 测试结果分析
  测试用例设计是核心,测试用例执行效率是最终目的。根据测试的两种应用下的测试数据显示,自动调用测试日志进行相应的测试。首先读取输出的测试用例文件,分析测测试平台,遍历相应的测试用例链表和本地变量链表;其次根据测试用例链表中的内容,自动调用相应测试平台的测试函数进行测试,返回测试结果,保存成固定格式的报表文件,供信息系统调用使用。
  如上文中嵌入式操作系统在四轴飞行器上的实时性测试用例设计和嵌入式操作系统在智能家居上的多任务测试,我们在测试平台上进行执行,可以看到该测试运行的结果输出到一个..Test的文件夹中,以txt文件格式显示,这些结果包括测试运行的开始时间、结束时间、响应时间、执行通过率等信息。同时看到一系列的详细测试平台的目录及运行结果。并且对于测试步骤可以分步显示是否通过以及一些必要的打印信息。
  从运行日志上我们看出,我们使用的嵌入式实时操作系统 raw-os 在实行性和任务运行上,1ms 的响应速度在运行时没有出现异常情况,在第一测试平台中发现开启了任务 6 和任务 7 后,在进行大量数据处理时,出现了处理速度慢、掉帧的情况,这个和CPU平台有关系,在这样大数据的情况上,CPU速度略显不足。
  5 结语
  嵌入式实时操作系统在嵌入式控制中占有越来越重要的地位,各种使用嵌入式操作系统的方案也被不断提出,嵌入式实时操作系统是工业控制工作中的一个趋势。但我们也应该看到,虽然嵌入式实时操作系统有很多的优点,但也有其自身需要改进的地方。比如 cpu 的资源与速度要求较高,在成本控制要求较高的项目中无法推广,对技术员的要求相对也较高。
  因此就需要一个对资源要求的可裁剪的嵌入式实时操作系统,帮助我们在资源不是很丰富的单片机上成功地运行嵌入式实时操作系统,然后继续执行下面的任务。如何研发出一套较好的嵌入式实时操作系统,如何更大强度地使测试嵌入式实时操作系统的多任务运行并高速实时响应是一项值得深入研究的课题。
  参考文献:
  [1] 高效实时操作系统原理以及实践, 2014,5(29)[2] 田开坤.如何设计复杂的多任务程序田开坤[D]. 湖北师范学院,2010
  [3] Joseph Yiu 著,宋岩译.Cortex-M3 权威指南[M].北京航空航天大学出版社,2009
  [4] Cortex-M3 技术参考手册[S]. 广州周立功单片机发展有限公司,2012



中国论文网(www.lunwenchina.cn),是一个专门从事期刊推广、论文发表、论文写作指导的机构。本站提供一体化论文发表解决方案:省级论文/国家级论文/核心论文/CN论文。

投稿邮箱:lunwenchina@126.com

在线咨询:189308598(QQ) 

联系电话:15295038855(徐编辑)  

 

上一篇 下一篇
0

联系我们