Chuyển đến nội dung
Đã kiểm tra nguồn

MicroDuck XL330 DIY: linh kiện, lắp và bước đi đầu tiên

Theo mười hai bước AI-FanGe với Pi Zero 2 W/OpenRB-150: in, ID, nguồn, image, Wi-Fi, hướng IMU và thử đi.

Theo mười hai bước AI-FanGe với Pi Zero 2 W/OpenRB-150: in, ID, nguồn, image, Wi-Fi, hướng IMU và thử đi.

Bản tiếng Việt xuất bản 31/10/2026. Ngày tài liệu gốc được ghi riêng; bản dịch không biến release cũ thành tin mới. Mốc sửa nội dung:

Phạm vi hướng dẫn

Hướng dẫn độc lập dựa trên tài liệu gốc. Demo thuộc tác giả nguồn; trang chưa lắp, boot image hay thử robot thật. Mỗi bước có liên kết gốc.

1. Chuẩn bị một bộ linh kiện cùng lộ trình

  1. Cần Pi Zero2W, OpenRB-150,14 XL330-M288-T, BNO080/085/086, microSD tối thiểu16 GB, công tắc và nguồn phù hợp. Servo miệng là tùy chọn ID15.
  2. Thêm đầu đọc, cáp USB dữ liệu, đồng hồ vạn năng, tua vít nhỏ, vít M2/M2.5 và dây cách điện. Kiểm tra định mức giắc/nguồn trước mua; HD1910 dùng bộ khác.

Trước khi tiếp tục

Đã nhận diện từng bo, servo, giắc và nguồn.

2. Kiểm tra tệp in và phân loại

  1. Lấy microduck3D打印.3mf ở thư mục gốc nguồn cố định. Xem mọi plate bằng slicer, tham khảo video về hướng đặt và PLA theo tài liệu.
  2. Đường microduck/cad cũ trong README đã bị xóa. Dùng liên kết3MF thực tế, không thay bằng mesh mô phỏng. Gỡ support, thử khít một servo trước.

Trước khi tiếp tục

Phần trái/phải riêng, lỗ lắp không phải ép.

3. Đặt ID từng servo riêng

  1. Chỉ nối một servo chưa lắp vào giao diện có nguồn tương thích. Dynamixel Wizard2.0: Protocol2.0, scan baud thực tế, đặt ID rồi1 Mbps và Return Delay Time0. Scan lại và dán nhãn.
  2. Phải ankle/knee/hip pitch/roll/yaw là1–5, trái6–10;11 head pitch,12 neck pitch,13 head yaw,14 head roll. Không tắt bảo vệ để che lỗi điện áp.

Trước khi tiếp tục

14 ID duy nhất trả lời ở1 Mbps.

4. Căn tâm rồi mới lắp horn

  1. Đưa trục trống về center bằng Wizard, tắt torque rồi ngắt nguồn. Giữ vị trí khi căn horn theo mốc cơ khí gốc.
  2. Lắp idler và vít đúng loại; vít horn không chọc vào bánh răng, idler không bị siết kẹt. Kiểm tra chuyển động bằng tay khi mất nguồn.

Trước khi tiếp tục

Mọi khớp căn đúng và quay tự do trong giới hạn.

5. Lắp bàn chân, chân rồi thân

  1. Bắt đầu ankle phải1/trái6, sau đó knee2/7, hip pitch3/8, roll4/9, yaw5/10. Trái/phải tính theo robot.
  2. Nối hông, thân, khung pin. Luồn dây trước siết nắp, kiểm tra kéo căng/kẹp dây suốt hành trình. Đối chiếu vị trí vít trong video/bài gốc.

Trước khi tiếp tục

Đúng thứ tự ID, không kẹp hoặc kéo dây.

6. Lắp cổ, đầu và điện tử

  1. Đối chiếu exploded view cho11–14, lắp Pi, OpenRB, IMU. Giữ hướng IMU của đúng lộ trình, không lấy rotation từ robot khác.
  2. Để tiếp cận USB, microSD và công tắc. Cố định bo, bọc tiếp điểm hở, kiểm tra chuyển động đầu trước đóng vỏ.

Trước khi tiếp tục

Bo chắc, đầu không kéo căng cáp.

7. Đo các đường nguồn

  1. Rút pin. Nối Pi–OpenRB bằng USB dữ liệu, nối bus XL330 theo pinout nhà sản xuất. Pi cần5 V ổn áp; kiểm tra ground chung và chọn nguồn OpenRB.
  2. XL330 cho phép3.7–6.0 V, khuyến nghị5.0 V. Đo cả mức tối đa lúc pin đầy, không chỉ đọc nhãn. Không cấp pin2S trực tiếp vào XL330 hoặc Pi; giữ bảo vệ điện áp.

