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

【嵌入式电机控制#20】无刷直流电机硬件案例

一、驱动电路

          以上就是一种常见的无刷直流电机驱动电路Schematic

        (1)光电耦合器件

        

        这里梳理一下电机控制中保护单片机电路的常用方法:

        1. 在功率器件中进行过流保护、总线电压监测

        2. 单片机中进行电流环控制、软件死区设置

        3. 在单片机与驱动电路间设置光电耦合器件,使驱动板烧毁时不会影响到单片机

        至于光电耦合原理这个不需要深入研究,只需要记住一点:

        光电耦合器件的组合逻辑分为两类,一类是对应PWM反相,一类是正相。而我们所介绍的驱动电路中,光电耦合器件是输入输出反相的。

        (2)驱动芯片

                                                          

                IR2110S是一个自带死区控制器的半桥驱动芯片,用于根据输入的低电压PWM生成功率足够的PWM驱动信号。SD引脚表示的是ShutDown,当拉高时驱动芯片两个输出HO和LO无论如何都只输出低电平(电机安全断电)

                具体组合逻辑如下:

                                         

                (3)一个相对应的半桥电路

                

                上图是三相中其中一相的半桥电路

                其中有反接的二极管和一个电阻并联,二极管起充放电缓冲的作用,而电阻进行限流,二者共同实现了严格的过流保护

                

                上图是一个自举升压电路,目的是给S端一个浮动电压,让G与S始终保持一个压差,以免开通后S立刻上升到总线电压,从而压差归零,管子又重新关断

                                    

                上图是本原理图所用MOS管的输入特性曲线,可以很明显看到,它的开启电压是3-4V,只有到达7-8V时才进入饱和区。

                以下这部分电路起到了滤波和限流作用,输出端是一个进入单片机的相位反馈线路,所以我们必须把电压稳定在3.3,只保留时域上的相位信号。由于本专栏主要讲解控制算法及软件设计的内容,硬件的滤波部分不做解释。

                

                在相位输出前方会引出一条网络PHASE_U输出三相电,这就是我们的功率输出

                

               

                需要注意的是,我们只是讲了一个相位的驱动电路硬件设计,而标准的BLDC三相驱动电路中,会有三个同样的电路。总共加起来,也就是我们上一节说的6个PWM输入,三个三相电输出。

二、电流采样电路 

                以下是一个保护电路,由于我们现在使用的总线电压较高,当采集电压过大时,这个部分可以有效保护我们的单片机不被烧毁。(自此记住一个规律,电压较大时注意单片机与外界的隔离和稳压

                                                     

                其他放大部分总结来说,放大公式为:

                                    U0 = 1.65 + 4.02*Ui

                对硬件感兴趣的同学可以自行推导,这里不做详细分析。

三、过流保护电路

                这里采用硬件自动过流保护,当采样电阻两端电压超出Vref 0.5时,SHUTDOWN会自动关闭光耦芯片,停止PWM信号的输入。

                

四、霍尔传感器接口

                

                

                JP端用于选择传感器工作电压,我们一般选5V

                上图中,上半部分用于六步控制,而下半部分是专门为PMSM的FOC控制设计的电路,这里暂且不做介绍。

http://www.dtcms.com/a/298928.html

相关文章:

  • 详解力扣高频SQL50题之619. 只出现一次的最大数字【简单】
  • 【ELasticsearch】节点角色分类与作用解析
  • SQL 通用数据类型
  • C# 判断语句深度解析
  • 详解力扣高频SQL50题之1084. 销售分析 III【简单】
  • 基于 Claude Code 与 BrowserCat MCP 的浏览器自动化全链路构建实践
  • OGG同步Oracle到Kafka不停库,全量加增量
  • 显式等待和隐式等待的区别
  • JavaScript 立即执行函数(IIFE)运行时行为分析笔记
  • 数控滑台的功能与应用
  • 生产环境使用云服务器(centOS)部署和使用MongoDB
  • MongoDB数据模型
  • Zookeeper的简单了解
  • 学习嵌入式的第三十三天-数据结构-(2025.7.25)服务器/多客户端模型
  • Typecho插件开发:自定义注册用户组与免审发布功能实现
  • OTG原理讲解
  • 非定长滑动窗口(持续更新)
  • 【GoLang#3】:数据结构(切片 | map 映射)
  • 新手向:Git下载全攻略
  • 用Java实现rpc的逻辑和流程图和核心技术与难点分析
  • 图论:Dijkstra算法
  • 【WPF】NumericUpDown的用法
  • 01 01 01 第一部分 C++编程知识 C++入门 第一个C++程序
  • Linux如何执行系统调用及高效执行系统调用:深入浅出的解析
  • HashMap(JDK1.7、JDK1.8)原理与结构分析与synchronizedMap()
  • Spring Boot SSE实战:SseEmitter实现多客户端事件广播与心跳保活
  • Spring Boot 实战:用 Apache Commons CSV 优雅解析 CSV 文件
  • x86汇编语言入门基础(三)汇编指令篇5 串操作
  • OpenCV学习探秘之一 :了解opencv技术及架构解析、数据结构与内存管理​等基础
  • 技术赋能与营销创新:开源链动2+1模式AI智能名片S2B2C商城小程序的流量转化路径研究