Innehållsförteckning:

Arduino Pro-mini datalogger: 15 steg
Arduino Pro-mini datalogger: 15 steg

Video: Arduino Pro-mini datalogger: 15 steg

Video: Arduino Pro-mini datalogger: 15 steg
Video: Amazing arduino project 2024, Juli
Anonim
Arduino Pro-mini datalogger
Arduino Pro-mini datalogger

Bygg instruktioner för open-source pro-mini Arduino datalogger

Friskrivningsklausul: Följande design och kod är gratis att ladda ner och använda, men har absolut ingen garanti eller någon som helst garanti.

Jag måste först tacka och marknadsföra de begåvade människorna som har inspirerat idén till denna datalogger och bidragit till koden och sensorerna som används. För det första kom idén till datalogger från den mycket väl utformade och väl förklarade (tyvärr vår handledning är inte lika bra) datalogger av Edward Mallon: https://thecavepearlproject.org/2017/06/19/ arduin …

För det andra designades och byggdes de open-source jordfuktighetssensorer som används här, liksom koden/biblioteket för att köra dem, av Catnip Electronics. Dessa är högkvalitativa sensorer och mycket robusta. Information om var du kan köpa dem och få koden för att köra dem (tack Ingo Fischer) ges nedan.

Steg 1: Material, verktyg, utrustning som behövs

Material, verktyg, utrustning behövs
Material, verktyg, utrustning behövs

Pro-mini Arduino-bräda. För denna applikation använder vi open-source (liksom alla våra delar) kinesiskt tillverkade pro-mini-kloner (5V, 16MHz, ATmega 326 mikroprocessor) (Fig. 1a). Dessa kort kan köpas på Aliexpress, Ebay och liknande webbplatser för mindre än $ 2US. Andra kort kan dock användas lika enkelt (notera spänningskraven för erforderliga sensorer, samt programminneskrav).

SD-kort och realtidsklocka (RTC) loggningsmodul läggs ut av Deek-Robot (ID: 8122) (Fig 1b). Denna modul innehåller en DS13072 RTC och micro-sd-kortläsare. Dessa brädor kostar mindre än $ 2US och är mycket robusta.

Arduino nano (ja-"nano") skruvplintadapter, lägger också ut Deek-Robot, som kan köpas för mindre än $ 2US från Aliexpress eller liknande (Fig. 1c). Som du kan se älskar vi bara Aliexpress.

22 gage solid-core isolerad tråd (Fig. 1d).

Dataloggerbox (bild 1e). Vi använder lådor av "forskningsklass", men billiga plastvaror fungerar alldeles utmärkt i de flesta situationer.

Batterifodral för 4 AA NiMh -batterier (bild 1f). Dessa kan köpas på Aliexpress för ca. 0,20 dollar styck (ja - 20 cent). Slösa inte dina pengar på dyrare batterifack.

6V, ca 1W solpanel. Kan köpas på Aliexpress för mindre än $ 2US.

Lödkolv, lödmedel och tidigare flussmedel.

Lim pistol.

Steg 2: Bygginstruktioner

Bygginstruktioner
Bygginstruktioner

Tid som krävs för att bygga: ca 30 till 60 min.

Förbered nanoterminaladapter för lödning.

För denna demonstration kommer vi att förbereda nanoskruvterminaladaptern för att underlätta anslutning av tre I2C jordfuktighetssensorer. Men med lite kreativitet kan skruvterminalerna förberedas på olika sätt för att underlätta andra enheter. Om du inte vet vad I2C är, kolla in följande webbplatser:

howtomechatronics.com/tutorials/arduino/ho…

www.arduino.cc/en/Reference/Wire

Idén att använda nanoskruvadaptrar togs från Edward Mallons underbara dataloggerdesign:

thecavepearlproject.org/2017/06/19/arduino…

Klipp av spåren på baksidan av skruvterminalen mellan de stora och små stiften i positionerna 3, 5, 9, 10 och 11 (räknat från toppen av terminalen) (Fig. 2). Dessa spår motsvarar etiketterna "RST", "A7", "A3", "A2" och "A1" på skruvterminalen. Att klippa av spåren är mycket lättare om du har ett verktyg av "Dremel" -typ, men om du inte gör det fungerar en liten kniv lätt. Skär dig inte! Observera att etiketterna på skruvterminalen och på pro-mini inte är desamma (nano och pro-mini har några stift på olika platser). Detta är en av olägenheterna med denna design, men det är lätt nog att ommärka terminalkortet när du är klar, om du vill.

Skrapa försiktigt bort (med en Dremel eller liten kniv) det tunna lagret av epoxi direkt intill stora stift 9, 10 och 11 (märkt 'A3', 'A2', 'A1' på nanoterminalen) (bild 2). Den exponerade kopparbeläggningen under epoxin jordas till Arduino pro-mini-kortet. Vi kommer senare att löda denna exponerade sektion till de intilliggande stiften, vilket ger tre jordade skruvterminaler.

Steg 3: Bygginstruktioner

Bygginstruktioner
Bygginstruktioner

