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

来自ALSROBOT WiKi
跳转至: 导航搜索
控制引脚说明
 
第66行: 第66行:
 
GPIO.output(10,GPIO.LOW) #MOTOR A停止
 
GPIO.output(10,GPIO.LOW) #MOTOR A停止
 
GPIO.output(17,GPIO.LOW) #MOTOR B停止
 
GPIO.output(17,GPIO.LOW) #MOTOR B停止
def checkdist()
+
def checkdist();
 
     GPIO.output(23,GPIO.HIGH) #超声波模块输入引脚置高10us以上
 
     GPIO.output(23,GPIO.HIGH) #超声波模块输入引脚置高10us以上
 
     time.sleep(0.000015) #置高15us
 
     time.sleep(0.000015) #置高15us
 
     GPIO.output(23,GPIO.LOW) #置低
 
     GPIO.output(23,GPIO.LOW) #置低
     while not GPIO(18): #等待超声波模块输出高电平
+
     while not GPIO.input(18): #等待超声波模块输出高电平
 
         pass
 
         pass
 
     t1 = time.time() #记录时间点
 
     t1 = time.time() #记录时间点

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工具配置树莓派
树莓派新手教程二---如何安装和启动你的树莓派!
奥松机器人技术论坛树莓派控制器版块