NanoHat Motor

From FriendlyELEC WiKi
Revision as of 10:15, 20 April 2017 by Yftan (Talk | contribs) (Hardware Setup)

Jump to: navigation, search

查看中文

1 Introduction

NanoHat Motor
  • The NanoHat Motor is a motor module with I2C. It uses NXP’s PCA9685 and Toshiba’s TB6612FNG.
  • A single module can drive four 5V PWM steering motors and four 12V DC motors or four 5V PWM steering motors and two 12V four-wire step motors. You can drive more motors by stacking multiple modules with different I2C addresses together.
  • It uses TI's TPS54331 device to provide stable power source.
  • An onboard 32K EEPROM AT24C32D can save user data,
  • The NanoHat Motor has the same form factor as the NanoPi NEO and can be stacked on a NanoPi NEO.

2 Hardware Spec

  • Input Voltage: 12V
  • Capable of driving four 5V PWM steering motors
  • Capable of driving four 12V DC motors
  • Capable of driving two 12V four-wire step motors
  • Onboard 32K EEPROM
  • Stackable and Configurable I2C address

NanoHat Motor-PCB

2.1 Diagram, Layout and Dimension

NanoHat Motor Layout
NanoHat Motor
  • 24-Pin Pin Description
Pin# Name Pin# Name
1 SYS_3.3V 2 VDD_5V OUT
3 I2C_SDA 4 VDD_5V OUT
5 I2C_SCL 6 GND
7 NC 8 NC
9 GND 10 NC
11 NC 12 NC
13 NC 14 GND
15 NC 16 NC
17 SYS_3.3V 18 NC
19 NC 20 GND
21 NC 22 NC
23 NC 24 NC

None of the pins except 5V and GND in the 12-Pin connector is connected.
NanoPi NEO NanoPi NEO Air

  • 2-Pin Connector Pin Description
Pin# Name Description
1 12V 12V Input
2 GND Ground
  • 4Pin PWM Steering Motor Connector Pin Description
Pin# Name Description
1 PWM* PWM * Output
2 NC Not Connected
3 5V 5V Output
4 GND Ground
  • Motor Connector Pin Description
Name Description
M1 DC Motor #1 output/Step Motor #1 (Wire 1 & 2) output
M2 DC Motor #2 output/Step Motor #1 (Wire 3 & 4) output
M3 DC Motor #3 output/Step Motor #2 (Wire 1 & 2) output
M4 DC Motor #4 output/Step Motor #2 (Wire 3 & 4) output

3 Hardware Setup

3.1 Connect NanoHat Motor to NanoPi NEO

The NanoHat Motor has the same form factor as the NanoPi NEO and can be stacked on a NanoPi NEO Here are some hardware setups:
NanoHat Motor_nanopi_NEO NanoHat Motor_nanopi_NEO_Air NanoHat Motor_nanopi_NEO2
The I2C address on the module can be reset by adjusting the onboard resistor. You can stack multiple motor modules together with different I2C addresses. Here is a hardware setup:
NanoHat Motor_nanopi_NEO_Hat

4 运行测试程序

NanoHat Motor的测试程序包含在 NanoHAT-Motor-Python-Library 软件仓库里。

NanoHAT-Motor-Python-Library是一个Python类库,为舵机、直流电机和步进电机提供了非常便利的编程接口,提供单个和多个电机的高精度控制。

当前支持的开发板:
NanoPi NEO
NanoPi Fire

其他开发板只能带有 I2C 接口,通过适当配置也能支持。

4.1 安装NanoHAT-Motor-Python-Library

通过ssh,或者串口终端进入开发板的命令行,执行以下命令安装:

sudo apt-get install python-dev python-smbus git
cd ~
git clone https://github.com/friendlyarm/NanoHAT-Motor-Python-Library
cd NanoHAT-Motor-Python-Library
python setup.py install

4.2 NanoHAT-Motor-Python-Library的基本使用

4.2.1 操作直流电机

cd ~/NanoHAT-Motor-Python-Library/examples
python DCTest.py <motor port>

其中,<motor port>为电机连接的端口。

4.2.2 操作步进马达

cd ~/NanoHAT-Motor-Python-Library/examples
python StepperTest.py <motor port>

其中,<motor port>为马达连接的端口。

4.2.3 操作舵机

cd ~/NanoHAT-Motor-Python-Library/examples
python ServoTest.py <pwm port>

其中,<pwm port>为舵机连接的端口。

5 相关资料