Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tổng Quan Dự Án Data Logger ESP32-C6

LINK DATA Google Sheet: https://drive.google.com/drive/folders/1tRtYwRLFDgoCqyweKTJ5jtmrRs-Uq_rW?usp=sharing

Mục Lục

  1. Dự án là gì
  2. Linh kiện sử dụng
  3. Sơ đồ chân nối
  4. Quy trình hoạt động
  5. Cấu hình WiFi và Google Sheet
  6. Cấu trúc file code
  7. Cách nạp và kiểm tra
  8. Tóm tắt nhanh

1. Dự án là gì

Dự án là một hệ thống data logger dùng ESP32-C6 để theo dõi:

  • Nhiệt độ.
  • Độ ẩm.
  • Điện áp nguồn/pin.
  • Dòng điện tiêu thụ.

Dữ liệu được hiển thị trên:

  • OLED 0.91 inch.
  • Trang web chạy trên ESP32-C6.
  • Google Sheet qua Google Apps Script.

Mục tiêu chính: theo dõi môi trường và tình trạng nguồn từ xa, đồng thời lưu dữ liệu để xem lịch sử.

Trở về đầu trang


2. Linh kiện sử dụng

Linh kiện Vai trò
ESP32-C6 Vi điều khiển trung tâm, chạy WiFi/web/server
AHT30 Đo nhiệt độ và độ ẩm
OLED 0.91 SSD1306 Hiển thị nhanh tại thiết bị
INA226 Đo điện áp và dòng điện
Mạch hạ áp buck Hạ nguồn pin xuống mức cấp cho ESP32-C6
Google Sheet Lưu dữ liệu lịch sử
Google Apps Script Nhận dữ liệu từ ESP32-C6 và ghi vào Sheet

Trở về đầu trang


3. Sơ đồ chân nối

AHT30, OLED và INA226 dùng chung bus I2C:

Thiết bị Chân thiết bị ESP32-C6
AHT30 VCC 3V3
AHT30 GND GND
AHT30 SDA GPIO6
AHT30 SCL GPIO7
OLED VCC 3V3
OLED GND GND
OLED SDA GPIO6
OLED SCL GPIO7
INA226 VCC 3V3
INA226 GND GND
INA226 SDA GPIO6
INA226 SCL GPIO7

Đường đo nguồn bằng INA226:

Pin+ -> INA226 IN+ -> INA226 IN- -> Buck VIN+ -> Buck OUT+ -> ESP32-C6 5V
Pin- -> Buck GND -> ESP32-C6 GND
INA226 VBUS -> nối chung với INA226 IN+
INA226 GND -> GND chung

Lưu ý: khi vừa cắm USB vừa cấp pin, cần tránh cấp đồng thời nhiều nguồn vào chân 5V nếu chưa chắc mạch nguồn cho phép.

Trở về đầu trang


4. Quy trình hoạt động

Luồng chính:

ESP32-C6 khởi động
-> Khởi tạo OLED, AHT30, INA226
-> Đọc WiFi đã lưu
-> Nếu có WiFi: kết nối vào mạng
-> Nếu chưa có WiFi: phát AP cấu hình
-> Đọc nhiệt độ, độ ẩm, điện áp, dòng điện
-> Hiển thị OLED
-> Cập nhật web
-> Gửi dữ liệu lên Google Sheet theo chu kỳ

Khi chạy bình thường:

  • OLED hiển thị ngắn gọn nhiệt độ và độ ẩm.
  • Web hiển thị đầy đủ nhiệt độ, độ ẩm, điện áp, dòng điện.
  • Google Sheet lưu dữ liệu theo thời gian.

Trở về đầu trang


5. Cấu hình WiFi và Google Sheet

Khi chưa có WiFi lưu trong ESP32-C6:

  1. ESP32-C6 phát WiFi tên HE THONG GIAM SAT.
  2. Kết nối điện thoại/máy tính vào WiFi này.
  3. Truy cập 192.168.4.1.
  4. Nhập WiFi, mật khẩu và Google Apps Script ID.
  5. Lưu cấu hình, ESP32-C6 sẽ restart.

Khi muốn đổi WiFi:

  • Vào web giám sát.
  • Mở phần cài đặt.
  • Bấm nút reset/đổi WiFi.
  • ESP32-C6 xóa cấu hình cũ và quay lại chế độ cấu hình.

Trở về đầu trang


6. Cấu trúc file code

Bản nên dùng để phát triển tiếp:

E:\HeThongNhung\project\main\esp32c6\mainV2

Các file chính:

File Nhiệm vụ
mainV2.ino Điểm bắt đầu chương trình, setup và loop
GlobalConfig.h Cấu hình chân, OLED, INA226 và biến chung
SensorManager.cpp Đọc AHT30 và INA226
DisplayManager.cpp Quản lý OLED
WifiApp.cpp WiFi, web server, API cấu hình
GoogleLogger.cpp Gửi dữ liệu lên Google Sheet
DeviceManager.cpp Điều phối phần cứng và cập nhật định kỳ
HtmlPages.cpp Giao diện web chính
WifiConfigPage.cpp Trang cấu hình WiFi ban đầu

File cần xem trước khi sửa:

  • Lỗi cảm biến: SensorManager.cpp
  • Lỗi OLED: DisplayManager.cpp
  • Lỗi WiFi/web: WifiApp.cpp
  • Lỗi Google Sheet: GoogleLogger.cpp
  • Đổi chân: GlobalConfig.h

Trở về đầu trang


7. Cách nạp và kiểm tra

  1. Mở Arduino IDE.
  2. Mở file:
E:\HeThongNhung\project\main\esp32c6\mainV2\mainV2.ino
  1. Chọn board ESP32-C6.
  2. Chọn đúng cổng COM.
  3. Upload.
  4. Mở Serial Monitor 115200.

Log nên thấy:

AHT30 OK
INA226 OK on shared I2C GPIO6/GPIO7
INA226 bus=...
GoogleSheet params temp=...
SEND OK: ...

Trở về đầu trang


8. Tóm tắt nhanh

Hệ thống dùng ESP32-C6 làm trung tâm. AHT30 đo nhiệt độ/độ ẩm, INA226 đo điện áp/dòng điện, OLED hiển thị nhanh tại thiết bị, web hiển thị đầy đủ dữ liệu và Google Sheet lưu lịch sử.

mainV2 là bản nên dùng để tiếp tục phát triển vì code đã tách module rõ hơn, dễ đọc hơn và dễ sửa hơn.

Trở về đầu trang

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages