Tartalomjegyzék:
- 1. lépés: Alkatrészek
- 2. lépés: Az összes alkatrész összekapcsolása
- 3. lépés: Kódolás
- 4. lépés: Az Arduino és az SD kártya használata utána
Videó: Az Arduino több fájllal dolgozik (OLVAS/ÍRJ): 4 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:41
Helló srácok
Ma bemutatom Önnek az Arduino projektet, amely RTC pajzzsal működik, amely képes adatokat tárolni. A projekt fő feladata az sc kártyán tárolt több fájllal való munka. Ez a projekt olyan kódot tartalmaz, amely három fájllal működik, amelyeket közvetlenül SD kártyán tárolnak, arduino és RTC pajzzsal. Mivel ez a projekt a DataLogger pajzzsal működik, az adatok ugyanabban az időben tárolódnak, mint a számítógépen.
Ez a projekt az utolsó projektem frissített változata. Ez a projekt megtalálható az instructables webhelyen Arduino Data Logger Shield Small Project néven. Ha problémái vannak a projekt megértésével, javaslom, hogy először nézze meg az egyszerűbbet.
A fő különbség a két projekt között az, hogy ez a projekt 3 szövegfájlt használ, ezúttal is kettőből olvasunk adatokat. Mivel tudunk adatokat olvasni, a páratartalom és a hőmérséklet középértékét kaphatjuk meg, amelyeket az SD -kártyán tárolunk. Ez az Arduino -hoz csatlakoztatott LCD -n is megjelenik.
Ismételten: ha még nem ismeri az Arduino-t, és ez az első projektje, amely DataLoggert használ, javaslom, hogy menjen el, és ellenőrizze ezt a linket: https://www.instructables.com/id/Arduino-Data-Logg… és amikor mindent megkap gyere ide, és szórakozz tovább. Kezdjük.
1. lépés: Alkatrészek
Mint minden alkalommal, amikor ilyen projekteket írok, elkezdem az összes olyan részt, amelyet ezzel a projekttel használtam. Ezenkívül javaslok néhány érzékelőt, amelyek használhatók, és kissé eltérhetnek a projekttől.
Alkatrészek:
- Arduino uno rev3
- Arduino adatgyűjtő pajzs
- SD memóriakártya
- LCD 1602 zöld kijelző I2C -vel (bármilyen más kijelzőt is használhat)
- DHT22 (a DHT11 is jól működik, de pontossága nem azonos a dht22 -vel)
- Kevés áthidaló kábel
- Kenyeretábla
- Akkumulátor 9v
Meg lehet változtatni néhány alkatrészt. A projekt jó oldala, hogy bármilyen más érzékelőből származó adatok tárolására használható. Próbálok füstérzékelővel vagy infravörös érzékelővel dolgozni. Bármilyen más érzékelővel működik. Az Arduino -t is megváltoztathatja, de ne feledje, hogy az Arduino a legjobb az adatgyűjtőhöz.
2. lépés: Az összes alkatrész összekapcsolása
Ez könnyen csatlakoztatható. Még a vázlat is ugyanaz, mint a könnyebb projekt. De azt mondanám, hogy figyelni kell arra, hogy melyik tűt fogja használni. Minden alkalommal ellenőrizze az adatgyűjtő adatlapját, hogy melyik csapok a legjobbak a használathoz, mert ha jól emlékszem, néhány csap már meg van határozva, és amikor megpróbáltam használni az érzékelőt az egyik meghatározott tűn, nem működött.
Ennek a lépésnek a tetején látható a frittinggel készített vázlat. Az egyszerű dolog az, hogy az adatgyűjtőt az arduino tetején kell csatlakoztatnia. Csatlakoztassa az SD -kártyát az adatgyűjtőhöz, és az utolsó dolog, amit meg kell tennie, csatlakoztassa a dht érzékelőt és az LCD -t. Az arduino 5V -ját használjuk a kenyértábla + részéhez, a GND -t a részhez, és ezeket a sorokat követve csatlakoztatja a + érzékelő sort és az LCD -t a kenyértábla + vonalához. Ugyanez vonatkozik a részekre is, csak a következő sorra -. A Dht érzékelő ezúttal a 7 -es érintkezőhöz van csatlakoztatva. Az LCD A4 és A5 csatlakozóhoz van csatlakoztatva. Könnyű, nem?
LCD:
- VCC - 5V (+ rész a kenyérlapon)
- GND-gnd (-rész a kenyértáblán)
- SDA - A4 -es analóg tű
- SCL az A5 analóg érintkezőhöz
DHT22:
Dht -t használtam táblával, amelyben három csap használható:
- + 5V -ig
- - a GND -nek
- ki a 7 -es digitális tűre
3. lépés: Kódolás
Ez az időkód bonyolultabb. Ennek egy jó részét kommentálják, így könnyen megértheti.
Ezt a kódot néhány rövid részben elmagyarázom.
1. Először is ne feledje, hogy ehhez a kódhoz kevés könyvtárra van szükség a számítógépen. Ezek: Time (TimeLib), Wire, LiquidCrystal, DHT, OneWire, SPI, SD, RTClib. Valószínűleg használhat néhány más könyvtárat is, de ez a könyvtár nekem működött. Ezt követően meghatározunk mindent, ami ehhez a projekthez szükséges. A DHT érzékelő könnyen definiálható, csak meg kell mondania az érzékelőhöz csatlakoztatott tűt és az érzékelő típusát. Ezt követően meg kell határoznia néhány tűt, amelyeket az SD -kártyához és az RTC -tűhöz használnak. És utána láthatja a projekthez használt változókat.
3. A Project kevés módszert használ, és mindegyik a DHT érzékelővel való munkavégzésre szolgál. Ha ilyen típusú érzékelővel dolgozik a projekten, akkor használhatja azt. Ezek a módszerek a getTemperature (), getMidTemperature (), getHumidity (), getMidHumidity (), readSensorData (), printLcdTemperature (), printHumidity (), printLcdMidTemperature (), printMidHumidity ().
4. A beállítás során kevés dologra van szükség az elvégzéshez. Először is meg kell határozni az időt. Mivel itt RTC -t használunk, megfelelő időt szeretnénk kapni, amikor Arduino -nk menti az adatokat az érzékelőből. Ezt a részt kóddal kommentálják. Ha visszavonja a megjegyzést //RTC.adjust(DateTime(_DATE_, _TIME_)); sorban beállíthatja a projekt idejét. A megfelelő idő beállítása után újra megjegyzést fűzhet ehhez a részhez, és számítógép nélkül használhatja az arduino -t. Ez azért jó, mert a hőmérséklet -érzékelőt más helyiségben is használhatja, és a számítógép nélkül is nyomon követheti a hőmérsékletet. A második rész az SD -kártya használata, amelyen az adatok tárolásra kerülnek. A Shield megpróbálja megnézni, hogy van -e kártya, és inicializálja. Ha nem, akkor a hibaüzenet az Arduino IDE soros képernyőjén jelenik meg.
A beállítás az első lépés, amikor fájlok memóriakártyára írásával dolgozunk. Az első dolog, amit a kártyára írnak, az a datalog.txt fájl. Ezúttal csak az eszköz naplózásának idejét írjuk, és létrehozunk egy kis névsort (a mentéshez használt változók és az idő is)
A beállítás utolsó része az LCD és a dht érzékelő inicializálása.
5. A hurok rész a projekt fő része. Ezúttal nagyon könnyű dolgozni az érzékelővel, mert csak egy módszert használ, amely kiolvassa az érzékelő által kapott értékeket. Az LCD része is nagyon egyszerű. A következő részt itt meg kell magyaráznunk. Ez a projekt minden percben tesz valamit. Egy perc elteltével az adatokat tárolja a datalog.txt fájlba. Ezeket az adatokat olvashatja valaki, aki nem is tudja, hogyan kell programozni az arduinókat. A másik oldalon. Egy perc a hőmérsékletet menti a datalogB.txt fájlra, egy perc pedig a páratartalmat a datalogC.txt fájlra. Szükségünk van a datalogB.txt és a dataLogC.txt fájlokra, hogy olvashassunk a memóriakártyánkon. Tehát ha folytatjuk a kódunk olvasását, akkor azt is láthatjuk, hogy ez a kód a hőmérséklet és a páratartalom középértékeit olvassa, és egy sorban tárolja. Olyan eszközt akartam készíteni, amely csak az utolsó tíz számjegyet tartalmazza. Tehát ez a projekt mindig a kártya értékeit futtatja, és elmenti az utolsó tíz számjegyet. Ezeket a sorokban tárolt számjegyeket használják, így megkaphatjuk a hőmérséklet átlagos értékét és a páratartalom átlagos értékét. Amelyek egy idő után az LCD -n is megjelennek
4. lépés: Az Arduino és az SD kártya használata utána
Itt láthatja, hogy mi látható az LCD -n, és hogyan működik a projekt. Ide is teszek fel képeket a mentett adatbázisokról. A Datalog.txt fájl segítségével megtekintheti, hogy az eszköz hogyan tárol minden értéket. A DatalogB és a datalogC ott vannak, így láthatja, hogyan néznek ki. Ezek így vannak írva, így problémamentesen használhatja az elemzési módszert és olvashatja az adatokat.
A projekt lényege az SD -kártyán lévő fájlok manipulálása. Néha olyan eszközökre van szükségünk, amelyek képesek tárolni a memóriát, és az olvasási hőmérséklet is egyszer ilyen. Jó dolog, hogy az ezen az eszközön használt pajzs RTC modullal is rendelkezik, ami az idő legjobb. Amikor valós időben tudunk olvasni, és adatokat tárolhatunk a készülékünkkel, ez azt jelenti, hogy hordozható lehet.
Köszönöm srácok, hogy elolvasták ezt a projektet. Remélem, segíteni fog. Köszönöm.
Üdvözlettel: Sebastian
Ajánlott:
Több saláta termesztése kevesebb helyen, vagy Saláta termesztése az űrben, (több vagy kevesebb): 10 lépés
Több saláta termesztése kevesebb helyen, vagy … Saláta termesztése az űrben, (több vagy kevesebb) .: Ez egy professzionális benyújtás a Growing Beyond Earth, Maker Contest pályázathoz, amelyet az Instructables -en keresztül nyújtottak be. Nem izgathatnám jobban, hogy űrnövénytermesztésre tervezek, és közzéteszem az első Instructable -t. Kezdésként a verseny arra kért minket, hogy
Több mint 4 motor használata - Több motorpajzs egymásra rakása: 3 lépés
Több mint 4 motor használata - Több motorpajzs egymásra rakása: Utasítható vibrotactile szenzoros helyettesítő és növelő eszköz (https: //www.instructables.com/id/Vibrotactile-Sens …) bemutatja az érzékelést lefordító eszköz felépítésének módját bemenet a vibrációs ingerekbe. Ezek a vibrációs ingerek
Hogyan lehet összeomlani minden számítógépet kötegelt fájllal!: 10 lépés
Hogyan lehet összeomlani minden számítógépet egy kötegelt fájllal !: Bármilyen számítógép vagy laptop könnyen összeomlik
A protézis karja myosensorral dolgozik: 8 lépés
Protézis kar müoszenzorral: Ez a projekt egy protézis kifejlesztése amputált emberek számára. Ennek a projektnek a célja egy megfizethető protézis létrehozása azok számára, akik nem engedhetik meg maguknak a professzionális karokat. Mivel ez a projekt még csak a prototípus fázisában van, ezért
Jelszó az USB -meghajtóhoz titkosítás nélkül kötegelt fájllal: 8 lépés
Jelszó megadása egy USB -meghajtóhoz titkosítás nélkül kötegelt fájllal: egy program, amely nem engedi be a felhasználót a meghajtóba jelszó nélkül, és megmutat egy tulajdonosfájlt, amelyet tetszés szerint megváltoztathat, megmutatja, hogyan kell könnyen használni az általam készített programot