![TLinux的实时控制系统_第1页](http://file4.renrendoc.com/view/71af5864b47f306efe25c6972f9d0c68/71af5864b47f306efe25c6972f9d0c681.gif)
![TLinux的实时控制系统_第2页](http://file4.renrendoc.com/view/71af5864b47f306efe25c6972f9d0c68/71af5864b47f306efe25c6972f9d0c682.gif)
![TLinux的实时控制系统_第3页](http://file4.renrendoc.com/view/71af5864b47f306efe25c6972f9d0c68/71af5864b47f306efe25c6972f9d0c683.gif)
![TLinux的实时控制系统_第4页](http://file4.renrendoc.com/view/71af5864b47f306efe25c6972f9d0c68/71af5864b47f306efe25c6972f9d0c684.gif)
![TLinux的实时控制系统_第5页](http://file4.renrendoc.com/view/71af5864b47f306efe25c6972f9d0c68/71af5864b47f306efe25c6972f9d0c685.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于RTLLinuxx的实时控控制系统摘要:从技技术背景、系统结构构、硬件和和软件设计计等方面论论述了基于于RTLiinux的的闸门实时时控制系统统的组成、原理以及及实现方法法,并着重重分析了软软件实现的的关键问题题。 关关键词:RRTLinnux 实实时控制 TCP/IP MMYSQLL数据库在水电站闸闸门控制系系统中,设设备地理位位置分散、控制分散散,基于常常规继电器器的控制系系统不能满满足电厂无无人值班控控制系统和和全厂综合合自动化的的要求,必必须将智能能控制和工工业网络相相结合,实实现实时控控制的同时时又能对设设备进行智智能管理和和维护。目目前比较常常用的控制制系统大多多由PLCC构成
2、,成成本较高,缺缺乏客户定定制的灵活活性。本文文从系统功功能实现和和经济指标标两个方面面考虑,半半基于RTTLinuux的控制制平台、工工业以太网网和数据库库技术引入入闸门控制制系统。1 RTLLlinuux、工业业以太网和和数据库RTLinnux是由由新墨西大大学的Viictorr Yoddaikeen等人开开发的,现现在已有商商业化的版版本推出。在RTLLinuxx面世之前前,Linnux在实实时性方面面作过一些些尝试。在在POSIIX1.bb中,规定定了实时进进程的一些些标准,但但由于Liinux内内核的不可可抢先性,真真正的实时时进程无法法在标准的的Linuux环境下下实现。RRTLi
3、nnux采用用简单而有有效的方法法解决了此此问题而不不用重写LLinuxx内核代码码。RTLLinuxx实现了一一个高效的的可抢先的的实时调度度核心,全全面接管中中断,并把把Linuux作为此此实时核心心的一个优优先级最低低的进程运运行。当有有实时任务务需要处理理时,RTTLinuux运行实实时任务;无实时任任务时,RRTLinnux运行行Linuux的非实实时进程。图1是RRTLinnux的结结构图。为保证实时时进程与非非实时Liinux进进程部顺序序进行数据据交换,RRTLinnux引入入了RT-FIFOO队列。RRT-FIIFO被LLinuxx视为字符符设备,最最多可达1150个,分分别
4、命名为为/derr/rtff0、/ddev/rrtf1/deev/rttf63。最大的RRT-FIIFO数量量在系统内内核编译时时设定。图图2说明了了RT-FFIFO的的工作原理理。RTLinnux程序序运行于两两个空间:用户空间间内核态。RTLiinux提提供了应用用程序接口口,借助这这些APII函数将实实时处理部部分编写成成内核模块块,并装载载到RTLLinuxx内核中,运运行于RTTLinuux的内核核态。非实实时部分的的应用程序序则在Liinux下下的用户空空间中执行行,这样可可以发挥LLinuxx对网络和和数据库的的强大支持持功能。TCP/IIP协议和和以太网在在Inteernett
5、上的成功功应用吸引引着越来越越多控制程程师。尽管管以太网的的时间不确确定性给以以太网应用用于工业控控制现场的的实时性带带来了很多多争论,但但是实际应应用中,经经网络传输输的数据绝绝大多数用用于系统管管理和维护护等方面,用用于实时控控制的数据据传输很少少,这也是是基于管理理集中、控控制分散的的系统设计计策略考虑虑的。在较较高的以太太网传输速速度下,现现场智能处处理单元的的处理速度度才是传输输延迟的主主要原因。本系统现现场控制单单元采用高高速处理器器,并采用用RTLiinux作作为现场控控制单元的的控制平台台,直接用用以太网传传输数据,系系统的网络络层次减少少,信号的的传输实时时性也得到到提高。目
6、前,有许许多数据库库开发商提提供了Liinux平平台上的数数据库软件件,例如OOraclle、Syybasee、Infformiix和MYYSQL等等都推出了了Linuux版本。基于RTTLinuux的控制制系统在实实时控制领领域有巨大大的潜力。2 系统组组成本系统分为为现场和集集中级。现现场控制级级由分散在在现场的44个现场控控制单元控控制,分别别完成闸门门位置、油油缸油压和和油路状态态等的采集集,现场操操作按钮的的监视以及及闸门提升升和下降的的控制等。集中级由由集中监控控站、维护护站组成,分分别执行监监视、智能能维护及诊诊断等功能能。打印机机用于数据据的硬备份份、报表的的输出。系系统结构如
7、如图3所示示。2.1 系系统硬件构构成在工业控制制系统中通通常采用PPLC作为为现场的控控制核心。PLC的的不足一方方面在于其其较高的价价格,另一一方面在于于其难以实实现非顺序序控制算法法,以及缺缺乏对TCCP/IPP灵活的支支持。本系系统采用嵌嵌入式PCC作为控制制单元的核核心,开发发人员可自自行开发外外围接口板板,根据系系统需要灵灵活组态,既既经济又能能使用高级级语言开发发控制程序序。现场控制闸闸门的LCCU采用相相同的硬件件配置。CCPU板采采用研华公公司的PCCM-58864,CCPU的IIntell公司的PPentiium MMMX 1166MHHz,内存存为64MMB,以太太网接口
8、为为10MHHz的RTTL-81139A。CPU板板通过PCC104总总线与采样样模块和输输出模块相相连。此外外该板上配配有显示、键盘和鼠鼠标等标准准接口,便便于在线修修改和检查查程序。硬硬盘选用容容量为4.3GB的的笔记本硬硬盘。166通道的AA/D采样样模块PCCM-37718H完完成模拟量量的采集,分分辨率为112位;116通道的的数字I/O模块PPCM-33730用用于开关量量的采集、控制闸门门的启动和和停止。为为便于现场场巡检,LLCU配有有显示中文文信息的LLCD模块块MGLSS-2400128,内内置T69963C控控制器。系系统采用了了16端口口的HUBB。为保证集中中站可靠地
9、地工作,集集中监控站站、集中维维护站采用用工业PCC,配有IIntell公司的PP处理器,2256MBB内存和440GB的的大硬盘,TTCP/IIP通信由由3COMM公司的110/1000MbppsPCII网卡3CC905CC来完成。2.2 系系统软件构构成系统的软件件也分为两两部分。集集中监控站站采用Wiindowws20000操作系系统,并安安装有MYYSQL-3.233.49 for Winddows服服务器软件件和监控软软件;维护护也采用WWindoows20000操作作系统。此此外装有MMYSQLL的客户端端软件包和和维护及诊诊断软件。监控软件件和维护及及诊断软件件均用Viisual
10、l C+开发。LCU的软软件包括实实时Linnux操作作系统、数数据库客户户端软件和和控制程序序。在LCCU中,操操作系统RRedhaat6.22经升级和和安装RTTLinuux后被改改造成实时时Linuux。升级级后的核为为Linuux-2.2.188,RTLLinuxx的版本号号为RTLLinuxx2.2 for Linuux-2.2.188。数据库库的客户端端程序包为为MYSQQL-3.23.449RPMM。控制程程序包括实实时控制程程序和非实实时程序两两部分。3 系统设设计的关键键问题现场单元中中与实现控控制部分和和非实时控控制部分程程序相对应应的文件为为gateectl_moduul
11、e.cc和gattectll_appp.c。二二者由gccc编译后后生成目标标文件gaatecttl_moodulee.o和ggatecctl_aapp.oo。前者为为内核模块块,嵌入到到RTLiinux核核中,用于于实时采集集和实时控控制输出,运运行于内核核态。后者者为Linnux应用用环境,运运行于用户户空间,完完成数据的的预处理、访问数据据库和人机机接口等工工作。3.1 内内核模块内核模块程程序按多线线程模式编编写,RTTLinuux提供了了与多线程程编程相应应的APII函数。RTLinnux2.2内核中中,完成实实时任务的的模块主要要包括以下下两个功能能函数:Int iinit_mod
12、uule();Void cleaanup_moduule()。前者在模块块第一次装装入核中时时被调用,完完成实时任任务的参数数(优先级级别、中断断周期等)的的设置,进进行任务的的启动和终终止等操作作。后者在在模块卸载载时被调用用,一般在在调试或系系统退出时时使用。模模块中可启启动多个任任务,本系系统在实时时部分只设设计一个实实时任务即即Taskk1。 启动动实时任务务前必须进进行初始化化。iniit_moodulee()中的的初始化工工作包括以以下三部分分:为保证内内核态的实实时进程与与用户空间间的非实时时进程间交交换信息。须创建33个RTLL-FIFFO,具体体为:rttf1用于于实时进程程
13、与非实时时进程间的的数据交换换,数据包包括采集到到的模拟量量和数字量量;rtff3用于非非实时进程程向实时进进程传递控控制命令字字,以启动动和终止实实时任务;rtf22用于保存存经ttff3传递的的实时任务务的控制命命令字。创创建工作由由RTLiinux提提供的APPI函数rrtf_ccreatte(n,buf)来完成。创建实时时任务Taask1对对应的线程程,并设定定其调度优优先级,由由API函函数pthhreadd_creeate来来完成。当非实时时进程通过过rtf33进行控制制命令传递递时,实时时进程应及及时响应。因此必须须在实时程程序中建立立跟踪rttf3变化化的子程序序,调用rrtf
14、_ccreatte_haandleer(3,&dataa_hanndlerr)来完成成此功能。内核态的主主体程序有有两种实现现方式:中中断处理和和周期实时时线程方式式。本系统统采用周期期性实时线线,即周期期性地执行行数据采集集、输出控控制结果以以及与处于于用户空间间中的非实实时进程交交换数据。具体过程程见图4。在编写实时时程序时,应应特别注意意的是:实实时任务运运行在内核核水平,是是为了提供供对计算机机硬件的直直接访问能能力,为避避免不确定定的延迟,RRTLinnux给代代码和数据据分配固定定的内存空空间。实时时任务不能能使用Liinux的的系统调用用及Linnux中的的程序与数数据结构,否否
15、则难以保保证数据的的一致性。此外应控控制实时程程序的执行行时间,编编写程序时时应注意包包含与APPI函数对对应的头文文件。内核程序中中与RT-FIFOO相关的函函数有:rtf_ccreatte():创建RTT-FIFFO。rtf_gget():从RTT-FIFFO读数据据。rtf_pput():向RTT-FIFFO写数据据。rtf_ccreatte_haandleer():建立响应应RT-FFIFO变变化的子程程序。内核程序中中与实时任任务线程相相关的函数数有:pthreead_ccreatte():创建实时时任务对应应的线程。pthreead_wwait_np():将当前前线程挂起起,直至下
16、下一个周期期线程。pthreead_mmakepperioodic_np():设置线线程的属性性并启动线线程。pthreead_ssuspeend_nnp():将本线程程无限期挂挂起,即终终止任务。在调试阶段段,需要将将有bugg的模块卸卸载。该项项工作由ccleannup_mmodulle()来来完成。在在卸载模块块时将rttf1、rrf2和rrtf3撤撤销,并撤撤销实时任任务Tassk1。3.2 应应用程序Linuxx下应用程程序gattect11_appp工作流程程见图4,其其程序用LLinuxx下的C语语言开发。集中监控控站和维护护站的程序序在Winndowss下用Viisuall C
17、+开发。其其中有几点点要说明:RT-FFIFO被被Linuux视为字字符设备,因因此可以通通过调用oopen(/deev/rttf1,O_RDDONLYY)来获得得rtf11的指针,rrtf2的的rtf33类似。获获得指针后后通过reead和wwritee函数实现现对RT_FIFOO的读写操操作。程序中调调用sellect函函数检查RRT_FIIFO是否否忙,以避避免读RTT_FIFFO时出现现阻塞现象象。LCD显显示模块MMGLS-2401128内置置智能控制制器,只需需将待显示示的数据送送控制器的的显示缓冲冲区就能实实现显示功功能,数据据显示不会会占用系统统过多的时时间。 系系统数据传传输
18、和维护护通过网络络数据库来来实现。数数据库采用用客户端/服务器模模块,将LLCU、集集中维护站站设置为客客户端,将将集中监控控站设置为为服务器。本系统采采用基于TTCP/IIP协议的的MYSQQL数据库库为实现数数据管理。MYSQQL是一个个多用户、多线程的的SQL数数据库服务务器,由客客户端/服服务器结构构来实现。它由一个个服务器守守护程序mmysqlld和不同同的客户程程序及库组组成,使用用TCP/IP把多多个客户(LLCU等)连连接到一个个服务器(集集中监控站站)上。在在运行前应应将主机名名、IP地地址等设备备就绪,在在LCU的的应用程序序gateectl_app中中应包含MMYSQLL.h头文文件,其中中有MYSSQL的AAPI函数数的具体实实现。在用用户空间,CC语言程序序通过这些些API函函数访问远远程的数据据库服务器器。数据的预预处理:为为防止被干干扰的数据据上传到服服务器,应应用程序对对数据进行行滤波,再再对数据进进行分类。经过预处处理后的数数据才可以以送数据缓缓冲区,通通过A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 楼房加固施工方案(3篇)
- 2025年山西省职教高考《语文》核心考点必刷必练试题库(含答案)
- 《国防动员法》考试题库100题(含答案)
- 2025年池州职业技术学院高职单招职业适应性测试近5年常考版参考题库含答案解析
- 2025年武威职业学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 2025年枣庄科技职业学院高职单招职业适应性测试近5年常考版参考题库含答案解析
- 专题05 名句名篇默写(第3期)
- 消防工程维修合同书
- 广西二手房买卖合同
- 建材购销合同格式范本
- 2025年度院感管理工作计划(后附表格版)
- 励志课件-如何做好本职工作
- 2024年山东省济南市中考英语试题卷(含答案解析)
- 2024年社区警务规范考试题库
- 2025中考英语作文预测:19个热点话题及范文
- 第10讲 牛顿运动定律的综合应用(一)(讲义)(解析版)-2025年高考物理一轮复习讲练测(新教材新高考)
- 暑假作业 10 高二英语完形填空20篇(原卷版)-【暑假分层作业】2024年高二英语暑假培优练(人教版2019)
- 卫生院安全生产知识培训课件
- 语文七年级下字帖打印版
- 儿童尿道黏膜脱垂介绍演示培训课件
- 《民航服务沟通技巧(第2版)》王建辉教案 第7课 有效处理投诉
评论
0/150
提交评论