Klipp åtta 8 cm långa längder av isolerad 22 gauge och ta bort ca 5 mm isolering från ena änden och 3 mm från den andra änden. Vi rekommenderar att du använder solid core wire.

Ta fyra av dessa trådar, böj ena änden 90 grader (änden med 5 mm eller exponerad tråd) och löd * tvärs * (dvs. att fästa alla stift med rikligt löd och fluss) till följande punkter:

Tråd 1: stora stift 3, 4 och 5 (märkta 'RST', '5V', 'A7' på nanoterminalen). Vi kommer att modifiera dessa tre skruvplintar till tre VCC -terminaler (fig. 3).

Steg 4: Bygginstruktioner

Bygginstruktioner
Bygginstruktioner

Wire 2: stora stift 9, 10 och 11 (märkta 'A3', 'A2', 'A1' på nanoterminalen) samt den exponerade kopparbeläggningen som avslöjades tidigare. Använd mycket löd. Oroa dig inte om det ser rörigt ut. Vi kommer att modifiera dessa tre skruvplintar till tre jordplintar (-) terminaler (fig. 4).

Steg 5: Bygginstruktioner

Bygginstruktioner
Bygginstruktioner

Tråd 3: stora stift 13, 14 och 15 (märkta 'REF', '3V3', 'D13' på nanoterminalen). Vi kommer att modifiera dessa tre skruvterminaler till tre A5 SCL -terminaler för I2C -kommunikation (fig. 5).

Steg 6: Bygginstruktioner

Bygginstruktioner
Bygginstruktioner

Wire 4: stora stift 28, 29 och 30 (märkta 'D10', 'D11', 'D12' på nanoterminalen). Vi kommer att modifiera dessa tre skruvterminaler till tre A4 SDA -terminaler för I2C -kommunikation (fig. 6).

Steg 7: Bygginstruktioner

Bygginstruktioner
Bygginstruktioner

Löd en tråd till var och en av de små (jag säger igen - små) stiften 9, 10 och 11 (märkta 'A3', 'A2', 'A1' på nanoterminalen) (bild 7).

Steg 8: Bygginstruktioner

Bygginstruktioner
Bygginstruktioner

Löda

den återstående kabeln till den stora stift 22 (märkt 'D4' på nanoterminalen) (bild 8).

Steg 9: Bygginstruktioner

Bygginstruktioner
Bygginstruktioner

Löd den lediga änden av varje tråd i dess motsvarande stifthål på Deek-Robot dataloggersköld (bild 9):

stor stift 'RST+5V+A7' till 5V stifthål

stor stift 'A3+A2+A1' till GND -stifthålet

liten stift 'A3' till SCK -stifthålet

liten stift 'A2' till MISO -hålet

liten stift 'A1' till MOSI -hålet

stor stift 'REF+3V3+D13' till SCL -stifthålet

stor stift 'D10+D11+D12' till SDA -stifthålet

och stor stift 'D4' till CS -stifthålet

Steg 10: Bygginstruktioner

Bygginstruktioner
Bygginstruktioner

Observera att vi tillhandahåller nanotiketterna här för enkel anslutning. Dessa etiketter motsvarar inte stiften på pro-mini-kortet när de väl sätts in i skruvterminalen.

Löd två 6 cm långa trådar i hålen A4 och A5 från undersidan av pro-mini-kortet (bild 10).

Steg 11: Bygginstruktioner

Bygginstruktioner
Bygginstruktioner

Lödstift på pro-mini-kortet och sätt in det i den färdiga skruvterminalen. Glöm inte att sätta in A5- och A4 -kablarna i D12 (A4) och D13 (A5) terminalerna på nanokortet. Kom alltid ihåg att stiften på Arduino- och skruvplintetiketterna inte kommer att justeras exakt (pro-mini- och nanokort har olika stiftarrangemang).

Sätt i ett CR 1220-batteri och ett micro-sd-kort i loggkortet. Vi använder SD -kort med kapacitet mindre än 15 GB, eftersom vi har haft problem med kort med större kapacitet. Vi använder formatera korten till FAT32.

Slutligen täck alla lödade fogar och fäst alla ledningar på anslutningskortet med varmt lim.

Styrelsen är nu klar att användas. Den färdiga brädan ska nu se ut så här: Fig. 11.

Steg 12: Konfigurera datalogger för fältanvändning

Konfigurera datalogger för fältanvändning
Konfigurera datalogger för fältanvändning

För att förhindra att din dataloggare välter i dataloggerrutan, samt för att ge enkel åtkomst till kommunikationsnålarna, rekommenderar vi att du skapar en stabiliserande plattform. Plattformen håller också elektroniken minst några centimeter från lådans botten vid översvämningar. Vi använder 1,5 mm akrylark och ansluter det till dataloggern med 4 mm bultar, muttrar och brickor (bild 12).

Steg 13:

Bild
Bild

Vi använder jordfuktsensorer med öppen källkod I2C-typ. Vi köper dem från Catnip Electronics (webbplats nedan). De kan köpas på Tindie och kostar ca $ 9US för standardmodellen och ca $ 22US för den robusta modellen. Vi har använt den robusta versionen i fältförsök. De är mycket robusta och erbjuder liknande prestanda som mycket dyrare kommersiella alternativ (vi kommer inte att sätta någon på Front Street, men du känner förmodligen de vanliga misstänkta).

