- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2007 江苏省自动化学会学术年会论文集
基于 RTLinux 的实时控制系统设计
3 2
王娜 , 刘春生
(
1.南京航空航天大学,自动化学院,江苏,南京 210016;
2.南京航空航天大学,自动化学院,江苏,南京 210016)
摘 要:RTLinux 是一种性能优秀的实时多任务操作系统,它基于 Linux 操作系统建立并可以运行在多
种硬件平台上。本文介绍了一种在 RTLinux 平台下建立实时控制系统的方法,重点介绍了系统的软件
实现,并测试了该系统的性能。测试结果表明,该系统满足实时控制要求的快速性和时间的精确性。
关键词:RTLinux;实时控制;QT
0 引 言
传统的实时控制系统是运行在 Windows 操作系统下的,但是由于 Windows 是软实时操
作系统,对实时性要求高且周期小的控制很难保证良好的性能。Linux 作为一种优秀的开源
软件出现,并以其可靠的性能吸引了大批的用户,RTLinux 是对 Linux 进行实时化改造的产
物,它保留了 Linux 的优点,并在此基础上实现了系统的硬实时。RTLinux 已经成功的被应
用于航空航天、科学仪器测控和电影特技图像处理等领域。因此,笔者尝试在 RTLinux 中
建立实时控制系统,设计并最终实现了此系统,而且对系统进行了实时性测试。
1 RTLinux 简介
RTLinux是美国新墨西哥州大学计算机科学系Victor Yodaiken和Michael Brananov开发
的,它的设计非常的巧妙,在Linux 内核和硬件中断之间增加了一个可抢占的实时内核,使
[1]
原来处于主控制地位的Linux系统内核成为RTLinux 内核的控制对象 。RTLinux系统内核视
Linux系统内核的任务为优先级最低的任务,只有当实时系统空闲时才会调用这些任务,而
且这些任务在任何时候都可以被高优先级的任务抢先,从而保证实时线程和中断处理子程序
不会被非实时任务延迟,因此实现了硬实时。
2 实时控制系统软件结构
实时控制系统系统软件部分要完成的功能是实时地获得采集卡中的数据,编写控制算
法,并将其在界面上显示出来。整个系统软件可分为两部分:实时部分和非实时部分。数据
的采集和控制算法的实现对实时性要求较高,所以将其作为实时任务来完成,数据曲线的实
时显示需要耗费大量的 CPU 时间,而且其对实时性的要求不高,可放在 Linux 用户空间中
实现。为了将实时部分的数据传递到非实时部分中,需要实时部分和非实时部分的通信。在
此软件设计中采用实时管道 FIFO 来实现通信,管道的创建由实时部分完成。
作者简介:王娜 (1985-),女,山东聊城人,硕士研究生,控制理论与控制工程。
217
2007 江苏省自动化学会学术年会论文集
图 1 系统软件结构
2.1 系统流程
数据采集系统软件部分流程图如图 2 所示:
图2 系统流程图
2.2 实时部分的实现
实时部分程序编写成模块形式,作为 Linux 的核心可加载模块运行在核心态,实时任务
的响应采用定时周期方式,程序主要包括三部分:
(1) init_module()函数:当执行 insmod 命令加载模块时,该函数被调用,主要完成对所需
系统资源的定位,实时任务线程的创建等任务。部分代码如下:
init_module()
{ ……
r
文档评论(0)