LightsOnCNU - Utilitar - Vrancea - Lucrari 2024 Nationala

Informatii generale

Descriere

LightsOnCNU este o aplicație web creată pentru a controla luminile din sala de festivități a Colegiului Național „Unirea” Focșani.

Tehnologii

Am folosit PLC-uri Arduino Opta cu capabilități Ethernet pentru a face posibil controlul luminilor de la distanță. Am ales să folosim un Raspberry Pi pentru a hosta un site web și a oferi utilizatorilor o experiență interactivă. Acesta funcționează și ca server central ce controlează toate PLC-urile Arduino, printr-un protocol de comunicare creat de noi.
Pentru comunicarea dintre Server și Arduino, am realizat o rețea locală la care am conectat, prin Ethernet, Raspberry Pi-ul și toate dispozitivele Arduino. De asemenea, am configurat IP-uri statice în setările serverului DHCP. Am creat un protocol bidirecțional de comunicare, bazat pe AES-256-CBC pentru criptarea mesajului și pe HMAC-SHA256 pentru a dovedi autenticitatea mesajului, realizând în acest mod un protocol sigur. Datele criptate sunt transmise prin socket-uri TCP. PLC-urile primesc date pe port-ul 9090, în timp ce Serverul folosește port-ul 9091 pentru a primi mesaje de la dispozitive Arduino.
Serverul este scris în Node.js și folosește următoarele tehnologii:
- Express pentru webserver
- Socket.IO pentru comunicarea în timp real dintre webserver și utilizatorii web
- Modulul Node.js net-ping, folosit pentru a verifica dacă PLC-urile pot fi accesate din rețeaua locală

Cerinte sistem

Node.js v20 sau mai recent
128MB stocare
1GB RAM

Realizatori

Vlad-Robert Baciu

  • Scoala: Colegiul Național „Unirea”
  • Clasa: 11
  • Judet: Vrancea
  • Oras: Câmpineanca

Cristian Gurguiatu

  • Scoala: Colegiul Național Unirea
  • Clasa: 11
  • Judet: Vrancea
  • Oras: Focsani

Screenshots

1 Like