Cuprins:

Data Logger de temperatură și umiditate de la Arduino la telefonul Android cu modul card SD prin Bluetooth: 5 pași
Data Logger de temperatură și umiditate de la Arduino la telefonul Android cu modul card SD prin Bluetooth: 5 pași

Video: Data Logger de temperatură și umiditate de la Arduino la telefonul Android cu modul card SD prin Bluetooth: 5 pași

Video: Data Logger de temperatură și umiditate de la Arduino la telefonul Android cu modul card SD prin Bluetooth: 5 pași
Video: trimitere date prin bluetooth folosind Arduino (3) 2024, Noiembrie
Anonim
Data Logger de temperatură și umiditate de la Arduino la telefonul Android cu modul card SD prin Bluetooth
Data Logger de temperatură și umiditate de la Arduino la telefonul Android cu modul card SD prin Bluetooth

Bună ziua tuturor, acesta este primul meu instructabil din toate timpurile, sper să ajut comunitatea producătorilor, deoarece am beneficiat de aceasta.

Adesea folosim senzori în proiectele noastre, dar găsirea unei modalități de a colecta datele, de a le stoca și de a le transfera Telefoane sau alte dispozitive imediat și fără fir nu au fost un proces gata făcut. Acest instructable vă va ghida

  • Obținerea datelor de la senzor (DHT 11) - senzor de temperatură și umiditate.
  • Stocarea datelor achiziționate în cardul SD cu modulul cardului SD.
  • Transferul datelor fără fir folosind Bluetooth într-o aplicație Android personalizată.
  • Memorarea valorilor senzorului primit ca fișier text (fișier.txt).

Pasul 1: Lista componentelor

Lista componentelor
Lista componentelor
Lista componentelor
Lista componentelor
Lista componentelor
Lista componentelor

Să coborâm să adunăm trupele pentru a face acest proiect minunat.

  • Arduino Uno (orice alt arduino va fi, de asemenea, potrivit)
  • modul card micro SD.
  • Modul card SD (cel pe care îl folosesc este de 8 GB, se recomandă utilizarea> = 32 GB)
  • HC05 - Modul Bluetooth
  • DHT11 (senzor de temperatură și umiditate)
  • O grămadă de săritori.
  • Telefon cu Android

Pasul 2: Conexiuni:

Conexiuni
Conexiuni

Asamblarea și conectarea componentelor este realizată la jumătatea proiectului. Produsele menționate sunt ușor disponibile în majoritatea magazinelor electronice cu amănuntul și a site-urilor online, cum ar fi Amazon.

Conexiune Arduino - HC05 (Bluetooth):

  • + 5V - Vcc
  • Gnd - Gnd
  • Pinul 0 - Tx
  • Pinul 1 - Rx

Conexiune modul Arduino - SDcard:

  • + 5V - Vcc
  • Gnd - Gnd
  • Pinul 11 - MOSI (Master Out Slave In)
  • Pinul 12 - MISO (Master In Slave Out)
  • Pinul 13 - SCk (Ceas sincron)
  • Pinul 4 - CS (Chip Select)

Conexiune Arduino - HC05 (Bluetooth):

  • + 5V - Vcc
  • Gnd - Gnd
  • Pinul A0 - Semnal

Pasul 3: Procedură

Procedură
Procedură

Conectați toate părțile așa cum s-a menționat în pasul anterior, cu aceasta putem scrie cod în Arduino Ide pentru a ne atinge obiectivul.

A doua parte a proiectului nostru este să avem o aplicație Android care să recepționeze valorile senzorului, să afișeze valorile și să o stocheze într-un fișier pe mobil. Am folosit Thunkable pentru a crea aplicația Android și, de asemenea, am furnizat apk și aia pentru aceasta.

Pasul 4: Cod Arduino:

Codul Arduino a fost dat și explicat mai jos.

