Bỏ qua menu, tới nội dung chính
R
Robot.Edu.VN

Làm quen ThingBot

Mỗi bộ phận trên ThingBot ứng với khối lệnh nào, cách cấp nguồn pin, chương trình kiểm tra bo trước buổi học đầu và cách lái xe 4 bánh mecanum

Trang này dành cho buổi đầu cầm ThingBot: biết bộ phận nào điều khiển bằng khối nào, cấp nguồn đúng cách, rồi chạy một chương trình kiểm tra để chắc bo, động cơ và servo đều chạy trước khi học sinh bắt tay vào bài mẫu. Cách lắp khung xe xem video ở trang Về ThingBot.

Bộ phận nào, khối nào

ThingBot gồm hai mạch chồng lên nhau: mạch ThingBot (chip ESP32-C3, cổng USB Type-C) ở trên và mạch mở rộng ThingBotShield ở dưới. Hầu hết những thứ cần cắm đều nằm trên ThingBotShield.

Mạch ThingBotShield, đánh số từ 1 tới 9

Số trên ảnhBộ phậnĐiều khiển bằng
1Nút bấm SWread switch
2Cổng I2C 4 chânMàn OLED, cảm biến MPU6050 (thêm ngoại vi)
3Cổng PS2 6 chân, cắm bộ thu tay cầminit PS2 on ThingBot, nhóm PS2
4Cổng động cơ M1–M4set motor [M1] go [forward] at (60)
5Công tắc nguồnKhông có khối: bật để động cơ, servo có điện
6Jack nguồn pin (+ và −, tối đa 9 V)Không có khối
7Cổng S1–S5, mỗi cổng 3 chân GND – 5V – tín hiệuset servo [S1] to angle (90) degrees, module 3 chân
8Hai cổng 4 chân có chân GPIOCảm biến: DHT11, siêu âm (chân IO0, IO4)
9Còi nhỏplay note [C (Do)] octave [4] for (1) beats

Hai đèn LED 1, LED 2 trên bo điều khiển bằng set led [1] (100). Động cơ, servo, LED và còi đều được điều khiển qua chip PCA9685, nối với ESP32-C3 bằng đường I2C (chân 8 và 9). Vì vậy đừng dùng chân 8, 9 cho cảm biến.

Nguồn điện

  • Bộ kit dùng 2 viên pin 18650 trong khay pin, cắm vào jack nguồn. Pin sạc đầy cho khoảng 8,4 V, dưới mức tối đa 9 V của bo. Lắp pin đúng chiều theo ký hiệu + và − in trên pin và trên khay.
  • Dây USB chỉ nuôi mạch và dùng để nạp chương trình. Muốn động cơ hay servo chạy thì phải có pin và bật công tắc nguồn (số 5).
  • Dấu hiệu pin yếu: robot chạy chậm dần, bo tự khởi động lại (chương trình chạy lại từ đầu) mỗi khi động cơ bắt đầu quay, servo giật. Khi đó sạc pin trước khi nghi chương trình sai.
  • Rút pin hoặc tắt công tắc khi cất robot.

Chương trình kiểm tra ThingBot

Chạy chương trình này một lần với mỗi robot trước buổi học đầu, hoặc mỗi khi robot "không chịu chạy". Mất khoảng 15 phút.

Chuẩn bị: robot đã lắp động cơ vào M1–M4 (xe 2 bánh thì chỉ M1, M2), một servo cắm cổng S1 (dây nâu vào GND, dây đỏ vào 5V, dây cam hoặc vàng vào chân tín hiệu S1), pin đã sạc. Kê robot lên hộp hoặc giá để bánh quay tự do, không chạy trên mặt bàn.

Chương trình kiểm tra: còi chào, đèn LED 1 chờ bấm SW, rồi lần lượt thử M1–M4 và servo S1

📥 Tải kiem-tra-thingbot.tb

khi Arduino khởi động
  begin serial at [115200] baud
  play note [C (Do)] octave [4] for (0.5) beats
  play note [E (Mi)] octave [4] for (0.5) beats
  play note [G (Sol)] octave [4] for (1) beats
  serial print line (ThingBot san sang. Bam nut SW de kiem tra.)

