电机驱动开发之驱动板
目录
- 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)服务工具…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
IGP(Interior Gateway Protocol,内部网关协议)
IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...
《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...
【位运算】消失的两个数字(hard)
消失的两个数字(hard) 题⽬描述:解法(位运算):Java 算法代码:更简便代码 题⽬链接:⾯试题 17.19. 消失的两个数字 题⽬描述: 给定⼀个数组,包含从 1 到 N 所有…...
pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
如何理解 IP 数据报中的 TTL?
目录 前言理解 前言 面试灵魂一问:说说对 IP 数据报中 TTL 的理解?我们都知道,IP 数据报由首部和数据两部分组成,首部又分为两部分:固定部分和可变部分,共占 20 字节,而即将讨论的 TTL 就位于首…...
基于Java+MySQL实现(GUI)客户管理系统
客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...
离线语音识别方案分析
随着人工智能技术的不断发展,语音识别技术也得到了广泛的应用,从智能家居到车载系统,语音识别正在改变我们与设备的交互方式。尤其是离线语音识别,由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力,广…...
【Veristand】Veristand环境安装教程-Linux RT / Windows
首先声明,此教程是针对Simulink编译模型并导入Veristand中编写的,同时需要注意的是老用户编译可能用的是Veristand Model Framework,那个是历史版本,且NI不会再维护,新版本编译支持为VeriStand Model Generation Suppo…...
