FOC系列(一)----DRV8301芯片的学习

news2024/9/28 13:28:43

一、 写在前面

   从今年四五月份一直就想玩个无刷直流电机(BLDC),但是碍于一直没时间。其实很早就做出来了测试板的控制板,可以当做开发板使用,考虑到成本问题,最后选用STM32F103CBT6芯片,下面是很久之前做的控制板:
在这里插入图片描述
在这里插入图片描述
   上面还加了一个ESP32芯片,但是设想的是使用BLE(低功耗蓝牙)与手机通信,接收数据并发送给STM32芯片,改变OLED屏幕显示内容等功能,目前这部分在几个月之前已经实现,然后就是驱动板,绘制完了原理图,画完PCB了,但是一直没打板,也就把这个东西搁置了,最近突然想起来就把电路板打了,今天焊接完了驱动板,下面是原理图和3D图:
在这里插入图片描述
在这里插入图片描述
   当时想的就是控制板在上面,驱动板放在下面,由DRV8301芯片的BUCK电路输出的5V给控制板供电,(控制板叫做JAM,果酱的意思;驱动板叫JAM PIE,果酱饼的意思,哈哈哈哈),现在两个板子的连接如下:
在这里插入图片描述
   有些地方有问题,只能通过飞线进行走线,看上去乱了点,后续测试通过后,会将两块板子合在一起,做一个专用的BLDC驱动器,目前只支持AS5600磁编码器(有外接的I2C接口,只要是可以用I2C的编码器即可)和霍尔传感器。下面是上电之后的状态:
在这里插入图片描述

二、 DRV8301目前遇到的问题

   首先放上我的DRV8301部分的原理图,希望有大佬可以帮我解决一下:
在这里插入图片描述
在这里插入图片描述
  芯片是在t宝上买的,很便宜,四块多,也有很大的可能性是芯片不行:
在这里插入图片描述

2.1 EN_GATE引脚

   该引脚接到STM32的PB4输出,已经配置为下拉,在电路上也放了下拉电阻,但是上电后会出现奇怪的现象:

  1. PB4不连接EN_GATE引脚,单看PB4输出为3.3V,但是PB4接到EN_GATE引脚之后,PB4引脚上电压就为0.56V
  2. 去掉下拉电阻,PB4可以到3V左右,但是让PB4引脚输出低之后,该引脚的电压为2.5V,而且电压非常不稳定

2.2 GVDD输出

   就算给EN_GATE高电平3V左右,使能DRV8301芯片的栅极等功能,但是GVDD输出极低,仅有0.几V;CP1和CP2的电荷泵电压也非常低。

2.3 DVDD输出

   DVDD输出正常,为3.3V

2.4 AVDD输出

   AVDD也有输出,但是输出6.8V,较正常输出6V要高

2.5 高边MOSFET栅极信号

   现在是给DRV8301固定的PWM波,由于GVDD以及电荷泵输出不正常,栅极上都没有信号,而且高边MOSEFET上会有固定时间的间隔的尖波脉冲。

三、数据手册学习

   出现问题,还得看数据手册,从里面一般会找到问题放解决办法。

3.1 简介及引脚功能

  The DRV8301 is a gate driver IC for three-phasemotor drive applications. The device provides threehalf-bridge drivers, each capable of driving two Nchannel MOSFETs. The DRV8301 supports up to1.7-A source and 2.3-A peak current capability. The DRV8301 can operate off of a single power supplywith a wide range from 6-V to 60-V. The device uses a bootstrap gate driver architecture with trickle charge circuitry to support 100% duty cycle. The DRV8301uses automatic handshaking when the high-side orlow-side MOSFET is switching to prevent flow ofcurrent. Integrated VDS sensing of the high-side andlow-side MOSFETs is used to protect the externalpower stage against overcurrent conditions.
  The DRV8301 includes two current shunt amplifiers for accurate current measurement. The amplifiers support bidirectional current sensing and provide an adjustable output offset up to 3 V.
  The DRV8301 also includes an integrated switching mode buck converter with adjustable output and switching frequency. The buck converter can provide up to 1.5 A to support MCU or additional system power needs.
  The SPI provides detailed fault reporting and flexible parameter settings such as gain options for the current shunt amplifiers and slew rate control of the gate drivers.

  DRV8301是一款用于三相电机驱动应用的栅极驱动IC。该器件提供三个半桥驱动器,每个驱动器能够驱动两个Nchannel mosfet。DRV8301支持高达1.7 a的电源和2.3 a的峰值电流能力。DRV8301可以在6v到60v的宽电压范围内单电源工作。该器件采用带涓流充电电路的自举栅极驱动架构,支持100%占空比。当高侧或低侧MOSFET切换时,DRV8301使用自动握手来防止电流流动。高侧和低侧mosfet的集成VDS传感用于保护外部功率级免受过流情况的影响。
  DRV8301包括两个电流分流放大器,用于精确的电流测量。放大器支持双向电流传感,并提供可调输出失调高达3v。
  DRV8301还包括一个集成的开关模式降压转换器,具有可调的输出和开关频率。降压转换器可以提供高达1.5 A的功率,以支持MCU或其他系统的电源需求。
  SPI提供详细的故障报告和灵活的参数设置,如当前分流放大器的增益选项和栅极驱动器的压摆率控制。