vòng lặp Arduino
  set led [1] (100)                ← LED 1 sáng: đang chờ bấm SW
  đợi đến khi <read switch>
  set led [1] (0)
  set led [2] (100)                ← LED 2 sáng: đang kiểm tra
  thử động cơ
  thử servo
  set led [2] (0)
  serial print line (Xong. Bam SW de thu lai.)

định nghĩa thử động cơ             ← lặp lại cho M2, M3, M4
  serial print line (M1 chay tien)
  set motor [M1] go [forward] at (60)
  đợi (1) giây
  set motor [M1] go [forward] at (0)
  đợi (0.5) giây

định nghĩa thử servo
  serial print line (Servo S1: 0 - 180 - 90 do)
  set servo [S1] to angle (0) degrees,   đợi (1) giây
  set servo [S1] to angle (180) degrees, đợi (1) giây
  set servo [S1] to angle (90) degrees,  đợi (1) giây

Các bước:

  1. Mở tệp bằng Tập tin → Load from your computer. Dự án đã chọn sẵn bo ThingBot và ngoại vi Serial.
  2. Bật công tắc nguồn pin (động cơ chỉ chạy sau khi bấm SW nên bật trước vẫn an toàn). Cắm USB, bấm Connect, chọn cổng của bo, bấm Upload, chờ báo Your board is ready to go.
  3. Mở khung Monitor. Dòng chào có thể đã in trước khi bạn mở Monitor, không sao: các dòng sau sẽ hiện khi bấm SW.
  4. Bấm nút SW. Mỗi bánh quay 1 giây theo thứ tự M1 → M2 → M3 → M4, Monitor ghi bánh nào đang chạy. Sau đó servo quay về 0°, sang 180° rồi về giữa 90°.
  5. Ghi kết quả vào bảng dưới. Bấm SW lần nữa để thử lại.

Đọc kết quả:

Thấy gìNghĩa là
Còi phát 3 nốt khi vừa nạp xongBo và chip PCA9685 chạy tốt
LED 1 sáng, bấm SW thì LED 1 tắt, LED 2 sángNút SW và hai LED tốt
Bấm SW mà Monitor không hiện chữChưa chọn đúng cổng của bo trong Monitor
Monitor ghi "M2 chay tien" mà bánh không quayChưa bật công tắc, pin yếu, hoặc lỏng giắc M2
Bánh quay nhưng ngược chiều tiếnĐảo giắc cắm của động cơ đó, hoặc nhớ dùng backward cho bánh đó
Servo không quay hoặc rungCắm ngược chiều chân, hoặc pin yếu (servo lớn MG996R kéo nhiều điện)
Bo khởi động lại, còi phát lại 3 nốtPin yếu: sạc pin

Phiếu ghi cho từng robot (điền theo những gì thấy ở bước 4):

CổngBánh nào (trước trái, trước phải, sau trái, sau phải)Quay đúng chiều tiến?
M1
M2
M3
M4

Các bài mẫu trong khóa giả định M1 là bánh trái, M2 là bánh phải và forward là tiến. Nếu robot của bạn khác, đổi giắc cho khớp hoặc sửa cổng trong khối.

Xe 4 bánh mecanum

Bánh mecanum có các con lăn xiên, nhờ đó xe đi ngang được mà không cần quay đầu. Bánh phải lắp đúng vị trí như hình ở trang Về ThingBot (mục Bộ kit ThingBot 2024), nếu không xe vẫn tiến, lùi, xoay được nhưng không đi ngang được.

Dùng phiếu ghi ở trên để biết cổng nào là bánh nào, rồi đặt chiều cho từng bánh theo bảng (T = forward, L = backward, cùng một tốc độ):

Muốn xeTrước tráiTrước phảiSau tráiSau phải
TiếnTTTT
LùiLLLL
Đi ngang sang phảiTLLT
Đi ngang sang tráiLTTL
Xoay tại chỗ sang phảiTLTL
Xoay tại chỗ sang tráiLTLT

Nếu lệnh "đi ngang" lại làm xe xoay tròn hoặc đứng yên rung, hai bánh đang lắp đổi chỗ cho nhau: kiểm tra lại hướng con lăn. Bài R4U — Robot cảm nhận V3 có cách lái bằng tay PS2: thêm hai nút L1, R1 cho đi ngang là một thử thách mở rộng hay.

Gặp lỗi khác: xem Sửa lỗi thường gặp.

Tiếp theo: Khối lệnh cơ bản.

Nguồn học liệu: ThingEdu.