“(SKU:RB-01C073)树莓派电机驱动板(升级版)”的版本间的差异

来自ALSROBOT WiKi
跳转至: 导航搜索
(以“ ==产品概述== 新版树莓派电机驱动板采用的电路和接口设计,版型符合树莓派2代的设计,与...”为内容创建页面)
 
 
(未显示1个用户的14个中间版本)
第13行: 第13行:
 
9.树莓派接口:支持树莓派、树莓派B+、树莓派2等<br/>
 
9.树莓派接口:支持树莓派、树莓派B+、树莓派2等<br/>
 
10.外形尺寸:56*40mm<br/>
 
10.外形尺寸:56*40mm<br/>
==接口定义==
+
 
[[文件:rb01c07302.png|700px|有框|居中|树莓派驱动板接口定义]]
+
 
==使用方法==
 
==使用方法==
==插接方法==
+
===接口示意图===
[[文件:rb01c07303.png|700px|有框|居中|与树莓派控制器的完美配合]]
+
[[文件:rb01c07302.png|700px|有框|居中|树莓派驱动板接口定义]]
==控制引脚说明==
+
===控制引脚说明===
1.电源输入端接入7—12V直流电源,电机驱动板会给树莓派提供5V电源,所以树莓派插接电机驱动板后,只需给驱动板进行供电而树莓派无需额外的电源。<br/>
+
<big>1.电源输入端接入7—12V直流电源,电机驱动板会给树莓派提供5V电源,所以树莓派插接电机驱动板后,只需给驱动板进行供电而树莓派无需额外的电源。<br/>
 
2.板载LED1、LED2,对外接口OC1、OC2分别是树莓派的GPIO7、8、21、23经过74HC14D反相器的输出端,OC1、OC2分别连接一个LED模块,使用树莓派的IO输出高低电平信号,通过74HC14D驱动LED点亮与熄灭。<br/>
 
2.板载LED1、LED2,对外接口OC1、OC2分别是树莓派的GPIO7、8、21、23经过74HC14D反相器的输出端,OC1、OC2分别连接一个LED模块,使用树莓派的IO输出高低电平信号,通过74HC14D驱动LED点亮与熄灭。<br/>
 
GPIO7输出高电平,LED1点亮,输出低电平,LED1熄灭;<br/>
 
GPIO7输出高电平,LED1点亮,输出低电平,LED1熄灭;<br/>
第25行: 第24行:
 
GPIO22输出高电平,OC1外接LED点亮,输出低电平,OC1外接LED熄灭;<br/>
 
GPIO22输出高电平,OC1外接LED点亮,输出低电平,OC1外接LED熄灭;<br/>
 
GPIO27输出高电平,OC2外接LED点亮,输出低电平,OC2外接LED熄灭;<br/>
 
GPIO27输出高电平,OC2外接LED点亮,输出低电平,OC2外接LED熄灭;<br/>
 +
3.电机A口的使能接GPIO10,方向控制接GPIO25,电机B口的使能接GPIO17,方向控制接GPIO4,使用树莓派控制引脚可以进行控制电机的启动停止和调速,通过方向引脚控制电机转向。<br/>
 +
* A口使能GPIO17输出高电平,A口方向GPIO25输出高电平,A口电机顺时针旋转;<br/>
 +
* A口使能GPIO17输出高电平,A口方向GPIO25输出低电平,A口电机逆时针旋转;<br/>
 +
* A口使能GPIO17输出低电平,A口电机停止转动;<br/>
 +
* B口使能GPIO10输出高电平,B口方向GPIO4输出高电平,B口电机顺时针旋转;<br/>
 +
* B口使能GPIO10输出高电平,B口方向GPIO4输出低电平,B口电机逆时针旋转;<br/>
 +
* B口使能GPIO10输出低电平,B口电机停止转动;<br/>
 +
4.SW1、SW2接口经过限流电阻后直接连接在树莓派的GPIO 11、9.在SW1、GND之间和SWD、GND之间,分别连接一个碰撞开关,GPIO11、9设置为输入,默认电平为高电平(内部有上拉电阻),当开关闭合时,GPIO的电平会被拉低。<br/>
 +
5.I2C接口直接连接到树莓派的I2C引脚(GPIO2 |SDA,GPIO 3|SCL),可以扩展I2C模块。<br/>
 +
6.UART接口直接连接到树莓派的UART引脚(GPIO 14|TX,GPIO 15|RX),可以扩展UART模块。<br/>
 +
