cocube_module
import cocube_module as cm
这是什么?
cocube_module 负责 CoCube 外接模块,主要包括:
- 电源控制
- 夹爪
- NeoPixel 灯板
- ToF 测距
- 光照模块
- 语音识别模块
很多外设在正式使用前,建议先执行:
cm.power_on()
供电
cm.power_on()
cm.power_off()
模块电源由 GPIO13 控制。
夹爪
cm.gripper_open()
cm.gripper_close()
cm.gripper_degree(degree)
cm.gripper_stop()
说明:
degree范围是0~700更接近全开70更接近全闭- 普通模式下走
GPIO22舵机 PWM - 摄像头初始化后会切到 I2C 控制夹爪
NeoPixel 灯板
推荐先手动挂载:
cm.neopixel_attach(n=48)
如果没有手动挂载,绝大多数 NeoPixel 接口会按默认 48 颗自动初始化。
常用接口:
cm.neopixel_set_all(r, g, b)
cm.neopixel_set_all_color(color)
cm.neopixel_set(i, r, g, b)
cm.neopixel_set_color(i, color)
cm.neopixel_clear()
cm.neopixel_rotate(n=1)
cm.neopixel_brighten(i, delta)
cm.neopixel_brighten_all(delta)
cm.neopixel_shift_color(i, delta)
cm.neopixel_shift_all_colors(delta)
cm.color_from_rgb(r, g, b)
cm.random_color()
注意:
- AI 摄像头模式下 NeoPixel 不可用;这时
GPIO22已被摄像头相关功能占用 - 第
i颗灯珠是 1 开始计数 color_from_rgb()返回0xRRGGBB形式的整数- NeoPixel 数据也走
GPIO22
ToF 测距
cm.tof_connected()
cm.tof_distance()
返回说明:
- 正常时返回毫米值
-1:数据无效-2:测量超时
光照
cm.dlight_level()
cm.dlight_lux()
说明:
dlight_level()返回原始值dlight_lux()返回换算后的lux
语音识别
cm.asr_get_command()
cm.asr_play_command(cmd_id)
说明:
asr_get_command()返回最新命令 ID- 没有新命令时通常返回
0
最小示例
import cocube_module as cm
cm.power_on()
cm.gripper_open()
cm.neopixel_attach(48)
cm.neopixel_set_all(0, 0, 255)
print(cm.tof_distance())
print(cm.dlight_level())
print(cm.asr_get_command())
注意
- 摄像头
init()后,cocube_module会进入摄像头模式,夹爪从普通 PWM 切到 I2C 控制 GPIO22会复用给舵机、NeoPixel、I2C SCL,NeoPixel 和 I2C 外设不要一开始就混着调,先单独验证