micro: bit是一款由英国BBC设计的ARM架构的单片机,板载蓝牙,加速度计,电子罗盘,三个按钮,5 x 5 LED点阵,主要用于青少年的编程教育。
你可以利用BBC micro:bit实现任何酷炫的小发明,无论是机器人还是乐器,没有想不到。
本产品是为micro:bit量身定制的电机驱动板,可驱动两路直流电机和三路舵机,适合用于小车、机械手臂等驱动。
描述 | 功能 |
---|---|
VCC | 电源正(6-12V) |
GND | 电源地 |
A1 | 直流电机A正极 |
A2 | 直流电机A负极 |
B1 | 直流电机B正极 |
B2 | 直流电机B负极 |
P0 | 舵机控制引脚P0 |
P1 | 舵机控制引脚P1 |
P2 | 舵机控制引脚P2 |
micro:bit有多种编程方式,可使用mbed、micropython、typescript等编程方式,编程网址也是非常丰富,官方推荐两种编程方式:图形化编程(typescript)、micropython。
图形化编程
从github上获取我们的库:依次点击高级->添加包,或者点击齿轮->添加包。然后在弹出的对话框中,单击搜索框将网址:https://github.com/waveshare/pxt-Motor 复制进去,注意最后加上一个空格,否则可能无法索引到:
对英语不感冒的小伙伴可以在齿轮->Language中选择简体中文:
可以同时控制两个电机,并选择转动方向和速度
当按键A按下时,停止转动
舵机S0转到0度,舵机S1转到180度,舵机S2停止转动
控制舵机转动180度以内任意角度
若还需要其他功能,可在高级->引脚中选择其余功能
python 编程
我们提供了python例程,下载示例程序,解压压缩包Motor_Driver_for_microbit_code.7z ,在子目录python下有一个motor.py文件,使用mu软件打开。
这里的temp= angle / 2 + 25是占空比计算。temp范围为0-1023,控制舵机转动,产生周期为20ms,宽度为1.5ms的基准信号,该脉冲的高电平部分一般为0.5ms-2.5ms范围内的角度控制脉冲部分,总间隔为2ms,如果使用1023作为最大值,那么将会加大计算难度,因此省略尾数,这样,对应的0度,也就是0.5ms高电平,那么temp也就是0.5 / 20 * 1000 = 25,转到180度时,temp = 125,幅度跨越100, 而180 / 2 = 90也是比较接近100的,虽然存在误差,这样处理起来是比较方便的。
首先实例化,然后控制电机0最大速度正转,电机2最大速度反转,控制舵机0转动到50度,舵机1转动到150度,舵机2停止转动。