FPGA在汽车领域的应用简谈

8bb514cf68bad7224d1e9ad07cd28577.jpeg

随着科技的不断进步,汽车行业也在不断演变,而FPGA(可编程逻辑门阵列)的引入给汽车领域带来了革命性的变化。FPGA作为一种灵活且高性能的“处理器”,已经在汽车行业找到了广泛的应用

67714bc96ba75c3e4672770562037c86.jpeg

目前随着新能源汽车的发展,智能化成为一个重要的发展方向,而芯片领域的万金油-FPGA在发动机控制单元、辅助驾驶及通信系统(包括车辆对车辆(V2V)通信和车辆对基础设施(V2I)通信。通过V2V和V2I通信,车辆能够实现实时交通信息的共享,从而提高交通安全性和效率)等领域都发挥着重要作用。下面结合发动机控制单元和辅助驾驶介绍一下FPGA在这两方面的应用。

发动机控制单元(ECU)

4b62ef51e7f65dda908460e25186195d.png

发动机控制几乎从未被认为是获得更好燃油经济性的一种方式。但在燃油价格不断上涨的今天,电子技术可以非常有效地提高燃油经济性。使用 FPGA 实现 ECU 是一个很大的优势,因为它可以很容易地重新配置。

发动机控制算法,包括点火时机、燃油喷射量和气门正时等。通过使用FPGA,汽车制造商能够根据不同的发动机类型和驾驶条件来优化控制算法,从而提高燃油效率和性能。

基于上面,提出了一种循环地控制内燃发动机的方法。该方法包括:维护识别引擎的映射函数的训练数据;用给定气缸的自适应数据填充缓冲器,其中自适应数据是测量给定气缸的多个操作循环期间捕获的映射函数的输入和输出;将映射函数的训练数据与自适应数据相结合;使用最小加权二乘法从组合数据集中识别映射函数;使用映射函数和当前循环期间的输入测量来预测给定汽缸在下一个循环中的燃烧特征;使用一个或多个致动器在下一循环中基于给定汽缸的预测燃烧特征来控制发动机。

23fe79942cd8733baac202f76e71f199.png传统发动机控制单元

上面理论只是控制运行该引擎的一小部分内容。下面参数和组件有助于更好地控制发动机。

  • Injection duration

  • Injection timing

  • 喷射燃油压力

  • 低压燃油泵

  • 点火时间

  • DBW 阀门

  • 翻滚阀门(Tumble valves)

  • 短/长流道阀门

通常,传统 ECU 具有以下 I/O 设备来运行整个管理系统。

  • 12 个喷油器输出,可用作辅助输出

  • 8 个点火输出

  • 8 个辅助输出,可驱动高电平或低电平

  • 8 个数字输入,具有可配置的内部上拉/下拉电阻

  • 5 个触发输入,可配置为磁阻器或数字IO

  • 4 VSS 或涡轮速度输入,可配置为磁阻器或数字IO

  • 16 个通用模拟输入,其中 4 个可配置用于温度传感,2 个适用于氧气传感器

在怠速时,可能会以 14.7:1 左右运行,但在轻负载时,可以比这更精简地运行,而不会出现发动机故障。精简程度取决于许多因素,包括传动装置、发动机燃烧效率等,但 16:1 左右的比率通常是可以接受的。在某些汽车中,轻载时的精简比可以达到 20:1。上面说明的是采用这种方法意味着可以根据负载和转速条件将发动机总混合比例从 16.5:1 的稀油比例设置到 12.5:1 的浓油比例。智能化意味着动态去调整这类参数。

机器学习提供了一种有效的方法来捕获复杂的循环燃烧模式,同时避免对底层混合物状态和成分的显式了解(假设选择了适当的抽象映射函数)。虽然机器学习方法有明显的好处,但一个关键问题是机器学习是数据驱动的,需要相对大量的数据才能充分覆盖大维空间。

这里推荐一个ECU的开源项目可用于学习相关理论。

9f0f075bff9f76bae8bd53e10628d6a2.png

https://github.com/rusefi/rusefi

驾驶辅助系统

83ba6c224bcc27f8bd6657fb167b869a.png

FPGA在驾驶辅助系统中发挥着关键作用,如车道保持辅助、自适应巡航控制和自动紧急制动等。利用FPGA处理实时视频和传感器数据,汽车能够识别车道标记和障碍物,以及调整车速和方向以保持安全距离。

372b587684611dc88fb5c96a0adf627d.png

目前ASIC在这方面的发展比较迅速,像英伟达、华为海思等公司都有专用的ASIC。早期在这方面探索的时候FPGA还是有一定的优势的,但是目前没有了。所以在这里就不过多介绍了,下面的视频是基于FPGA搭建的智能辅助系统:

完整的系统架构如下:

