直流电机驱动开发笔记

直流电机总体来说应用非常广泛,最近项目需要直流电机,本想着应该是很简单的事情,结果也搞了好久,今天算是可以阶段性总结下。也不知道怎么总结好。就拿碰到问题记录下。前提:本人一直是软件开发,对这个之前虽然有接触,但都是有硬件同事一起搞的,,不像这次差不多都是一个人搞的。

  1. 直流电机驱动类型

接触有两种方式:一种是驱动芯片,这种一般封装好,都很小或相对很小,这种内部集成了H桥,可支持步进电机也可以直流电机,例如L298N之类的,但他们一般驱动能力有限,小电机问题不大,稍微大一点比如100w以上的电机,就会有问题。

还有一种是用MOS搭建的,有简单的,有复杂的,相对来说,可驱动比较大一点电机,一般100w以上没有问题。

以上两种的基本逻辑:通过MCU输入PWM,来控制电机转动速度;通过拉高或拉低IN脚来控制(一般有两个IN脚)正转、反转、刹车、悬空操作。(这里对MCU侧调试有非常大的帮助)

大致都长的差不多,这款是我在网上选的,做工还不错,控制速度比较丝滑,可推荐。

应该还有第三种,比如直接用直流电驱动电机,串联不同电阻(这样可提供不同速度档位),这种简单,一般几块钱搞定,猜想一般电风扇都是这样吧。也不需要PWM控制,也不需要MCU。

我这边碰到问题:

  1. 最开始用驱动芯片,芯片电流最大1.2A,但死活驱动不起来,后来接了电阻、电容,可以驱动起来,但速度很难控制(几乎不可控)

死活驱动不起来的原因:(折腾了好久才知道)

文字:电机在启动的时候,瞬间电流会比较大(后面实测应该到5A左右了),这样的电流驱动芯片内部(芯片支持1.2A)限制了,会进行反向切换操作。这样电机就启动不了。

如果从示波器看电流就很简单了(当然前提会看,要有对应的设备)

测量电流的核心设备:

为什么串联电阻、电感就好了呢?电感就是防止电流瞬间过大,电阻会把整个电路里电流降下来,因此就达不到最大限流,所以可以启动,启动之后一般空载的情况电流都不会很大。

MARK知识点:电机在启动瞬间会有比较大的电流,这个大电流可能会导致芯片触发限流,如果是仅仅限流到还好(起来过程稍微慢点),如果是反向限流就不行了,这样电机可能永远起不来。

  1. 简单驱动器

先是买的简单的驱动器,十几块钱,某宝买的。用电位器调节速度

实测速度依然不可控,效果一般。

人家是通过不停开关开关电流,实现限流 调速目的

3.稍贵点驱动器

几十块,的确好很多。这次用PWM发生器,的确可以比较丝滑的调速

MARK知识点:驱动器还是有讲究的,好的驱动器考虑了刹车、堵转、限位情况,且对电流控制也比较好。

几个关键:最大电流,要符合电机特性,不然起不来

堵转时的电流,也要测测,这个会不会超过最大电流

电机限位:当然这个可以通过其他电路去解决

当然以上图要回自己动手接,这个地方要注意点,其中IN1 IN2是要给+5V信号(对MCU要拉高)

他的5VO是5V输出,因此可以直接连到IN1或IN2(拉高)。

看看另外一款,双路的:

这个是两路电机,这个IN1、IN2是接地有效(默认拉高),此时电源是要外部输入5V的!!!不是5VO

4 示波器要会用

示波器很好用,也非常有用。用的时候,要注意接地

可以点测,也可以一直测。

示波器场景

还有个CH1 CH2 CH3 CH4,这个按一下(如果多个探头信号一起显示),就显示这个通道的信息

下面会高亮

如果再按下,是不显示该通道,再按下显示该通道

关于边沿触发(看PWM时比较好)的操作:

  • 选择该通道
  • 点击 Menu
  • 右侧会变成 触发类型,选择 边沿触发,此时方波就稳定显示在屏幕中,如下图
相关推荐
名字不要太长 像我这样就好几秒前
【iOS】OC源码阅读——alloc源码分析
笔记·学习·macos·ios·objective-c
xin007hoyo1 小时前
算法笔记.染色法判断二分图
数据结构·笔记·算法
bloxd yzh1 小时前
简易版2D我的世界C++程序(有点BUG,但是可以玩!!!)
stm32·单片机·嵌入式硬件
大学生亨亨2 小时前
go语言八股文(五)
开发语言·笔记·golang
yt948324 小时前
STM32裸机编程架构与思路
单片机·嵌入式硬件
无敌小茶4 小时前
Linux学习笔记之动静态库
linux·笔记
DXM05215 小时前
牟乃夏《ArcGIS Engine地理信息系统开发教程》学习笔记3-地图基本操作与实战案例
开发语言·笔记·学习·arcgis·c#·ae·arcgis engine
程序员JerrySUN5 小时前
驱动开发硬核特训 · Day 21(上篇) 抽象理解 Linux 子系统:内核工程师的视角
java·linux·驱动开发
Humbunklung6 小时前
PySide6 GUI 学习笔记——常用类及控件使用方法(常用类矩阵QRectF)
笔记·python·学习·pyqt
kuinnebula7 小时前
Linux GPIO驱动开发实战:Poll与异步通知双机制详解
驱动开发