7.URF(超声波接口)的OUTPUT经过分压直接连接到GPIO18,INPUT直接连接到GPIO23,树莓派的GPIO 23至高10us以上,然后置低,等待GPIO 18接收到高电平信号时,高电平结束时停止,计算高电平时间,所测量的距离 = 高电平时间*声速/2。<br/>
 +
</big>
 +
 +
===插接方法===
 +
[[文件:rb01c07303.png|500px|有框|居中|与树莓派控制器的完美配合]]
 +
===测试代码===
 +
<pre style='color:blue'>
 +
import RPi.GPIO as GPIO
 +
import time
 +
GPIO.setmode(GPIO.BCM)
 +
GPIO.setup(7,GPIO.OUT) #LED1
 +
GPIO.setup(8,GPIO.OUT) #LED2
 +
GPIO.setup(27,GPIO.OUT) #OC2
 +
GPIO.setup(22,GPIO.OUT) #OC1
 +
GPIO.setup(10,GPIO.OUT) #EN1
 +
GPIO.setup(17,GPIO.OUT) #EN2
 +
GPIO.setup(25,GPIO.OUT) #MOTOR A
 +
GPIO.setup(4,GPIO.OUT) #MOTOR B
 +
GPIO.setup(11,GPIO.OUT) #SW1
 +
GPIO.setup(9,GPIO.OUT) #SW2
 +
GPIO.setup(25,GPIO.OUT) #MOTOR A
 +
GPIO.setup(23,GPIO.OUT,initial=GPIO.LOW) #URFOUT
 +
GPIO.setup(18,GPIO.IN) #URFIN
 +
 +
GPIO.output(8,GPIO.LOW) #LED2熄灭
 +
GPIO.output(7,GPIO.LOW) #LED1熄灭
 +
GPIO.output(22,GPIO.HIGH) #OC1输出低电平
 +
GPIO.output(27,GPIO.HIGH) #OC2输出低电平
 +
GPIO.output(25,GPIO.LOW) #MOTOR A顺时针
 +
GPIO.output(4,GPIO.LOW) #MOTOR B顺时针
 +
GPIO.output(10,GPIO.LOW) #MOTOR A停止
 +
GPIO.output(17,GPIO.LOW) #MOTOR B停止
 +
def checkdist();
 +
    GPIO.output(23,GPIO.HIGH) #超声波模块输入引脚置高10us以上
 +
    time.sleep(0.000015) #置高15us
 +
    GPIO.output(23,GPIO.LOW) #置低
 +
    while not GPIO.input(18): #等待超声波模块输出高电平
 +
        pass
 +
    t1 = time.time() #记录时间点
 +
    while GPIO.input(18): #等待超声波模块输出高电平
 +
        pass
 +
    t2 = time.time() #记录时间点
 +
    return(t2-t1)*340/2 #计算时间差,算出对应距离并返回
 +
try:
 +
    while Ture:
 +
        if GPIO.input(11): #当SW1开关断开
 +
              GPIO.output(10,GPIO.HIGH) #电机使能
 +
              GPIO.output(17,GPIO.HIGH) #电机使能
 +
              GPIO.output(7,GPIO.HIGH) #LED1熄灭
 +
        else:
 +
              GPIO.output(10,GPIO.LOW) #电机停止
 +
              GPIO.output(17,GPIO.LOW) #电机停止
 +
              GPIO.output(7,GPIO.LOW) #LED1点亮
 +
        if GPIO.input(9): #当SW2开关断开
 +
              GPIO.output(25,GPIO.HIGH) #电机正转
 +
              GPIO.output(4,GPIO.HIGH) #电机正转
 +
              GPIO.output(8,GPIO.HIGH) #LED2熄灭
 +
        else:
 +
              GPIO.output(25,GPIO.LOW) #点击反转
 +
              GPIO.output(4,GPIO.LOW) #点击反转
 +
              GPIO.output(8,GPIO.LOW) #LED2点亮
 +
        print"Distance:%0.2fm"%checkdist() #获取超声波传感器距离并打印显示
 +
        time.sleep(0.01) #延时0.01秒
 +
except KeyboardInterrupt:
 +
    GPIO.cleanup() #释放GPIO           
 +
</pre>
 +
==产品相关推荐==
 +
[[文件:erweima.png|230px|无框|右]]
 +
===产品购买地址===
 +
[https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-3667083713.15.ybN45R&id=37571891821 树莓派电机驱动板]<br/>
 +
===周边产品推荐===
 +
[https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-3667083713.21.petau5&id=2723263199 URF02超声波传感器]<br/>
 +
[https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-3667083713.16.ArXiIN&id=2116321387 无线蓝牙模块]<br/>
 +
[https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-3667083713.29.7m6fVi&id=43974605271 树莓派二代控制器]<br/>
 +
===相关问题解答===
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=5414&fromuid=10780 新买的树莓派2,HDMI无信号,ACT灯常亮]<br/>
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=5415&fromuid=10780 Raspberry Pi 常见问题的解决方法]<br/>
 +
===相关学习资料===
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=3962 玩转树莓派系列视频教程(一)]<br/>
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=3961 玩转树莓派系列视频教程(二)]<br/>
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=3964 玩转树莓派系列视频教程(三)]<br/>
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=3963 玩转树莓派系列视频教程(四)]<br/>
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=3965 玩转树莓派系列视频教程(五)]<br/>
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=5373&fromuid=10780 树莓派新手教程三---使用raspi-config工具配置树莓派]<br/>
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=5374&fromuid=10780 树莓派新手教程二---如何安装和启动你的树莓派!]<br/>
 +
[http://www.makerspace.cn/forum.php?mod=forumdisplay&fid=59&page=1 奥松机器人技术论坛树莓派控制器版块]<br/>

2016年8月3日 (三) 16:21的最后版本

Rb01c07301.png

目录

产品概述

新版树莓派电机驱动板采用的电路和接口设计,版型符合树莓派2代的设计,与树莓派完美结合。供电电源采用LM2596开关稳压电源,具有更高效率,更大输出电流,更低的发热量等特点。电机驱动板新品采用L293D,更小的封装尺寸,更合理的电路设计。对外接口方面,采用了奥松新一代防插反接口,和奥松的系列传感器模块匹配,更可以直接安装URF02超声波传感器和蓝牙模块,制作树莓派小车更加方便、简洁。如果您想制作树莓派小车,无需东奔西走,奥松机器人配套全都有!

规格参数

1.电机驱动输出接口:双路双向直流电机驱动
2.电源输出接口:7~12V DC
3.OC输出接口:两路集电极开路输出(25mA,5V电平)
4.板载指示灯:两个可编程控制LED发光二极管
5.开关量接口:两路开关量输入/输出(3.3V电平)
6.UART接口:3.3V电平6Pin串行接口,可直接连接蓝牙模块
7.I2C接口:5V电平I2C接口,可驳接各类I2C接口模块
8.超声波模块接口:可直接连接URF02超声波模块
9.树莓派接口:支持树莓派、树莓派B+、树莓派2等
10.外形尺寸:56*40mm

使用方法

接口示意图

树莓派驱动板接口定义

控制引脚说明

1.电源输入端接入7—12V直流电源,电机驱动板会给树莓派提供5V电源,所以树莓派插接电机驱动板后,只需给驱动板进行供电而树莓派无需额外的电源。
2.板载LED1、LED2,对外接口OC1、OC2分别是树莓派的GPIO7、8、21、23经过74HC14D反相器的输出端,OC1、OC2分别连接一个LED模块,使用树莓派的IO输出高低电平信号,通过74HC14D驱动LED点亮与熄灭。
GPIO7输出高电平,LED1点亮,输出低电平,LED1熄灭;
GPIO8输出高电平,LED2点亮,输出低电平,LED2熄灭;
GPIO22输出高电平,OC1外接LED点亮,输出低电平,OC1外接LED熄灭;
GPIO27输出高电平,OC2外接LED点亮,输出低电平,OC2外接LED熄灭;
3.电机A口的使能接GPIO10,方向控制接GPIO25,电机B口的使能接GPIO17,方向控制接GPIO4,使用树莓派控制引脚可以进行控制电机的启动停止和调速,通过方向引脚控制电机转向。

  • A口使能GPIO17输出高电平,A口方向GPIO25输出高电平,A口电机顺时针旋转;
  • A口使能GPIO17输出高电平,A口方向GPIO25输出低电平,A口电机逆时针旋转;
  • A口使能GPIO17输出低电平,A口电机停止转动;
  • B口使能GPIO10输出高电平,B口方向GPIO4输出高电平,B口电机顺时针旋转;
  • B口使能GPIO10输出高电平,B口方向GPIO4输出低电平,B口电机逆时针旋转;
  • B口使能GPIO10输出低电平,B口电机停止转动;

4.SW1、SW2接口经过限流电阻后直接连接在树莓派的GPIO 11、9.在SW1、GND之间和SWD、GND之间,分别连接一个碰撞开关,GPIO11、9设置为输入,默认电平为高电平(内部有上拉电阻),当开关闭合时,GPIO的电平会被拉低。
5.I2C接口直接连接到树莓派的I2C引脚(GPIO2 |SDA,GPIO 3|SCL),可以扩展I2C模块。
6.UART接口直接连接到树莓派的UART引脚(GPIO 14|TX,GPIO 15|RX),可以扩展UART模块。
7.URF(超声波接口)的OUTPUT经过分压直接连接到GPIO18,INPUT直接连接到GPIO23,树莓派的GPIO 23至高10us以上,然后置低,等待GPIO 18接收到高电平信号时,高电平结束时停止,计算高电平时间,所测量的距离 = 高电平时间*声速/2。

插接方法

与树莓派控制器的完美配合

测试代码

import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(7,GPIO.OUT) #LED1
GPIO.setup(8,GPIO.OUT) #LED2
GPIO.setup(27,GPIO.OUT) #OC2
GPIO.setup(22,GPIO.OUT) #OC1
GPIO.setup(10,GPIO.OUT) #EN1
GPIO.setup(17,GPIO.OUT) #EN2
GPIO.setup(25,GPIO.OUT) #MOTOR A 
GPIO.setup(4,GPIO.OUT) #MOTOR B
GPIO.setup(11,GPIO.OUT) #SW1
GPIO.setup(9,GPIO.OUT) #SW2
GPIO.setup(25,GPIO.OUT) #MOTOR A 
GPIO.setup(23,GPIO.OUT,initial=GPIO.LOW) #URFOUT
GPIO.setup(18,GPIO.IN) #URFIN

GPIO.output(8,GPIO.LOW) #LED2熄灭
GPIO.output(7,GPIO.LOW) #LED1熄灭
GPIO.output(22,GPIO.HIGH) #OC1输出低电平
GPIO.output(27,GPIO.HIGH) #OC2输出低电平
GPIO.output(25,GPIO.LOW) #MOTOR A顺时针
GPIO.output(4,GPIO.LOW) #MOTOR B顺时针
GPIO.output(10,GPIO.LOW) #MOTOR A停止
GPIO.output(17,GPIO.LOW) #MOTOR B停止
def checkdist();
     GPIO.output(23,GPIO.HIGH) #超声波模块输入引脚置高10us以上
     time.sleep(0.000015) #置高15us
     GPIO.output(23,GPIO.LOW) #置低
     while not GPIO.input(18): #等待超声波模块输出高电平
         pass
     t1 = time.time() #记录时间点
     while GPIO.input(18): #等待超声波模块输出高电平
         pass
     t2 = time.time() #记录时间点
     return(t2-t1)*340/2 #计算时间差,算出对应距离并返回
try:
     while Ture:
         if GPIO.input(11): #当SW1开关断开
              GPIO.output(10,GPIO.HIGH) #电机使能
              GPIO.output(17,GPIO.HIGH) #电机使能
              GPIO.output(7,GPIO.HIGH) #LED1熄灭
         else:
              GPIO.output(10,GPIO.LOW) #电机停止
              GPIO.output(17,GPIO.LOW) #电机停止
              GPIO.output(7,GPIO.LOW) #LED1点亮
         if GPIO.input(9): #当SW2开关断开
              GPIO.output(25,GPIO.HIGH) #电机正转
              GPIO.output(4,GPIO.HIGH) #电机正转
              GPIO.output(8,GPIO.HIGH) #LED2熄灭
         else:
              GPIO.output(25,GPIO.LOW) #点击反转
              GPIO.output(4,GPIO.LOW) #点击反转
              GPIO.output(8,GPIO.LOW) #LED2点亮
         print"Distance:%0.2fm"%checkdist() #获取超声波传感器距离并打印显示
         time.sleep(0.01) #延时0.01秒
except KeyboardInterrupt:
    GPIO.cleanup() #释放GPIO            

产品相关推荐

Erweima.png

产品购买地址

树莓派电机驱动板

周边产品推荐

URF02超声波传感器
无线蓝牙模块
树莓派二代控制器

相关问题解答

新买的树莓派2,HDMI无信号,ACT灯常亮
Raspberry Pi 常见问题的解决方法

相关学习资料

玩转树莓派系列视频教程(一)
玩转树莓派系列视频教程(二)
玩转树莓派系列视频教程(三)
玩转树莓派系列视频教程(四)
玩转树莓派系列视频教程(五)
树莓派新手教程三---使用raspi-config工具配置树莓派
树莓派新手教程二---如何安装和启动你的树莓派!
奥松机器人技术论坛树莓派控制器版块