MCU解决800V电动汽车牵引逆变器的常见设计挑战的3种方式

电动汽车 (EV) 牵引逆变器是电动汽车的。它将高压电池的直流电转换为多相(通常为三相)交流电以驱动牵引电机,并控制制动产生的能量再生。电动汽车电子产品正在从 400V 转向 800V 架构,这有望实现:

·快速充电 – 在相同的电流下提供双倍的功率。

·通过利用碳化硅 (SiC) 提高效率和功率密度。

·通过使用更细的电缆减少相同额定功率下 800V 电压所需的电流,从而减轻重量。

在牵引逆变器中,微控制器 (MCU) 是系统的大脑,通过模数转换器 (ADC) 进行电机控制、电压和电流采样,使用磁芯计算磁场定向控制 (FOC) 算法,并使用脉宽调制 (PWM) 信号驱动功率场效应晶体管 (FET)。对于 MCU,向 800V 牵引逆变器的转变对其带来了三个挑战:

·更低延迟的实时控制性能需求。

·增加了功能安全要求。

·需要快速响应系统故障。

在本文中,我们将讨论基于 Arm 的 SitaraAM2634-Q1 和 C2000 MCU 等器件如何应对这些挑战。

更低延迟的实时控制

为了控制牵引电机的扭矩和速度,MCU 使用外设(ADC、PWM)和计算内核的组合来完成控制环路。随着转向 800V 系统,牵引逆变器也转向宽带隙半导体(例如 SiC),因为它们在 800V 时大大提高了效率和功率密度。为了实现 SiC 所需的更高开关频率,这种控制环路延迟成为优先事项。低延迟控制环路还使工程师能够以更高的转速运行电机,从而减小电机的尺寸和减轻重量。要了解并缩短控制环路延迟,您必须了解控制环路信号链及其各个阶段,如图 1 所示。

图 1:控制环路信号链

为获得出色的实时控制性能,您必须优化整个信号链,包括硬件和软件。从 ADC 采样(来自电机的输入)到写入 PWM(输出以控制电机)所花费的时间是实时控制性能的基本衡量标准。从 ADC 采样开始,逆变器系统需要准确快速的采样,即实现高采样率、至少 12 位分辨率和低转换时间。一旦可进行采样,它需要通过互连传输到处理器并由处理器读取,并优化的总线和内存访问架构缩短延迟。在处理器中,内核需要使用 FOC 算法根据电机的相电流、速度和位置计算下一个 PWM 步骤。

为了更大限度地减少计算时间,内核需要较高的时钟速率并且必须高效地执行特定数量的指令。此外,内核需要执行一系列指令类型,包括浮点、三角和整数数学指令。,内核再次使用低延迟路径将更新后的占空比写入 PWM 发生器。在 PWM 输出上应用死区补偿将防止在切换高侧和低侧 FET 时发生短路,在硬件级别应用以减少软件开销。

增加功能安全要求

由于牵引逆变器提供电力来控制电机,因此它们本质上是功能安全型关键系统。由于 800V 系统有可能提供更高的功率、扭矩、速度(或三者兼而有之),因此牵引系统需要功能安全达到汽车安全完整性等级 (ASIL) D 级要求。功能安全系统的一个关键部分是 MCU,因为它需要智能地做出安全响应系统故障的决策。因此,使用通过 ASIL D 的MCU是一个重要的安全元素。

为了让工程师更轻松地满足特定于牵引逆变器的系统安全要求,TI MCU 提供了额外的功能。例如,相电流反馈表示有关电机扭矩的信息,这使得这些信号对安全至关重要。因此,许多工程师更喜欢对相电流进行冗余采样,这意味着 MCU 必须具有多个独立的 ADC。

快速响应系统故障

工程师面临的另一个挑战是在出现故障时能够快速将电机置于安全状态,例如续流。在 PRU 中执行的固件可以正确评估和响应故障类型并执行所需的 PWM 保护序列,如图 2 所示,然后根据需要直接将 PWM 置于安全状态。这些操作发生在短短 105ns 内。此外,由于固件是用户可进行编程的,因此工程师可以在必要时添加额外的自定义逻辑来满足他们的应用要求。

图 2:流程图显示了基于故障输入的 PWM 输出的预期保护行为

随着越来越多电动汽车的生产,设计趋势将转向 SiC 和 800V 技术,同时需要提高电机控制性能并满足牵引逆变器的功能安全要求。随着世界朝着电气化方向发展,性能和效率方面的创新对于帮助汽车工程师设计下一代电动汽车至关重要。

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

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

相关文章

WPF 2024 金九银十 最新 高级 架构 面试题 C#

含入门 初级 中级 高级 不同级别WPF的面试题 相关面试题 redis安装说明书 http://t.csdnimg.cn/iM260 单体并发瓶颈 redis sqlsever mysql多少 http://t.csdnimg.cn/DTXIh Redis高频面试题http://t.csdnimg.cn/FDOnv 数据库SqlServer笔试题 数据库SqlServer笔试题-CSDN博客 SQL…

绝了!Stable Diffusion做AI治愈图片视频,用来做副业简直无敌!10分钟做一个爆款视频保姆教程

一 项目分析 这个治愈类视频的玩法是通过AI生成日常生活场景,制作的vlog,有这样的一个号,发布了几条作品,就涨粉了2000多,点赞7000多,非常的受欢迎。 下面给大家看下这种作品是什么样的,如图所…

探索高效开发神器:Blackbox AI(免费编程助手)

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 🤖 想要代码生成?👌 💬 需要和AI聊天解决难题?&#…

