4. Các bước giao tiếp cảm biến MQ2 (MQ3) và ESP32 (kèm theo hình ảnh các bước thực hiện và sơ đồ kết nối). Ở đây ta sẽ dùng Module cảm biến khí ga MQ2GAS. Đây là cảm biến indoor nên bạn phải để nó trong nhà ở nhiệt độ phòng. Mức khí GAS nhận được bạn đọc về ở đầu ra dạng Analog của nó. Với Arduino thì ta dùng các chân Analog của nó để đọc. Bước 1: Phần cứng chuẩn bị: • ESP32 • 1 Cảm biến MQ2 • Breadboard • Dây cắm Breadboard Bước 2: • Xác định chân pin để kết nối: Hình 1. Sơ đồ chân của MQ2 Hình 2. Sơ đồ chân ngõ ra của esp32 • Nối dây theo bảng này: Bảng 1. Nối dây ESP32 MQ2 G17 Dout 3.3V 5V GND GND • Sơ đồ kết nối giữa esp32 và mq2: Hình 3.Sơ đồ kết nối giữa MQ2 và ESP32 Hình 4. Ảnh kết nối giữa esp32 với MQ2 thực tế 5. Các bước thực hiện, giải thích code quá trình cập nhật dữ liệu lên server Thingspeak và kết quả thực hiện (video clip demo nếu có). Cách lấy API Thingspeak • Tương tự như cách giao tiếp với các server khác, Thingspeak sử dụng API và có 1 key để định danh người sử dụng. • Đầu tiên đăng kí và đăng nhập vào https:thingspeak.com Điền thông tin đăng kí: Chọn Continue để tạo tài khoản
Trang 1BỘ MÔN KỸ THUẬT MÁY TÍNH – VIỄN THÔNG
CƠ SỞ VÀ ỨNG DỤNG IOTS MMH: ITFA436064 Thời gian thực hiện: 2 buổi
1 So sánh server Thingspeak và Google Firebase
………
… ………
… ………
… ………
… ………
………
………
………
2 So sánh Amazon AWS IoT và Microsoft Azure IoT hub ………
… ………
… ………
… ………
… ………
………
………
………
3 Nguyên lý chuyển đổi và thông số của cảm biến MQ2 (MQ3) ………
………
Trang 24 Các bước giao tiếp cảm biến MQ2 (MQ3) và ESP32 (kèm theo hình ảnh các bước thực hiện và sơ đồ kết nối)
- Ở đây ta sẽ dùng Module cảm biến khí ga MQ2-GAS Đây là cảm biến indoor nên bạn phải để nó trong nhà ở nhiệt độ phòng Mức khí GAS nhận được bạn đọc về ở đầu ra dạng Analog của nó Với Arduino thì ta dùng các chân Analog của nó để đọc
Bước 1: Phần cứng chuẩn bị:
ESP32
1 Cảm biến MQ2
Breadboard
Dây cắm Breadboard
Bước 2:
Xác định chân pin để kết nối:
Hình 1 Sơ đồ chân của MQ2
Trang 3ESP32 MQ2
Sơ đồ kết nối giữa esp32 và mq2:
Hình 3.Sơ đồ kết nối giữa MQ2 và ESP32
Hình 4 Ảnh kết nối giữa esp32 với MQ2 thực tế
Trang 45 Các bước thực hiện, giải thích code quá trình cập nhật dữ liệu lên server Thingspeak và kết quả thực hiện (video clip demo nếu có)
- Cách lấy API Thingspeak
Tương tự như cách giao tiếp với các server khác, Thingspeak sử dụng API và có 1 key để định danh người sử dụng
Đầu tiên đăng kí và đăng nhập vào https://thingspeak.com/
- Điền thông tin đăng kí:
- Chọn Continue để tạo tài khoản
Hình 5 Giao diện đăng kí tài khoản Thingspeak
Vào Channels – My channels- New channels
Trong new channel Tạo tên bảng của bạn Các trường cần hiển thị Ở đây mình sử dụng 3 trường là lpg_gas, co_gas và smoke_g Nhấn Save channel để hoàn thành
Trang 5 Chuyển qua tap API Keys để lấy key và example Các bạn có thể copy Example và dùng postman để kiểm thử
Copy key bỏ vào trong code
- Gửi kết quả cuThingspeak với ESP32 HTTP
Các bước như sau:
Trang 6 Đầu tiên khởi tạo 1 Url chứa đường dẫn và api key:
String UrlThingspeak = "https://api.thingspeak.com/update?api_key=J69MXGIE0KLMA27C";
Tiếp đó, sau khi đọc nhiệt độ, độ ẩm, cần conver chúng từ float sang string bằng sprintf sprintf(para,"&field1=%6.2f&field2=%6.2f",t,h);
Tiếp tới cộng 2 String lại để đc Url hoàn chỉnh String Url = UrlThingspeak + String(para);
Cuối cùng sử dụng hàm http request để truyền kết quả lên
httpGETRequest(Url.c_str());
Full code:
Trang 7Giải thích code:
- Kết quả thực hiện trên Arduino IDE
- Kết quả thực hiện trên web ThingSpeak
Trang 8- Link video demo kết quả thực hiện
6 Các bước thực hiện, giải thích code quá trình cập nhật dữ liệu lên Google Firebase và hình ảnh kết quả thực hiện (video clip demo nếu có)
Bước 1: Thiết lập Bảng điều khiển Google Firebase
Đầu tiên, nhập https://firebase.google.com/ vào tab tìm kiếm của trình duyệt và nhấn enter
Thao tác này sẽ mở trang chính của Firebase Nhấp vào “Go to console” như được tô sáng trong hộp hình chữ nhật màu đỏ
Trang 9 Chọn Add Project Viết tên dự án của bạn Nhớ đánh dấu vào thỏa thuận thời hạn
Firebase Bây giờ bấm vào 'Tiếp tục'
Bây giờ hãy bật 'Google Analytics cho dự án này' bằng cách vuốt nút trượt Nhấp vào 'Tiếp tục' để tiếp tục
Trang 10 Bây giờ chon Default Ancount for FireBase Chọn Creat project
Trang 11Dự án mới tạo của bạn sẽ mở ra.
Bước 2: Lấy key ủy quyền và máy chủ Firebase
Chuyển đến biểu tượng cài đặt và nhấp vào 'Cài đặt dự án'
Bây giờ, hãy chuyển đến 'Tài khoản dịch vụ' và nhấp vào 'Tạo khóa riêng tư mới'
Trang 12 Sau đó, chuyển đến 'Bí mật cơ sở dữ liệu' Bạn sẽ có thể xem khóa bí mật được liên kết với dự
án của mình Đây là khóa ủy quyền duy nhất mà bạn sẽ lưu và sử dụng sau này trong mã chương trình Giữ bí mật và không chia sẻ với bất kỳ ai, nếu không bảo mật dự án của bạn sẽ
bị xâm phạm
Tiếp theo, trong tab Xây dựng, hãy chuyển đến 'Cơ sở dữ liệu thời gian thực' Sau đó nhấp vào 'Tạo cơ sở dữ liệu'
Sau khi cài đặt vị trí của bạn, hãy chọn 'Bắt đầu ở chế độ Khóa' rồi nhấp vào nút Bật Cài đặt
cơ sở dữ liệu của bạn hiện đã hoàn tất Sao chép văn bản được hiển thị trong hộp được đánh dấu bên dưới Lưu nó là tốt Điều này sẽ đóng vai trò là máy chủ lưu trữ Google Firebase của bạn mà chúng tôi sẽ kết hợp trong mã chương trình của chúng tôi
Trang 13Bước 3: Thiết lập Arduino IDE Chọn Board để nạp code
Chọn cổng com để nạp code
Trang 14Sau khi chọn Board và cổng com ta bắt đầu nạp code
Trang 15Bước 4: Code và giải thích
Full code:
Giải thích code:
Trang 16Hình ảnh kết quả thực hiện:
Kết quả thực hiện trên Arduino IDE
Kết quả thực hiện trên Google FireBase:
Link video demo kết quả:
Trang 17Tài liệu tham khảo (liệt kê theo đúng chuẩn IEEE)
Hình ảnh làm việc nhóm