Lời mở đầu
Internet vạn vật (IoT) đang phát triển nhanh chóng trở thành một phần thiết yếu trong
cuộc sống hiện đại. IoT kết nối các thiết bị thông thường với Internet, cho phép chúng giao
tiếp chia sẻ dữ liệu với nhau. Nhờ vậy, chúng ta thể điều khiển các thiết bị từ xa, tự
động hóa các tác vụ và thu thập dữ liệu thông tin để đưa ra quyết định sáng suốt hơn.
Tài liệu này sẽ hướng dẫn bạn cách lập trình các dự án bản IoT nâng cao bằng
MicroPython - một ngôn ngữ đang trở nên rất phổ biến trong cộng đồng IoT Makers và các
ứng dụng liên quan đến trí tuệ nhân tạo (AI). Dòng vi điều khiển được sử dụng trong tài liệu
này ESP32 của Espressif, đang trở nên cực kỳ phổ biến trong cộng đồng kỹ thuật cũng
như các sản phẩm thương mại.
Thông qua 3 phần, 20 bài học bản 1 dự án IoT ứng dụng thực tế, bạn sẽ nắm vững
các khái niệm bản của lập trình, kiến thức về điện tử cũng như cách một giải pháp IoT
hoàn chỉnh hoạt động ra sao. Sau khi thực hành xong các nội dung trong cuốn sách này,
bạn có thể sáng tạo ra những ứng dụng thực tế phức tạp hơn theo ý thích của mình.
Bạn có thể download các chương trình mẫu sử dụng trong tài liệu này tại đường dẫn:
https://github.com/ohstem-public/micropython_examples/
OhStem Education - 2
Phần 1: Giới thiệu
Các thiết bị sử dụng
Các thiết bị được sử dụng trong các hướng dẫn của bộ tài liệu này bao gồm:
Thành phần
Số lượng
Chức năng
Mạch điều khiển
Yolo UNO hoặc
Yolo Node
1
Mạch lập trình dựa trên vi điều khiển ESP32, có thể giao tiếp với
các module và xử lý thông tin, điều khiển chúng.
Hỗ trợ kết nối BLE, WiFi và giao tiếp với IoT platform
LED Đơn
1
Đèn LED đơn sắc, hiển thị trạng thái
Buzzer
1
Còi báo, phát âm thanh báo hiệu
DHT20
1
Cảm nhận và đo nhiệt độ, độ ẩm của môi trường xung quanh
Rotary sensor
1
Cảm biến xoay analog, giúp nhận thông tin điều khiển từ người
Sound sensor
1
Cảm biến đo cường độ âm thanh
Light sensor
1
Cảm biến đo cường độ ánh sáng
Màn hình LCD
1602
1
Màn hình LCD đơn sắc, gồm 16 cột, 2 hàng chữ
Mini Fan
1
Quạt mini
Servo Mini
1
Động cơ Servo loại nhỏ
OhStem Education - 3
Mạch điều khiển Yolo UNO
Trong tài liệu này, chúng ta sẽ sử dụng Yolo UNO - một board điều khiển tương thích với
nền tảng Micropython, với rất nhiều chức năng được tích hợp sẵn trên mạch.
Yolo UNO sử dụng vi điều khiển ESP32 với thông số cấu hình mạnh mẽ:
CPU: Xtensa dual-core 32-bit 240 MHz
Bộ nhớ: 8MB PSRAM, 16MB Flash
Kết nối: Wi-Fi 802.11 b/g/n, Bluetooth v4.2 & BLE
Sơ đồ các chân IO của Yolo UNO
OhStem Education - 4
Mạch Yolo UNO được tích hợp sẵn nhiều thành phần chức năng:
Đèn LED đơn và LED màu RGB
Nút nhấn
12 x cổng mở rộng Grove để giao tiếp với các module chức năng
4 x cổng kết nối cho động cơ servo
1 x cổng I2C mini chuẩn QWIIC
Có 2 cách để cấp nguồn cho Yolo UNO:
Sử dụng cáp micro USB type C nối với máy tính (dùng khi lập trình) hoặc kết nối
với củ sạc điện thoại, sạc dự phòng
Sử dụng nguồn DC adapter hoặc pin điện áp 7-12V cắm vào jack tròn trên
board
Ngoài ra, bạn cũng thể sử dụng mạch lập trình Yolo Node dựa trên ESP32-C3 để thực
hành các bài hướng dẫn 2 mạch này khá tương đồng về chip vi điều khiển các
cổng kết nối tương tự nhau. Trong các bài hướng dẫn, phần kết nối IO cũng sẽ thêm
thông tin sử dụng với Yolo Node.
OhStem Education - 5