无刷电机学习-方波电调 电路篇

news2024/11/24 6:04:16

        想要彻底的理解无刷电机的驱动,那必然少不了学习他的驱动电路和程序。这里用开源的AM32无刷电调(方波驱动)来作为学习无刷电机笔记。

https://github.com/AlkaMotors附上作者github地址

AM32_Hardware: 基于AT32MCU的AM32PCB另一位大佬开源的电路图本次学习就仿照该电路

        一个基本的无刷电机驱动电路大致包含电源电路、电流电压采样、电机驱动电路。

一、主控芯片选型及说明

        开源的AM32作者已经支持STM32和AT32两种32位单片机。这里学习使用的是基于AT32F421设计的电路。

二、电源电路

一般这种电路都要有两颗电源芯片。一颗DC-DC电源芯片还有一颗LDO稳压芯片。

DC-DC芯片的作用是构成buck电路进行降压,效率高,输入电压范围较宽,可以高效的将一个较高电压给降到一个较低电压范围。

LDO芯片虽然也可以降压,但是发热大,输入输出的电压差不能太大,优点是稳定性好,负载响应快,输出纹波小,所以进行小压差降压后给主芯片供电。

1、ME3116(DC-DC芯片)基于芯片手册设计

Buck电路原理buck电路基本原理_哔哩哔哩_bilibili

(1)芯片的概述和特点。有三个主要的信息吧(反馈基准电压0.8V、输入电压范围、负载电流)。

(2)引脚说明和典型电路图

根据这些信息我们就可以根据自己需要搭建自己的Buck电路。

引脚和应用电路解析:IN电压输入、GND地线、SW电压输出这几个没什么好说的

EN芯片使能逻辑开关这个开关我们用不到直接接1M电阻就行也就是R3。

BS驱动内置MOS的,和外面的自居电容相接维持MOS的开启状态。

FB可以理解为工作引脚,想要降到多少V电压靠配置这个引脚。Vout = Vfb(1+(r1/r2))

如果我们想要输出4.8v的电压4.8,就要配置r1/r2 = 4.8 / 0.8 - 1;当r1/r2 = 5是输出就是4.8v。

然后应用电路那些电容电阻的大小选型具体怎么算没太懂,但是手册有推荐大小,可以按推荐范围进行调试选型。

结合数据手册可设计出如下电路

2、SPX3819M5-L-3-3 LDO稳压芯片

这个芯片的作用就是将Buck电路得到的电压再次进行降压稳压。经过Buck电路后输入的电压已经变成了4.8V,而单片机的供电一般都是3.3V。同理根据数据手册的引脚说明和应用电路图可以设计出如下电路图。

三、驱动电路

系统的驱动框图就如下,主要的驱动电路就是三相逆变器电桥。一般他的组成都是栅极驱动IC加上六颗NMOS从而搭建上下桥驱动BLDC。(如果是PMOS好像就不用这个栅极驱动IC)

在这里选择的栅极驱动IC是FD6288Q看数据手册

根据数据手册设计如下电路

四、电流、电压采样电路

然后就是采样电路

1、电压采样  直接通过分压,利用单片机ADC读取进行比例换算即可得到电源电压

2、电流采样  利用OPA放大电路,将ADC采到放大后电压进行倍数缩减后得到采样电压除以电阻得到电流。(OPA放大原理简介电子小白学不会运放?一开始掌握这两个用法就够了!_哔哩哔哩_bilibili)

 

五、PCB设计

经验证可以正常烧录运转电机

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

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

相关文章

31、WEB攻防——通用漏洞文件上传JS验证mimeuser.ini语言特性

文章目录 文件上传一、前端验证二、.user.ini 文件上传 检测层面:前端、后端等检测内容:文件头、完整性、二次渲染等检测后缀:黑名单、白名单、MIME检测等绕过技巧:多后缀解析(php5、php7)、截断、中间件特…

golang通过go-git下载gitlab源码

