“SKU:RB-01C115 多模式电机驱动板”的版本间的差异

来自ALSROBOT WiKi
跳转至: 导航搜索
(以“ ==产品概述== 产品为一个多功能驱动板,可以驱动电机、四线两相步进电机、舵机,外观是...”为内容创建页面)
 
第7行: 第7行:
 
# 外部供电范围:7V - 35V
 
# 外部供电范围:7V - 35V
 
# 外形特点:Arduino UNO 盾板
 
# 外形特点:Arduino UNO 盾板
# 外形尺寸:
+
# 外形尺寸:70 * 56mm
 
# 扩展接口
 
# 扩展接口
 
* 电机接口 * 2 个
 
* 电机接口 * 2 个
第19行: 第19行:
 
==接口示意图==
 
==接口示意图==
 
[[文件:RB01C11502.png|700px|缩略图|居中]]
 
[[文件:RB01C11502.png|700px|缩略图|居中]]
 +
* 接口说明:
 +
[[文件:RB01C11503.png|300px|缩略图|左]]
 +
(1)Vin 接口<br/>
 +
当外部供电范围在 7V - 12V 之间时,将此处连接,Arduino UNO 可以直接从电机驱动板上取电,默认为连接状态。<br/>
 +
当外部供电范围在 12V - 35V 之间时,需要将 Vin 断开,Arduino UNO 控制器需要单独供电,不能从电机驱动板上取电。<br/>
 +
当 Arduino UNO 控制器使用 DC 接口供电 7V - 12V 之间时,将此处连接,电机驱动板可以直接从 Arduino UNO 控制器上取电。<br/>
 +
 +
(2)SNS0、SNS1 接口<br/>
 +
将两组排针分别连接时,A0、A1 接口会被占用,分别读取 L298 的输出电流。<br/>
 +
将两组排针分别断开时,A0 、 A1 不会被占用。<br/>
 +
 +
==使用方法==
 +
===驱动两路电机===
 +
* 实验硬件
 +
# 直流减速电机 * 2个
 +
# Arduino UNO 控制器 * 1个
 +
# 11.1V 2200mAh 锂电池 * 1个
 +
 +
* 例子程序
 +
<pre style='color:blue'>#define PWA 3
 +
#define PWB 11
 +
#define DIRA 12
 +
#define DIRB 13
 +
#define BRAKEA 9
 +
#define BRAKEB 8               
 +
void setup(){
 +
  Serial.begin(9600);         
 +
  pinMode(PWA,OUTPUT);
 +
  pinMode(PWB,OUTPUT);
 +
  pinMode(DIRA,OUTPUT);
 +
  pinMode(DIRB,OUTPUT);
 +
  pinMode(BRAKEA,OUTPUT);
 +
  pinMode(BRAKEB,OUTPUT);
 +
}
 +
 +
void loop(){
 +
  head();
 +
  delay(3000);
 +
  back();
 +
  delay(3000);
 +
  left();
 +
  delay(3000);
 +
  right();
 +
  delay(3000);
 +
  breaka();
 +
  delay(3000);
 +
  stopt();
 +
  delay(3000);
 +
}
 +
 +
void head(){
 +
  analogWrite(PWA,180);
 +
  analogWrite(PWB,180);
 +
  digitalWrite(DIRA,HIGH);
 +
  digitalWrite(BRAKEA,LOW);
 +
  digitalWrite(DIRB,HIGH);
 +
  digitalWrite(BRAKEB,LOW);
 +
}
 +
 +
void back(){
 +
  analogWrite(PWA,180);
 +
  analogWrite(PWB,180);
 +
  digitalWrite(DIRA,LOW);
 +
  digitalWrite(BRAKEA,LOW);
 +
  digitalWrite(DIRB,LOW);
 +
  digitalWrite(BRAKEB,LOW);
 +
}
 +
 +
void left(){
 +
  analogWrite(PWA,180);
 +
  analogWrite(PWB,180);
 +
  digitalWrite(DIRA,HIGH);
 +
  digitalWrite(BRAKEA,LOW);
 +
  digitalWrite(DIRB,LOW);
 +
  digitalWrite(BRAKEB,LOW);
 +
}
 +
 +
void right(){
 +
  analogWrite(PWA,180);
 +
  analogWrite(PWB,180);
 +
  digitalWrite(DIRA,LOW);
 +
  digitalWrite(BRAKEA,LOW);
 +
  digitalWrite(DIRB,HIGH);
 +
  digitalWrite(BRAKEB,LOW);
 +
}
 +
 +
void breaka(){
 +
  analogWrite(PWA,180);
 +
  analogWrite(PWB,180);
 +
  digitalWrite(DIRA,HIGH);
 +
  digitalWrite(BRAKEA,HIGH);
 +
  digitalWrite(DIRB,HIGH);
 +
  digitalWrite(BRAKEB,HIGH);
 +
}
 +
 +
void stopt(){
 +
  analogWrite(PWA,0);
 +
  analogWrite(PWB,0);
 +
  digitalWrite(DIRA,LOW);
 +
  digitalWrite(BRAKEA,HIGH);
 +
  digitalWrite(DIRB,LOW);
 +
  digitalWrite(BRAKEB,HIGH);
 +
}</pre>
 +
 +
* 程序效果
 +
连接在A口和B口电机以下面的顺序运动
 +
* A口电机顺时针、B口电机逆时针
 +
* A口电机逆时针、B口电机顺时针
 +