3125e835993d4af81a6fa65c5cc4a28f.png

论文链接:

https://www.hackster.io/javier-cristian/thefifthdriver-machine-learning-driving-assistance-on-fpga-98f295

代码链接:

https://gitlab.com/jracevedob/thefifthdriver

https://github.com/jracevedob/TheFifthDriverAI

总结

FPGA为汽车制造商带来了更高的性能、灵活性和功能。随着技术的不断进步,我们有理由期待FPGA在未来汽车技术中的更多创新应用,部分重配置等特点可以实现整合非并发功能和硬件级容错的新颖机制。

但是,FPGA在这方面更多的是探索,未来属于ASIC~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/624802.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UE 录屏自动化上传阿里云OSS

前言 最近在做一个功能,然后就发现了一个很有趣的东西,虽然在一定程度上属于偷懒,但是在一些短频快的应用中还是很适用的,下面我就针对于这个测试做一些简单的分享,希望帮助到大家,在实际的开发中获得一些灵…

吴恩达llama课程笔记:第七课llama安全工具

羊驼Llama是当前最流行的开源大模型,其卓越的性能和广泛的应用领域使其成为业界瞩目的焦点。作为一款由Meta AI发布的开放且高效的大型基础语言模型,Llama拥有7B、13B和70B(700亿)三种版本,满足不同场景和需求。 吴恩…

Jenkins配置windows/linux从节点

背景: 环境:jenkins环境(Ubuntu) 节点机器:Linux、Windows 前置条件: 节点机器:安装java、allure、python 1 Linux节点管理机器添加 1.1 系统管理->节点列表->New Node 1.2 节点配置…

万兆以太网MAC设计(5)MAC_TX模块设计以及上板带宽测试

文章目录 前言一、模块功能二、实现方式三、仿真四、上板测速 前言 MAC_RX的设计暂时告一段落,本节将开始进行MAC_TX的设计。 一、模块功能 接收上层用户的AXIS数据,将其转换为XGMII进接口的数据发送给IP核。可接受AXIS数据流,可支持数据包…

Spring Boot集成easypoi快速入门Demo

1.什么是easypoi? Easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板语言(熟悉的…

简单3步,OpenHarmony上跑起ArkUI分布式小游戏

标准系统新增支持了方舟开发框架(ArkUI)、分布式组网和 FA 跨设备迁移能力等新特性,因此我们结合了这三种特性使用 ets 开发了一款如下动图所示传炸弹应用。 打开应用在通过邀请用户进行设备认证后,用户须根据提示完成相应操作&am…

Adobe AE(After Effects)2015下载地址及安装教程

Adobe After Effects是一款专业级别的视觉效果和动态图形处理软件,由Adobe Systems开发。它被广泛用于电影、电视节目、广告和其他多媒体项目的制作。 After Effects提供了强大的合成和特效功能,可以让用户创建出令人惊艳的动态图形和视觉效果。用户可以…

RK3568 学习笔记 : u-boot 千兆网络功能验证

前言 开发板型号: 【正点原子】 的 RK3568 开发板 使用 虚拟机 ubuntu 20.04 编译 RK3568 Linux SDK,生成镜像,烧写后,Linux 系统正常启动 开启后可以使用 CTRLC 进入 u-boot 本篇验证一下 u-boot 下网络功能 【正点原子】 rk…

分类算法——模型选择与调优(三)

交叉验证 交叉验证:将拿到的训练数据,分为训练和验证集。以下图为例:将数据分成4份,其中 一份作为验证集。然后经过4次(组)的测试,每次都更换不同的验证集。即得到4组模型的 结果,取…

iOS依赖库版本一致性检测:确保应用兼容性

一、背景 在 iOS 应用开发的世界里,每次 Xcode 更新都带来了新的特性和挑战。最近的 Xcode 15 更新不例外,这次升级引入了对 SwiftUI 的自动强依赖。SwiftUI最低是从 iOS 13 开始支持。 这一变化也带来了潜在的兼容性问题。如果您的项目在升级到 Xcode…

Rust 编写的数据框架:多线程、矢量化查询引擎 | 开源日报 No.226

pola-rs/polars Stars: 25.2k License: MIT polars 是使用 Rust 编写的多线程、支持矢量化查询引擎的数据框架。 基于 Apache Arrow 列式内存模型惰性和急切执行多线程处理SIMD 加速计算查询优化功能强大的表达式 API支持混合流式处理(适用于大于内存大小的数据集…

盲盒小程序成为收益“法宝”?盲盒线上如何发展

近年来,盲盒在年轻人中掀起了一股潮玩热风,受到了不少年轻人的青睐,盲盒商品更是在不断创新中,收藏价值逐渐提高。随着市场规模的扩大,越来越多的玩家和商家涌入到了市场中,盲盒的商业模式正在加快发展中。…