在这里插入图片描述

  具体引脚的功能可以参考大佬的文章:DRV8301的使用

3.2 电气、定时、保护开关等特性

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

   超过绝对最大额定值的压力可能会对设备造成永久性损坏。这些仅是压力额定值,不暗示设备在这些或超出推荐操作条件的任何其他条件下的功能操作。长时间暴露在绝对最大额定条件下可能会影响设备的可靠性。

3.3 SPI时序图

在这里插入图片描述

   CLK空闲是为低电平,下降沿采集数据,详细的在后续SPI的读写数据时进行介绍。
   本期博客暂时先到这,时间也比较晚了,后续有时间继续学习!!!

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

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

相关文章

边缘计算发生了什么?

边缘计算(Edge computing)成为一种革命性工具,可以满足日益增长的实时数据处理需求。通过在网络边缘(更靠近数据生成位置)进行数据处理,边缘计算可显着减少延迟和带宽使用。 这是我们多年来一直被告知的故事,但随着生…

听GPT 讲Rust源代码--library/std(2)

File: rust/library/std/src/sys_common/wtf8.rs 在Rust源代码中,rust/library/std/src/sys_common/wtf8.rs这个文件的作用是实现了UTF-8编码和宽字符编码之间的转换,以及提供了一些处理和操作UTF-8编码的工具函数。 下面对这几个结构体进行一一介绍&…

封装一个vue3 Toast组件,支持组件和api调用

