Xadow Motor Driver 电机驱动板

From Wiki
Jump to: navigation, search

产品简介

Xadow Motor Driver 是一款基于全桥电机驱动器LB1836M的电机驱动板。 LB1836M 是由Xadow Motor Driver自带的Atmega168来控制,Atmega168通过I2C接口与Xadow 主板通信,从而达到控制电机的目的。 Xadow Motor Driver 具有一个可变的I2C地址。并且,Xadow Motor 需要一个单独的电源来驱动电机转动。

规格参数

电机驱动器: LB1836M 电机电压: 2.5V ~ 9V 每个通道的输出电流: 300mA 通信方式: I2C 外形尺寸: 25.43mm x 20.35mm 产品视图


Xadow Motor Black View.png


①: LB1836 IC, 两通道低电压全桥电机驱动器. ②: 电机的电源接口. ③,④: 直流电机连接口 ⑤,⑥: I2C 地址选择端.默认情况下,A0 和 A1 管脚是连接到高电平. ⑦: 串行外设接口,用来为Atmega168烧录固件. ⑧: 微控制器器 Atmega168. ⑨: Atmega168 工作电压选择接口. 默认情况下,DVCC是连接到了VOUT 管脚,也就是说 Atmega168 工作电压是由电机的电源提供的. 当DVCC连接3.3V时,Atmega168的 工作电压是来自于Xadow主板. 使用示例

利用现成的库文件,同时驱动两个直流电机转动是很容易的。下面我们就来操作一下吧! 注意: 库文件是不支持驱动步进电机的. 硬件连接: 1) 连接电机到Xadow Motor Driver的J5 和 J6 接口. 为固定连接,你可以使用烙铁将接口焊接住。 我们为你配备的是3.7V 锂电池,所以使用这款锂电池是不能驱动大功率的电机哦。 2) 连接电机电池到板上的'BAT'接口. 如果没有连接电池,电机是不会工作的。 3) 使用FPC线将 Xadow Motor 连接到 Xadow Main Board. 记住: 第一次使用Xadow Main Board时, 你需要安装Xadow驱动哦. 上传代码:

4) 下载库文件 并安装到你的Arduino Library 文件夹下. 5) 通过路径:File -> Example ->xadow_motor->motorCtrl打开代码. /* there are four motor state you can use:

-MSTOP -> stop -MFOR -> go forward -MREV -> go reverse -MHOLD -> hold the recent state

    • NOTE:

there are four addresses you can choose, it's up to the hardware, for more information, refer to www.seeedstudio.com -MOTORADDRESS0 0x40 // A0 LOW, A1 LOW -MOTORADDRESS1 0x41 // A0 HIGH, A1 LOW -MOTORADDRESS2 0x42 // A0 LOW, A1 HIGH -MOTORADDRESS3 0x43 // A0 HIGH, A1 HIGH use this function: setMotorRun(unsigned char sMotorA, unsigned char sMotorB); you can contrl the both motor.

  • /
  1. include <Wire.h>
  1. include "XadowMotor.h"

void setup() {

   Serial.begin(38400);
   xadowMotor.begin(MOTORADDRESS3);

}

void loop() {

   Serial.print("bat vol :");
   Serial.println(xadowMotor.getBatVol());
   
   xadowMotor.setMotorRun(MFOR, MFOR);
   delay(2000);
   xadowMotor.setMotorRun(MSTOP, MSTOP);
   delay(500);
   xadowMotor.setMotorRun(MREV, MREV);
   delay(2000);
   xadowMotor.setPwrDown();
   delay(1000);
   xadowMotor.setWakeUp();

} 代码中的函数 xadowMotor.begin(MOTORADDRESS3) 是用来设定装置的I2C 地址. 如果你改变了A0 和A1管脚的连接,就要相应的更改参数"MOTORADDRESS3".

6) 上传代码. 板子类型是要选择 Seeeduino Xadow. 以上的操作成功完成后,你将会看到电机以一定的规律向前向后转动。打开串口后你还可以观察到电机电源的电压值。

拓展

Xadow Motor Driver板上的A0和A1管脚是I2C地址选择端. 默认情况下,两管脚都是连接到了高电平,对应的I2C地址为0x43.当需要改变I2C 地址时,建议你先用小刀将A0(A1)与 'H' 断开,然后再用烙铁焊接A0(A1)到'L'. 管脚连接与I2C地址的对应关系请参考下表。

I2C Address A0 and A1 inputs state the corresponding parameter in code A1 A0 0x40 L L MOTORADDRESS0 0x41 L H MOTORADDRESS1 0x42 H L MOTORADDRESS2 0x43 H H MOTORADDRESS3


File:LB1836M.pdf

File:Xadow Motor Schematic in PDF.pdf