a)连接电机
驱动器有4组电机接线柱分别为M1, M2, M3, 和 M4。
注意:请仔细查看电机参数,电机尺寸过大(功率太大)会使驱动器超负荷,导致驱动器损坏。(实测370电机可用)
b)直流电机(DC motor) 示例详解
#include <Wire.h> #include "Adafruit_MotorShield.h" #include "utility/Adafruit_MS_PWMServoDriver.h" // Create the motor shield object with the default I2C address Adafruit_MotorShield AFMS = Adafruit_MotorShield(); // Select which 'port' M1, M2, M3 or M4. In this case, M1 Adafruit_DCMotor *myMotor = AFMS.getMotor(3); void setup() { AFMS.begin(); // create with the default frequency 1.6KHz // Set the speed to start, from 0 (off) to 255 (max speed) myMotor->setSpeed(150); myMotor->run(FORWARD); // turn on motor myMotor->run(RELEASE); } void loop() { myMotor->run(FORWARD); myMotor->setSpeed(150); delay(3000); myMotor->run(RELEASE); myMotor->run(BACKWARD); myMotor->setSpeed(180); delay(2000); myMotor->run(RELEASE); delay(1000); }
创建一个MotorShield对象:
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
从MotorShield创建DCMotor对象,对应M3端口的电机:
Adafruit_DCMotor *myMotor = AFMS.getMotor(3);
getMotor(port#)
port# :1~4,对应M1~M4接线柱
在setup() 函数里加入初始化代码:
AFMS.begin();
设置电机速度:
myMotor->setSpeed(100);
setSpeed(speed)
speed :0 (stopped) ~255 (full speed).
启动电机(正转、反转、停止)
myMotor->run(FORWARD);
run(direction)
direction : FORWARD, BACKWARD or RELEASE.
*注:电机旋转方向跟接线有关,如果转向不正确,请对调电机正负极接线柱。