电机驱动开发之驱动板
目录
- 1.主要器件选型
- 2.原理图设计
- 3.PCB绘制
- 电源调理
- 驱动电路
- 电流反馈
- 位置反馈
- 4.PCB绘制
- 5.打板验证
- 6.总结
1.主要器件选型
器件 | 参数 | 封装 | 理由 |
---|---|---|---|
LDO | LM317DCYR (24V-12V 12V-5V) | SOT-223 | 小电流应用 LDO比DCDC噪声小响应快更为稳定 |
预驱 | FD6288T | Tssop-20 | 常见无刷电机预驱 |
NMOS | NCE3080k | To-252 | 常见 |
运放 | LMV358IDR | Soic-8 | 常见 |
以上器件选型皆为便于焊接利于排查问题的封装,小体积应用可选择QFN封装的器件
2.原理图设计
3.PCB绘制
电源调理
电源架构如下
- LM317
以上为LM317 IC典型应用框图,其中Vref = 1.25V,Cadj推荐选择10uf电容,输入输出负载电容分别为Ci 0.1uf、Co 1uf;Vo计算公式为Vo = Vref(1 +R2/R1)+(Iadj R2)。Iadj常规为50uA,若R2为1K,IadjR2 = 50mV,对于输出结果影响不是很大可忽略不计;则计算公式可简化为Vo = Vref(1 +R2/R1);
在实际设计中往往一致Vin、Vo,固定R1为240R则只需要确定R2得值即可获得期望输出电压:
R2 = ((Vo - Vref)*R1)/Vref
原理图设计如下:
- 防反接电路
其工作原理为,当外部24V输入时,PMOS管体二极管导通,进而使得原本没有电压的24V_Inside出现24V电平。此时,Vs > Vg,则满足PMOS导通条件,MOS管正常开启;当电源反接时,PMOS管体二极管截止,则无法满足PMOS管导通条件实现防反接功能。
驱动电路
驱动电路由三相逆变电路与预驱芯片组成可用于驱动无刷电机,三相逆变电路如果只使用其中的两相即可转变为双极性H桥驱动电路即可驱动有刷电机
以下为原理图设计:
其中,中间部分电路为电荷泵自举电路,驱动方案为全NMOS驱动,因为市面上常见的NMOS同等价位下比PMOS能够通过更大的电流,R16、R17、R18为采样电阻。
- 迪克森电荷泵工作原理:
电荷泵是如何升压的?原理非常简单,一看就会! - 自举电路的作用
由于采用的驱动方案为全NMOS驱动方案,NMOS导通条件需要G极电压高于S极电压;
以Q2为例,初始上电后,G极5V电平,NMOS正常导通,但导通以后S极电压变为24V,则NMOS瞬间关闭,而我们期望是希望NMOS能够保持导通状态,则需要一种方法将G极电压抬升至24V以上,这样才能维持NMOS的导通条件;
有了电荷泵自举电路后,初始上电,5V电源将会给C24充电至5V,当NMOS第一次导通时,24V电源与电容上的5V出现串联关系因此电容上电压叠至29V,这个电压将会输入至预驱用为维持G极输出电压为29V,尽管实际上的过程并未一个PWM周期就完成,最终G极电压能够维持至29V以保持NMOS上管导通。
自举电路
自举电路原理
电流反馈
电流反馈采用差分放大电路,初版没有采集反向电流的需求,因此不设置电压跟随器设置放大电路的偏置电压。
原理图设计如下
根据虚短虚断原理:
(虚短) U+ = U- =Up*R21/(R21+R19)
(虚断) (U- - Un )/R20 = (Uo1 - U- )/R22
Uo1 = (R21/(R21+R19)) ((R22+R20)/R20)Up - (R22/R20)Un
在实际应用中,往往会设置R21 = R22 ,R19 = R20,所以
Uo1 =(R22/R20)(Up - Un)
其中Uo1为运放输出端电压未经过限流电阻,实际设计中限流电阻与R22差值较大分压可忽略
故放大倍数为A = Uo1/(Up - Un)= R22/R20 =10倍
当采样电阻上出现1A的电流时,则会产生1A*10mR = 10mV
经过放大后可得100mV,即0.1V
由于ADC的残阳范围为0-3.3V则最大采样电流可达3.3V/0.1V = 33,即33A
具体原理可参考以下链接: 运算放大器(三):差分放大
位置反馈
电机内置正交编码器,这类编码器在实际项目中应用较多,价格低廉,无通讯延迟。
4.PCB绘制
5.打板验证
6.总结
本文为博主个人学习总结记录,如有不正,欢迎指正
相关文章:

