Cảnh báo tàu hỏa

Đóng mở barrel tàu hỏa cùng với một cảnh báo sử dụng đèn led

Cảnh báo tàu hỏa

Trong bài viết này chúng ta hãy cùng tìm hiểu về chức năng nhận biết ánh sáng trên Micro:Bit, cách điều khiển động cơ servo và ứng dụng chúng vào việc đóng mở barrel tàu hỏa cùng với một cảnh báo sử dụng đèn led.

Chuẩn bị

  • BBC Micro:Bit.
  • 2 đèn led màu đỏ.
  • 1 động cơ RC servo.
  • 1 ống hút.
  • Kẹp cá sấu.
  • Bìa carton, kéo, thước, súng bắn keo.

Chức năng nhận biết ánh sáng

  • Micro không được trang bị cảm biến ánh sáng. Tuy nhiên, nó sử dụng các đèn led của ma trận led một cách đặc biệt, nhờ đó có thể ước lượng được ánh sáng xung quanh.
  • Giá trị của bộ ước lượng ánh sáng thu được từ 0-255.

    • Đối với ánh sáng mạnh: Giá trị này tiến gần đến 255.
    • Đối với ánh sáng yếu: Giá trị này tiến gần về 0.

Động cơ RC servo

  • Động cơ RC servo là loại động cơ nhỏ, thường được tích hợp trong những mô hình nhỏ và đơn giản.
  • Tuy nhiên, nó chỉ có khả năng quay từ 0-180 độ.
  • Bảng kết nối:
RC servoMicro:Bit
Chân GND (đen)Chân GND
Chân VCC (đỏ)Chân 3.3V
Chân DK (cam)Chân P0

Thiết kế barrel tàu hỏa

  • Tiến hành cắt các tấm carton:

    • Tấm đế: 7cm x 7cm.
    • Cột: 4cm x 17,5cm.
    • 2 thanh chéo: 1,5cm x 10cm.
    • Thanh led: 2cm x 7cm.
  • Dùng thước cứng, bẻ các tấm carton theo đường kẻ.

Tiến hành gắn kết

  • Trang trí ống hút.
  • Gắn ống hút vào động cơ RC servo.
  • Dùng súng bắn kéo gắn kết:

    • Gắn 2 led vào thanh led.
    • Gắn cột lên tấm đế bằng súng bắn keo.
    • Gắn RC servo lên 1 cạnh của cột.
    • Gắn 2 thanh chéo lên đỉnh của cột.
    • Gắn thanh led vào thân của cột.

Kết nối mô hình với Micro:Bit

  • Sử dụng kẹp cá sấu kết nối:

    • Động cơ RC servo như hướng dẫn phía trên.
    • Kết nối 2 chân (-) của 2 led với nhau và với GND.
    • 2 chân (+) của 2 led lần lượt kết nối với chân P1, P2.
  • Các bạn có thể nhìn qua hình đấu nối, để chắc chắn kết nối chính xác.

Hướng dẫn lập trình và mô hình thực tế

  • Truy cập vào địa chỉ https://makecode.microbit.org/
  • Sử dụng một số hàm cơ bản sau:

    • forever: nhóm Basic.
    • set item to 0: nhóm Variables.
    • light level: nhóm Input.
    • if then else: nhóm Logic.
    • So sánh >: nhóm Logic.
    • item: nhóm Variables.
    • digital write pin P0 to 0: nhóm Pins.
    • servo write pin P0 to 100: nhóm Pins.
    • for: nhóm Loops.
    • pause: nhóm Basic.
  • Tham khảo chương trình mẫu: tại đây.