电机驱动扩展板

简介

重要更新:micro:bit以及本电机驱动扩展板已正式支持Scratch!DFRobot基于Scratch3.0开发的mind+,集成了micro:bit及其周边产品的图形化编程,离线图形化编程方式,支持Arduino和python两种代码生成。

点击链接,火速下载mind+最新版本:http://mindplus.cc

自micro:bit问世以来,以其简单实用的编程方式广受创客,学生和老师的喜爱。其简洁的设计,配上丰富的管脚资源,赋予了其无限的可能性。此款micro:bit电机驱动扩展板不仅引出了9个micro:bit板载GPIO接口,还搭载了4路电机驱动和8个舵机接口,其中4路电机驱动可复用为2路步进电机驱动。 micro:bit电机驱动扩展采用I2C外扩驱动芯片的方式控制电机和舵机,仅占用I2C两个管脚,不占用其他资源,即可完成电机与舵机的双重控制。采用HR8833电机驱动,最大持续工作电流1.5A,可驱动普通小型马达和N20微型金属电机,每一个电机端口还带有正反转指示灯,方便识别电机运行方向,非常适用于学生和创客的一些小制作。扩展的GPIO口和舵机接口均采用DFRobot_Gravity标准接口,支持支持数量众多的模块和传感器,舵机接口更是直接与Vin电源相连,增加供电电流便可支持多个舵机同时工作。 扩展板支持3.5V~5.5V电源供电,提供DC2.1插头和接线端子两种电源接口方式,可直接接3节干电池盒。产品附带一根USB转DC2.1转接线,可使用充电宝供电,更加经济环保。

产品参数

功能说明

Mind+图形化离线编程

软件下载地址:http://mindplus.cc 基础使用流程: 1、切换到“上传模式” 2、“扩展”中选择“micro:bit电机舵机专用扩展板” 3、编写程序 4、连接设备 5、上传程序

驱动电机

驱动电机

程序执行结果:电机M1以200速度正转2秒,然后停止2秒,然后所有电机以200速度正转2秒,之后所有电机停转1秒,循环执行以上部分。

驱动舵机

驱动舵机

程序执行结果:按下micro:bit板上的A按键,S1引脚上的舵机转动到90度的位置,按下micro:bit板上的B按键,S2引脚上的舵机转动到90度的位置,当同时按下A和B按键时,S1和S2上的舵机同时转到150度。

驱动步进电机

驱动步进电机

程序执行结果:当开机时,步进电机顺时针旋转180度,逆时针旋转180度,无限循环。

makecode图形化在线编程

MakeCode基础教程:点击进入makecode在线图形化编程基础操作教程 图形化模块软件库地址:https://github.com/tangjie133/pxt-motor 关于如何添加软件库

驱动电机

驱动电机CN 驱动电机EN

以上程序执行结果:电机M1和电机M2以150的速度正转2秒,然后反转2秒,无限循环;

驱动电机CN 驱动电机EN

以上程序执行结果:当按下A键的时候,M1正转,M2停止;当按下B键的时候,M2正转,M1停止;当同时按下AB键的时候,所有电机停止;

驱动舵机

驱动舵机CN

驱动舵机EN

以上程序执行结果:当按下A键的时候,舵机置角度为180度,当按下B键的时候,舵机置角度为0度

驱动步进电机

步进电机按角度

以上程序执行结果:当开机时,步进电机顺时针旋转180度,逆时针旋转180度,无限循环。

步进电机按圈数

以上程序执行结果:当开机时,步进电机顺时针旋转2圈,逆时针旋转2圈,无限循环。

BXY平台python编程

下载《BXY》python编程软件

《BXY》pthon编程平台官方下载地址

《BXY》pthon编程平台官方教程

python函数列表

驱动电机

设置电机转速

函数原型:speed(speed) 参数:speed 速度值,取值范围0~255的整数

设置转动方向并执行

函数原型:run(dir) 参数:dir:转动方向,CW正转(顺时针), CCW 反转(逆时针)

电机停止转动

函数原型:stop() 参数:无

例:
from microbit import *
import DFMotor

M1=DFMotor(1)

while True:
  M1.speed(255) #设置速度255
  M1.run(1)     #设置为正转并运行2秒
  sleep(2000)
  M1.stop()     #停止2秒
  sleep(2000)
  M1.speed(150) #设置速度为150
  M1.run(-1)    #设置为反转并运行2秒
  sleep(2000)
  M1.stop()     #停止2秒
  sleep(2000)

#程序说明:以上程序的让接在M1的电机按255的速度正转2秒,然后停止2秒,再按150的速度反转2秒,再停止2秒,按此模式无限循环;

驱动步进电机

按圈数方式驱动步进电机

函数原型:circle(num,dir) 参数:num: 设置转动圈数(如果设置为0,则一直转动) dir :旋转方向(CW正转 CCW反转)

例:
from microbit import *
import DFStepper

M1_M2=DFStepper(1)

while True:
  M1_M2.circle(2,CW)
  M1_M2.circle(2,CCW)

程序功能:让接在M1_M2的步进电机正转2圈,再反转2圈,如此无限循环。
按角度方式驱动步进电机

函数原型:angle(ang,dir) 参数: ang: 转动角度 dir :旋转方向 CW正转 CCW反转

例:
from microbit import *
import DFStepper

M1_M2=DFStepper(1)  #设置步进电机接在M1、M2的位置

while True:
  M1_M2.angle(180,CW)  #步进电机正转180度
  sleep(2000)
  M1_M2.angle(180,CCW) #步进电机反转180度
  sleep(2000)

#程序功能:让接在M1_M2的步进电机正转180度,间隔2秒后再反转180度,如此无限循环。
步进电机停止

函数原型:stop() 参数:无

例:
from microbit import *
import DFStepper

M1_M2=DFStepper(1) #设置步进电机接在M1、M2的位置

while True:
  M1_M2.circle(0,CW)  #步进电机顺时针转动2秒
  sleep(2000)
  M1_M2.stop() #步进电机停止转动2秒
  sleep(2000)

#程序功能:让接在M1_M2的步进电机正转2秒,再停止2秒,如此无限循环。

驱动舵机

按角度驱动舵机

函数原型:Angle(angle) 参数:angle 舵机角度值,取值范围:0~180度整型数

例:
from microbit import *
import DFServo

S8=DFServo(8)   #设置舵机接在S8上

while True:
  S8.angle(180) #设置接在S8上的舵机角度为180度,并停止2秒
  sleep(2000)
  S8.angle(0)  #设置接在S8上的舵机角度为0度,并停止2秒
  sleep(2000)

#程序说明:让接在S8端口的舵机在0~180度之间按2秒的时间间隔往复运动。

疑难解答

更多问题及有趣的应用,请访问论坛

更多

DFshopping_car1.png Link DFRobot商城购买链接