This shows you the differences between two versions of the page.
pm:prj2024:ccontasel:yannick.koning [2024/05/25 21:15] yannick.koning [Software Design] |
pm:prj2024:ccontasel:yannick.koning [2024/05/26 20:11] (current) yannick.koning [Hardware Design] |
||
---|---|---|---|
Line 21: | Line 21: | ||
</note> | </note> | ||
- | {{schema_electrica_water_disp.png}} | + | {{schema_electrica_water_disp.png?769}} |
<note tip> | <note tip> | ||
Line 86: | Line 86: | ||
* Trimite un mesaj MQTT dacă pompa a fost activată de mai multe ori. | * Trimite un mesaj MQTT dacă pompa a fost activată de mai multe ori. | ||
- | ==Concepte Folosite | + | ===== Concepte Folosite ===== |
**1. GPIO (General Purpose Input/Output)** | **1. GPIO (General Purpose Input/Output)** | ||
- | * **Pini de Senzori și Actuatori**: Utilizarea pinilor GPIO pentru a controla senzorii și pompa de apă. | + | * **Pini de Senzori și Actuatori**: Utilizarea pinilor GPIO pentru a controla senzorii și pompa de apă. |
* **Pini Definiți**: | * **Pini Definiți**: | ||
* `sensorPower` (pin 13): Controlul alimentării senzorului de nivel al apei. | * `sensorPower` (pin 13): Controlul alimentării senzorului de nivel al apei. | ||
Line 99: | Line 99: | ||
**2. UART (Universal Asynchronous Receiver-Transmitter)** | **2. UART (Universal Asynchronous Receiver-Transmitter)** | ||
- | * **Comunicare Serială**: Utilizarea interfeței seriale pentru a debuga și monitoriza activitatea sistemului. | + | * **Comunicare Serială**: Utilizarea interfeței seriale pentru a debuga și monitoriza activitatea sistemului. |
* **Operații UART**: | * **Operații UART**: | ||
* `Serial.begin(9600)`: Inițializarea comunicării seriale la o viteză de 9600 bps. | * `Serial.begin(9600)`: Inițializarea comunicării seriale la o viteză de 9600 bps. | ||
Line 105: | Line 105: | ||
**3. ADC (Analog-to-Digital Converter)** | **3. ADC (Analog-to-Digital Converter)** | ||
- | * **Citirea Senzorului de Nivel al Apei**: Utilizarea pinului analogic pentru a citi valorile de la senzorul de nivel al apei. | + | * **Citirea Senzorului de Nivel al Apei**: Utilizarea pinului analogic pentru a citi valorile de la senzorul de nivel al apei. |
* **Operații ADC**: | * **Operații ADC**: | ||
* `analogRead(sensorPin)`: Citirea valorii analogice de la pinul senzorului pentru a determina nivelul apei. | * `analogRead(sensorPin)`: Citirea valorii analogice de la pinul senzorului pentru a determina nivelul apei. | ||
**4. Timere** | **4. Timere** | ||
- | * **Managementul Timpului**: Utilizarea funcțiilor de delay și millis pentru a gestiona temporizarea în sistem. | + | * **Managementul Timpului**: Utilizarea funcțiilor de delay și millis pentru a gestiona temporizarea în sistem. |
* **Operații cu Timere**: | * **Operații cu Timere**: | ||
* `delay()`: Introducerea unor întârzieri pentru stabilizarea senzorilor și activarea pompei. | * `delay()`: Introducerea unor întârzieri pentru stabilizarea senzorilor și activarea pompei. | ||
Line 116: | Line 116: | ||
**5. WiFi** | **5. WiFi** | ||
- | * **Conectivitate la Rețea**: Utilizarea modulului WiFi integrat în ESP8266 pentru a conecta dispozitivul la o rețea WiFi și pentru a comunica cu broker-ul MQTT. | + | * **Conectivitate la Rețea**: Utilizarea modulului WiFi integrat în ESP8266 pentru a conecta dispozitivul la o rețea WiFi și pentru a comunica cu broker-ul MQTT. |
* **Operații WiFi**: | * **Operații WiFi**: | ||
* `WiFi.begin(ssid, password)`: Inițierea conexiunii la rețeaua WiFi specificată prin SSID și parolă. | * `WiFi.begin(ssid, password)`: Inițierea conexiunii la rețeaua WiFi specificată prin SSID și parolă. | ||
Line 123: | Line 123: | ||
**6. MQTT (Message Queuing Telemetry Transport)** | **6. MQTT (Message Queuing Telemetry Transport)** | ||
- | * **Protocol pentru Comunicarea M2M**: Utilizarea MQTT pentru transmiterea datelor între dispozitivele IoT și broker-ul MQTT. | + | * **Protocol pentru Comunicarea M2M**: Utilizarea MQTT pentru transmiterea datelor între dispozitivele IoT și broker-ul MQTT. |
* **Operații MQTT**: | * **Operații MQTT**: | ||
* `client.setServer()`: Configurarea serverului MQTT. | * `client.setServer()`: Configurarea serverului MQTT. | ||
Line 136: | Line 136: | ||
<note tip> | <note tip> | ||
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | Codul trebuie modificat pentru a schimba refill-ul cu formula 10 umpleri/L. |
+ | |||
+ | |||
+ | **Video cum functioneaza**: | ||
+ | https://drive.google.com/file/d/1RldX3eXIpAgX2A6bU9fj-tDBX_Kzxtoz/view?usp=sharing | ||
</note> | </note> | ||
Line 157: | Line 161: | ||
https://github.com/YANNICKKO/SmartWaterDispenser | https://github.com/YANNICKKO/SmartWaterDispenser | ||
- | <note warning> | ||
- | O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-). | ||
- | Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:pm:prj20??:c?** sau **:pm:prj20??:c?:nume_student** (dacă este cazul). **Exemplu:** Dumitru Alin, 331CC -> **:pm:prj2009:cc:dumitru_alin**. | ||
- | </note> | ||
- | ===== Jurnal ===== | + | ===== Bibliografie/Resurse ===== |
- | <note tip> | + | Biblioteci: |
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | * https://github.com/knolleary/pubsubclient |
- | </note> | + | * https://github.com/esp8266/Arduino/blob/master/libraries/ESP8266WiFi/src/ESP8266WiFi.h |
- | ===== Bibliografie/Resurse ===== | + | Software: |
+ | * https://ocw.cs.pub.ro/courses/iothings/laboratoare/lab7 | ||
+ | * https://howtomechatronics.com/tutorials/arduino/ultrasonic-sensor-hc-sr04/ | ||
+ | * https://lastminuteengineers.com/water-level-sensor-arduino-tutorial/ | ||
- | <note> | + | Hardware: |
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | * https://www.adafruit.com/product/2821 |
- | </note> | + | |
<html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | ||