Cuprins:
- Pasul 1: Piese
- Pasul 2: Conectarea tuturor părților împreună
- Pasul 3: Codificare
- Pasul 4: Utilizarea Arduino și a cardului SD după aceea
Video: Arduino Lucrul cu mai multe fișiere (CITIȚI / SCRIE): 4 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
buna baieti
Astăzi vă prezint proiectul Arduino care funcționează cu scut RTC care poate stoca date. Sarcina principală a acestui proiect este lucrul cu mai multe fișiere stocate pe cardul SC. Acest proiect conține cod care funcționează cu trei fișiere care sunt stocate direct pe cardul SD cu arduino și scut RTC. Deoarece acest proiect funcționează cu scutul DataLogger, datele vor fi, de asemenea, stocate în același timp în care sunt pe computer.
Acest proiect este versiunea actualizată a ultimului meu proiect. Acest proiect poate fi găsit pe site-ul instructables sub numele Arduino Data Logger Shield Small Project. Dacă aveți unele probleme în înțelegerea acestui proiect, vă sugerez să vedeți mai ușor unul mai întâi.
Principala diferență dintre cele două proiecte este că acest proiect folosește 3 fișiere text, de asemenea, de data aceasta citim date de la două dintre ele. Deoarece putem citi date, putem obține o valoare medie a umidității și temperaturii, care sunt stocate pe cardul SD. Acest lucru va fi afișat și pe ecranul LCD conectat la Arduino.
Încă o dată, dacă sunteți nou în Arduino și acesta este primul dvs. proiect care utilizează DataLogger, vă sugerez să mergeți și să verificați acest link https://www.instructables.com/id/Arduino-Data-Logg… și când veți obține totul la asta, vino aici și distrează-te. Să începem.
Pasul 1: Piese
Ca de fiecare dată când scriu astfel de proiecte, voi începe cu toate părțile pe care le-am folosit cu acest proiect. De asemenea, voi sugera câțiva senzori care pot fi folosiți și care pot face acest proiect puțin diferit.
Părți:
- Arduino uno rev3
- Scutul Arduino Data logger
- Card de memorie SD
- Afișaj LCD 1602 verde cu I2C (puteți utiliza orice alt afișaj)
- DHT22 (DHT11 funcționează bine, dar precizia acestuia nu este aceeași cu dht22)
- Câteva cabluri jumper
- Pană de pâine
- Baterie 9v
Puteți schimba unele părți. Partea bună a acestui proiect este că poate fi folosit pentru a stoca date de la orice alt senzor. Aș încerca să lucrez cu senzorul de fum sau senzorul cu infraroșu. Funcționează cu orice alt senzor. De asemenea, puteți să vă schimbați Arduino, dar rețineți că Arduino este cel mai potrivit pentru data logger.
Pasul 2: Conectarea tuturor părților împreună
Acesta este ușor de conectat. Chiar și schema este aceeași cu proiectul mai ușor. Dar aș spune că trebuie să aveți grijă ce pin să folosiți. De fiecare dată, verificați foaia de date a Data logger pentru a vedea ce pini sunt cei mai buni de utilizat, deoarece, după cum îmi amintesc, unii pini sunt deja definiți și când am încercat să folosesc senzorul pe unul dintre pinii definiți, nu a funcționat.
În partea de sus a acestui pas puteți vedea schema realizată cu fritzing. Lucru ușor este că trebuie să vă conectați jurnalul de date în partea de sus a arduino-ului. Conectați cardul SD la data logger, iar ultimul lucru pe care trebuie să-l faceți este să conectați senzorul dht și lcd. Folosim 5V de la arduino pentru + parte pe panou, GND pentru - parte și, urmând acele linii, conectați și + linia senzorului și lcd la + linia panoului. Același lucru este valabil pentru - părți, ele merg doar la linia care urmează -. Senzorul Dht este conectat de data aceasta la pinul 7. LCD-ul este conectat la A4 și A5. Ușor, nu-i așa?
LCD:
- VCC la 5V (+ parte pe panou)
- GND la gnd (-partea pe panou)
- SDA la pinul analogic A4
- SCL la pinul analogic A5
DHT22:
Am folosit dht cu placă în care există trei pini de utilizat:
- + la 5V
- - către GND
- la pinul digital 7
Pasul 3: Codificare
Acest cod de timp este mai complex. O mare parte din acesta este comentată, astfel încât să o puteți înțelege cu ușurință.
Voi explica acest cod în câteva părți scurte.
1. Primul lucru de reținut este că acest cod va avea nevoie de puține biblioteci instalate pe computer. Acestea sunt: Time (TimeLib), Wire, LiquidCrystal, DHT, OneWire, SPI, SD, RTClib. Puteți utiliza probabil alte biblioteci, dar aceste biblioteci au funcționat pentru mine. După aceea, definim tot ce este necesar pentru acest proiect. Senzorul DHT este ușor de definit, trebuie doar să spuneți pinul la care este conectat senzorul și tipul senzorului. După aceea, trebuie să definiți niște pini care vor fi folosiți pentru cardul SD și pinul RTC. Și după aceea puteți vedea variabilele utilizate pentru acest proiect.
3. Proiectul folosește puține metode și toate sunt pentru lucrul cu senzorul DHT. Dacă lucrați la proiect cu acest tip de senzor, îl puteți folosi. Aceste metode sunt getTemperature (), getMidTemperature (), getHumidity (), getMidHumidity (), readSensorData (), printLcdTemperature (), printHumidity (), printLcdMidTemperature (), printMidHumidity ().
4. În configurare există puține lucruri care sunt necesare pentru a face. În primul rând trebuie să definiți timpul. Deoarece folosim RTC aici, vrem să avem timpul potrivit când Arduino salvează date de la senzor. Această parte va fi comentată în cod. Dacă decomentați //RTC.adjust(DateTime(_DATE_, _TIME_))); linie puteți seta timpul pentru proiectul dvs. După ce setați timpul adecvat, puteți să comentați din nou acea parte și puteți utiliza arduino fără computer. Este grozav, deoarece puteți utiliza senzorul de temperatură în altă cameră și puteți urmări temperatura fără a avea nevoie de computer. A doua parte care trebuie făcută este utilizarea cardului SD pe care vor fi stocate date. Shield va încerca să vadă dacă există o carte și să o inițializeze. Dacă nu există, mesajul de eroare va fi afișat în ecranul Serial de pe Arduino IDE.
În configurare este primul pas în care lucrăm cu scrierea fișierelor pe cardul de memorie. Primul lucru care este scris pe card este în fișierul datalog.txt. De data aceasta scriem doar ora de înregistrare a dispozitivului și creăm, de asemenea, un rând mic de nume (variabile utilizate pentru a salva și, de asemenea, timpul)
Ultima parte a configurării este inițializarea LCD și a senzorului dht.
5. Partea buclă este partea principală a proiectului. Lucrul cu senzorul de această dată este foarte ușor, deoarece folosește o singură metodă care citește valorile pe care le obține senzorul. Partea LCD este, de asemenea, foarte ușoară. Următoarea parte este una pe care trebuie să o explicăm aici. Acest proiect face ceva în fiecare minut. Într-un minut stochează date pe datalog.txt. Aceste date pot fi citite de cineva care nici măcar nu știe să programeze arduino-uri. Pe de altă parte. Un minut economisește temperatura pe datalogB.txt și un minut economisește umiditatea pe datalogC.txt. Avem nevoie de datalogB.txt și dataLogC.txt, astfel încât să putem citi de pe cardul nostru de memorie. Deci, dacă continuăm să citim codul nostru, puteți vedea, de asemenea, că acest cod citește valori medii ale temperaturii și umidității și le stochează într-un singur rând. Am vrut să fac un dispozitiv care să conțină doar ultimele zece cifre. Prin urmare, acest proiect rulează întotdeauna valorile de pe card și salvează ultimele zece cifre. Aceste cifre stocate în rânduri sunt utilizate astfel încât să putem obține valoarea medie a temperaturii și valoarea medie a umidității. Care sunt afișate și pe ecranul nostru LCD după ceva timp
Pasul 4: Utilizarea Arduino și a cardului SD după aceea
Aici puteți vedea ce se afișează pe ecranul LCD și cum funcționează proiectul. De asemenea, pun aici poze cu registrele de date salvate. Datalog.txt este cel care poate fi folosit pentru a vedea cum dispozitivul stochează fiecare valoare. DatalogB și datalogC sunt acolo, astfel încât să puteți vedea cum arată. Sunt scrise așa, astfel încât să puteți utiliza metoda de analiză și să citiți date fără probleme.
Scopul acestui proiect este manipularea fișierelor care se află pe cardul SD. Uneori avem nevoie de dispozitive care pot stoca memoria și temperatura de citire este, de asemenea, o dată așa. Un lucru bun este că scutul folosit pe acest dispozitiv are și un modul RTC, care este cel mai bun lucru pentru timp. Când putem citi în timp real și stoca date cu dispozitivul nostru, asta înseamnă că poate fi portabil.
Vă mulțumesc băieți pentru că ați citit acest proiect. Sper că te va ajuta. Mulțumesc.
Cu toate privirile, Sebastian
Recomandat:
Cum să citiți mai multe valori analogice folosind un singur pin analogic: 6 pași (cu imagini)
Cum să citiți mai multe valori analogice utilizând un pin analogic: În acest tutorial, vă voi arăta cum să citiți mai multe valori analogice folosind un singur pin analogic de intrare
Cultivarea mai multor salată în spațiu mai mic sau Cultivarea salatei în spațiu, (mai mult sau mai puțin) .: 10 pași
Cultivarea mai multor salată în spațiu mai mic sau … Cultivarea salată în spațiu, (mai mult sau mai puțin). Nu aș putea fi mai încântat să proiectez pentru producția de culturi spațiale și să postez primul meu Instructable. Pentru a începe, concursul ne-a cerut
Fișiere lot care deschid mai multe programe !: 5 pași
Fișierele lot care deschid mai multe programe !: Bine, este destul de explicativ. Acest lucru poate fi util mai ales dacă sunteți la locul de muncă și parcurgeți un proces în care trebuie să deschideți, de exemplu; Microsoft Word, Microsoft PowerPoint, Microsoft Outlook, Internet Explorer etc. Deci, haideți să
Lucrul cu mai multe computere (pentru studenți): 6 pași
Lucrul cu mai multe computere (pentru studenți): Lucrul cu mai multe computere poate fi foarte dificil. Nu știți niciodată ce fișiere sunt pe ce computer, s-ar putea să întâmpinați probleme cu mai multe versiuni ale aceluiași fișier și, ca rezultat, puteți pierde fișierele împreună sau cel puțin să aveți
Copiați și lipiți și accesați fișiere între mai multe computere: 3 pași
Copiați și lipiți și accesați fișiere între mai multe computere: tocmai am găsit un site web care permite oamenilor să copieze și să lipească orice text, imagini, videoclipuri etc. între mai multe computere. De asemenea, vă permite să creați un forum, să încărcați fișiere și să vă imprimați pagina web. Și cea mai bună parte este că nici nu ai