近期,DFRobot 发布行空板 M10 扩展板组合 —— 行空板 M10 电机 IO 扩展板与 M10 电池扩展板。该组合专为行空板(UNIHIKER)M10 在机器人控制、物联网终端、移动创客项目开发中面临的移动供电难题、接口数量不足、动态控制复杂等场景痛点,提供了便携式开发解决方案。
1. 硬件简介
1.1 电池扩展板
行空板 M10 电池扩展板采用 9mm 超薄设计,搭载 800mAh 锂电池,结合隐藏式弹针连接方式,与 M10 组合后整机厚度仅增加 6.6mm ,4 颗 LED 电量指示灯,充电电路及充电指示功能。
1.2 电机 IO 扩展板
行空板 M10 电机 IO 扩展板提供 3 路数字 / 模拟接口、1 路 3.3V I2C 接口、1 路 5V I2C 接口以及 2 路直流电机驱动接口,板载的 2 颗 WS2812 可编程 RGB 灯珠、1 颗红外发射管和 1 颗红外接收管。
2. 项目设想
为了便于扩展板的各项功能的测试,本项目拟完成以下内容:
1、基于行空板M10+行空板 M10 电池扩展板+行空板 M10 电机 IO 扩展板,完成小车的搭建。
2、编写基于Mind+的行空板 M10 扩展板用户库,实现对扩展板红外发射管、红外接收管、WS2812灯、电机接口以及舵机功能的测试。
3. 项目实施过程
步骤1 硬件搭建
如上图所示,先将金手指转接板插到行空板M10的金手指上,接着使用M3的螺丝将电池扩展板固定在行空板 M10 上,最后将电机IO扩展板用 M3螺丝固定在电池扩展板上。

将N20减速电机固定在小车底盘,将小车底盘用M3螺丝固定在IO扩展板上,再将电机电源线插到电机 IO 扩展板的 M1 和 M2 接口。
将舵机链接到P0接口。
步骤2 用户库编写

步骤3 用户库导入
在 Mind+ Python模式下,导入项目所需的用户库。
用户库加载地址:https://gitee.com/hmilycheng/ext-Unihiker_IOExtension

步骤4 程序编写
完成下图所示程序编写。

步骤5 程序运行
import time
from unihiker import GUI
from shield import SHIELD
from pinpong.extension.unihiker import *
from pinpong.board import Board,Pin,NeoPixel,IRRemote,IRRecv,Servo
# 事件回调函数
def ir_callback(data):
print(data)
txt_ir.config(text=data)
u_gui=GUI()
Board().begin()
shield = SHIELD()
ir = shield.ir
ir.set_receive_callback(ir_callback)
RGB = NeoPixel(Pin((Pin.P13)),3)
txt_moto=u_gui.draw_text(text="",x=60,y=70,font_size=40, color="#0000FF")
txt_ir=u_gui.draw_text(text="",x=30,y=150,font_size=30, color="#0000FF")
RGB.brightness(128)
RGB.clear()
while True:
ir.send(0xfd807f)
RGB.range_color(0,1,0x00FF00)
txt_moto.config(text="前进")
shield.m1.run(1,512)
shield.m2.run(1,512)
shield.servo1.write_angle(0)
time.sleep(5)
RGB.range_color(0,1,0xFFFFFF)
txt_moto.config(text="后退")
shield.m1.run(0,512)
shield.m2.run(0,512)
shield.servo1.write_angle(90)
time.sleep(5)
附件
评论