Catnip Electronics I2C -sensor i denna handledning:

köp här:

arduino bibliotek:

arduino -bibliotek på Github:

Fäst den gula ledningen från I2C -sensorn till en av skruvarna A5. Anslut den gröna ledningen från I2C -sensorn till en av A4 -terminalerna. Röda och svarta ledningar från sensorn går till VCC respektive jordterminaler.

Sätt i fyra laddade NiMh -batterier i batterifacket. Anslut den röda (+) kabeln till RAW-stiftet på dataloggern (dvs RAW-stiftet på pro-mini-kortet) (men se avsnittet "energibesparing" nedan). Fäst den svarta (-) kabeln på en av jordstiftet på dataloggern.

För långvarig fältanvändning, fäst en 6V 1W solpanel till loggen. Solpanelen kommer att användas för att köra datalogger och ladda batteriet under dagen, och fungerar även under grumlig himmel (även om snö är ett problem).

Löd först en ~ 2A Schottky -diod på solpanelens positiva terminal. Detta förhindrar att ström flyter tillbaka till solpanelen när det inte finns solstrålning. Glöm inte att göra detta, annars har du batterier på nolltid.

Anslut (+) terminalen från solpanelen (dvs dioden) till RAW-stiftet på loggen (dvs RAW-stiftet på pro-mini) och (-) terminalen från solpanelen till en av marken terminaler på loggen.

Denna inställning gör det möjligt för den inbyggda spänningsregulatorn i pro-mini-kortet att reglera spänningen från både solpanelen och batteriet. Nu … Jag kommer att säga att detta inte är en idealisk inställning för laddning av NiMh-batterier (svårt även under perfekta förhållanden). De solpaneler som vi använder släpper dock ut ca 150mA under förhållanden med full sol, vilket motsvarar ca 0,06 C (C = batteripackets kapacitet), vilket har visat sig vara en enkel, säker och pålitlig laddningsmetod för våra skogsavverkare. Vi har haft dem springande på detta sätt i fältet i upp till ett år i Colorado. Se dock ansvarsfriskrivning - våra loggare har absolut ingen garanti eller garanti. Varje gång du använder batterier eller solpaneler på fältet riskerar du att starta en brand. Var försiktig. Använd denna design på egen risk!

Säkra dataloggaren och batteriet i en väderbeständig låda (bild 13).

Steg 14: Energibesparing

Vi inaktiverar ofta ström-lysdioderna från både pro-mini och dataloggerkort. Spåren till dessa lysdioder kan skäras noggrant med ett rakblad (se länk nedan). Varje LED förbrukar ca 2,5mA ström vid 5V (länk nedan). För många applikationer kommer dock denna mängd strömförlust att vara försumbar och forskaren kan helt enkelt lämna ström -LED: erna som de är.

www.instructables.com/id/Arduino-low-Proje…

Vi driver också biblioteket 'LowPower.h' (med 'rocketscream'; länk nedan), vilket är mycket lätt att använda och avsevärt minskar strömförbrukningen mellan loggningsintervallen.

github.com/rocketscream/Low-Power

Efter att ha tagit bort strömlamporna från pro-mini och dataloggningskortet och kört LowPower.h-biblioteket (se "kod" nedan), kommer loggern att förbruka ca. 1mA ström vid 5V medan du sover. Genom att köra tre I2C -sensorer samtidigt förbrukar loggern i viloläge (mellan provtagnings iterationer) ca 4,5mA vid 5V och ca 80mA vid provtagning. Eftersom provtagning sker mycket snabbt och ganska sällan bidrar inte 80mA strömdragning meningsfullt till att batteriet dräneras.

Mer ström kan sparas när du inte använder solpaneler genom att ansluta (+) batteripolen direkt till VCC -stiftet på loggen. Men om du ansluter direkt till VCC, snarare än RAW-stiftet, undviks den inbyggda spänningsregulatorn, och strömmen till sensorerna kommer inte att vara nästan lika konstant som om den hade dirigerats genom regulatorn. Till exempel kommer spänningen att minska när batteriet töms under dagar och veckor, och i många fall kommer detta att resultera i betydande variation i sensoravläsningarna (beroende på vilka sensorer du använder). Anslut inte en solpanel direkt till VCC.

Steg 15: Kod

Vi inkluderar två skisser för att köra dataloggern med tre I2C jordfuktighetssensorer. Den första skissen 'logger_sketch' samplar från varje sensor och loggar kapacitans- och temperaturdata till SD -kortet var 30: e minut (men kan enkelt ändras av användaren). Den andra skissen 'ChangeSoilMoistureSensorI2CAddress' tillåter användaren att tilldela olika I2C-adresser till var och en av sensorerna så att de kan användas samtidigt av dataloggern. Adresser i "logger_sketch" kan ändras på rad 25, 26 och 27. De bibliotek som behövs för att köra sensorn finns på Github.

Rekommenderad: