“Motor Driver HAT”的版本间的差异

来自Waveshare Wiki
跳转至: 导航搜索
 
(未显示7个用户的38个中间版本)
第1行: 第1行:
 +
<div class="wiki-pages blue-color">
 +
<div class="tabberlive  newwsnav" id="wsnavbar">
 +
<ul class="tabbernav">
 +
<li class="nav-link">[[#myintro|说明]]</li>
 +
<li class="nav-link">[[#myresources|资料]]</li>
 +
<li class="nav-link">[[#myfaq|FAQ]]</li>
 +
<li class="nav-link">[[#mysupport|售后]]</li>
 +
</ul>
 +
</div>
 
<div class="tabber">
 
<div class="tabber">
<!--<div class="tabbertab" title="说明"></div>-->
 
<div class="tabbertab" title="资料">
 
 
{{扩展板|colorscheme=blue
 
{{扩展板|colorscheme=blue
 
|name = Motor Driver HAT
 
|name = Motor Driver HAT
|img = [[File:Motor-Driver-HAT-intro.jpg|360px |alt=Motor Driver HAT|link=http://{{SERVERNAME}}/shop/Motor-Driver-HAT.htm | Motor Driver HAT]]
+
|img = [[File:Motor-Driver-HAT-intro.jpg|360px |alt=Motor Driver HAT|link=https://{{SERVERNAME}}/shop/Motor-Driver-HAT.htm | Motor Driver HAT]]
 
|category1=树莓派
 
|category1=树莓派
 
|brand=Waveshare
 
|brand=Waveshare
第11行: 第18行:
 
|interface2 = I2C
 
|interface2 = I2C
 
}}
 
}}
 +
 +
<div class="tabbertab" title="说明" id="myintro">
 +
 +
<h1>说明</h1>
 +
 +
'''提供树莓派与Jetson nano控制程序
 +
=硬件说明=
 +
==特点==
 +
*基于树莓派接口设计,适用于Raspberry Pi Zero/Zero W/Zero WH/2B/3B/3B+
 +
*I2C接口控制,通过改变5个地址跳线可以同时接多达32个模块
 +
*板载PCA9685芯片,可输出12位硬件PWM控制电机转速
 +
*板载TB6612FNG双H桥电机驱动芯片,工作高效,不易发热
 +
*板载5V稳压芯片,输出可达3A电流,可通过VIN端子接入电池供电
 +
*预留I2C控制接口,方便接入其他主控板
 +
==实物==
 +
[[file:motor_Driver_hat_1.png|800px]]<br />
 +
{|border=1; style="width:700px;" align="center"
 +
|-style="background:#0000ff; color:white;" align="center"
 +
|标号||描述
 +
|-align="center"
 +
|5V||5V电源
 +
|-align="center"
 +
|3V3||3.3V电源
 +
|-align="center"
 +
|GND||电源地
 +
|-align="center"
 +
|SDA||I2C数据线
 +
|-align="center"
 +
|SCL||I2C时钟线
 +
|-align="center"
 +
|VIN||电机驱动电压(6-12V)
 +
|-align="center"
 +
|A1||电机A正极
 +
|-align="center"
 +
|A2||电机A负极
 +
|-align="center"
 +
|B1||电机B正极
 +
|-align="center"
 +
|B2||电机B负极
 +
|}
 +
 +
==资源介绍==
 +
===电源===
 +
[[file:motor_Driver_hat_power.png|900px]]<br />
 +
输入端采用MP1584稳压芯片,该芯片支持4.5V到28V的宽电压输入,输出电流达3A。虽然芯片支持最高28V的输入,但是由于给电机的工作电压也由VIN_USER供给,实际上输入电压最好保持在6-12V.<br />
 +
MP1584稳压芯片输出5V,这个5V用于给树莓派供电,然后5V再通过RT9193-33转成3.3V电平,该电平给PWM、电机驱动这两部分提供逻辑电压<br />
 +
 +
===PWM===
 +
由于树莓派硬件PWM只有一个引脚GPIO.1,而且,虽然wiringPi库与python都有软件PWM,但是会占用部分CPU资源,因此本模块采用PCA9685芯片,该芯片使用I2C控制,可输出16路12位分辨率的PWM,可控制输出频率40HZ-1000HZ。<br />
 +
操作简单,只需要给芯片控制对应寄存器的值,即可一直输出PWM信号。<br />
 +
[[file:motor_Driver_hat_PCA9685.png|900px]]<br />
 +
根据上面的原理图,我们可以看出LED0-LED5为控制电机驱动芯片管脚。<br />
 +
A0-A4是控制PCA9685的从设备地址;<br />
 +
查看[https://{{SERVERNAME}}/w/upload/6/68/PCA96_datasheet.pdf 数据手册page6 – page8]可知:<br />
 +
[[file:motor_Driver_hat_i2caddr.png|900px]]<br />
 +
I2C从设备地址有7位,加上1位读写位,最高位固定为1,A5-A0可以通过硬件引脚配置。<br />
 +
在此模块中,默认A5接至地,可通过焊接或移除A0-A4电阻,来控制设备地址,焊接电阻为位1,不焊接为位0,I2C设备地址设置范围为:0x40到0x5F<br />
 +
[[file:motor_Driver_hat_i2caddr2.png|900px]]<br />
 +
 +
===电机驱动===
 +
[[file:motor_Driver_hat_TB6612FNG.png|900px]]<br />
 +
TB6612FNG是一款双H桥电机驱动芯片,工作高效,不易发热。<br />
 +
VIN_USER为输入电压,理论上该电压越大电机的转速也越快,建议输入控制在6-12V。<br />
 +
其中PWMA与PWMB为控制两个电机的转速,AIN1与AIN2、BIN1与BIN2分别控制两个电机的旋转方向。<br />
 +
A1与A2、B1与B2分别接两个电机的正负极。<br />
 +
 +
=树莓派=
 +
{{RPI_open_i2c}}
 +
==安装库==
 +
*安装BCM2835, 打开树莓派终端,并运行以下指令
 +
<pre>
 +
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.70.tar.gz
 +
tar zxvf bcm2835-1.70.tar.gz
 +
cd bcm2835-1.70/
 +
sudo ./configure
 +
sudo make && sudo make check && sudo make install
 +
# 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/
 +
</pre>
 +
 +
*安装wiringPi
 +
<pre>
 +
sudo apt-get install wiringpi
 +
#对于树莓派2019年5月之后的系统(早于之前的可不用执行),可能需要进行升级:
 +
wget https://project-downloads.drogon.net/wiringpi-latest.deb
 +
sudo dpkg -i wiringpi-latest.deb
 +
gpio -v
 +
# 运行gpio -v会出现2.52版本,如果没有出现说明安装出错
 +
</pre>
 +
<!--{{RPI_C_lib}}-->
 +
*安装python2
 +
<pre>
 +
sudo apt-get updata
 +
sudo apt-get install python-pip
 +
sudo pip install RPi.GPIO
 +
sudo apt-get install python-smbus
 +
</pre>
 +
*安装python3
 +
<pre>
 +
sudo apt-get update
 +
sudo apt-get install python3-pip
 +
sudo pip3 install RPi.GPIO
 +
sudo apt-get install python3-serial
 +
</pre>
 +
 +
==下载示例程序,并解压到指定目录==
 +
<pre>
 +
sudo apt-get install p7zip
 +
wget http://www.waveshare.net/w/upload/9/9a/Motor_Driver_HAT_Code.7z
 +
7zr x Motor_Driver_HAT_Code.7z -r -o./Motor_Driver_HAT_Code
 +
sudo chmod 777 -R Motor_Driver_HAT_Code
 +
cd Motor_Driver_HAT_Code/Raspberry\ Pi/
 +
</pre>
 +
 +
==运行测试例程==
 +
*c
 +
<pre>
 +
cd c/
 +
make clean
 +
make
 +
sudo ./main
 +
</pre>
 +
 +
*python
 +
<pre>
 +
cd python/
 +
sudo python3 main.py
 +
</pre>
 +
=旭日X3派=
 +
=== 安装库文件 ===
 +
<pre>
 +
sudo apt update
 +
sudo pip3 install python3-smbus
 +
</pre>
 +
===下载示例程序,并解压到指定目录===
 +
<pre>
 +
sudo apt-get install p7zip
 +
wget http://www.waveshare.net/w/upload/9/9a/Motor_Driver_HAT_Code.7z
 +
7zr x Motor_Driver_HAT_Code.7z -r -o./Motor_Driver_HAT_Code
 +
sudo chmod 777 -R Motor_Driver_HAT_Code
 +
cd Motor_Driver_HAT_Code/Sunrise_X3/python/
 +
</pre>
 +
===运行demo===
 +
<pre>
 +
sudo python3 main.py
 +
</pre>
 +
 +
=VisionFive2=
 +
=== 安装库文件 ===
 +
apt-get install pip
 +
pip install VisionFive.gpio
 +
apt-get install python3-smbus
 +
===下载示例程序,并解压到指定目录===
 +
apt-get install p7zip-full
 +
wget http://www.waveshare.net/w/upload/9/9a/Motor_Driver_HAT_Code.7z
 +
7zr x Motor_Driver_HAT_Code.7z -r -o./Motor_Driver_HAT_Code
 +
cd Motor_Driver_HAT_Code/VisionFive2/python/
 +
===运行demo===
 +
python3 main.py
 +
 +
 +
=Jetson Nano=
 +
==安装库==
 +
{{JetsonNano python lib}}
 +
 +
==下载示例程序,并解压到指定目录==
 +
<pre>
 +
sudo apt-get install p7zip
 +
wget http://www.waveshare.net/w/upload/9/9a/Motor_Driver_HAT_Code.7z
 +
7zr x Motor_Driver_HAT_Code.7z -r -o./Motor_Driver_HAT_Code
 +
sudo chmod 777 -R Motor_Driver_HAT_Code
 +
cd Motor_Driver_HAT_Code/Jetson\ Nano/
 +
</pre>
 +
 +
==运行测试例程==
 +
*python2
 +
<pre>
 +
cd python2/
 +
sudo python main.py
 +
</pre>
 +
 +
*python3
 +
<pre>
 +
cd python3/
 +
sudo python3 main.py
 +
</pre>
 +
 +
</div>
 +
 +
<div class="tabbertab" title="资料" id="myresources">
 +
 +
<h1>资料</h1>
 +
 
===文档===
 
===文档===
*[http://www.waveshare.net/w/upload/c/c7/Motor_Driver_HAT_user_manual_CN.pdf 用户手册]
+
*[https://{{SERVERNAME}}/w/upload/a/ab/Motor_Driver_HAT_Schematic.pdf 原理图]
*[http://www.waveshare.net/w/upload/a/ab/Motor_Driver_HAT_Schematic.pdf 原理图]
 
  
 
===程序===
 
===程序===
*[http://www.waveshare.net/w/upload/9/9a/Motor_Driver_HAT_Code.7z 示例程序]
+
*[https://{{SERVERNAME}}/w/upload/9/9a/Motor_Driver_HAT_Code.7z 示例程序]
  
 
===数据手册===
 
===数据手册===
*[http://{{SERVERNAME}}/w/upload/6/68/PCA96_datasheet.pdf PCA9685]
+
*[https://{{SERVERNAME}}/w/upload/6/68/PCA96_datasheet.pdf PCA9685]
*[http://{{SERVERNAME}}/w/upload/d/d3/MP1584.pdf MP1584]
+
*[https://{{SERVERNAME}}/w/upload/d/d3/MP1584.pdf MP1584]
*[http://{{SERVERNAME}}/w/upload/f/f6/RT9193.pdf RT9193]
+
*[https://{{SERVERNAME}}/w/upload/f/f6/RT9193.pdf RT9193]
*[http://{{SERVERNAME}}/w/upload/3/36/TB6612FNG_datasheet_zh_cn.pdf TB6612FNG-CN]
+
*[https://{{SERVERNAME}}/w/upload/3/36/TB6612FNG_datasheet_zh_cn.pdf TB6612FNG-CN]
*[http://{{SERVERNAME}}/w/upload/6/62/TB6612FNG_datasheet_en.pdf TB6612FNG-EN]
+
*[https://{{SERVERNAME}}/w/upload/6/62/TB6612FNG_datasheet_en.pdf TB6612FNG-EN]
<br /><big>批量下载教程——请戳<big><big><big></big></big></big></big>[[File:download-icon.png|link=批量下载教程]]
+
 
 +
 
 +
 
 +
</div>
 +
<div class="tabbertab" title="FAQ" id="myfaq">
 +
 
 +
<h1>FAQ</h1>
 +
<br /></div>
 +
<div class="tabbertab" title="售后" id="mysupport">
 +
 
 +
<h1>技术支持</h1>
 +
<br />{{Service18}}</div>
 
</div>
 
</div>
<div class="tabbertab" title="FAQ"><br /></div>
 
<div class="tabbertab" title="售后"><br />{{Service08}}</div>
 

2023年3月9日 (四) 17:50的最新版本

Motor Driver HAT
Motor Driver HAT
{{{name2}}}
{{{name3}}}
板载接口
RPi I2C

说明

提供树莓派与Jetson nano控制程序

硬件说明

特点

  • 基于树莓派接口设计,适用于Raspberry Pi Zero/Zero W/Zero WH/2B/3B/3B+
  • I2C接口控制,通过改变5个地址跳线可以同时接多达32个模块
  • 板载PCA9685芯片,可输出12位硬件PWM控制电机转速
  • 板载TB6612FNG双H桥电机驱动芯片,工作高效,不易发热
  • 板载5V稳压芯片,输出可达3A电流,可通过VIN端子接入电池供电
  • 预留I2C控制接口,方便接入其他主控板

实物

Motor Driver hat 1.png

标号 描述
5V 5V电源
3V3 3.3V电源
GND 电源地
SDA I2C数据线
SCL I2C时钟线
VIN 电机驱动电压(6-12V)
A1 电机A正极
A2 电机A负极
B1 电机B正极
B2 电机B负极

资源介绍

电源

Motor Driver hat power.png
输入端采用MP1584稳压芯片,该芯片支持4.5V到28V的宽电压输入,输出电流达3A。虽然芯片支持最高28V的输入,但是由于给电机的工作电压也由VIN_USER供给,实际上输入电压最好保持在6-12V.
MP1584稳压芯片输出5V,这个5V用于给树莓派供电,然后5V再通过RT9193-33转成3.3V电平,该电平给PWM、电机驱动这两部分提供逻辑电压

PWM

由于树莓派硬件PWM只有一个引脚GPIO.1,而且,虽然wiringPi库与python都有软件PWM,但是会占用部分CPU资源,因此本模块采用PCA9685芯片,该芯片使用I2C控制,可输出16路12位分辨率的PWM,可控制输出频率40HZ-1000HZ。
操作简单,只需要给芯片控制对应寄存器的值,即可一直输出PWM信号。
Motor Driver hat PCA9685.png
根据上面的原理图,我们可以看出LED0-LED5为控制电机驱动芯片管脚。
A0-A4是控制PCA9685的从设备地址;
查看数据手册page6 – page8可知:
Motor Driver hat i2caddr.png
I2C从设备地址有7位,加上1位读写位,最高位固定为1,A5-A0可以通过硬件引脚配置。
在此模块中,默认A5接至地,可通过焊接或移除A0-A4电阻,来控制设备地址,焊接电阻为位1,不焊接为位0,I2C设备地址设置范围为:0x40到0x5F
Motor Driver hat i2caddr2.png

电机驱动

Motor Driver hat TB6612FNG.png
TB6612FNG是一款双H桥电机驱动芯片,工作高效,不易发热。
VIN_USER为输入电压,理论上该电压越大电机的转速也越快,建议输入控制在6-12V。
其中PWMA与PWMB为控制两个电机的转速,AIN1与AIN2、BIN1与BIN2分别控制两个电机的旋转方向。
A1与A2、B1与B2分别接两个电机的正负极。

树莓派

开启I2C接口

  • 打开树莓派终端,输入以下指令进入配置界面
sudo raspi-config 
选择 Interfacing Options -> I2C ->yes 启动 i2C 内核驱动

RPI open i2c.png
然后重启树莓派:

sudo reboot

安装库

  • 安装BCM2835, 打开树莓派终端,并运行以下指令
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.70.tar.gz
tar zxvf bcm2835-1.70.tar.gz 
cd bcm2835-1.70/
sudo ./configure
sudo make && sudo make check && sudo make install
# 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/
  • 安装wiringPi
sudo apt-get install wiringpi
#对于树莓派2019年5月之后的系统(早于之前的可不用执行),可能需要进行升级:
wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb
gpio -v
# 运行gpio -v会出现2.52版本,如果没有出现说明安装出错
  • 安装python2
sudo apt-get updata
sudo apt-get install python-pip 
sudo pip install RPi.GPIO
sudo apt-get install python-smbus
  • 安装python3
sudo apt-get update
sudo apt-get install python3-pip
sudo pip3 install RPi.GPIO
sudo apt-get install python3-serial

下载示例程序,并解压到指定目录

sudo apt-get install p7zip
wget http://www.waveshare.net/w/upload/9/9a/Motor_Driver_HAT_Code.7z
7zr x Motor_Driver_HAT_Code.7z -r -o./Motor_Driver_HAT_Code
sudo chmod 777 -R Motor_Driver_HAT_Code
cd Motor_Driver_HAT_Code/Raspberry\ Pi/

运行测试例程

  • c
cd c/
make clean 
make
sudo ./main
  • python
cd python/
sudo python3 main.py

旭日X3派

安装库文件

sudo apt update
sudo pip3 install python3-smbus

下载示例程序,并解压到指定目录

sudo apt-get install p7zip
wget http://www.waveshare.net/w/upload/9/9a/Motor_Driver_HAT_Code.7z
7zr x Motor_Driver_HAT_Code.7z -r -o./Motor_Driver_HAT_Code
sudo chmod 777 -R Motor_Driver_HAT_Code
cd Motor_Driver_HAT_Code/Sunrise_X3/python/

运行demo

sudo python3 main.py

VisionFive2

安装库文件

apt-get install pip
pip install VisionFive.gpio
apt-get install python3-smbus

下载示例程序,并解压到指定目录

apt-get install p7zip-full
wget http://www.waveshare.net/w/upload/9/9a/Motor_Driver_HAT_Code.7z
7zr x Motor_Driver_HAT_Code.7z -r -o./Motor_Driver_HAT_Code
cd Motor_Driver_HAT_Code/VisionFive2/python/

运行demo

python3 main.py


Jetson Nano

安装库

安装函数库

  • 打开终端界面,输入以下指令安装相应的函数库
sudo apt-get update
sudo apt-get install python3-pip
sudo pip3 install Jetson.GPIO
sudo groupadd -f -r gpio
sudo usermod -a -G gpio your_user_name
sudo cp /opt/nvidia/jetson-gpio/etc/99-gpio.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger

【注意】your_user_name 是你使用的用户名,比如说 waveshare

  • 安装I2C
sudo apt-get install python-smbus
  • 安装图像处理库:
sudo apt-get install python3-pil
sudo apt-get install python3-numpy

下载示例程序,并解压到指定目录

sudo apt-get install p7zip
wget http://www.waveshare.net/w/upload/9/9a/Motor_Driver_HAT_Code.7z
7zr x Motor_Driver_HAT_Code.7z -r -o./Motor_Driver_HAT_Code
sudo chmod 777 -R Motor_Driver_HAT_Code
cd Motor_Driver_HAT_Code/Jetson\ Nano/

运行测试例程

  • python2
cd python2/
sudo python main.py
  • python3
cd python3/
sudo python3 main.py

FAQ


技术支持


联系人:黄工
EMAIL:3005423122@qq.com
电话:0755-83040712
QQ:3005763927
微信:扫下方二维码添加
Hkx-wx.jpg

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证