Sommario:
- Passaggio 1: cose utilizzate in questo progetto
- Fase 2: Storia
- Passaggio 3: scarica i file necessari
- Passaggio 4: assemblare
- Passaggio 5: programma
- Passaggio 6: rendilo portatile
- Passaggio 7: conclusione
- Passaggio 8: codice
Video: Visualizzazione di data, ora e temperatura utilizzando XinaBox: 8 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Fantastico display OLED che mostra la data, l'ora e la temperatura in gradi Celsius e Fahrenheit utilizzando Xinabox xChips basato su ESP8266.
Passaggio 1: cose utilizzate in questo progetto
Componenti hardware
- XinaBox IP01 x 1 programmatore USB xChip basato su FT232R di FTDI Limited
- XinaBox CW01 x 1 xChip Wi-Fi Core basato sul modulo Wi-Fi ESP8266
- XinaBox SW01 x 1 xChip Sensore di temperatura, umidità e pressione atmosferica basato sul BME280 di Bosch.
- XinaBox OD01 x 1 xChip 128x64 Pixel Display OLED
- XinaBox PU01 x 1 xChip USB (tipo A) alimentatore
- XinaBox XC10 x 1 x connettori bus chip
- Alimentazione USB 5V x 1
App software e servizi online
Arduino IDE
Fase 2: Storia
introduzione
Ho creato questo progetto per visualizzare la data, l'ora UCT e la temperatura utilizzando XinaBox xChips che utilizza il protocollo bus I2C. L'ora è stata recuperata da un server NTP di Google. La temperatura ambiente è stata misurata utilizzando SW01 xChip ed è stata visualizzata sul display OLED OD01 xChip in gradi Celsius e Fahrenheit. L'immagine sotto mostra il display OLED.
Visualizzazione OLED di data, ora e temperatura
Passaggio 3: scarica i file necessari
Avrai bisogno delle seguenti librerie e software per questo progetto.
- Arduino IDE - Software di sviluppo in cui codificherai
- xSW01 - Libreria di sensori di temperatura
- xCore - Libreria principale per XinaBox xChips
- xOD01 - Libreria di display OLED.
- Fuso orario - Libreria per scegliere il fuso orario
- Ora - Per utilizzare le funzioni dell'ora
- NTPClient: consente di ottenere il tempo da un server
- Dovrai anche scaricare la scheda ESP8266 e seguire le istruzioni che la accompagnano per installare la scheda
Una volta scaricato, installerai l'IDE e le librerie. È abbastanza semplice se segui le istruzioni.
Passaggio 4: assemblare
Il tuo xChip principale che eseguirà ed elaborerà il programma è il CW01. Si basa sul modulo WiFi ESP8266 e utilizza il protocollo bus I2C. Per programmare sul CW01, avrai bisogno di un xChip di programmazione. L'IP01 ci permette di programmare il CW01 tramite la porta USB del nostro computer semplicemente cliccando insieme i due xChip utilizzando i connettori del bus XC10 e inserendolo nella porta USB. Nessun cablaggio e nessuna saldatura richiesta. Una cosa da prendere in considerazione è l'orientamento dei nomi di identificazione xChip. Dovrebbero essere tutti orientati nella stessa direzione. Ora dovresti avere la seguente configurazione.
Fare clic insieme CW01 e IP01 e inserirlo nella porta USB del computer
Se hai familiarità con gli xChip, puoi collegare ogni xChip insieme utilizzando i connettori bus XC10 che desideri utilizzare per il tuo progetto e quindi inserirlo nella porta USB. Useremo il sensore di temperatura SW01 e il display OLED OD01.
Puoi collegare tutti i tuoi chip insieme e quindi inserirli nella porta USB
Passaggio 5: programma
Scarica o copia e incolla il codice qui sotto nel tuo IDE Arduino. Se non stai apportando modifiche al codice, inserisci semplicemente i tuoi dettagli WiFi nei rispettivi campi come mostrato di seguito. Inserisci anche un time server NTP affidabile. Ho utilizzato un time server di Google per questo progetto.
Dettagli WiFi e time server NTP
Ora compila e carica. Assicurati di aver selezionato la porta COM e la scheda corrette nel menu degli strumenti nell'IDE di Arduino. Una volta caricato, l'ora, la data e la temperatura dovrebbero apparire come di seguito.
Dopo il caricamento dovresti vedere quanto segue
Passaggio 6: rendilo portatile
Ora puoi rimuovere l'unità dalla porta USB e separare ciascun xChip semplicemente separandolo. Una volta completata la programmazione, IP01 non è più necessario. Ora puoi collegare il tuo progetto in qualsiasi modo desideri, purché i nomi identificativi siano tutti orientati nella stessa direzione. Per alimentare la nostra unità utilizzeremo il PU01. Questo ci permette di alimentarlo da un normale power bank o da qualsiasi alimentatore USB 5V. Ho collegato il mio come mostrato di seguito.
Assemblea finale. Gli xChips possono essere collegati in qualsiasi modo desideri.
Passaggio 7: conclusione
Questo progetto richiederà 20 minuti per essere completato. Se vuoi l'ora nella tua posizione, considera di guardare il codice di esempio nella libreria Timezone o fai un po' di calcoli con l'ora UTC. Non sono stati utilizzati fili e non è stata necessaria alcuna saldatura.
Passaggio 8: codice
Date_Time_Temp.ino Arduino Inserisci semplicemente i tuoi dettagli WiFi nei rispettivi campi e caricali sulla tua scheda.
#include // include la libreria di base per XinaBox xCHIPS
#include // include la libreria del display OLED #include // include la libreria del sensore di temperatura #include // include la funzionalità ESP8266WiFi #include // include le librerie temporali #include #include #include #include #include xSW01 SW01; // definisci le proprietà NTP #define ntpOffset 60 * 60 // in secondi #define ntpInterval 60 * 1000 // in millisecondi // inserisci un time server ntp affidabile tra virgolette // qui ho usato un time server ntp di Google # define ntpAddress "time1.google.com" // configura il client UDP NTP WiFiUDP ntpUDP; NTPClient timeClient(ntpUDP, ntpAddress, ntpOffset, ntpInterval); // variabile di temperatura float tempC; // Celsius float tempF; // fahrenheit // i tuoi dettagli wifi const char* wifi_ssid = "XinaBox"; // il tuo ssid wifi const char* wifi_pass = "RapidIoT"; // la tua password wifi // variabile data e ora String date; Clktime stringa; // variabili contenenti giorni e mesi const char * days = {"Domenica", "Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato"}; const char * mesi = {"Gen", "Feb", "Mar", "Apr", "Maggio", "Giugno", "Luglio", "Ago", "Settembre", "Ott", "Nov ", "Dic"}; const char * ampm = {"AM", "PM"}; void setup() { tempC = tempF = 0; // inizializza la temperatura a zero timeClient.begin(); // avvia il client UDP NTP // avvia la comunicazione seriale Serial.begin(115200); // avvia la comunicazione i2c e imposta i pin Wire.begin(2, 14); // avvia il sensore di temperatura SW01.begin(); // avvia il display OLED OLED.begin(); // cancella il display OLED OD01.clear(); // stabilisci la connessione wifi wifi_connect(); ritardo(1000); } void loop() { // eseguito se viene stabilita la connessione wifi if (WiFi.status() == WL_CONNECTED) { SW01.poll(); // legge la temperatura tempC = SW01.getTempC(); // memorizza la temperatura in Celsius tempF = SW01.getTempF(); // memorizza la temperatura in fahrenheit date = ""; // cancella la variabile della data clktime = ""; // cancella la variabile temporale // aggiorna il client ntp e ottiene il timestamp unix utc timeClient.update(); epochTime lungo non firmato = timeClient.getEpochTime(); // converte il timestamp ricevuto nell'oggetto time_t time_t utc; utc = epochTime; // utc time TimeChangeRule utcRule = {"UTC", Last, Sun, Mar, 1, 0}; Fuso orario UTC(utcRule, utcRule); // formatta le variabili dell'ora date += days[weekday(utc) - 1]; data += ", "; data += mesi[mese(utc) - 1]; data += " "; data += giorno(utc); data += ", "; data += anno(utc); // formatta l'ora nel formato 12 ore con AM/PM e senza secondi clktime += hourFormat12(utc); clktime += ":"; if (minuto(utc)
Consigliato:
Tempo di visualizzazione di Arduino sul display a LED TM1637 utilizzando RTC DS1307: 8 passaggi
Arduino Display Time on TM1637 LED Display utilizzando RTC DS1307: In questo tutorial impareremo come visualizzare l'ora utilizzando il modulo RTC DS1307 e LED Display TM1637 e Visuino.Guarda il video
Misurazione della temperatura utilizzando XinaBox e un termistore: 8 passaggi
Misurazione della temperatura utilizzando XinaBox e un termistore: misurare la temperatura di un liquido utilizzando un ingresso analogico xChip di XinaBox e una sonda a termistore
Visualizzazione della pressione barometrica e della temperatura utilizzando Infineon XMC4700 RelaxKit, Infineon DPS422 e AWS.: 8 passaggi
Visualizzazione della pressione atmosferica e della temperatura utilizzando Infineon XMC4700 RelaxKit, Infineon DPS422 e AWS.: È un progetto semplice per acquisire la pressione atmosferica e la temperatura utilizzando il DPS 422 di Infineon. Diventa goffo monitorare la pressione e la temperatura per un periodo di tempo. È qui che entra in gioco l'analisi, l'intuizione sul cambiamento in
Una simpatica unità di visualizzazione di data, ora e temperatura: 3 passaggi
Una simpatica unità di visualizzazione di data, ora e temperatura: ciao amici, in questo tutorial spiegherò la procedura per creare un'unità di visualizzazione di data, ora e temperatura corrente utilizzando Arduino pro mini, un RTC e un display a sette segmenti a otto cifre in un'unità molto compatta, che è un utile dispositivo
Visualizzazione della temperatura sul modulo display a LED P10 utilizzando Arduino: 3 passaggi (con immagini)
Visualizza la temperatura sul modulo display a LED P10 usando Arduino: nel tutorial precedente è stato detto come visualizzare il testo sul modulo display a LED a matrice di punti P10 usando Arduino e il connettore DMD, che puoi controllare qui. In questo tutorial forniremo un semplice tutorial di progetto utilizzando il modulo P10 come display med