1 申请令牌 方法1:具体项目下申请: 方法2:全局申请 2 获取token 3 下载代码 package mainimport ("fmt""os""github.com/go-git/go-git/v5" )func main() {_, err : git.PlainClone("/tmp/foo",…

力扣hot100 乘积最大子数组 DP

Problem: 152. 乘积最大子数组 文章目录 思路复杂度💖 Code 思路 👨‍🏫 参考题解 复杂度 时间复杂度: O ( n ) O(n) O(n) 空间复杂度: O ( n ) O(n) O(n) 💖 Code public class Solution {public int maxProduct(int[]…

ruoyi框架教程

心血来潮,写一篇关于ruoyi【若依】框架从0-1的教程。说一下使用感受吧,如果有一个架构师或者老手已经把架构改造完成也能指导你如何快速上手,那么你在后面的增删改查系列开发起来会如鱼得水。如果没有人改造,也没有人教你&#xf…

【江科大】STM32:中断系统(理论)

文章目录 中断系统为什么要使用中断中断优先级中断嵌套STM32的中断系统如何管理这些中断NVIC的结构![请添加图片描述](https://img-blog.csdnimg.cn/c77b038fd63a4ddfbcd3b86f6dfe596b.png) 优先级窗口看门狗(WWDG):外部中断模块的特性&#…

[Python] scikit-learn - K近邻算法介绍和使用案例

什么是K近邻算法? K近邻算法(K-Nearest Neighbors,简称KNN)是一种基于实例的学习方法,主要用于分类和回归任务。它的基本思想是:给定一个训练数据集,对于一个新的输入实例,在训练数据集中找到与该实例最邻近的K个实例…

SpringBoot统一返回和统一异常处理

Session 认证和 Token 认证 过滤器和拦截器 SpringBoot统一返回和统一异常处理 上篇文章我们学习了基于 Token 认证的登录功能实现,分别使用了过滤器和拦截器去实现登录功能,这篇文章我们来学习项目中常用的统一返回结果和统一异常处理。 一、统一返…

java.lang.IllegalArgumentException: When allowCredentials is true

1.遇到的错误 java.lang.IllegalArgumentException: When allowCredentials is true, allowedOrigins cannot contain the special value "*" since that cannot be set on the "Access-Control-Allow-Origin" response header. To allow credentials to a…

vue echarts地图

下载地图文件: DataV.GeoAtlas地理小工具系列 范围选择器右侧行政区划范围中输入需要选择的省份或地市,选择自己想要的数据格式,这里选择了geojson格式,点右侧的蓝色按钮复制到浏览器地址栏中,打开的geojson文件内容…

[每日一题] 01.23 - 画矩形

画矩形 height,width,c,d input().split() height,width,d int(height),int(width),int(d) lis [c * width if d else c * (width - 2) c for i in range(height) ]lis: ##### # # # # ##### 或 # # # # # # # #if not d:print(c * width)for i in lis[1:-1…

苹果眼镜(Vision Pro)的开发者指南(3)-【3D UI SwiftUI和RealityKit】介绍

为了更深入地理解SwiftUI和RealityKit,建议你参加专注于SwiftUI场景类型的系列会议。这些会议将帮助你掌握如何在窗口、卷和空间中构建出色的用户界面。同时,了解Model 3D API将为你提供更多关于如何为应用添加深度和维度的知识。此外,通过学习RealityView渲染3D内容,你将能…

【加解密篇】电子数据取证分析之特殊的自加密BitLocker解密

【加解密篇】电子数据取证分析之特殊的自加密BitLocker解密 数据加解密通常是个耗时费力的事情—【蘇小沐】 1、实验环境 Windows 11 专业版,[23H2(22631.3007)] (一)自动开启BitLocker之天坑 1、经验之谈 在201…

php基础学习之数据类型

php数据类型的基本概念 数据类型:data type,在PHP中指的是数据本身的类型,而不是变量的类型。 PHP 是一种弱类型语言,变量本身没有数据类型。 把变量类比成一个杯子(容器),杯子可以装雪碧、可…

2024茶饮品牌如何出圈,媒介盒子分析

随着新式茶饮的消费场景更加多元化,品类不断拓宽,消费者对新式茶饮的热情也是只增不减。居民可支配收入水平不断上升,居民消费升级为新式茶饮的发展也提供了良好基础,今天媒介盒子就来和大家聊聊:2024茶饮品牌如何出圈…

【数据分析】matplotlib、numpy、pandas速通

教程链接:【python教程】数据分析——numpy、pandas、matplotlib 资料:https://github.com/TheisTrue/DataAnalysis 1 matplotlib 官网链接:可查询各种图的使用及代码 对比常用统计图 1.1 折线图 (1)引入 from …

软考之软件工程

一、瀑布模型 严格区分阶段,每个阶段因果关系紧密相连,只适合需求明确的项目 缺点:软件需求完整性、正确性难确定;严格串行化,很长时间才能看到结果;瀑布模型要求每个阶段一次性完全解决该阶段工作&#xf…

Prometheus+Grafana监控Mysql数据库

Promethues Prometheus https://prometheus.io Prometheus是一个开源的服务监控系统,它负责采集和存储应用的监控指标数据,并以可视化的方式进行展示,以便于用户实时掌握系统的运行情况,并对异常进行检测。因此,如何…

【测试开发】Junit5 + YAML 轻松实现参数化和数据驱动,让 App 自动化测试更高效(一)

1. 何为数据驱动 什么是参数化?什么又是数据驱动?经常有人会搞不明白他们的关系,浅谈一下个人的理解,先来看两个测试中最常见的场景: 登录:不同的用户名,不同的密码,不同的组合都需要…

makefile编译静态链接库(.a文件)

文章目录 makefile编译静态链接库(.a文件) makefile编译静态链接库(.a文件) 搞个文件测试静态链接库 aTest.h // // Created by qiufh on 2024-01-23. //#ifndef UNTITLED3_ATEST_H #define UNTITLED3_ATEST_Hclass aTest { pu…

c语言数据结构:单链表及其相关基础操作

目录 0.创建一个额外新的结点 1.链表的概念及其结构 2.单链表的概念 3.单链表的结点的创建 4. 顺序表的打印 5. 链表的尾插 5.1 有关单链表的传参 (重点) 5.1.1 错误的写法 5.1.2 如何修正 5.1.3 正确的写法 5.1.4 看穿二级指针变量 ​编辑 6.链表的头插 7.单链表的…