Catch Unit

Catch 是一款以 SG92R 舵机作为动力源的夹爪。该舵机使用 PWM 信号驱动夹爪齿轮旋转,从而控制夹爪进行夹持和释放操作。其结构采用兼容 Lego 8 mm 圆孔的设计。你可以将其与其他 Lego 组件组合,搭建富有创意的控制结构,例如机械臂、夹爪小车等。

支持以下产品:

CatchUnit

MicroPython 应用示例:

 1# SPDX-FileCopyrightText: 2024 M5Stack Technology CO LTD
 2#
 3# SPDX-License-Identifier: MIT
 4
 5import os, sys, io
 6import M5
 7from M5 import *
 8from unit import CatchUnit
 9import time
10
11
12catch_0 = None
13
14
15import random
16
17
18def setup():
19    global catch_0
20
21    M5.begin()
22    Widgets.fillScreen(0x222222)
23
24    catch_0 = CatchUnit((8, 9))
25
26
27def loop():
28    global catch_0
29    M5.update()
30    catch_0.set_clamp_percent(random.randint(1, 100))
31    time.sleep_ms(100)
32
33
34if __name__ == "__main__":
35    try:
36        setup()
37        while True:
38            loop()
39    except (Exception, KeyboardInterrupt) as e:
40        try:
41            from utility import print_error_msg
42
43            print_error_msg(e)
44        except ImportError:
45            print("please update to latest firmware")

UiFlow2 应用示例

example.png

cores3_catch_example.m5f2

class CatchUnit

Constructors

class CatchUnit(port: tuple)

初始化 Servo。

参数:

port (tuple) – Servo 连接到的端口。

UIFLOW2:

init.png

Methods

CatchUnit.clamp() None

夹紧夹爪。

UIFLOW2:

clamp.png

CatchUnit.release() None

释放夹爪。

UIFLOW2:

release.png

CatchUnit.set_duty(duty: int) None

设置占空比。

参数:

duty (int) – 占空比:从 20 到 54。

UIFLOW2:

set_duty.png

CatchUnit.set_clamp_percent(percent: int) None

设置夹紧百分比。

参数:

percent (int) – 夹持百分比,从 0 到 100。

UIFLOW2:

set_clamp_percent.png

CatchUnit.deinit() None

反初始化 Servo。

UIFLOW2:

deinit.png