电机驱动开发之驱动板
目录 1.主要器件选型2.原理图设计3.PCB绘制电源调理驱动电路电流反馈位置反馈 4.PCB绘制5.打板验证6.总结 1.主要器件选型 器件参数封装理由LDOLM317DCYR (24V-12V 12V-5V)SOT-223小电流应用 LDO比DCDC噪声小响应快更为稳定预驱FD6288TTssop-20常见无刷…...
STM32F1 HAL库笔记2_HAL 系统驱动程序
1、HAL 固件驱动程序 API 1.1、如何使用此驱动程序 通用 HAL 驱动程序包含一组通用的 API,PPP 外设驱动程序可以使用这些 API 来开始使用 HAL。HAL 包含两个 API 类别: • 常见的 HAL API • 服务 HAL API 1.2、初始化和去初始化函数 本节提供的功能&a…...
el-table实现当内容过多时,el-table显示滚动条,页面不显示滚动条
估计有不少小伙伴在开发公司的ERP使用el-table都会遇到这么一个问题,就是产品经理提出,页面不出现滚动条,因为不美观。但是当el-table内容过多,超过页面的宽度时候,页面就会有滚动条。那应该如何解决呢?能不能让滚动条…...

Java面试篇基础部分-Java中的异常以及异常处理
导语 在实际的开发过程中,往往会遇到各种各样的编程异常,如何处理这些异常,直接会影响到整个程序和系统的稳定性,如果不能在合适的地方抛出合适的异常或者是对异常进行捕获。那么就会影响到整个程序的运行。所以如何处理异常,是作为每个开发者来说必不可少的开发技能。…...
win11 MySQL的坑
最近升级了系统,导致以前的安装的两个版本MySQL服务无法启动,只能在mysql的bin目录,执行mysqld --console才能启动,mysqld都无法启动, 所幸进行了数据库初始化,这次在MySQL的bin目录执行 mysqld或者mysqld …...

stm32单片机个人学习笔记1(简单介绍)
前言 本篇文章属于stm32单片机(以下简称单片机)的学习笔记,来源于B站教学视频。下面是这位up主的视频链接。本文为个人学习笔记,只能做参考,细节方面建议观看视频,肯定受益匪浅。 STM32入门教程-2023版 细…...

python中@staticmethod、@classmethod用法
1、类的基础介绍 类对象:定义的类就是类对象 类属性:定义在__init__ 外部的变量 类方法:定义在类中,且被classmethod 装饰的方法 实例对象:类对象实例化后就是实例对象 实例属性:定义在__init__内部带…...

Harmony Next 文件命令操作(发送、读取、媒体文件查询)
查询文件位置 hdc shell mediatool query IMG_20240902_204224.jpg 输出示例 拉取文件 hdc file recv /storage/cloud/100/files/Photo/4/IMG_1725281044_036.jpg aa.jpg 发送文件 hdc file send aa.jpg /storage/media/100/local/files/Docs/Download/ab.jpg 下载目录位置…...
Go语言中的链表与双向链表实现
链表基础 链表是一种由有限元素组成的数据结构,其中每个元素至少使用两个内存空间:一个存储实际数据,另一个存储指向下一个元素的指针,从而形成一个元素序列构成链表。链表的第一个元素称为头结点,而最后一个元素通常…...

