Sommario:
- Passaggio 1: elenco dei componenti
- Passaggio 2: connessioni:
- Passaggio 3: procedura
- Passaggio 4: codice Arduino:
- Passaggio 5: applicazione per Android:
Video: Registratore di dati di temperatura e umidità da Arduino a telefono Android con modulo scheda SD tramite Bluetooth: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
Ciao a tutti, questo è il mio primo Instructable in assoluto, spero di aiutare la comunità dei creatori in quanto ne ho tratto beneficio.
Spesso utilizziamo sensori nei nostri progetti, ma trovare un modo per raccogliere i dati, archiviarli e trasferirli. Telefoni o altri dispositivi immediatamente e senza fili non erano un processo già pronto. Questo Instructable ti guiderà attraverso
- Acquisizione dati dal sensore (DHT 11) - sensore di temperatura e umidità.
- Memorizzazione dei dati acquisiti in SD card con modulo SD card.
- Trasferimento dei dati wireless tramite Bluetooth a un'app Android personalizzata.
- Memorizzazione dei valori del sensore ricevuti come file di testo (file.txt).
Passaggio 1: elenco dei componenti
Andiamo a radunare le truppe per realizzare questo fantastico progetto.
- Arduino Uno (anche qualsiasi altro arduino sarà adatto)
- modulo per scheda microSD.
- Modulo scheda SD (quello che sto utilizzando è 8 GB, si consiglia di utilizzare> = 32 GB)
- HC05 - Modulo Bluetooth
- DHT11 (Sensore di temperatura e umidità)
- Mazzo di maglioni.
- Telefono Android
Passaggio 2: connessioni:
Mettere insieme e collegare i componenti è a metà del progetto. I prodotti citati sono facilmente disponibili nella maggior parte dei negozi di elettronica al dettaglio e siti online come Amazon.
Collegamento Arduino - HC05 (Bluetooth):
- +5V - Vcc
- Gnd - Gnd
- Pin 0 - Tx
- Pin 1 - Rx
Arduino - Collegamento del modulo SDcard:
- +5V - Vcc
- Gnd - Gnd
- Pin 11 - MOSI (Master Out Slave In)
- Pin 12 - MISO (Master In Slave Out)
- Pin 13 - SCk (orologio sincrono)
- Pin 4 - CS (selezione chip)
Collegamento Arduino - HC05 (Bluetooth):
- +5V - Vcc
- Gnd - Gnd
- Pin A0 - Segnale
Passaggio 3: procedura
Connetti tutte le parti come menzionato nel passaggio precedente, con questo possiamo scrivere il codice nell'Ide di Arduino per raggiungere il nostro obiettivo.
La seconda parte del nostro progetto è avere un'app Android per ricevere i valori del sensore, visualizzare i valori e salvarli in un file nel cellulare. Ho usato Thunkable per creare l'applicazione Android e ho anche fornito l'apk e aia per questo.
Passaggio 4: codice Arduino:
Il codice Arduino è stato fornito e spiegato di seguito.
Il codice arduino è per lo più autoesplicativo con la libreria di schede SD e la libreria DHT11. Il bluetooth utilizza la seriale hardware che è pin0 e pin1 dell'arduino, quindi il trasferimento bluetooth avviene con le funzioni Serial print() che utilizza il protocollo I2C e il modulo della scheda SD utilizza il protocollo SPI per comunicare con esso.
/*
* Scheda SD collegata al bus SPI come segue:
** MOSI - pin 11 ** MISO - pin 12 ** CLK - pin 13 ** CS - pin 4 (per MKRZero SD: SDCARD_SS_PIN) * *Connessione modulo HC 05: ** TX - pin 0 (default)[può essere modificato se viene utilizzato Softwareserial] ** RX - pin 1 (predefinito) [può essere modificato se viene utilizzato Softwareserial]
*/
#includere
#include #include
File mioFile;
dht DHT; #define DHT11_PIN A0
void setup() {
// Apri le comunicazioni seriali e attendi l'apertura della porta: Serial.begin(9600); Serial.println("Tipo, \tStato, \tUmidità(%), \tTemperatura(C)"); while (!Serial) {; // attendi che la porta seriale si connetta. Necessario solo per la porta USB nativa } DHTAcq(); sdCardWrite("test3.txt"); sdCardRead("test3.txt");
}
void DHTAcq()
{ Serial.println("DHT11, \t"); int chk = DHT.read11(DHT11_PIN); Serial.print(DHT.humidity, 1); Serial.print(", \t"); Serial.print(DHT.temperature, 1); ritardo (2000); }
void sdCardWrite(String fileNameStr)
{ Serial.println("Inizializzazione scheda SD"); if (!SD.begin(4)) { Serial.println("Inizializzazione fallita."); Restituzione; } Serial.println("Inizializzazione eseguita!"); //apro il file. nota che può essere aperto solo un file alla volta, // quindi devi chiudere questo prima di aprirne un altro. mioFile = SD.open(fileNameStr, FILE_WRITE); // se il file si è aperto correttamente, scrivici: if (myFile) { myFile.println("DHT11, \t"); int chk = DHT.read11(DHT11_PIN); mioFile.print(DHT.humidity, 1); mioFile.print(", \t"); mioFile.print(DHT.temperature, 1); mioFile.close(); Serial.println("fatto!"); ritardo(200); /*Serial.print("Scrivo su test.txt…"); myFile.println("test 1, 2, 3."); // chiudi il file: myFile.close(); Serial.println("fatto."); */ } else { // se il file non si apre, stampa un errore: Serial.println("error opening test.txt"); } }
void sdCardRead(String fileName)
{ // riapri il file per la lettura: myFile = SD.open(fileName); if (mioFile) { Serial.println("test.txt:"); // legge dal file finché non contiene nient'altro: while (myFile.available()) { Serial.write(myFile.read()); } // chiudi il file: myFile.close(); } else { // se il file non si apre, stampa un errore: Serial.println("error opening test.txt"); } }
ciclo vuoto() {
// non succede nulla dopo l'installazione //Serial.println("test 1.. 2.. 3"); //ritardo(1000); }
Passaggio 5: applicazione per Android:
L'app per Android è stata realizzata con l'applicazione Thunkable con programmazione drag and drop. Registrerà i dati sull'etichetta sullo schermo e una volta premuto il pulsante Store Data sulla posizione AppInventor/Data con il nome del file a cui è stato assegnato il codice.
Il progetto può essere esteso per avere l'archiviazione offline di qualsiasi dato del sensore che desideriamo sostituendo con i moduli del sensore desiderati e l'app può essere estesa per recuperare i dati dall'archivio e manipolare in base all'applicazione.
Consigliato:
Come creare un registratore di dati in tempo reale di umidità e temperatura con Arduino UNO e SD-Card - Simulazione del data logger DHT11 in Proteus: 5 passaggi
Come creare un registratore di dati in tempo reale di umidità e temperatura con Arduino UNO e SD-Card | Simulazione DHT11 Data-logger in Proteus: Introduzione: ciao, sono Liono Maker, ecco il link YouTube. Stiamo realizzando un progetto creativo con Arduino e lavoriamo su sistemi embedded.Data-Logger: Un data logger (anche data-logger o data recorder) è un dispositivo elettronico che registra i dati nel tempo w
Utilizzo della scheda sensore Complex Arts per controllare i dati puri tramite WiFi: 4 passaggi (con immagini)
Utilizzo della scheda sensore Complex Arts per controllare i dati puri tramite WiFi: hai mai desiderato sperimentare il controllo gestuale? Far muovere le cose con un gesto della mano? Controllare la musica con una rotazione del polso? Questo Instructable ti mostrerà come! La Complex Arts Sensor Board (complexarts.net) è un microc
Modulo scheda SD con Arduino: come leggere/scrivere dati: 14 passaggi
Modulo scheda SD con Arduino: come leggere/scrivere dati: panoramicaLa memorizzazione dei dati è una delle parti più importanti di ogni progetto. Esistono diversi modi per archiviare i dati in base al tipo e alla dimensione dei dati. Le schede SD e micro SD sono una delle più pratiche tra i dispositivi di archiviazione, che vengono utilizzati in
Registratore Internet di temperatura e umidità con display utilizzando ESP8266: 3 passaggi
Registratore Internet di temperatura e umidità con display che utilizza ESP8266: volevo condividere un piccolo progetto che penso ti piacerà. È un registratore Internet di temperatura e umidità abilitato per Internet piccolo e durevole con display. Questo accede a emoncms.org e, facoltativamente, localmente su un Raspberry PI o sul tuo emoncm
Registratore di temperatura, umidità relativa, pressione atmosferica utilizzando Raspberry Pi e TE Connectivity MS8607-02BA01: 22 passaggi (con immagini)
Registratore di temperatura, umidità relativa, pressione atmosferica utilizzando Raspberry Pi e TE Connectivity MS8607-02BA01: Introduzione: In questo progetto ti mostrerò come costruire passo dopo passo un sistema di registrazione per l'umidità della temperatura e la pressione atmosferica. Questo progetto si basa sul chip del sensore ambientale Raspberry Pi 3 Modello B e TE Connectivity MS8607-02BA