自动驾驶QNX,Linux,Autosar概述
自动驾驶QNX,Linux,Autosar概述
QNX是一个分布式、嵌入式、可规模扩展的实时操作系统。遵循POSIX.1 (程序接口)和POSIX.2 (Shell和工具)、部分遵循POSIX.1b(实时扩展)。
LynxOS是一个分布式、嵌入式、可规模扩展的实时操作系统,遵循POSIX.1a、POSIX.1b和POSIX.1c标准。
RT-Linux是一个嵌入式硬实时操作系统,它部分支持POSIX.1b标准。
KURT-Linux不是为嵌入式应用设计的,不同于硬实时/软实时应用,提出“严格(firm)”实时应用的概念,非常适合一些多媒体应用和ATM网络应用,KURT也同样为这些应用设计的“严格的”实时系统。
QNX、RTLinux、uC/OS-II、Nucleus Plus、VRTX、VxWorks、eCos的相互比较

到目前为止接触过QNX、RTLinux、uC/OS-II、Nucleus Plus、VRTX、VxWorks、eCos,总结下来有以下特点:
1:QNX的可靠性很好,协议栈、各种外设驱动稳定,只是运行所需资源有些多,需要MMU。如果需要高可靠性应用,QNX可能是最好的选择,本人公司现在就是基于QNX开发RTOS的。
2:RTLinux的实时性与其它RTOS相比有些差。但是,因为好多Linux资源可以利用,是RTLinux的优点。但是运行所需资源比QNX还多,也是需要MMU。可以选用开源的RTLinux或内容新的商用RTLinux。
3:uC/OS-II比较小巧,移植容易,网上资源很多,核心可以做得很小。但不是免费的,并且驱动需要自己编写,协议栈、图形驱动都要另外加。
4:Nucleus Plus比uC/OS-II庞大,另外提供了文件系统、协议栈、图形界面等许多东西。当然也是分开卖的,不是免费的东西。使用起来比较容易上手。
5:VRTX是一款比较早的RTOS,现在使用的人已经很少。运行还是比较可靠。配套的文件、协议栈等模块很少。
6:VxWorks是RTOS中的大牛,国内外用的人很多,开发工具功能强大,使用方便,但是价格昂贵。也有基于MMU的高可靠性的产品。所需资源比QNX小,比uC/OS、eCos多。对于一些私企或者好似小公司来说,可用性值得商榷。
7:eCos是开源的RTOS。针对不同的CPU已经做了许多现成的移植。代码尺寸比Nucleus的略大。如果不用USB host等,并且不想花费太多的金钱,应该是不错的选择。
8、MINIX3
AUTOSAR架构概述
什么是AUTOSAR架构?AUTOSAR为汽车开放系统架构,英文为Automotive Open System Arichitecture。汽车开放系统架构包含微控制器抽象层:基础软件中最低一层,主要包含驱动,大部分是一些软件模块。ECU抽象层:这一层是与微控制器抽象层进行对接外部驱动设备访问提供API(应用程序编程接口)。

AUTOSAR基础软件最高层与应用软件关系密切,在IO信号访问ECU抽象层中时提供操作系统、存储管理、诊断服务、ECU状态管理。Runtime Environment 运行时环境是AUTOSAR虚拟功能总线的接口(Virtual Function Bus)简称VFB。RTE包含系统服务、实时操作系统、错误管理器、库功能。Operating System 操作系统,AUTOSAR.OS包含中断处理、调度处理、系统时间和始终同步、本地消息处理、错误检验机制、看门狗监控技术(主要监控与计时约束有关的应用执行)可以提高可靠性。

