汽车的控制网络环境,以前一直是基于CAN的,最近才有往以太网转向的新闻_风闻
老饕-叫兽禽兽都一样2022-10-05 08:04
【本文由“观察者网用户_298836”推荐,来自《华为可以考虑汽车DCS》评论区,标题为观察者网用户_298836添加】
- 晨枫
- 实时操作系统与以中断为基础的多任务多进程操作系统的最大区别是:前者要确保所有任务都得到执行,占用系统资源过多的“无赖任务”会被放弃,放弃次数多了会告警,乃至有序宕机;后者的重点是确保任务得到完整执行,不执行完不跳到下一个进程,所以有可能被“无赖进程”锁住,但不会有任务执行得半途而废的事情。
各有各的用处。
用486或者M68040做核的PLC、DCS大有人在,主要是成熟度的缘故。算力方面,核心控制功能并不需要多少算力。当年IBM370的算力比现在的手机差远了,大型核电站轻松拿下;PDP11放在现在就是电子算盘了,玩转阿波罗没压力。
实时操作系统的关键不在于复杂任务的计算,而在于I/O能力和对所有任务“不掉链子”,实在要掉链子,也是有控制、能预测地掉,比如基于overrun,对任务划为前台(foreground)和后台(background),后台先掉,不是谁也不知道在哪里会掉链子。
汽车的控制网络环境,以前一直是基于CAN的,最近才有往以太网转向的新闻。其实基于TCP/IP也是可行的,关键是要有统一的同步时钟,要能尽量减少纯滞后时延。好在华为有相关技术储备,能在5G里把通信时延压缩一个数量级。之所以拿486做例子,那是因为那个芯片的时钟还不到GHZ,因此要指望他1毫秒内完成几千行甚至包含了循环的程序,有点勉为其难。
我理解的分布式网络控制的电传操控应该达到这样的水平,中控上位机只负责接收部分传感的态势信息,选择控制策略对下位机发出控制指令,比如说要求下位的左后轮控制系统在XXX毫秒后转向多少度,转速控制在多少,维持时长多少毫秒,下位机自行根据时钟计数和指令选择相关程序计算并驱动执行机构按中控的指令执行。要达到这个水平,CAN、CAN GD、CAN XL可能带宽和时延都不满足要求了。
也就是说很可能对一个部件就意味着每秒几十次调节指令下达,复杂的控制包含每个轮子两个电机以及刹车,电子电动悬挂的控制(这个好像还没人 做),电源管理的一堆组件,车辆附属设备的电子控制等。和很多控制系统相比,一是时效要求高,二是大多数输入输出都是模拟量。运算力的需求会是简单过程控制的三个数量级以上。
一部好车,应该是走烂路坐在里面照样是四平八稳,高速飞奔。