Codul arduino se explică în mare parte cu biblioteca de carduri SD și biblioteca DHT11. Bluetooth utilizează serial hardware care este pin0 și pin1 al arduino, prin urmare, transferul bluetooth are loc cu funcțiile Serial print () care utilizează protocolul I2C, iar modulul cardului SD utilizează protocolul SPI pentru comunicarea cu acesta.

/*

* Card SD atașat la magistrala SPI după cum urmează:

** MOSI - pin 11 ** MISO - pin 12 ** CLK - pin 13 ** CS - pin 4 (pentru MKRZero SD: SDCARD_SS_PIN) * * Conexiune modul HC 05: ** TX - pin 0 (implicit) [poate fi modificat dacă se folosește Softwareserial] ** RX - pinul 1 (implicit) [poate fi modificat dacă se folosește Softwareserial]

*/

#include

#include #include

Înregistrează fișierul meu;

dht DHT; #define DHT11_PIN A0

configurare nulă () {

// Deschideți comunicațiile seriale și așteptați deschiderea portului: Serial.begin (9600); Serial.println ("Tip, / tStatus, / t Umiditate (%), / tTemperatura (C)"); while (! Serial) {; // așteptați conectarea portului serial. Necesar numai pentru portul USB nativ} DHTAcq (); sdCardWrite ("test3.txt"); sdCardRead ("test3.txt");

}

anula DHTAcq ()

{Serial.println ("DHT11, / t"); int chk = DHT.read11 (DHT11_PIN); Serial.print (DHT.humidity, 1); Serial.print (", / t"); Serial.print (temperatura DHT, 1); întârziere (2000); }

void sdCardWrite (String fileNameStr)

{Serial.println („Inițializarea cardului SD”); if (! SD.begin (4)) {Serial.println ("Inițializarea a eșuat."); întoarcere; } Serial.println ("Inițializarea făcută!"); // deschideți fișierul. rețineți că un singur fișier poate fi deschis la un moment dat, // deci trebuie să îl închideți înainte de a deschide altul. myFile = SD.open (fileNameStr, FILE_WRITE); // dacă fișierul s-a deschis bine, scrieți-l: if (myFile) {myFile.println ("DHT11, / t"); int chk = DHT.read11 (DHT11_PIN); myFile.print (DHT.humidity, 1); myFile.print (", / t"); myFile.print (temperatura DHT, 1); MyFile.close (); Serial.println ("gata!"); întârziere (200); /*Serial.print("Writing to test.txt … "); myFile.println ("testarea 1, 2, 3."); // închideți fișierul: fișierul meu.close (); Serial.println ("gata."); * /} else {// dacă fișierul nu s-a deschis, tipăriți o eroare: Serial.println („eroare la deschiderea test.txt”); }}

void sdCardRead (String fileName)

{// redeschideți fișierul pentru citire: myFile = SD.open (fileName); if (myFile) {Serial.println ("test.txt:"); // citiți din fișier până când nu mai există nimic altceva în el: while (myFile.available ()) {Serial.write (myFile.read ()); } // închideți fișierul: MyFile.close (); } else {// dacă fișierul nu s-a deschis, tipăriți o eroare: Serial.println („eroare la deschiderea test.txt”); }}

bucla nulă () {

// nu se întâmplă nimic după configurare //Serial.println("test 1.. 2.. 3 "); // întârziere (1000); }

Pasul 5: aplicația Android:

Aplicația Android
Aplicația Android
Aplicația Android
Aplicația Android

Aplicația Android a fost realizată cu aplicația Thunkable cu programare drag and drop. Acesta va conecta datele pe etichetă pe ecran și odată ce butonul Store Data este apăsat pe locația AppInventor / Data cu numele fișierului căruia i s-a dat codul.

Proiectul poate fi extins pentru a avea stocare offline a oricăror date ale senzorilor dorite prin înlocuirea cu modulele senzorului dorit, iar aplicația poate fi extinsă pentru a prelua datele din stocare și a le manipula pentru a se potrivi aplicației.

Recomandat: