制动防抱死系统(antilock brake system)简称ABS。作用就是在汽车制动时,自动控制制动器制动力的大小,使车轮不被抱死,处于边滚边滑(滑移率在20%左右)的状态,以保证车轮与地面的附着力在最大值。

原理:在制动时,ABS根据每个车轮速度传感器传来的速度信号,可迅速判断出车轮的抱死状态,关闭开始抱死车轮上面的常开输入电磁阀,让制动力不变,如果车轮继续抱死,则打开常闭输出电磁阀,这个车轮上的制动压力由于出现直通制动液贮油箱的管路而迅速下移,防止了因制动力过大而将车轮完全抱死。在让制动状态始终处于最佳点(滑移率S为20%),制动效果达到最好,行车最安全。

汽车减速后,一旦ABS电脑检测到车轮抱死状态消失,它就会让主控制阀关闭,从而使系统转入普通的制动状态下进行工作。如果蓄压器的压力下降到安全极限以下,红色制动故障指示灯和琥珀色ABS故障指示灯亮。在这种情况下,驾驶员要用较大的力进行深踩踏板式的制动方式才能对前后轮进行有效的制动。
 

分析:

1、该系统有哪些强实时功能需求?需要对哪些实时事件进行实时响应,对允许的实时延迟的数量级进行估计。

  强实时需求有:

    (1)车轮转速的监测

    (2)防抱死压力的控制

需要对车轮角速度趋于零的事件和车轮压力调节事件进行实时响应。(ABS通过使趋于抱死车轮的制动压力循环往复地经历保持—减小—增大过程,而将趋于抱死车轮的滑动率控制在峰值附着系数滑动率的附近范围内。)

实时延迟数量级应该在毫秒级。

 
2、如果你是软件设计者,要实现这些实时功能,要设计几个实时任务?
   3个实时任务:
    (1)车轮转速趋于零的瞬间,ABS启动。
    (2)ABS工作的过程中进项压力调节修正。
    (3)汽车速度低于一定速度(5km/h或者8km/h)后,ABS中止。
 
3、这几个实时任务是时间触发的还是事件触发的,如果是时间触发的,周期大约是多少?
  都是事件触发。
 
4、这几个实时任务之间是相互独立还是存在着一定的依赖关系?分析这种依赖关系。
  这几个实时任务间存在一定的依赖关系:任务(1)执行为任务(2)和(3)的执行的必要条件。任务(3)的中止是任务(2)执行的必要条件。
 
5、这几个实时任务之间是否都需要使用一些共享的硬件资源?列出这种依赖性。
  这几个实时任务的确都需要使用共享的硬件资源。包括但不限于汽车车轮转速传感器、车轮压力传感器、汽车嵌入式硬件等。

实时控制软件设计作业_01——汽车ABS系统分析的更多相关文章

  1. 实时控制软件设计第一周作业-汽车ABS软件系统案例分析

    汽车ABS软件系统案例分析 ABS 通过控制作用于车轮制动分泵上的制动管路压力,使汽车在紧急刹车时车轮不会抱死,这样就能使汽车在紧急制动时仍能保持较好的方向稳定性. ABS系统一般是在普通制动系统基础 ...

  2. 《实时控制软件设计》第一周作业 欧梓峰 U201317662 (更新)

    CNC 插补计算程序分析 前言:插补(Interpolation),即机床数控系统依照一定方法确定刀具运动轨迹的过程.一般是已知起点坐标.终点坐标和轨迹,由数控插补计算程序实时的算出各个中间的坐标来拟 ...

  3. 实时控制软件第一次作业--CNC软件系统分析

    作者:李君威U201310747 一.该系统有哪些强实时功能需求?需要对哪些实时事件进行实时响应,对允许的实时延迟的数量级进行估计. 答:在数控系统中,位置控制.插补计算.紧急控制等严格实时性任务需要 ...

  4. 《实时控制软件设计》之Github提交作业步骤

    在掌握GIT/GITHUB基本操作后,接下来把第一次的编程作业提交到 https://github.com/RTCSD15/HOMEWORK1 ,把第二次的编程作业提交到https://github. ...

  5. 实时控制软件设计 第二次作业 myRobot

    #include<iostream> #include <Eigen/Dense> #include <math.h> #include <vector> ...

  6. 实时控制软件设计 第一次作业 Draw

    #include <iostream> #include <cstring> #include <math.h> #include <Eigen/Dense& ...

  7. 《实时控制软件设计》之Automation Studio开发环境

    Automation Studio是贝加莱公司的控制软件开发平台,软件可运行在贝加莱的基于PC的控制器上,基于Automation Studio我们可构建一个完整的控制软件构建.测试和仿真运行平台.本 ...

  8. 《实时控制软件设计》Git 基本操作练习

    根据老师提供的教程 对 数据库创建.提交文件.创建分支.删除分支.合并分支.冲突处理等操作进行了练习 得到log文件如下: yanbin-guo@yanbinguo MINGW64 /Git (mas ...

  9. 基于MATLAB的GUI(Graphical User Interface)音频实时显示设计

    摘要:本文章的设计主要讲基于matlab的gui音频实时显示设计,此次设计的gui相当于一个简洁的音乐播放器,界面只有”录音“和”播放“两个控件,哈哈,够简洁吧.通过”录音“按钮可以实现声音从电脑的声 ...

随机推荐

  1. 移动端Web开发调试之Chrome远程调试(Remote Debugging)

    比如手机钉钉调试页面,下面是一位同学整理的链接: http://blog.csdn.net/freshlover/article/details/42528643/ 如果inspect 后,一直空白, ...

  2. C#对于文件的读写

    C#文件的读写操作 转载请注明出处 http://www.cnblogs.com/Huerye/ /// <summary> /// 写入txt文件 /// </summary> ...

  3. 第3月第27天 uitableviewcell复用

    1. 有需求cell一行放两个子view,也可以放3个.子view控件都是一样,只有大小区分.需要复用吗? 复用实现:创建时创建3个,拿到数据时是两个就设置两个的frame,是3个就设置3个的fram ...

  4. css中margin的应用

    1.margin用于设置外边距,没有继承性,父元素设置的margin属性子元素不会继承. 2.margin存在重叠的问题. 水平边距永远不会发生重叠. 垂直边距在特定情况下会重叠. 重叠问题都很容易解 ...

  5. 前端构建工具的用法—grunt、gulp、browserify、webpack

    随着前端项目的飞速发展,项目越来越大.文件越来越多,前端工程化的工具也越来越多.下面介绍目前最流行的四种构建工具——grunt.gulp.browserify.webpack 所有的构建工具都是基于N ...

  6. r-cnn学习(九):学习总结

    首先看下代码文件夹的说明(这部分转自:http://blog.csdn.net/bailufeiyan/article/details/50749694) tools 在tools文件夹中,是我们直接 ...

  7. Javascript模块化编程(二):AMD规范

    Javascript模块化编程(二):AMD规范   作者: 阮一峰 原文地址:http://www.ruanyifeng.com/blog/2012/10/asynchronous_module_d ...

  8. 一对一还是一对多? MVP设计前提

    设计MVP之前,先要确定好以下模块之间是一对多还是一对一的关系: View ---> Presenter --> Model --> Interface(URL) 就是一个View只 ...

  9. Debian8升级4.5内核

    本文讲述如何升级Debian8的内核到4.5版本 0x01:去linux kernel官网https://www.kernel.org/下载4.5的内核,选择tar.xz格式 0x02:想办法把下载好 ...

  10. 上个项目的一些反思 III

    离线缓存 之前的项目因为实时性要求比较高,所以一打开客户端,就开始做网络请求.现在想想,是没有做内容的离线缓存.这个问题,我没意识到.产品经理也没有意识到... 我觉得Archiver,来做比较合适, ...