* A口、B口电机顺时针
 +
* A口、B口电机顺时针
 +
* A口、B口电机制动 - 电机指示灯全部亮起
 +
* A口、B口电机停止 - 电机指示灯全部熄灭
 +
 +
===驱动舵机===
 +
===驱动步进电机===
 +
===UART 接口测试===
 +
===IIC 接口测试===

2016年7月29日 (五) 12:00的版本

RB01C11501.png

目录

产品概述

产品为一个多功能驱动板,可以驱动电机、四线两相步进电机、舵机,外观是 Arduino 盾板,排座设计,Arduino 控制器连接电机驱动板的同时,不影响传感器扩展板的连接,板载串行、IIC等常用通信接口,电机转向指示灯,解决 Arduino UNO 控制器 IO 接口驱动能力弱,不能直接驱动电机或大扭力舵机的问题,电机及外部供电接口采用防插反接头,避免由于接线错误造成的产品损坏。

规格参数

  1. 产品货号:RB - 01C115
  2. 电机驱动芯片:L298P
  3. 外部供电范围:7V - 35V
  4. 外形特点:Arduino UNO 盾板
  5. 外形尺寸:70 * 56mm
  6. 扩展接口
  • 电机接口 * 2 个
  • 外部供电接口 * 1 个
  • UART 接口 * 1 个
  • IIC 接口 * 1 个
  • 数字接口 * 14 个
  • 模拟接口 * 6 个
  1. 电源指示灯:红色
  2. 电机转向指示灯:4 个(红色 * 2 个,绿色 * 2 个)

接口示意图

RB01C11502.png
  • 接口说明:
RB01C11503.png

(1)Vin 接口
当外部供电范围在 7V - 12V 之间时,将此处连接,Arduino UNO 可以直接从电机驱动板上取电,默认为连接状态。
当外部供电范围在 12V - 35V 之间时,需要将 Vin 断开,Arduino UNO 控制器需要单独供电,不能从电机驱动板上取电。
当 Arduino UNO 控制器使用 DC 接口供电 7V - 12V 之间时,将此处连接,电机驱动板可以直接从 Arduino UNO 控制器上取电。

(2)SNS0、SNS1 接口
将两组排针分别连接时,A0、A1 接口会被占用,分别读取 L298 的输出电流。
将两组排针分别断开时,A0 、 A1 不会被占用。

使用方法

驱动两路电机

  • 实验硬件
  1. 直流减速电机 * 2个
  2. Arduino UNO 控制器 * 1个
  3. 11.1V 2200mAh 锂电池 * 1个
  • 例子程序
#define PWA 3
#define PWB 11
#define DIRA 12
#define DIRB 13
#define BRAKEA 9
#define BRAKEB 8                 
void setup(){
  Serial.begin(9600);           
  pinMode(PWA,OUTPUT);
  pinMode(PWB,OUTPUT);
  pinMode(DIRA,OUTPUT);
  pinMode(DIRB,OUTPUT);
  pinMode(BRAKEA,OUTPUT);
  pinMode(BRAKEB,OUTPUT);
}

void loop(){
  head();
  delay(3000);
  back();
  delay(3000);
  left();
  delay(3000);
  right();
  delay(3000);
  breaka();
  delay(3000);
  stopt();
  delay(3000);
}

void head(){
  analogWrite(PWA,180);
  analogWrite(PWB,180);
  digitalWrite(DIRA,HIGH);
  digitalWrite(BRAKEA,LOW);
  digitalWrite(DIRB,HIGH);
  digitalWrite(BRAKEB,LOW);
}

void back(){
  analogWrite(PWA,180);
  analogWrite(PWB,180);
  digitalWrite(DIRA,LOW);
  digitalWrite(BRAKEA,LOW);
  digitalWrite(DIRB,LOW);
  digitalWrite(BRAKEB,LOW);
}

void left(){
  analogWrite(PWA,180);
  analogWrite(PWB,180);
  digitalWrite(DIRA,HIGH);
  digitalWrite(BRAKEA,LOW);
  digitalWrite(DIRB,LOW);
  digitalWrite(BRAKEB,LOW);
}

void right(){
  analogWrite(PWA,180);
  analogWrite(PWB,180);
  digitalWrite(DIRA,LOW);
  digitalWrite(BRAKEA,LOW);
  digitalWrite(DIRB,HIGH);
  digitalWrite(BRAKEB,LOW);
}

void breaka(){
  analogWrite(PWA,180);
  analogWrite(PWB,180);
  digitalWrite(DIRA,HIGH);
  digitalWrite(BRAKEA,HIGH);
  digitalWrite(DIRB,HIGH);
  digitalWrite(BRAKEB,HIGH);
}

void stopt(){
  analogWrite(PWA,0);
  analogWrite(PWB,0);
  digitalWrite(DIRA,LOW);
  digitalWrite(BRAKEA,HIGH);
  digitalWrite(DIRB,LOW);
  digitalWrite(BRAKEB,HIGH);
}
  • 程序效果

连接在A口和B口电机以下面的顺序运动

  • A口电机顺时针、B口电机逆时针
  • A口电机逆时针、B口电机顺时针
  • A口、B口电机顺时针
  • A口、B口电机顺时针
  • A口、B口电机制动 - 电机指示灯全部亮起
  • A口、B口电机停止 - 电机指示灯全部熄灭

驱动舵机

驱动步进电机

UART 接口测试

IIC 接口测试