Ubuntu使用c++

Ubuntu使用c 一、安装编译器和开发工具二、创建一个c文件并运行1.创建一个c2.编译运行 一、安装编译器和开发工具 先安装vim sudo apt install vim再安装GUN编译器合集(GCC) sudo apt install build-essential使用g -v查看版本确定安装成功 二、创建…

Javaweb-初学

1.利用springboot开发一个web应用 简要流程,如下图 2.如何创建一个springboot的项目,下面两张图片是重点关注 第一张图片记得和图片一样改一下路径 第二张就是勾一个选项 3.第一个简单的springboot应用的开发 根据如下步骤进行操作 首先顶部要标识Res…

TensorFlow的学习1.2-基本概念

TensorFlow的学习2-基本概念 1. 张量(Tensor)2. 变量(Variable)3. 操作(Operation)4. 计算图(Computational Graph)5. 会话(Session)6. Eager Execution7. 数…

LinkedIn被封原因和解封方法

对于初识领英和对领英生态规则不熟悉的人来说,很容易造成领英账号被封号(被限制登录)的情况,那么如何才能避免和解决领英帐号被封号(被限制登录)的难题呢? 领英帐号被封号或被限制登录主要会有两类情况。 首先要搞清楚, Linkedi…

IP白名单及其作用解析

在网络安全领域,IP白名单是一项至关重要的策略,它允许特定的IP地址或地址范围访问网络资源,从而确保只有受信任的终端能够连接。下面,我们将深入探讨IP白名单的定义、作用以及实施时的关键考虑因素。 一、IP白名单的定义 IP白名单…

HTML与Python生成验证码的对比分析

前言 验证码(CAPTCHA)是确保用户行为为人类而非机器人自动执行的一种安全机制。通过图形、文字、或其他手段生成复杂的验证码来防止自动化攻击是一种常见的方法。本文将对比分析使用HTML与JavaScript和Python生成验证码的两种方式,探讨各自的…

【scau大数据原理】期末复习——堂测题

一、集群安装知识 启动集群的命令start-all.sh位于 Hadoop安装目录的sbin文件夹 目录下。 bin文件夹下包含常见的Hadoop,yarn命令;sbin命令下包含集群的启动、停止命令。 启动集群的命令start-all.sh包含 同时启动start-dfs.sh和start-yarn.sh 功能。…

AI与Python共舞:如何利用深度学习优化推荐系统?

AI与Python共舞:如何利用深度学习优化推荐系统? 当你在浏览新闻、电影或是购物平台时,那些仿佛读懂你心思的个性化推荐背后,正是AI技术与Python语言的精妙协作。今天,我们将通过一个实际案例,探索如何利用…

Python 面试【中级】

欢迎莅临我的博客 💝💝💝,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

已解决javax.xml.bind.MarshalException:在RMI中,参数或返回值无法被编组的正确解决方法,亲测有效!!!

已解决javax.xml.bind.MarshalException:在RMI中,参数或返回值无法被编组的正确解决方法,亲测有效!!! 目录 问题分析 出现问题的场景 服务器端代码 客户端代码 报错原因 解决思路 解决方法 1. 实现…

大数据面试题之Hive(1)

说下为什么要使用Hive?Hive的优缺点?Hive的作用是什么? 说下Hive是什么?跟数据仓库区别? Hive架构 Hive内部表和外部表的区别? 为什么内部表的删除,就会将数据全部删除,而外部表只删除表结构?为什么用外部表更好? Hive建表语句?创建表时使…

Vite:打包时去除console

需求描述 在生产环境下,Vite打包项目时,需要去除开发时加入的console、debugger调试信息,但是又不想引入terser。 解决方案 esbuild 参考: esbuild - API 修改配置 修改vite.config.js配置文件,新增配置项如下&…

深入了解语音识别:Distil-Whisper

Distil-Whisper模型概述 1.1 Distil-Whisper的背景与意义 随着语音识别技术的不断发展,模型的大小和计算复杂度成为了制约其广泛应用的重要因素。特别是在边缘设备和实时应用场景中,对模型的效率和性能提出了更高的要求。Distil-Whisper模型的提出&…

c++指针和引用之高难度(二)习题讲解

1.【单选题】 int a[4] { 1001,1002,1003,1004 }; int* p{ &a[1] }; p[1] ? A 1001 B 1002 C 1003 解析:这道题考察了指针和数组可以混用。p 指向了 数组 a[0] 的地址,也就是 1002 的地址,此时 *p p[0]…

axios发送数据的几种方式

axios 发送数据的几种方式 1、最简单的方式是将参数直接拼接在 URL 上,这通常用于传递少量的数据,例如资源的 ID。 const id 12; axios.delete(https://api.example.com/${id}).then(response > {console.log(Resource deleted successfully:, res…

Win11下安装多个JDK版本,并切换

Windows11下安装多个JDK版本,并切换 前言步骤1、前期准备2、版本切换思考前言 一台电脑可以同时安装多个版本 jdk,建议两个,最多不超三个。安装多个JDK版本可能会占用较多的磁盘空间。此外,同时运行多个 JDK 版本可能会对系统性能产生一定的影响。   切换 JDK 有两种方式…

嵌入式是Linux:shell使用解析

目录 简介 1. shell 脚本程序 2.变量 3.条件测试和控制结构 简介 shell是一种具备特殊功能的可执行程序,它是介于使用者和 UNIX/linux 操作系统内核间的一个接口。 shell是一个命令解释器,它从输入设备读取命令,再将其转为计算机可以了解的指令,然后执行它。 在Linux中…