先来看一段代码 components/toast/index.vue <template><div v-if"isShow" class"toast">{{msg}}</div> </template><script setup> import { ref, watch } from vue const props defineProps({show: {type: Boolean,def…

“/usr/bin/env: ‘python’: No such file or directory“:Linux中python口令无效,python3有效

文章目录 1. 问题的发现2. /usr/bin 目录里跟python有关的链接2.1 使用ll查看文件的链接2.2 分析python口令不能使用的原因 3 参考文章《linux 升级默认python 环境为python3》4 修改命令为python 1. 问题的发现 我在安装scons时&#xff0c;发现python口令不能直接用&#xf…

Unity之ShaderGraph如何实现水波纹效果

前言 今天我们来实现一个水波纹的效果 如下图所示: 主要节点 Normalize :返回输入 In 的标准化值。输出矢量与输入 In 具有相同的方向,但长度为 1。 Length:返回输入 In 的长度。这也称为大小 (magnitude)。矢量的长度是使用毕达哥拉斯定理 (Pythagorean Theorum) 计算…

javaEE -7(网络原理初识 --- 7000字)

一&#xff1a;网络初识 计算机的独立模式是指多台计算机在网络中相互独立运行&#xff0c;彼此之间不共享资源或信息。在早期&#xff0c;计算机主要采用独立模式&#xff0c;每台计算机都拥有自己的操作系统、应用程序和数据&#xff0c;它们之间没有直接的连接或通信。 在…

笔记/日记应用 memos

memos &#xff0c;一款很惊艳的笔记应用&#xff0c;UI很漂亮&#xff0c;交互体验也很好&#xff0c;还有其他的小伙伴基于memos开发了不同平台的客户端。 图源-Gihub页 可以说这个是私人笔记系统的天花板&#xff0c;推荐给大家。

从 Python 程序中运行 PowerShell 脚本

Windows PowerShell 由数十个内置 cmdlet 组成&#xff0c;它们提供了丰富的功能集。 其中一些功能是独一无二的&#xff0c;只能通过 PowerShell 获得&#xff1b; 因此&#xff0c;如果我们能够在 Python 等其他编程语言中使用 PowerShell 脚本&#xff0c;那将非常有用。 本…

【分布式】: 幂等性和实现方式

【分布式】: 幂等性和实现方式 幂等&#xff08;idempotent、idempotence&#xff09;是一个数学与计算机学概念&#xff0c; 常见于抽象代数中。在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数&#xff0c;或幂等方法&#xff0c;是…

图像处理中底层、高层特征、上下文信息理解

1.图像的语义信息: 图像的语义分为视觉层、对象层和概念层。 视觉层即通常所理解的底层&#xff0c;即颜色、纹理和形状等等&#xff0c;这些特征都被称为底层特征语义&#xff1b; 对象层即中间层&#xff0c;通常包含了属性特征等&#xff0c;就是某一对象在某一时刻的状态&a…

PHP MySQL 交互 笔记/练习

PHP 与 MySQL 交互 交互函数 函数名作用mysqli_connect()与MySQL 数据库建立连接。mysqli_close()关闭与MYSQL 数据库建立的连接。mysqli_connect_errno()与MySQL 数据库建立连接时&#xff0c;发生错误时的错误编号。mysqli_connect_error()与MySQL 数据库建立连接时&#x…

Kubernetes技术与架构-存储 1

Kubernetes集群Pod中运行的容器实例绑定的资源包括计算、内存、网络以及存储&#xff0c;本文主要描述Kubernetes存储体系的使用方式&#xff0c;Kubernetes存储对象需要解决的问题主要包括在Pod重启过程中原始数据不会丢失、运行在Pod中多个容器实例可以共享地使用存储对象。 …

c++编译使用log4cplus

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、log4cplus是什么&#xff1f;二、使用步骤1.下载源代码2.开始配置1.配置介绍2.开始编译 3.cmake引用4.示例 总结 前言 C很强大&#xff0c;但是仍然有很多…

postgresql|数据库|序列Sequence的创建和管理

前言&#xff1a; Sequence也是postgresql数据库里的一种对象&#xff0c;其属性如同索引一样&#xff0c;但通常Sequence是配合主键来工作的&#xff0c;这一点不同于MySQL&#xff0c;MySQL的主键自增仅仅是主键的属性做一个更改&#xff0c;而postgresql的主键自增是需要序…

windows协议详解之-RPC/SMB/LDAP/LSA/SAM域控协议关系

如果你在windows域控环境中&#xff0c;例如企业的网络中开启wireshark抓包&#xff0c;你一定会遇到一大堆各种各样的协议。不同于互联网服务&#xff08;大多基于HTTP&#xff09;&#xff0c;为了实现域控中各种各样的服务&#xff0c;windows的域控环境中采用了非常多的协议…

【Pytorch】Pytorch学习笔记02 - 单变量时间序列 LSTM

目录 说明简单神经网络LSTM原理Pytorch LSTM生成数据初始化前向传播方法训练模型自动化模型构建 总结参考文献 说明 这篇文章主要介绍如何使用PyTorch的API构建一个单变量时间序列 LSTM。文章首先介绍了LSTM&#xff0c;解释了它们在时间序列数据中的简单性和有效性。然后&…

Unity - 导出的FBX模型,无法将 vector4 保存在 uv 中(使用 Unity Mesh 保存即可)

文章目录 目的问题解决方案验证保存为 Unity Mesh 结果 - OK保存为 *.obj 文件结果 - not OK&#xff0c;但是可以 DIY importer注意References 目的 备忘&#xff0c;便于日后自己索引 问题 为了学习了解大厂项目的效果&#xff1a; 上周为了将 王者荣耀的 杨玉环 的某个皮肤…

GEE图表——利用NOAA气象数据绘制气温预测图

简介 气象预测是通过气象数据和模型对未来某一时间和地点的天气情况进行预测。 具体步骤如下&#xff1a; 1. 数据采集&#xff1a;从气象观测站、卫星等获取气象数据&#xff0c;包括气压、水汽、风速、温度、降雨、云量等。 2. 数据清洗&#xff1a;对采集到的数据进行质…

模拟计算器编程教程,中文编程开发语言工具编程实例

模拟计算器编程教程&#xff0c;中文编程开发语言工具编程实例 中文编程系统化教程&#xff0c;不需英语基础。学习链接 ​​​​​​https://edu.csdn.net/course/detail/39036 课程安排&#xff1a;初级1 1 初级概述 2 熟悉构件取值赋值 3 折叠式菜单滑动面板编程 4 自定…

前端(二十三)——轮询和长轮询

&#x1f62b;博主&#xff1a;小猫娃来啦 &#x1f62b;文章核心&#xff1a;实现客户端与服务器实时通信的技术手段 文章目录 前言轮询技术轮询的概念轮询的实现原理轮询的优缺点轮询的使用场景 长轮询技术长轮询的概念长轮询的实现原理长轮询的优缺点长轮询的使用场景 轮询与…