Difference between revisions of "NanoHat Motor"

From FriendlyELEC WiKi
Jump to: navigation, search
(Hardware Setup)
(运行测试程序)
Line 106: Line 106:
 
[[File:NanoHat Motor_nanopi_NEO_Hat.jpg|frameless|600px|NanoHat Motor_nanopi_NEO_Hat]]
 
[[File:NanoHat Motor_nanopi_NEO_Hat.jpg|frameless|600px|NanoHat Motor_nanopi_NEO_Hat]]
  
==运行测试程序==
+
==Run Test Program==
  
NanoHat Motor的测试程序包含在 NanoHAT-Motor-Python-Library 软件仓库里。
+
The NanoHat Motor's test program is included in the NanoHAT-Motor-Python-Library.
  
NanoHAT-Motor-Python-Library是一个Python类库,为舵机、直流电机和步进电机提供了非常便利的编程接口,提供单个和多个电机的高精度控制。
+
The NanoHAT-Motor-Python-Library is a Python library which provides various APIs for motor control.
  
当前支持的开发板:<br />
+
Applicable Boards:<br />
 
NanoPi NEO<br />
 
NanoPi NEO<br />
 
NanoPi Fire<br />
 
NanoPi Fire<br />
  
其他开发板只能带有 I2C 接口,通过适当配置也能支持。
+
As for other FriendlyElec's nano boards as long as they have an I2C interface you can make them work with this module by making some wiring.
  
 
===安装NanoHAT-Motor-Python-Library===
 
===安装NanoHAT-Motor-Python-Library===

Revision as of 10:20, 20 April 2017

查看中文

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 Run Test Program

The NanoHat Motor's test program is included in the NanoHAT-Motor-Python-Library.

The NanoHAT-Motor-Python-Library is a Python library which provides various APIs for motor control.

Applicable Boards:
NanoPi NEO
NanoPi Fire

As for other FriendlyElec's nano boards as long as they have an I2C interface you can make them work with this module by making some wiring.

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 相关资料