当前位置: 首页 > news >正文

电机驱动开发之驱动板

目录

  • 1.主要器件选型
  • 2.原理图设计
  • 3.PCB绘制
    • 电源调理
    • 驱动电路
    • 电流反馈
    • 位置反馈
  • 4.PCB绘制
  • 5.打板验证
  • 6.总结

1.主要器件选型

器件参数封装理由
LDOLM317DCYR (24V-12V 12V-5V)SOT-223小电流应用 LDO比DCDC噪声小响应快更为稳定
预驱FD6288TTssop-20常见无刷电机预驱
NMOSNCE3080kTo-252常见
运放LMV358IDRSoic-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)服务工具…...

C++_核心编程_多态案例二-制作饮品

#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为&#xff1a;煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例&#xff0c;提供抽象制作饮品基类&#xff0c;提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

算法岗面试经验分享-大模型篇

文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer &#xff08;1&#xff09;资源 论文&a…...

无人机侦测与反制技术的进展与应用

国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机&#xff08;无人驾驶飞行器&#xff0c;UAV&#xff09;技术的快速发展&#xff0c;其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统&#xff0c;无人机的“黑飞”&…...

C# 表达式和运算符(求值顺序)

求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如&#xff0c;已知表达式3*52&#xff0c;依照子表达式的求值顺序&#xff0c;有两种可能的结果&#xff0c;如图9-3所示。 如果乘法先执行&#xff0c;结果是17。如果5…...

文件上传漏洞防御全攻略

要全面防范文件上传漏洞&#xff0c;需构建多层防御体系&#xff0c;结合技术验证、存储隔离与权限控制&#xff1a; &#x1f512; 一、基础防护层 前端校验&#xff08;仅辅助&#xff09; 通过JavaScript限制文件后缀名&#xff08;白名单&#xff09;和大小&#xff0c;提…...

rm视觉学习1-自瞄部分

首先先感谢中南大学的开源&#xff0c;提供了很全面的思路&#xff0c;减少了很多基础性的开发研究 我看的阅读的是中南大学FYT战队开源视觉代码 链接&#xff1a;https://github.com/CSU-FYT-Vision/FYT2024_vision.git 1.框架&#xff1a; 代码框架结构&#xff1a;readme有…...

Linux-进程间的通信

1、IPC&#xff1a; Inter Process Communication&#xff08;进程间通信&#xff09;&#xff1a; 由于每个进程在操作系统中有独立的地址空间&#xff0c;它们不能像线程那样直接访问彼此的内存&#xff0c;所以必须通过某种方式进行通信。 常见的 IPC 方式包括&#…...

GraphRAG优化新思路-开源的ROGRAG框架

目前的如微软开源的GraphRAG的工作流程都较为复杂&#xff0c;难以孤立地评估各个组件的贡献&#xff0c;传统的检索方法在处理复杂推理任务时可能不够有效&#xff0c;特别是在需要理解实体间关系或多跳知识的情况下。先说结论&#xff0c;看完后感觉这个框架性能上不会比Grap…...

【web笔记】JavaScript实现有动画效果的进度条

文章目录 1 实现效果2 实现代码 1 实现效果 2 实现代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"utf-8"><style>#progress {width: 300px;height: 20px;border-radius: 0; /* 移除圆角 */-webkit-appearance…...