O'rnatish Qo'llanmasi

Loyihani o'rnatish va sozlash bo'yicha batafsil qo'llanma

Talablar

  • Node.js 18+ va npm
  • Docker va Docker Compose
  • Arduino IDE va ESP8266 board support
  • PostgreSQL (yoki Docker ishlatish)

Backend O'rnatish

Docker orqali (Tavsiya etiladi)

cd backend
cp .env.example .env
# .env faylini sozlang
docker compose up -d

Qo'lda o'rnatish

cd backend
npm install
cp .env.example .env
# .env faylini sozlang
npm run migrate
npm start

Backend http://localhost:3000 da ishga tushadi

Frontend O'rnatish

cd frontend
npm install
npm run dev

Frontend http://localhost:3001 da ishga tushadi

Default Login:

  • Username: admin
  • Password: admin123

⚠️ Production'da default parolni o'zgartiring!

Firmware O'rnatish

Arduino Library'larni O'rnatish

  1. Arduino IDE'ni oching
  2. Sketch → Include Library → Manage Libraries ga kiring
  3. Quyidagi library'larni o'rnating:
    • ESP8266WiFi (odatda o'rnatilgan)
    • RF24 (TMRh20) - ESP8266-compatible versiya kerak
    • DHT sensor library (Adafruit)
    • MPU6050 (Electronic Cats)
    • ArduinoJson (Benoit Blanchon)

Transmitter Firmware

  1. firmware/transmitter/transmitter.ino ni oching
  2. Sozlang:
    • TREE_ID: Har bir transmitter uchun 1, 2, yoki 3
    • SAMPLE_INTERVAL_MS: Default 30000 (30 soniya)
    • MQ2_ALERT_THRESHOLD: Kalibratsiya asosida sozlang
  3. Board: Tools → Board → NodeMCU 1.0 (ESP-12E Module)
  4. Upload qiling

Base Station Firmware

  1. firmware/base_station/base_station.ino ni oching
  2. Sozlang:
    • WIFI_SSID: Wi-Fi tarmoq nomi
    • WIFI_PASSWORD: Wi-Fi paroli
    • BACKEND_URL: Backend API URL (masalan: http://192.168.1.100:3000)
    • API_KEY: Backend .env dagi API_KEY bilan mos kelishi kerak
  3. Upload qiling

Hardware Yig'ish

Batafsil ma'lumot uchun Hardware Yig'ish bo'limiga qarang.

Tezkor Checklist

Base Station:

  • nRF24L01 ulangan (CE→D4, CSN→D8)
  • 3 ta LED ulangan (D1, D2, D3) rezistorlar bilan
  • Quvvat manbai ulangan

Transmitter (×3):

  • nRF24L01 ulangan
  • DHT11 ulangan (DATA→D3)
  • MQ-2 ulangan (A0→A0)
  • MPU6050 ulangan (SCL→D1, SDA→D2)

Test Qilish

Backend Test

curl http://localhost:3000/health

Frontend Test

  1. http://localhost:3001 ni oching
  2. admin / admin123 bilan login qiling
  3. Dashboard'da 3 ta daraxt ko'rinishini tekshiring

Production Deployment

Docker orqali (Tavsiya)

cd backend
docker compose -f docker-compose.prod.yml up -d

Batafsil ma'lumot uchun HTTPS Sozlash bo'limiga qarang.