电子发烧友App

硬声App

创作

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

3天内不再提示
电子发烧友网>电子资料下载>电子资料>TB6612FNG 电机驱动器开源分享

TB6612FNG 电机驱动器开源分享

2022-07-01 | zip | 0.03 MB | 次下载 | 免费

资料介绍

pYYBAGKxpeCAeLCZAAVALDQPXfE753.png



组件

TB6612FNG(O,C,8,EL
× 1
227CKS035M
伊利诺伊电容器
× 1
741C083510JP
CTS电阻器产品
× 1
Y1624350R000T9R
Vishay电阻器(Vishay Precision Group 的部门)
× 1
标头男
 
× 1

描述

TB6612FNG 电机驱动

 

TB6612FNG电机驱动器可以以 1.2A(峰值 3.2A)的恒定电流控制多达两个直流电机。两个输入信号(IN1 和 IN2)可用于以四种功能模式之一控制电机:CW、CCW、短制动和停止。两个电机输出(A 和 B)可以单独控制,每个电机的速度通过频率高达 100kHz 的 PWM 输入信号控制。应将 STBY 引脚拉高以使电机脱离待机模式。

 

poYBAGKxpfWASQwpAACHxc87BN8249.jpg

 

逻辑电源电压 (VCC) 可以在 2.7--5.5VDC 的范围内,而电机电源 (VM) 的最大电压限制为 15VDC。每个通道的额定输出电流高达 1.2A(或短单脉冲高达 3.2A)。

如图所示,这个小板安装了所有组件。两条电源线上都包含去耦电容TB6612FNG 的所有引脚都被分成两个 0.1" 间距接头;这些引脚的排列方式是输入引脚在一侧,输出引脚在另一侧。

 

pYYBAGKxpfiAdEozAABbCpRHbF8468.png

 

TB6612电机驱动模块采用TB6612FNG作为驱动芯片,具有大电流(1.2A连续电流),双通道输出,MOSFET-H桥结构,可驱动两台电机。电机电压和模块的工作电压是分开的——模块的 VCC:2.7 V 到 5.5 V,电机的 VM:15V(最大值)。但电机的最佳工作电压为2.5V-13.5V,低于2.5V时无法工作。

容易控制,通过设置MA和MB的高低电平可以控制两个舵机的正反转,PWMA和PWMB是控制电机转速的;因此,只有 4 个 I/O 引脚会被占用。电机连接和信号输入的防反接端口插接牢固方便。通过芯片内部的低压检测和热关断来保护电路,您无需担心破坏您的项目或损坏主控板。

特征

 

poYBAGKxpfqAFAkyAACueJQ48Xw673.jpg

 

> 采用TB6612FNG电机驱动芯片,最大输出电流1.2A。

> 接线牢固方便,电机连接和信号输入均带有防反接端口。

> 简单控制:同时控制两台电机 - MA 和 MB 控制电机方向,PWMA 和 PWMB 控制转速。

> 双电源。模块的 VCC:2.7-5.5 V,电机的 VM:15V(最大)。

> 小巧轻便,带3mm安装孔,适用于智能汽车。

> 内置热关断电路和低电压检测。

> 尺寸:42 x 32 毫米

实验测试

我用 Arduino 驱动 2 个电机

驱动 2 个电机加速和减速。

成分

-1 x TB6612 电机驱动器

-1 x Arduino Uno

-1 x 电机

-1 x 18650 电池座

-2 x 18650 锂电池

- 几根跳线

步骤 1. 安装库

打开 Arduino 软件,选择 Sketch -> Include Library -> Add .ZIP Library。

 

pYYBAGKxpfyAJjz6AABrIuxJvyg459.png

 

选择下载的zip文件并打开。SunFounder_TB6612.zip

 

 

 

步骤 2. 打开示例

打开 File -> Examples -> Sunfounder TB6612 Motor Driver -> motor,然后上传这个例子

 

poYBAGKxpf6AKty6AAB9FPD93So771.jpg

 

步骤 3. 接线

将独立电源连接到模块,如下图所示:

独立电源TB6612电机驱动VCCVMGNDGND

将 Arduino UNO 连接到模块:

Arduino UNOTB6612电机驱动器5VVCCGNDGND5MA6PWMA9MB10PWMB

将电机连接到模块:

电机TB6612电机驱动器黑线A1红线A2黑线B1红线B2

以下是接线的样子:

 

pYYBAGKxpgGAHtckAABwqiGnPvs844.png

 

示例上传后,电机会加速旋转并正向减速,然后反向重复。

您可以打开串行监视器查看输出 PWM 值的变化 - 从小到大,然后从大到小。

电机转速与PWM值呈正相关。

 

 

II 用 Raspberry pi 控制 2 个电机

步骤 1. 接线

由于电机会消耗大量功率,因此您需要为该模块提供独立的电源,以确保伺服有充足的供电。

将独立电源连接到模块,如下图所示:

独立电源TB6612电机驱动VCCVMGNDGND

树莓派连接到模块:

树莓派TB6612电机驱动3.3VVCCGNDGNDGPIO17MAGPIO27PWMAGPIO18MBGPIO22PWMB

将电机连接到模块:

电机TB6612电机驱动器黑线A1红线A2黑线B1红线B2

 

树莓派的引脚:

 

poYBAGKxpgOAQJUpAAEFu_e6y08313.png

 

将伺服连接到模块:

电机TB6612电机驱动器黑线A1红线A2黑线B1红线B2

步骤 2. 建立您的项目:

通过 ssh 登录树莓派,从 Github 复制 TB6612 仓库:

git 克隆 https://github.com/sunfounder/SunFounder_TB6612.git

复制后,您将获得 TB6612 的 Python 包。将其导入Python程序中,即可使用。

这是一个简单的例子:

1.创建一个新文件:

mkdir test_TB6612/

2. 将包复制到文件中:

cd test_TB6612

cp –r /home/pi/SunFounder_TB6612 ./

3.创建代码文件

触摸 test_motor.py

这里你的程序的文件结构是这样的:

测试_TB6612/

 

pYYBAGKxpgWAHN13AAB0I9SaGZs252.png

 

有了这个结构,就可以成功导入 Python 文件了。

接下来,让我们看看如何控制电机。

步骤 3. 驱动电机的代码

纳米 test_motor.py

输入以下代码:

#!/usr/bin/env python

进口时间

从 SunFounder_TB6612 导入 TB6612

导入 RPi.GPIO 作为 GPIO

 

定义主():

进口时间

 

打印 ”********************************************”

打印 ”* *”

print "* SunFounder TB6612 *"

打印 ”* *”

print "* 将 MA 连接到 BCM17 *"

print "* 将 MB 连接到 BCM18 *"

print "* 将 PWMA 连接到 BCM27 *"

print "* 将 PWMB 连接到 BCM22 *"

打印 ”* *”

打印 ”********************************************”

GPIO.setmode(GPIO.BCM)

GPIO.setup((27, 22), GPIO.OUT)

a = GPIO.PWM(27, 60)

b = GPIO.PWM(22, 60)

一开始(0)

b.开始(0)

 

def a_speed(值):

a.ChangeDutyCycle(值)

 

def b_speed(值):

b.ChangeDutyCycle(值)

 

电机A = TB6612.电机(17)

电机B = TB6612.电机(18)

motorA.debug = True

motorB.debug = True

motorA.pwm = a_speed

motorB.pwm = b_speed

 

延迟 = 0.05

 

电机A.forward()

对于范围内的 i (0, 101):

电机A.速度=我

TIme.sleep(延迟)

对于范围内的 i (100, -1, -1):

电机A.速度=我

TIme.sleep(延迟)

 

motorA.backward()

对于范围内的 i (0, 101):

电机A.速度=我

TIme.sleep(延迟)

对于范围内的 i (100, -1, -1):

电机A.速度=我

TIme.sleep(延迟)

 

motorB.forward()

对于范围内的 i (0, 101):

电机B.速度=我

time.sleep(延迟)

对于范围内的 i (100, -1, -1):

电机B.速度=我

time.sleep(延迟)

 

motorB.backward()

对于范围内的 i (0, 101):

电机B.速度=我

time.sleep(延迟)

对于范围内的 i (100, -1, -1):

电机B.速度=我

time.sleep(延迟)

 

poYBAGKxpgiAE3iQAADSLChDlvs059.png

 

定义销毁():

电机A.stop()

马达B.stop()

 

如果 __name__ == '__main__':

尝试:

主要的()

除了键盘中断:

破坏()

 

按 Ctrl+X 退出,会提示保存更改,输入 Y(保存)或 N(未保存),然后按 Enter 键退出。

输入命令以运行示例:

 

python test_motor.py

 

我们仍然会看到电机加速旋转并正向减速,然后反向重复,如前所示。

附件

数据表

SunFounder_TB6612.zip

 

 

 

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1C语言经典设计第四版
  2. 18.71 MB  |  6次下载  |  2 积分
  3. 2LM2575开关电源案例设计
  4. 0.01 MB  |  4次下载  |  免费
  5. 31000瓦正弦波逆变器原理实图
  6. 4.15 MB  |  3次下载  |  免费
  7. 4带555定时器的RGB LED亮度控制器
  8. 0.05 MB  |  3次下载  |  免费
  9. 5暴力破解压缩包密码
  10. 0.29 MB  |  3次下载  |  1 积分
  11. 6TP4056原理图pdf
  12. 0.08 MB  |  2次下载  |  免费
  13. 7有源直流恒流电子负载
  14. 0.01 MB  |  2次下载  |  免费
  15. 8智能BMS V2开源设计
  16. 0.00 MB  |  1次下载  |  免费

本月

  1. 160KW充电桩电路图
  2. 2.68 MB  |  29次下载  |  2 积分
  3. 2天线的基础知识下载
  4. 11.61 MB  |  20次下载  |  免费
  5. 3labview精美控件合集
  6. 2.03 MB  |  18次下载  |  4 积分
  7. 4我的第一个PCB机器人DIY套件
  8. 0.09 MB  |  17次下载  |  免费
  9. 518650 3.7V电压升压至12v经过恒流源驱动LED原理图
  10. 0.05 MB  |  16次下载  |  免费
  11. 6联想笔记本主板电路图
  12. 14.71 MB  |  15次下载  |  免费
  13. 7ip6806无线充电原理图
  14. 0.06 MB  |  13次下载  |  免费
  15. 8高功率步进电机控制驱动芯片TMC5160中文手册
  16. 10.12 MB  |  10次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  934944次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537613次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 1331200  |  419933次下载  |  免费
  7. 4OrCAD10.5下载,OrCAD10.5中文版软件
  8. 817182  |  234014次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  232928次下载  |  免费
  11. 6数据采集系统基础知识视频
  12. 16.3 MB  |  192989次下载  |  免费
  13. 7电路仿真软件multisim 10.0免费下载
  14. 340992  |  191011次下载  |  免费
  15. 8十天学会AVR单片机与C语言视频教程 下载
  16. 158M  |  183143次下载  |  免费
版权所有 © 深圳华秋电子有限公司 电子发烧友电路图粤公网安备 44030402000349号 电信与信息服务业务经营许可证:粤B2-20160233 工商网监认证工商网监 粤ICP备14022951号