User Tools

Site Tools


discover

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
discover [2023/01/19 13:44] briandiscover [2023/01/19 14:57] (current) brian
Line 19: Line 19:
 **Progettazione e costruzione** **Progettazione e costruzione**
  
-Tramite l'IDE di Arduino dobbiamo scaricare la board corretta e installato le librerie relative al sensore.+Tramite l'IDE di Arduino dobbiamo scaricare la board corretta e installare le librerie relative al sensore.
 {{ide.png}} {{ide.png}}
  
 Abbiamo collegato il sensore di temperatura al microcontrollore utilizzando i pin appropriati. Abbiamo collegato il sensore di temperatura al microcontrollore utilizzando i pin appropriati.
-Abbiamo scritto il codice utilizzando l'ambiente di sviluppo integrato (IDE) per acquisire i dati dal sensore di temperatura e visualizzarli sull'applicazione del telefono. 
  
-<file ino temperatura.ino>+Ora scriviamo il codice utilizzando l'ambiente di sviluppo integrato (IDE) per acquisire i dati dal sensore di temperatura e visualizzarli sull'applicazione del telefono. 
 + 
 +<code ino [enable_line_numbers="true"temperatura.ino>
 // Template ID, Device Name and Auth Token are provided by the Blynk.Cloud // Template ID, Device Name and Auth Token are provided by the Blynk.Cloud
 // See the Device Info tab, or Template settings // See the Device Info tab, or Template settings
Line 100: Line 101:
 } }
  
-</file> +</code>
- +
-<code - temperatura.ino>+
  
 Registriamoci sulla console di Blynk (per chi conosceva già questa soluzione di recente è migrata su una console online, il vecchio progetto ora è conosciuto come Blynk Legacy) Registriamoci sulla console di Blynk (per chi conosceva già questa soluzione di recente è migrata su una console online, il vecchio progetto ora è conosciuto come Blynk Legacy)
Line 115: Line 114:
 {{20230116_143451.jpg}} {{20230116_143451.jpg}}
  
 +**Risultato finale**
  
 +{{termometro.jpg}}
  
 **Possibili evoluzioni** **Possibili evoluzioni**
Line 124: Line 125:
  
 Inoltre è possibile non utlizzare la console Blynk (limitata senza un abbonamento), ma installarci localmente il vecchio Blynk (Blynk Legacy) e modificare il nostro file ino per puntare sul nostro server locale. Inoltre è possibile non utlizzare la console Blynk (limitata senza un abbonamento), ma installarci localmente il vecchio Blynk (Blynk Legacy) e modificare il nostro file ino per puntare sul nostro server locale.
 +
 +{{display.jpg}}
 +
 +Un esempio di codice può essere il seguente
 +<code ino [enable_line_numbers="true",highlight_lines_extra="9,30"] temperatura_LCD_localServer.ino>
 +
 +//LCD+DHT22+Blynk locale
 +#include <Wire.h>
 +#include <LiquidCrystal_I2C.h>
 +#include <ESP8266WiFi.h>
 +#include <ESP8266HTTPClient.h>
 +#include "DHT.h"
 +#include <BlynkSimpleEsp8266.h>
 +
 +LiquidCrystal_I2C lcd(0x27, 16, 2); // set the LCD address to 0x27 for a 16 chars and 2 line display
 +
 +#define DHTPIN 13
 +#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321
 +
 +const char* ssid     = "*************";
 +const char* password = "*************";
 +const char* auth = "*************";
 +
 +
 +float temperatura = 0;
 +float umidita = 0;
 +
 +DHT dht(DHTPIN, DHTTYPE);
 +
 +void setup()
 +{
 +  lcd.init();  //initialize the lcd
 +  lcd.backlight();  //open the backlight
 +
 +  //Blynk.begin(auth, ssid, password);
 +  Blynk.begin(auth, ssid, password, IPAddress(192,168,1,4), 8001);
 +  
 +  Serial.begin(115200);
 +  dht.begin();
 + 
 +  
 +}
 +
 +void loop()
 +{
 +
 +  Blynk.run();
 +  
 +
 +  temperatura = dht.readTemperature();
 +  Serial.print("temperatura: ");
 +  Serial.println(temperatura);  
 +  umidita = dht.readHumidity();
 +  Serial.print("umidita: ");
 +  Serial.println(umidita);  
 +
 + 
 +  String stringOne = "Temp C  ";
 +  String stringTwo = stringOne + temperatura;
 +
 +
 +  lcd.setCursor(0, 0); // set the cursor to column 3, line 0
 +  lcd.print(stringTwo);  // Print a message to the LCD
 +
 +   stringOne = "Hum  %  ";
 +   stringTwo = stringOne + umidita;
 +  
 +
 +  lcd.setCursor(0, 1); // set the cursor to column 3, line 0
 +  lcd.print(stringTwo);  // Print a message to the LCD
 +
 +  Blynk.virtualWrite(V0, temperatura);               //  Set Virtual Pin 0 frequency to PUSH in Blynk app
 +  Blynk.virtualWrite(V1, umidita);               //  Set Virtual Pin 1 frequency to PUSH in Blynk app
 +  
 +  delay(5000);
 +}
 +</code>
  
discover.1674132270.txt.gz · Last modified: 2023/01/19 13:44 by brian