0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TB6612FNG双通道直流电机驱动芯片的应用电路和驱动方法

jf_33975660 来源:jf_33975660 作者:jf_33975660 2025-10-10 10:57 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

TB6612FNG是一款性能优于传统L298N的电机驱动芯片,具有效率高、外围电路简单、体积小等优点,非常适合在机器人、智能小车等项目中驱动两个直流电机或者一个步进电机

一、TB6612FNG 核心特性

双通道H桥驱动:可独立驱动两个直流电机或一个步进电机。

高输出电流:连续输出电流可达1.2A(单通道),峰值电流可达3.2A。

宽工作电压:电机驱动电压 VM 最高可达15V;逻辑电压 VCC 范围为2.7V~5.5V。

多种控制模式:支持正转、反转、刹车、停止四种模式。

低待机电流:内置关机电路,可进入低功耗待机模式。

PWM支持:支持高达100kHz的PWM频率,实现精确调速。

二、典型应用电路驱动图

下图是TB6612FNG驱动一个直流电机的典型应用电路。驱动两个电机只需将另一路的 AIN1/AIN2/PWMA 和 AO1/AO2 以同样方式连接即可。

电路元件说明:

电源部分

VM (电机电源):连接一个4.5V 至 15V的电源,用于驱动电机。必须在 VM 和 GND 之间靠近芯片的位置并联一个 100µF电解电容和一个 0.1µF 的瓷片电容,以进行电源去耦,吸收电机工作时产生的电流突变和噪声。

VCC (逻辑电源):连接一个2.7V 至 5.5V的电源,为芯片内部逻辑电路供电。通常直接连接到单片机(如Arduino, STM32)的 3.3V 或 5V 引脚。同样需要在 VCC 和 GND 之间并联一个 0.1µF 的瓷片电容。

控制信号输入

AIN1, AIN2 (A通道输入信号):这两个引脚接收来自单片机的数字信号(HIGH/LOW),用于控制电机的旋转方向

PWMA (A通道PWM输入):这个引脚接收来自单片机的PWM信号,用于控制电机的转速

STBY (待机引脚):当此引脚为高电平(HIGH) 时,芯片正常工作;当为低电平(LOW) 时,芯片进入待机(关机)模式,所有输出停止。通常直接连接到单片机的I/O口,方便控制电机启停。

电机输出

AO1, AO2 (A通道输出):这两个引脚直接连接到直流电机的两个电极。

GND:所有GND引脚(芯片底部还有一个大的散热焊盘)都必须可靠地连接到公共地

三、电机控制逻辑真值表

这是理解如何控制电机的核心。下表展示了 AIN1, AIN2, PWMA 和电机状态的关系。

STBY PWMA AIN1 AIN2 电机A状态 功能描述
0 X X X 停止 待机模式(关机)
1 0 X X 停止 强制停止
1 PWM 0 1 逆时针转动 方向1 + 调速
1 PWM 1 0 顺时针转动 方向2 + 调速
1 1 0 0 停止(浮空) 无效模式
1 1 1 1 刹车 电机快速停止

重要模式解释:

正转/反转:通过 AIN1 和 AIN2 的 0110 组合确定方向,PWMA 的占空比决定速度。

刹车:当 AIN1 和 AIN2 同为 1,且 PWMA=1 时,电机两个端子被短路,产生一个制动力矩,使电机快速停止。

停止:当 PWMA=0 时,无论 AIN1/AIN2 是什么,电机都会停止。

四、与微控制器(如Arduino)的连接示例

以Arduino Uno驱动两个直流电机为例:

TB6612FNG 引脚 Arduino 连接 说明
PWMA Digital Pin 5 (PWM) 控制电机A速度
AIN2 Digital Pin 4 控制电机A方向
AIN1 Digital Pin 3 控制电机A方向
PWMB Digital Pin 6 (PWM) 控制电机B速度
BIN2 Digital Pin 8 控制电机B方向
BIN1 Digital Pin 7 控制电机B方向
STBY Digital Pin 9 芯片使能,HIGH启用
GND GND 共地
VCC 5V 或 3.3V 逻辑电源
VM 外部7~12V电池正极 电机电源
GND 外部7~12V电池负极 电机电源地,与Arduino共地

