Bài 4: Đèn ngủ thông minh - MakerEdu Inventor Kit for Micro:bit
Mô tả dự án
Trong bài này các bạn sẽ học cách sử dụng "cảm biến ánh sáng" tích hợp sẵn trên mạch Micro:bit để làm ứng dụng đèn ngủ thông minh bật tắt tự động theo ánh sáng phòng.
... hình thumnail
Các bước thực hiện
Danh sách thiết bị
- 1x Cáp MicroUSB.
- 1x Bo mạch Micro:Bit.
- 1x MakerEdu Shield for micro:bit
- 1x [MKE-M01] - LED Trắng
Sơ đồ kết nối
MakerEDU Shield | Thiết bị |
---|---|
Port P0 | [MKE-M01] - LED Trắng |
Chuẩn bị trước dự án
- Tham khảo: Cách kết nối và nạp chương trình cho mạch Micro:bit trên máy tính với phần mềm MakeCode - MakerLab Wiki.
Các bước thực hiện
- Tạo một dự án mới trong phần mềm MakeCode.
- Bạn có thể lập trình kéo thả từng mã khối theo hình dưới trong mục [Blocks] hoặc copy đoạn code dưới và paste vào mục [JavaScript] để tiến hành nhanh hơn.
- Nạp chương trình vào Micro:Bit.
Blocks
Javascript
// Khai báo các biến let valueLight = 0 // Khối "on start" - thực hiện 1 lần khi khởi động basic.showIcon(IconNames.Happy) basic.pause(1000) basic.clearScreen() // Khối "forever" - vòng lặp chính của chương trình basic.forever(function () { valueLight = Math.map(input.lightLevel(), 0, 255, 0, 100) led.plotBarGraph( valueLight, 100 ) if (valueLight >= 50) { pins.digitalWritePin(DigitalPin.P0, 1) } else { pins.digitalWritePin(DigitalPin.P0, 0) } })
Giải thích code
Chương trình sẽ hoạt động như sau:
Trong khối [ on start ]:
- Micro:bit hiển thị "mặt cười" trong 1 giây rồi tắt.
Phần khởi động này nói cho chúng ta biết Micro:bit đã sẵn sàng.
Trong khối [ forever ]:
- Micro:bit đọc giá trị cảm biến ánh sáng từ khối [ light level ] với giá trị trả về trong khoảng "từ 0 đến 255".
- Sau đó giá trị được "ánh xạ" bằng khối [ map... ] sang thang đo (%) "từ 0% đến 100%" để lưu vào biến "valueLight".
- Cho hiển thị mức giá trị trong biến "valueLight" lên màn hình Led bằng khối [ plot bar graph of... ].
- Cuối cùng, nếu giá trị
valueLight ≥ 50%
thì điều khiển chânP0
xuất mứcHIGH
, để bật module Led đang kết nối. Ngược lại là mứcLOW
, để tắt module Led.
Kết quả
...
... hình dự án