如图所示:汽车开放系统架构从最底层开始包括ECU硬件、基础软件模块、服务系统模块、操作系统、复杂的驱动装置、ECU抽象层、AUTOSAR运行时环境、应用层软件。其中我们平时应用到最多的便是应用层软件,根据汽车的不同需求建立控制模型,然后进行仿真及自动代码的生成。在这个过程中少不了CAN控制器局域网络,通常说的ECU就是挂在CAN上的节点,每个汽车零部件控制器均可以看做是一个节点,ECU通讯是通过ID优先级来决定通讯时序的,通常情况VCU整车控制器的ID优先级是最高的,所以当通讯发生堵塞时,VCU的通讯是不会受到影响的。
AUTOSAR汽车开放系统架构在电动汽车的发展带动下越来越受到设计师的欢迎,但是AUTOSAR架构本身涵盖的知识系统比较复杂。
自动驾驶QNX,Linux,Autosar概述的更多相关文章
- NXP开源自动驾驶计算平台Bluebox 打造现实无人汽车
知名半导体制造商恩智浦NXP已经准备好了自家的自动驾驶计算开源平台Bluebox,将为汽车制造商提供现成的一体化自动 驾驶计算解决方案.专为自动驾驶设备的BlueBox中央计算引擎.不仅能够为无人驾驶 ...
- 深度学习与自动驾驶领域的数据集(KITTI,Oxford,Cityscape,Comma.ai,BDDV,TORCS,Udacity,GTA,CARLA,Carcraft)
http://blog.csdn.net/solomon1558/article/details/70173223 Torontocity HCI middlebury caltech 行人检测数据集 ...
- Linux学习笔记之三————Linux命令概述
一.引言 很多人可能在电视或电影中看到过类似的场景,黑客面对一个黑色的屏幕,上面飘着密密麻麻的字符,梆梆一顿敲,就完成了窃取资料的任务. Linux 刚出世时没有什么图形界面,所有的操作全靠命令完成, ...
- 基于DRL和TORCS的自动驾驶仿真系统——之环境配置
基于DRL和TORCS的自动驾驶仿真系统 --之环境配置 玩TORCS和DRL差不多有一整年了,开始的摸爬滚打都是不断碰壁过来的,近来在参与CMU的DRL10703课程学习和翻译志愿者工作,也将自己以 ...
- 基于TORCS和Torch7实现端到端连续动作自动驾驶深度强化学习模型(A3C)的训练
基于TORCS(C++)和Torch7(lua)实现自动驾驶端到端深度强化学习模型(A3C-连续动作)的训练 先占坑,后续内容有空慢慢往里填 训练系统框架 先占坑,后续内容有空慢慢往里填 训练系统核心 ...
- 华为MDC自动驾驶
华为MDC自动驾驶 智能驾驶汽车中,包含四个核心子系统:传感器.计算平台.执行器与应用算法,华为MDC( Mobile Data Center: 移动数据中心)定位为智能驾驶的计算平台.此平台集成了华 ...
- 激光雷达Lidar与毫米波雷达Radar:自动驾驶的利弊
激光雷达Lidar与毫米波雷达Radar:自动驾驶的利弊 Lidar vs Radar: pros and cons for autonomous driving 新型无人驾驶汽车的数量在缓慢增加,各 ...
- 波音,自动驾驶bug未修复,致346人丧生!5个月内两次坠毁!其中,包括8名中国公民
一,波音737 MAX再次坠毁 继2018年10月29日,印尼波音737MAX飞机坠入爪哇海,导致178名乘客不幸遇难后,时隔不足5月,上周日,埃塞俄比亚航空公司一架波音737MAX客机在飞往肯尼亚途 ...
- 斯坦福大学公开课机器学习: neural networks learning - autonomous driving example(通过神经网络实现自动驾驶实例)
使用神经网络来实现自动驾驶,也就是说使汽车通过学习来自己驾驶. 下图是通过神经网络学习实现自动驾驶的图例讲解: 左下角是汽车所看到的前方的路况图像.左上图,可以看到一条水平的菜单栏(数字4所指示方向) ...
随机推荐
- 1016 Phone Bills
A long-distance telephone company charges its customers by the following rules: Making a long-distan ...
- 1.6.5- HTML之自定义列表
定义列表常用于对术语或名词进行解释和描述,定义列表的列表项前没有任何项目符号,其基本语法如下: <dl> <dt>定义标题</dt> <dd>定义描述, ...
- SpringBoot自定义配置以及IDEA配置提示
本篇文章将会讲解在springboot项目中如何实现自定义配置以及在IDEA或者Eclipse中实现配置项提示,就像spring的配置提示一样 想要做到这点其实非常简单 1.添加依赖 <depe ...
- Linux下抓包命令tcpdump的使用
在linux下,可以使用 tcpdump 命令来抓取数据包. 主要用法如下: 过滤网卡 tcpdump -i eth0 #抓取所有经过网卡eth0数据包 tcpdump -i lo #抓取环回口的数据 ...
- WPF使用自定义Main函数
一.自定义Main函数 在WPF中,我们添加一个Program静态类,添加一个Main静态方法,需要注意的是该方法需要添加"STAThread",表示WPF程序需运行在单一线程单元 ...
- 程序时间计算函数(被tle出阴影来了)
初次意识到程序的时间复杂度(tle多了 ) 第一次写博客(被大佬们的博客所折服orz) 拿打素数表的程序为例 优化前代码: #include<iostream> #include<c ...
- Mac 搭建 Sentry
Sentry 为我们提供应用程序的错误跟踪,使我们能够快速定位到错误所在的文件和行号. 以下是官网支持语言和框架的部分截图: 准备工作 自 2020 年 12 月 4 日起,Sentry 默认使用 P ...
- Nifi:nifi的基本使用
Nifi的安装使用 Nifi安装 首先说一下Nifi的安装,这里Nifi可以支持Windows版和Linux,只需要去官网:http://nifi.apache.org/ 根据自己需要的版本,选择下载 ...
- NPM包管理器入门(附加cnpm : 无法加载文件错误解决方案)
NPM 包管理器 1.作用: 快速构建nodejs工程 快速安装和依赖第三个模块 2.使用方法 快速构建 npm init 会得到一package.json文件 { "name": ...
- [其他] vscode 快速教程
概述 vs:集成开发环境,包括软件生命周期中需要的大部分工具,如UML,代码管控,IDE等 vs code:代码编辑器,支持插件扩展,对网页和云端开发做了优化 快捷键 F1/ctrl+shift+p: ...