Skip to content

npquan29/iot-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

PROJECT IOT-2024

Project được thực hiện với các nền tảng NodeJS - ExpressJS, MySQL Workbench 8.0 CE, MQTT Broker, Arduino IDE, NextJS14 cùng các thư viện khác.

Cài đặt project

Tiến hành clone project bằng câu lệnh git clone trong terminal. Sau đó, thực hiện các câu lệnh sau trong terminal của Visual Studio Code:

  1. Vào thư mục server, sau đó cài đặt các thư viện của npm
npm install
  1. Vào thư mục iot-app, sau đó cài đặt các thư viện của npm
npm install

Arduino

  1. Cài đặt Arduino
  2. Arduino Configuration
  3. Bật tắt đèn
  4. Pub Sub dữ liệu bằng MQTT
  5. DHT11 với ESP32
  6. Light Sensor Module với ESP32
  7. Thay đổi các giá trị sau trong file "reconnectIOT.ino" ở folder arduino cho phù hợp với Wifi và MQTT Broker:
const char *ssid = "<YOUR_WIFI_SSID>";
const char *password = "<YOUR WIFI PASSWORD>";
const char *mqtt_server= "<YOUR HOST>";
const int mqtt_port = <YOUR MQTT PORT NUMBER>;
const char *mqtt_username = "<YOUR MQTT USERNAME>";
const char *mqtt_password = "<YOUR MQTT PASSWORD>";

Database trong MySQL

  • Tạo database với tên "iot", sau đó tạo 2 bảng: sensor(id, temperature, humidity, light, time) và action(id, device, status, time).
  • Kết nối MySQL với server trong file db.js trong folder server:
export const db = await mysql.createConnection({
    host: "<your host>",
    user: "<your user>",
    password: "<your password>",
    database: 'iot'
});     

MQTT trong Server

  • Kết nối với MQTT Broker:
const host = 'localhost';
const port = 1886;
const clientId = `mqtt_${Math.random().toString(16).slice(3)}`;

const connectUrl = `mqtt://${host}:${port}`;

export const client = mqtt.connect(connectUrl, {
    clientId,
    clean: true,
    connectTimeout: 4000,
    username: "<your mqtt username>",
    password: "<your mqtt password>",
    reconnectPeriod: 1000
});

Khởi chạy Front-end

  • Mở folder iot-app trong terminal và chạy câu lệnh:
npm run dev
  • Giao diện Dashboard: Dashboard
  • Giao diện Data Sensor: Data Sensor )
  • Giao diện Action History: Action History

Khởi chạy Back-end

  • Mở folder server trong terminal và chạy câu lệnh:
npm run server
  • Hiển thị trong terminal: Server

API Documentations

API Docs

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published