五、示例代码(Arduino)

// 定义TB6612FNG控制引脚 int STBY = 9; // 使能引脚 // 电机A int PWMA = 5; // 速度控制 int AIN1 = 3; // 方向 int AIN2 = 4; // 方向 // 电机B int PWMB = 6; // 速度控制 int BIN1 = 7; // 方向 int BIN2 = 8; // 方向 void setup() { // 将所有控制引脚设置为输出 pinMode(STBY, OUTPUT); pinMode(PWMA, OUTPUT); pinMode(AIN1, OUTPUT); pinMode(AIN2, OUTPUT); pinMode(PWMB, OUTPUT); pinMode(BIN1, OUTPUT); pinMode(BIN2, OUTPUT); // 启动驱动器 digitalWrite(STBY, HIGH); } // 自定义电机控制函数 void motor(int n, int dir, int pwm) { // n: 电机编号,0为A,1为B // dir: 方向,1为正转,0为反转 // pwm: 速度,0-255 int in1, in2, pwmPin; if (n == 0) { in1 = AIN1; in2 = AIN2; pwmPin = PWMA; } else { in1 = BIN1; in2 = BIN2; pwmPin = PWMB; } if (dir == 1) { // 正转 digitalWrite(in1, HIGH); digitalWrite(in2, LOW); } else if (dir == 0) { // 反转 digitalWrite(in1, LOW); digitalWrite(in2, HIGH); } analogWrite(pwmPin, pwm); // 设置速度 } // 刹车函数 void brake(int n) { if (n == 0) { digitalWrite(AIN1, HIGH); digitalWrite(AIN2, HIGH); analogWrite(PWMA, 0); } else { digitalWrite(BIN1, HIGH); digitalWrite(BIN2, HIGH); analogWrite(PWMB, 0); } } void loop() { // 电机A以速度200正转,电机B以速度150反转 motor(0, 1, 200); motor(1, 0, 150); delay(2000); // 运行2秒 // 刹车 brake(0); brake(1); delay(500); // 停止0.5秒 // 电机A以速度150反转,电机B以速度200正转 motor(0, 0, 150); motor(1, 1, 200); delay(2000); // 运行2秒 // 进入待机模式(软关机) digitalWrite(STBY, LOW); delay(2000); // 待机2秒 digitalWrite(STBY, HIGH); // 重新启动 }

六、注意事项

务必共地:单片机的地、电机电源的地、TB6612FNG的GND必须连接在一起,否则控制逻辑会混乱。

电源去耦:VM 和 VCC 引脚附近的电容必须要接,且尽量靠近芯片引脚,否则系统会不稳定,甚至损坏芯片。

散热:TB6612FNG在驱动大电流电机时会发热,PCB设计时应将芯片底部的散热焊盘通过过孔连接到地平面,以帮助散热。

布线:电机的大电流路径(电池 -> TB6612 -> 电机)应使用较粗的导线。

希望这份详细的说明和电路图能帮助你成功应用TB6612FNG!

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    463

    文章

    54389

    浏览量

    469054
  • 应用电路
    +关注

    关注

    9

    文章

    467

    浏览量

    50861
  • 步进电机
    +关注

    关注

    153

    文章

    3271

    浏览量

    152738
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    为什么驱动直流电机跟振动直流电机对电源的干扰不一样,怎么解决。

    有大佬知道为什么驱动直流电机跟振动直流电机对 12 伏电源的干扰不一样吗,怎么解决
    发表于 03-31 13:53

    深入解析SGM42500:3.6A有刷直流电机驱动芯片的卓越之选

    深入解析SGM42500:3.6A有刷直流电机驱动芯片的卓越之选 在电子工程师的日常工作中,电机驱动芯片
    的头像 发表于 03-25 17:05 440次阅读

    三相无刷直流电机驱动芯片ACM6754产品介绍

    ACM6754/55 是一款三相无刷直流电机驱动芯片,内部集成无感三相无刷电机驱动算法、相电流检测电流电
    的头像 发表于 01-12 09:54 994次阅读

    DRV8872:高效多功能有刷直流电机驱动器的设计与应用

    DRV8872:高效多功能有刷直流电机驱动器的设计与应用 在电机驱动领域,有刷直流电机因其结构简单、控制方便等优点被广泛应用。而一款合适的
    的头像 发表于 01-09 11:25 642次阅读

    DRV8871:高性能有刷直流电机驱动芯片的深度解析

    DRV8871:高性能有刷直流电机驱动芯片的深度解析 在电子工程师的日常工作中,电机驱动芯片的选
    的头像 发表于 01-09 11:15 1090次阅读

    德州仪器DRV8231:高性能有刷直流电机驱动芯片的深度解析

    - A有刷直流电机驱动芯片,了解它的特性、应用场景以及设计要点。 文件下载: drv8231.pdf 芯片特性亮点 集成度与性能兼顾 DRV8231是一款集成了N沟道H桥、电荷泵、电
    的头像 发表于 01-07 17:45 611次阅读

    DRV8231A:高性能直流电机驱动芯片的设计与应用解析

    DRV8231A:高性能直流电机驱动芯片的设计与应用解析 一、引言 在电子工程师的日常工作中,电机驱动
    的头像 发表于 01-07 17:40 879次阅读

    DRV8234:高性能有刷直流电机驱动芯片的深度剖析

    DRV8234:高性能有刷直流电机驱动芯片的深度剖析 在电子工程师的日常工作中,电机驱动芯片的选
    的头像 发表于 01-07 10:45 456次阅读

    HR9110单通道H桥直流电机驱动芯片详解

    作为核心部件。HR9110作为专为直流电机方案设计的单通道H桥驱动芯片,凭借其精心设计的电路结构与优异的性能参数,成为了这类应用场景中的理
    的头像 发表于 11-05 17:07 885次阅读
    HR9110单<b class='flag-5'>通道</b>H桥<b class='flag-5'>直流电机</b><b class='flag-5'>驱动</b>器<b class='flag-5'>芯片</b>详解

    芯圣HC20MD118S单通道直流电机驱动芯片上市# #电机 #直流电机驱动

    直流电机
    上海芯圣电子股份有限公司
    发布于 :2025年09月05日 09:34:29

    有刷直流电机驱动芯片的功能和分类

    有刷直流电机凭借结构简单、控制方便等特点,在玩具、家电、汽车等众多领域得到广泛应用,而其驱动芯片是控制电机稳定、高效运行的核心部件。
    的头像 发表于 08-08 17:07 2221次阅读

    TB6612FNG原理数据手册

    电子发烧友网站提供《TB6612FNG原理数据手册.pdf》资料免费下载
    发表于 08-04 14:57 9次下载

    小型排爆机器人的直流电机驱动电路设计

    摘 要:根据小型排爆机器人在精确移动及可靠跨越障碍方面对电机驱动的特殊要求,提出一种基于BTS7970驱动芯片直流电机
    发表于 07-16 18:59

    无刷直流电机方波正弦波复合驱动器设计

    摘要:针对无刷直流电机方波驱动出力大,正弦波驱动转矩脉动和噪声小的特点,设计了基于霍耳传感器信号的无刷直流电机方波与正弦波复合驱动器。在不改
    发表于 06-27 16:39

    BDR6170T大功率直流电机驱动芯片中文手册

            BDR6170T 是一款大功率直流电机驱动芯片,用于驱动直流电机或步进电机的一个
    发表于 05-27 17:21 3次下载