开始一个WPF项目时的记忆重载入
目前在工业软件的UI开发方案选择中,WPF仍然是一个重要的选项。 但是其固有的复杂性,对于像我这样,并不是一直在从事界面开发的人来说,每次重启,都需要一两天的适应的时间。所以这里稍微写一个笔记。 还是老办法&…...
用go语言实现树和哈希表算法
算法复杂度 判断一个算法的效率通常基于其计算复杂度,这主要与算法访问输入数据的次数有关。计算机科学中常用大O表示法来描述算法的复杂度。例如,O(n)的算法只需访问一次输入数据,因此优于O(n)的算法,后者则优于O(n)的算法&…...

基于SpringBoot+Vue+MySQL的校园健康驿站管理系统
系统展示 用户前台界面 管理员后台界面 系统背景 本文设计并实现了一个基于SpringBoot后端、Vue前端与MySQL数据库的校园健康驿站管理系统。该系统旨在通过数字化手段,全面管理学生的健康信息,包括体温监测、疫苗接种记录、健康状况申报等,为…...
深入理解MATLAB中的事件处理机制
在MATLAB中,事件处理机制是一种强大的工具,它允许对象之间的交互和通信。这种机制基于观察者设计模式,其中一个对象(观察者)监听另一个对象(发布者)的状态变化。当发布者的状态发生变化时&#…...

线程--线程同步
这里写目录标题 同步概念线程同步概念数据混乱原因 互斥量原理锁的注意事项1、cpu时间轮片2、建议锁总结 使用锁来管理线程同步问题产生主要函数init、destorylock、unlock代码注意事项(锁的粒度) try锁死锁出现原因图解 读写锁特性图解函数总览init、de…...

【QT】Qt窗口
欢迎来到Cefler的博客😁 🕌博客主页:折纸花满衣 🏠个人专栏:QT 目录 👉🏻菜单栏设置👉🏻QToolBar练习 👉🏻QStausBar👉🏻Q…...

场外个股期权怎么给股票加杠杆?
今天期权懂带你了解场外个股期权怎么给股票加杠杆?场外期权交易通过向证券公司支付一定额度的股票期权费,然后买入大额的股票持仓,从而实现的杠杆交易。 买入看涨期权 操作:支付权利金购买看涨期权。 杠杆作用: 期…...

【Docker部署ELK】(7.15)
1、拉取镜像 docker pull docker.elastic.co/elasticsearch/elasticsearch:7.15.0 docker pull docker.elastic.co/kibana/kibana:7.15.0 docker pull docker.elastic.co/logstash/logstash:7.15.02、配置文件(解压资源到D盘DOCKER目录下) 2.1 配置文件…...

UE4_后期处理_后期处理材质及后期处理体积一
后期处理效果 在渲染之前应用于整个渲染场景的效果。 后期处理效果(Post-processing effect)使美术师和设计师能够对影响颜色、色调映射、光照的属性和功能进行组合选择,从而定义场景的整体外观。要访问这些功能,可以将一种称为…...

【PyQt6 应用程序】基于QtDesigner做一个用户登录页面
在当今的软件开发领域,用户界面(UI)设计和后端编程是创建现代、互动应用程序的两大重要组成部分。尤其是在开发具有用户登录功能的应用程序时,不仅要注重外观和用户体验的设计,还要确保后端逻辑的安全性和可靠性。 本文将介绍如何使用PyQt6框架结合UI设计,实现一个简单而…...

Ollama—87.4k star 的开源大模型服务框架!!
这一年来,AI 发展的越来越快,大模型使用的门槛也越来越低,每个人都可以在自己的本地运行大模型。今天再给大家介绍一个最厉害的开源大模型服务框架——ollama。 项目介绍 Ollama 是一个开源的大语言模型(LLM)服务工具…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

【单片机期末】单片机系统设计
主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...

Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...

JVM虚拟机:内存结构、垃圾回收、性能优化
1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...

【VLNs篇】07:NavRL—在动态环境中学习安全飞行
项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战,克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...

使用Spring AI和MCP协议构建图片搜索服务
目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...