ATC空管系统的实时控制软件系统分析
什么是ATC空管系统?
空中交通管制的目的是对航空器的空中活动进行有效的管理,维护空中交通秩序,保障空中交通畅通,保证飞行安全和提高飞行效率,防止航空器相撞,防止机场及其附近空域的航空器同障碍物相撞。由于空中交通管制的重要性,国家投入大量资金,研制了空中交通管制系统(ATC,以下简称 ATC 系统),并已在国内某些地方投入使用。
一个典型的 ATC 系统主要包括以下几个子系统:飞行数据处理子系统、雷达数据处理子系统、人机界面子系统和系统监控子系统。其中,飞行数据处理子系统和雷达数据处理子系统是服务器系统,分别处理飞行数据和雷达数据;人机界面子系统包括飞行数据显示控制席位和雷达数据显示控制席位,是前端显示系统,分别提供飞行数据和雷达数据的显示和操作界面;网络监控管理席位监视和控制着整个系统的网络情况。其基本框架如下:
ATC空管系统的实时控制需求?
在新的航空运输量下,对 ATC 系统的数据处理量提出了新的要求。人机界面子系统的需求数量增多,需要处理的飞行数据量和雷达数据量都有相应的增加。双冗余服务器的结构由于实际只有一台机器处于工作状态,因而处理起来将会趋于紧张,甚至可能成为增加数据处理量的瓶颈。因此,有人提出了采用集群服务器的方式,建立一个服务器集群体系结构,将飞行数据处理和雷达数据处理服务都分散到各个不同的服务器上进行。然而,集群服务器结构毕竟与双机热备份机制有很大的区别,以前的双机热备份基本上是由一台服务器处理数据,而另外一台服务器只需保持同步;现在的集群服务器模式下,所有的服务器都参与数据处理,因而必然会存在服务器之间的通信等诸多与以前不同的问题。它的引入将势必引起整个系统中相应调度策略的调整和变化,而双机热备份下的调度策略不再适合于集群服务器结构中。因此,有必要对集群方式下整个系统的调度情况进行研究与分析,采用一种合理的调度策略应用到集群服务器结构中。
ATC空管系统实时控制设计?
在第一层,也就是最顶层,设置一个专用处理机(处理机调度器),专门负责整个系统的处理机信息的收集和相关任务的调度处理,以保证整个系统级别的负载均衡。它主要是为同一类型的服务器集群体系结构而设置的。通过采集集群体系结构中各个服务器的信息,在考虑各个任务之间前驱后继关系的基础上,尽量将到达的任务分配到暂时相对空闲的服务器单元,以保证各个服务器之间的负载均衡。这一层所考虑的只是 ATC 系统中的相应任务。
第二层,在单个处理机内部,设置一个调度进程(进程调度器),专门负责该处理机内部的进程信息收集和调度处理。它主要是在单个处理机内部按照一定的优先级计算方法计算各个进程的优先级,然后根据优先级选取合适的进程任务作为当前任务执行。在这一层上,需要考虑的进程除了 ATC 系统相关的进程以外,还需要考虑系统级以及其它的进程。
第三层,在单个进程内部,针对多线程或多任务,设置一个调度线程(线程调度器),专门负责该进程内部各个线程或任务信息的收集和调度处理。线程调度器中封装一个调度程序库,不同的进程根据各自的需要采用不同的调度函数选取当前任务执行。
每一个调度器各司其职,相应地分别完成处理机级、进程级和线程级对应的调度,满足不同级别的调度管理需求。具体每一个层次的调度方法和流程如下几节所述。
ATC空管系统实时控制系统分析?
1. 空管系统的实时控制重要性不言而喻,属于硬实时控制的范畴。
2. 实时控制系统需要对飞机的飞行数据(包括位置信息,速度信息),雷达数据(包括天气信息,环境信息)等实时监控,并作出实时调度响应,由于飞机和控制台之间是相互的,所以系统的输入信息包括:飞机位置,速度,气流,天气,安全性,航班信息大数据,调控指令等等。由于飞机飞行速度很快,所以需要ATC系统对响应的延时控制在非常小的级别,秒级甚至是毫秒级。
3. 空管系统的实时控制需要设置多个实时任务。一是要实时监控,即飞机上各传感器(包括GPS等)需要对飞机的各种信息状态进行实时反馈;二是要实时通讯,即控制台和飞机保持指令通讯能够及时传达,同时飞机的状态信息要实时传送至控制台进行调度。
4. 这些任务中,实时监控应该为时间触发,时间周期需要具体到毫秒级单位;实时通讯应该为事件触发,即需要发送通讯时及时触发该任务。
5. 这些任务之间有一定的独立性,但也存在着一定的依赖性。首先,实时监控是不依赖于其他任务的一项实时任务。而实时通讯则分两种情况,一是按照预先的规定进行通信播报,这种情况是相对独立的;一是由于通过实时监控得到的突发事件进行紧急通讯播报,这种情况是依赖于实时监控任务的。
6. 这些任务之间需要共享某些硬件资源。首先,实时监控需要在飞机上实时显示飞机的各个状态,而实时通讯也会有部分信息的终端是显示屏,所以,显示设备是两者之间共享的硬件资源。同时,通信通道等也是共享的硬件资源之一,诸如此类的还有很多。
ATC空管系统的实时控制软件系统分析的更多相关文章
- 【转载】CentsOS系统inotify实时监控服务器文件(夹)定制事件处理程序
原始博文和参考博文 1.CentsOS系统inotify实时监控服务器文件 2.Linux中让进程在后台运行的方法 3.linux inotify 监控文件系统事件 非常好 方法一 说明: 服务器系统 ...
- 什么是PROFINET IO系统的实时性
实时系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致的运行. PROFINET IO系统的实时性就是指当有一个外部事件发生时,从输入信号到传输.到控制 ...
- 实时控制软件设计作业_01——汽车ABS系统分析
制动防抱死系统(antilock brake system)简称ABS.作用就是在汽车制动时,自动控制制动器制动力的大小,使车轮不被抱死,处于边滚边滑(滑移率在20%左右)的状态,以保证车轮与地面的附 ...
- 实时控制软件第一次作业--CNC软件系统分析
作者:李君威U201310747 一.该系统有哪些强实时功能需求?需要对哪些实时事件进行实时响应,对允许的实时延迟的数量级进行估计. 答:在数控系统中,位置控制.插补计算.紧急控制等严格实时性任务需要 ...
- 《实时控制软件设计》之Automation Studio开发环境
Automation Studio是贝加莱公司的控制软件开发平台,软件可运行在贝加莱的基于PC的控制器上,基于Automation Studio我们可构建一个完整的控制软件构建.测试和仿真运行平台.本 ...
- 《实时控制软件设计》第一周作业 欧梓峰 U201317662 (更新)
CNC 插补计算程序分析 前言:插补(Interpolation),即机床数控系统依照一定方法确定刀具运动轨迹的过程.一般是已知起点坐标.终点坐标和轨迹,由数控插补计算程序实时的算出各个中间的坐标来拟 ...
- 实时控制软件设计第一周作业-汽车ABS软件系统案例分析
汽车ABS软件系统案例分析 ABS 通过控制作用于车轮制动分泵上的制动管路压力,使汽车在紧急刹车时车轮不会抱死,这样就能使汽车在紧急制动时仍能保持较好的方向稳定性. ABS系统一般是在普通制动系统基础 ...
- 实时控制软件第一周 汽车ABS系统软件分析
abs系统简介 在踩急刹车的时候,若没有额外的控制,容易使车轮完全停止转动,从而出现车轮打滑,车轮导向作用丧失的危险情况. abs系统的作用是在驾驶员完全踩住制动踏板的情况下,通过实时地测量车轮转速, ...
- linux系统下实时监控进程以及定位杀死挂起的进程
一.实时监测进程 [root@instance-3lm099to ~]# top top - :: up days, min, users, load average: 0.01, 0.05, 0.0 ...
随机推荐
- 非常强大的table根据表头排序,点击表头名称,对其内容排序
js代码: /** * 通过表头对表列进行排序 * * @param sTableID * 要处理的表ID<table id=''> * @param iCol * 字段列id eg: 0 ...
- soj 1015 Jill's Tour Paths 解题报告
题目描述: 1015. Jill's Tour Paths Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description Every ...
- 仿网易新闻 ViewPager 实现图片自动轮播
新闻 App 首页最上方一般会循环播放热点图片,如下图所示. 本文主要介绍了利用 ViewPager 实现轮播图片,图片下方加上小圆点指示器标记当前位置,并利用 Timer+Handler 实现了自动 ...
- 1.Linux系统安装
Linux系统安装系统分区(磁盘分区) 主要管理:文件和目录分类:主分区:最多有4个 扩展分区:1个扩展分区 和主分区最多4个 存放逻辑分区 逻辑分区:存放数据 格式化:高级格式化(逻辑格式化) 写入 ...
- Java 基础 Map 练习题
第一题 (Map)利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队.如果该 年没有举办世界杯,则输出:没有举办世界杯. 附:世界杯冠军以及对应的夺冠年 ...
- Xamarin.Forms ListView点击按钮刷新最新数据
最近在研究Xamarin的东西,做到ListView遇到了一些瓶颈,像在数据庞大的情况下,该怎么针对ListView中的数据分组呢? 基于能力有限的问题,暂时写了一个只可以实现功能的临时解决方案,毕竟 ...
- Redis3.2+Tomcat实现集群的Session管理 -- tomcat-redis-session-manager的编译和开发部署环境搭建
已经有不少文章介绍使用tomcat-redis-session-manager来实现Redis存储Tomcat的Session,实现分布式Session管理.但是现在官方编译的tomcat-redis ...
- Python安装时报缺少DLL的解决办法
准备开始学习Python,但是刚准备环境搭建时就遇到了下面的错误: 仔细的看了看,说是缺少DLL. 对于这个问题的解决办法: 方法一: 1. 在安装包上点右键以管理员身份运行2. C:\Users\用 ...
- java 垃圾回收
转自:http://www.360doc.com/content/13/0305/10/15643_269388816.shtml
- PSR-1:基本的代码风格
PHP标签 必须把PHP代码放在<?php ?>或<?= ?>标签中.不得使用其他PHP标签句法. 编码 所有PHP文件都必须使用UTF-8字符集编码,而且不能有字节顺序标记( ...