Trước khi tiếp tục

Đã đo đúng cực, thông mạch và hai mức nguồn.

8. Đấu IMU và kiểm tra cách điện

  1. Kiểm tra định mức BNO08x rồi nối Pi3.3 V,GND,SDA GPIO2/chân vật lý3,SCL GPIO3/chân5. Phân biệt VIN và3V3 trên module.
  2. Dây I²C ngắn, hướng gắn chắc, mối hàn rõ. Ảnh placeholder không xác định thứ tự chân; giữ vỏ dễ mở khi kiểm tra đầu.

Trước khi tiếp tục

Không chập, đảo giắc hoặc sensor lỏng.

9. Kiểm hash rồi ghi image

  1. Tải microduck.img.xz từ image.v1 của tác giả. Tính SHA-256 và so giá trị dưới; đó là checksum nhà phát hành, không phải trang đã boot thử.
  2. Raspberry Pi Imager: Pi Zero2W → Use custom → image → đúng thẻ. Không OS customization cho image này; write/verify rồi tháo an toàn. Thẻ được chọn sẽ bị xóa.
SHA-256: 096885dc32fb5b1db2ad69ba6bea868d8ab988f2b47c0d884eb63ba0dfdcb5c4
shasum -a 256 microduck.img.xz

Trước khi tiếp tục

Checksum khớp, Imager xác minh thành công.

10. Wi-Fi2.4 GHz và đăng nhập đầu

  1. Sửa bootfs/network-config với country code, SSID, mật khẩu, giữ thụt dòng YAML. Pi này dùng2.4 GHz, lời khuyên5 GHz của KISS không áp dụng. Màn hình/bàn phím và nmcli là cách thay thế được nêu.
  2. Đợi1–3 phút lần boot đầu. Dùng microduck.local hoặc IP router. Tài khoản image user/password phải đổi ngay bằng passwd; máy tính cùng mạng.
ssh user@microduck.local
passwd

Trước khi tiếp tục

SSH bằng mật khẩu mới và IP đã biết.

11. Kiểm bus, hướng và model

  1. Trước chuyển động, xem serial device và đủ ID. Khi controller dừng, kiểm I²C bus1; BNO08x thường0x4a/0x4b nhưng địa chỉ không chứng minh đúng hướng.
  2. Khớp mounting với IMU_MOUNT_QUAT và joint offsets, nhất là gối. Dùng walk.onnx của image này. Sửa ID thiếu, khớp ngược hoặc IMU sai trước torque.
ls /dev/serial/by-id/
i2cdetect -y 1

Trước khi tiếp tục

Servo, căn cơ khí, sensor và model cùng bộ.

12. Đi ngắn, dừng và tắt máy

  1. Đỡ robot ở chỗ trống trước chạy lệnh dưới: startup bật torque và về neutral. Pose đúng mới thử v và phím mũi tên nhỏ; x đưa tốc độ0,q dừng loop,i bật/tắt IMU info.
  2. Cần thì chạy src/stop.py từ SSH thứ hai. sudo shutdown -h now, chờ xong mới cắt nguồn. Gamepad mode của image tắt Wi-Fi khi pad nối; ngắt pad để SSH trở lại. Ghi phiên bản và kết quả thực tế.

Chạy trên Pi

cd ~/microduck
PYTHONPATH=src .venv/bin/python src/main.py

Dừng từ SSH thứ hai

cd ~/microduck
PYTHONPATH=src .venv/bin/python src/stop.py

Tắt Pi

sudo shutdown -h now

Trước khi tiếp tục

Dừng tin cậy; sửa chuyển động lạ hoặc reset nguồn trước thử lại.

Tiếp tục lắp

Nguồn và ngày kiểm tra

Bản nguồn được kiểm tra 30 tháng 10, 2026 · Đã kiểm tra nguồn

  1. Nguồn gốc 1 · github.com / README.md ↗
  2. Nguồn gốc 2 · github.com / microduck3D打印.3mf ↗
  3. Nguồn gốc 3 · www.youtube.com / watch ↗
  4. Nguồn gốc 4 · github.com / README.md ↗
  5. Nguồn gốc 5 · github.com / README.md ↗
  6. Nguồn gốc 6 · emanual.robotis.com / xl330-m288 ↗
  7. Nguồn gốc 7 · emanual.robotis.com / openrb-150 ↗
  8. Nguồn gốc 8 · github.com / README.md ↗
  9. Nguồn gốc 9 · github.com / image.v1 ↗
  10. Nguồn gốc 10 · github.com / main.py ↗
  11. Nguồn gốc 11 · github.com / stop.py ↗