Logo SparkFunSprievodca pripojením OpenLogu

Úvod

Pozor! Tento návod je pre Open Log pre sériový UART [DEV-13712]. Ak používate Qwiic OpenLog pre IC [DEV-15164], pozrite si, prosím, Sprievodcu pripojením Qwiic OpenLog.
OpenLog Data Logger je jednoducho použiteľné riešenie s otvoreným zdrojovým kódom na zaznamenávanie sériových údajov z vašich projektov. OpenLog poskytuje jednoduché sériové rozhranie na zaznamenávanie údajov z projektu na kartu microSD.Vývojové dosky DEV-13712 SparkFunSparkFun OpenLog
• DEV-13712Vývojové dosky DEV-13712 SparkFun - SúčiastkySparkFun OpenLog s hlavičkami
• DEV-13955

nenašiel sa žiadny produkt
Požadované materiály
Aby ste si mohli tento návod plne preštudovať, budete potrebovať nasledujúce súčasti. Možno však nebudete potrebovať všetko v závislosti od toho, čo máte. Pridajte si ich do košíka, prečítajte si návod a podľa potreby upravte košík.
Sprievodca prepojením OpenLog Zoznam želaní SparkFun

Vývojové dosky DEV-13712 SparkFun – 1. diel Arduino Pro Mini 328 – 3.3V/8MHz
DEV-11114
Je modrý! Je tenký! Je to Arduino Pro Mini! Minimalistický dizajnový prístup SparkFun k Arduinu. Toto je 3.3V Arduino …
Vývojové dosky DEV-13712 SparkFun – 2. diel Základný rozbočovač SparkFun FTDI – 3.3 V
DEV-09873
Toto je najnovšia revízia nášho [FTDI Basic](http://www.sparkfun.com/commerce/product_info.php?products_id=…
Vývojové dosky DEV-13712 SparkFun – 3. diel USB kábel SparkFun Cerberus – 6 m
CAB-12016
Máte nesprávny USB kábel. Nezáleží na tom, ktorý máte, je to nesprávny. Ale čo keby ste mohli mať…
Vývojové dosky DEV-13712 SparkFun – 4. diel SparkFun OpenLog
DEV-13712
SparkFun OpenLog je open source dátový záznamník, ktorý funguje cez jednoduché sériové pripojenie a podporuje…
Vývojové dosky DEV-13712 SparkFun – 5. diel Pamäťová karta microSD s adaptérom – 16 GB (trieda 10)
COM-13833
Ide o pamäťovú kartu microSD triedy 10 s kapacitou 16 GB, ideálnu na uloženie operačných systémov pre jednodoskové počítače a…
Vývojové dosky DEV-13712 SparkFun – 6. diel Čítačka microSD USB
COM-13004
Toto je úžasná malá USB čítačka microSD kariet. Stačí zasunúť kartu microSD do vnútra USB konektora a…
Vývojové dosky DEV-13712 SparkFun – 7. diel Ženské hlavičky
PRT-00115
Jeden rad 40-dierových, samičích konektorov. Dá sa skrátiť na mieru pomocou klieští na drôt. Štandardný rozstup 1″. Používame …
Vývojové dosky DEV-13712 SparkFun – 8. diel Štartovacie káble Premium 6″ M/M, balenie 10 kusov
PRT-08431
Toto je exkluzívny produkt od SparkFun! Ide o 155 mm dlhé prepojky s konektormi typu „male“ na oboch koncoch. Použite ich na…
Vývojové dosky DEV-13712 SparkFun – 9. diel Odtrhávacie samčie hlavičky – pravouhlé
PRT-00553
Rad pravouhlých konektorov typu „samec“ – dajú sa prelomiť a pasovať. 40 pinov, ktoré je možné skrátiť na ľubovoľnú veľkosť. Používa sa s vlastnými doskami plošných spojov alebo generátormi…

Odporúčané čítanie
Ak nie ste oboznámení s nasledujúcimi konceptmi alebo s nimi nie ste spokojní, odporúčame vám prečítať si ich predtým, ako budete pokračovať s príručkou OpenLog Hookup Guide.
Ako spájkovať: Spájkovanie cez otvor
Tento návod pokrýva všetko, čo potrebujete vedieť o spájkovaní cez otvor.
Serial Peripheral Interface (SPI)
SPI sa bežne používa na pripojenie mikrokontrolérov k periférnym zariadeniam, ako sú senzory, posuvné registre a SD karty.
Sériová komunikácia
Koncepty asynchrónnej sériovej komunikácie: pakety, úrovne signálu, prenosové rýchlosti, UART a ďalšie!
Základy sériového terminálu
Tento návod vám ukáže, ako komunikovať so sériovými zariadeniami pomocou rôznych aplikácií emulátora terminálu.

Hardware Overview

Sila
OpenLog beží s nasledujúcimi nastaveniami:
Hodnotenia výkonu OpenLog

Vstup VCC 3.3 V – 12 V (odporúčané 3.3 V – 5 V)
Vstup RXI 2.0V-3.8V
Výstup TXO 3.3 V
Odber prúdu v kľudovom stave ~2mA – 5mA (bez microSD karty), ~5mA – 6mA (s microSD kartou)
Odber prúdu pri aktívnom zápise ~20 – 23 mA (s kartou microSD)

Odber prúdu zariadenia OpenLog pri zápise na kartu microSD je približne 20 mA až 23 mA. V závislosti od veľkosti karty microSD a jej výrobcu sa aktívny odber prúdu môže líšiť, keď zariadenie OpenLog zapisuje na pamäťovú kartu. Zvýšenie prenosovej rýchlosti tiež zvýši odber prúdu.
mikroradič
OpenLog je napájaný integrovaným kryštálom ATmega328, ktorý beží na frekvencii 16 MHz vďaka integrovanému kryštálu. ATmega328 má nainštalovaný bootloader Optiboot, ktorý umožňuje kompatibilitu OpenLog s nastavením dosky „Arduino Uno“ v Arduino IDE.Vývojové dosky DEV-13712 SparkFun - bootloaderRozhranie
Sériový UART
Primárnym rozhraním s OpenLogom je FTDI konektor na okraji dosky. Tento konektor je určený na priame pripojenie k Arduino Pro alebo Pro Mini, čo umožňuje mikrokontroléru odosielať dáta cez sériové pripojenie do OpenLogu.Vývojové dosky DEV-13712 SparkFun – hrana dosky

POZOR! Kvôli usporiadaniu pinov, ktoré ho robí kompatibilným s doskami Arduino, sa nedá priamo zapojiť do rozbočovacej dosky FTDI. Vývojové dosky DEV-13712 SparkFun – hrana dosky 1Viac informácií nájdete v nasledujúcej časti o pripojení hardvéru.
SPI
Na opačnom konci dosky sú tiež štyri testovacie SPI konektory. Tieto konektory môžete použiť na preprogramovanie bootloaderu na ATmega328.Vývojové dosky DEV-13712 SparkFun – hrana dosky 2Najnovší OpenLog (DEV-13712) má tieto piny vylamované na menších pokovovaných priechodných otvoroch. Ak potrebujete na preprogramovanie alebo nahranie nového bootloaderu do OpenLogu použiť poskytovateľa internetových služieb, môžete na pripojenie k týmto testovacím bodom použiť pogo piny.
Posledným rozhraním pre komunikáciu s OpenLogom je samotná karta microSD. Na komunikáciu karta microSD vyžaduje SPI piny. Nielenže sa tu ukladajú dáta pomocou OpenLogu, ale konfiguráciu OpenLogu môžete aktualizovať aj pomocou súboru config.txt. file na karte microSD.
Karta microSD
Všetky údaje zaznamenané zariadením OpenLog sa ukladajú na kartu microSD. OpenLog funguje s kartami microSD, ktoré majú nasledujúce funkcie:

  • 64 MB až 32 GB
  • FAT16 alebo FAT32

Vývojové dosky DEV-13712 SparkFun – hrana dosky 3

Stav LED
Na zariadení OpenLog sú dve stavové LED diódy, ktoré vám pomôžu pri riešení problémov.

  • STAT1 – Táto modrá indikačná LED dióda je pripojená k doske Arduino D5 (ATmega328 PD5) a zapína/vypína sa pri prijatí nového znaku. Táto LED dióda bliká, keď funguje sériová komunikácia.
  • STAT2 – Táto zelená LED dióda je pripojená k Arduinu D13 (SPI Serial Clock Line/ATmega328 PB5). Táto LED dióda bliká iba vtedy, keď je aktívne rozhranie SPI. Blikať uvidíte, keď OpenLog zaznamená 512 bajtov na kartu microSD.

Vývojové dosky DEV-13712 SparkFun – hrana dosky 4

Hardvérové ​​pripojenie

Existujú dva hlavné spôsoby pripojenia vášho OpenLogu k obvodu. Na pripojenie budete potrebovať nejaké konektory alebo vodiče. Pre bezpečné pripojenie sa uistite, že ste ich prispájkovali k doske.
Základné sériové pripojenie
Tip: Ak máte samičí konektor OpenLog a samičí konektor na FTDI, budete na prepojenie potrebovať prepojovacie vodiče M/F.Vývojové dosky DEV-13712 SparkFun – základné sériové pripojenie

Toto hardvérové ​​pripojenie je navrhnuté na prepojenie s OpenLogom, ak potrebujete preprogramovať dosku alebo zaznamenávať dáta cez základné sériové pripojenie.
Vykonajte nasledujúce pripojenia:
OpenLog → 3.3V FTDI základný rozbočovač

  • GND → GND
  • GND → GND
  • VCC → 3.3 V
  • TXO → RXI
  • RXI → TXO
  • DTR → DTR

Všimnite si, že nejde o priame prepojenie medzi FTDI a OpenLogom – musíte prehodiť pripojenia pinov TXO a RXI.
Vaše pripojenia by mali vyzerať takto: Vývojové dosky DEV-13712 SparkFun – základný rozbočovačKeď už máte prepojenie medzi OpenLogom a FTDI Basic, zapojte dosku FTDI do USB kábla a do počítača.
Otvorte sériový terminál, pripojte ho k COM portu vášho FTDI Basic a vyrazte do toho!

Pripojenie hardvéru projektu

Tip: Ak máte na OpenLogu prispájkované samičie konektory, môžete k Arduino Pro Mini prispájkovať samčie konektory, aby ste dosky spojili bez potreby káblov.Vývojové dosky DEV-13712 SparkFun – pripojenie hardvéru projektuHoci je prepojenie s OpenLogom cez sériové pripojenie dôležité pre preprogramovanie alebo ladenie, OpenLog sa osvedčí v embedded projektoch. Tento všeobecný obvod odporúčame pripojiť váš OpenLog k mikrokontroléru (v tomto prípade Arduino Pro Mini), ktorý bude zapisovať sériové dáta do OpenLogu.
Najprv budete musieť nahrať kód do vášho Pro Mini, ktoré chcete spustiť. Pozrite si, prosím, náčrty Arduina, kde nájdete niekoľko príkladov.ampkód, ktorý môžete použiť.
Poznámka: Ak si nie ste istí, ako naprogramovať svoj Pro Mini, pozrite si náš návod tu.
Používanie Arduino Pro Mini 3.3V
Tento tutoriál je vaším sprievodcom všetkým, čo sa týka Arduino Pro Mini. Vysvetľuje, čo to je, čo to nie je a ako to začať používať.
Keď naprogramujete svoj Pro Mini, môžete vybrať dosku FTDI a nahradiť ju doskou OpenLog.
Uistite sa, že ste zapojili piny označené BLK na Pro Mini aj OpenLogu (piny označené GRN na oboch zariadeniach sa tiež zhodujú, ak sa to urobí správne).
Ak nemôžete zapojiť OpenLog priamo do Pro Mini (kvôli nezhodným konektorom alebo iným doskám v ceste), môžete použiť prepojovacie káble a vykonať nasledujúce pripojenia.
OpenLog → Arduino Pro/Arduino Pro Mini

  • GND → GND
  • GND → GND
  • VCC → VCC
  • TXO → RXI
  • RXI → TXO
  • DTR → DTR

Keď skončíte, vaše pripojenia s Arduino Pro Mini a Arduino Pro by mali vyzerať takto.
Fritzingov diagram zobrazuje OpenLogs so zrkadlovo otočenými hlavičkami. Ak otočíte microSD socket vzhľadom na vrch Arduina view, mali by sa zhodovať s programovacou hlavičkou ako FTDI.Vývojové dosky DEV-13712 SparkFun - Pripojenie hardvéru projektu 1

Poznámka že pripojenie je priame s OpenLogom „hore nohami“ (s microSD smerom nahor).
⚡Poznámka: Keďže Vcc a GND medzi OpenLogom a Arduinom sú obsadené konektormi, budete musieť pripojiť napájanie k ostatným dostupným pinom na Arduine. V opačnom prípade by ste mohli prispájkovať vodiče k odkrytým napájacím pinom na ktorejkoľvek doske.
Zapnite systém a ste pripravení začať logovať!

Náčrty pre Arduino

Existuje šesť rôznych bývalýchampSúčasťou sú aj náčrty, ktoré môžete použiť na Arduine po pripojení k OpenLogu.

  • OpenLog_Benchmarking — Tento exampPoužíva sa na testovanie OpenLogu. Tento protokol odosiela veľmi veľké množstvo dát rýchlosťou 115200 XNUMX bps cez niekoľko files.
  • OpenLog_CommandTest — Tento example ukazuje, ako vytvoriť a pripojiť file ovládanie z príkazového riadku cez Arduino.
  • OpenLog_ReadExample — Tento exampTento návod popisuje, ako ovládať OpenLog pomocou príkazového riadku.
  • OpenLog_ReadExample_LargeFile — Prample o tom, ako otvoriť veľký úložný priestor file na OpenLogu a nahlásiť to cez lokálne pripojenie Bluetooth.
  • OpenLog_Test_Sketch — Používa sa na testovanie OpenLogu s množstvom sériových dát.
  • OpenLog_Test_Sketch_Binary — Používa sa na testovanie OpenLogu s binárnymi údajmi a únikovými znakmi.

Firmvér

OpenLog má na palube dva hlavné softvérové ​​komponenty: bootloader a firmvér.
Bootloader pre Arduino
Poznámka: Ak používate OpenLog, ktorý bol zakúpený pred marcom 2012, integrovaný bootloader je kompatibilný s nastavením „Arduino Pro alebo Pro Mini 5V/16MHz s ATmega328“ v Arduino IDE.
Ako už bolo spomenuté, OpenLog má integrovaný sériový bootloader Optiboot. Pri nahrávaní exportovaných dát môžete s OpenLogom zaobchádzať rovnako ako s Arduinom Uno.ampkód alebo nový firmvér na dosku.
Ak sa vám stane, že sa vám OpenLog zablokuje a budete musieť preinštalovať bootloader, budete chcieť nahrať aj Optiboot na dosku. Viac informácií nájdete v našom návode na inštaláciu bootloaderu pre Arduino.
Kompilácia a načítanie firmvéru do OpenLog
Poznámka: Ak používate Arduino prvýkrát, prosím, znovaview náš návod na inštaláciu Arduino IDE. Ak ste ešte nenainštalovali knižnicu Arduino, pozrite si našu inštalačnú príručku a nainštalujte knižnice manuálne.
Ak z akéhokoľvek dôvodu potrebujete aktualizovať alebo preinštalovať firmvér na vašom OpenLogu, nasledujúci postup vám pomôže spustiť vašu dosku.
Najprv si stiahnite Arduino IDE v1.6.5. Iné verzie IDE môžu fungovať na kompiláciu firmvéru OpenLog, ale túto sme overili ako známu a funkčnú verziu.
Ďalej si stiahnite firmvér OpenLog a požadovaný balík knižníc.

STIAHNUŤ BALÍK FIRMVÉRU OPENLOG (ZIP)
Po stiahnutí knižníc a firmvéru ich nainštalujte do Arduina. Ak si nie ste istí, ako manuálne nainštalovať knižnice v IDE, pozrite si náš návod: Inštalácia knižnice pre Arduino: Manuálna inštalácia knižnice.
Poznámka: Používame upravené verzie knižníc SdFat a SerialPort, aby sme mohli ľubovoľne deklarovať, aké veľké by mali byť vyrovnávacie pamäte TX a RX. OpenLog vyžaduje, aby vyrovnávacia pamäť TX bola veľmi malá (0) a vyrovnávacia pamäť RX musí byť čo najväčšia. Použitie týchto dvoch upravených knižníc spolu umožňuje zvýšiť výkon OpenLog.
Hľadáte najnovšie verzie? Ak uprednostňujete najaktuálnejšie verzie knižníc a firmvéru, môžete si ich stiahnuť priamo z repozitárov GitHub, na ktoré odkazujeme nižšie. Knižnice SdFatLib a Serial Port nie sú viditeľné v správcovi dosiek Arduino, takže si ich budete musieť nainštalovať manuálne.

  • GitHub: OpenLog > Firmvér > OpenLog_Firmware
  • Knižnice Billa Greimana pre Arduino
    SdFatLib-beta
    Sériový port

Ďalej, aby sme využili výhodytagZ upravených knižníc upravte súbor SerialPort.h file nájdené v adresári \Arduino\Libraries\SerialPort. Zmeňte BUFFERED_TX na 0 a ENABLE_RX_ERROR_CHECKING na 0. Uložte filea otvorte vývojové prostredie Arduino.
Ak ste tak ešte neurobili, pripojte svoj OpenLog k počítaču pomocou dosky FTDI. Skontrolujte, prosím, exampobvod, ak si nie ste istí, ako to správne urobiť.
Otvorte náčrt OpenLog, ktorý chcete nahrať, v ponuke Nástroje>Doska, vyberte „Arduino/Genuino Uno“ a v časti Nástroje>Port vyberte správny COM port pre vašu dosku FTDI.
Nahrajte kód.
To je všetko! Váš OpenLog je teraz naprogramovaný s novým firmvérom. Teraz môžete otvoriť sériový monitor a interagovať s OpenLogom. Po zapnutí sa zobrazí buď 12>, alebo 12<. 1 znamená, že sériové pripojenie je nadviazané, 2 znamená, že SD karta bola úspešne inicializovaná, < znamená, že OpenLog je pripravený zaznamenávať všetky prijaté sériové dáta a > znamená, že OpenLog je pripravený prijímať príkazy.
Náčrty firmvéru OpenLog
V OpenLogu sú zahrnuté tri náčrty, ktoré môžete použiť v závislosti od vašej konkrétnej aplikácie.

  • OpenLog – Tento firmvér sa štandardne dodáva s OpenLogom. Odoslaním príkazu ? sa zobrazí verzia firmvéru nahraná v jednotke.
  • OpenLog_Light – Táto verzia náčrtu odstraňuje menu a príkazový režim, čo umožňuje zväčšenie prijímacej vyrovnávacej pamäte. Toto je dobrá voľba pre vysokorýchlostné protokolovanie.
  • OpenLog_Minimal – Prenosová rýchlosť musí byť nastavená v kóde a nahraná. Táto skica sa odporúča pre skúsených používateľov, ale je tiež najlepšou voľbou pre najvyššiu rýchlosť logovania.

Sada príkazov

S OpenLogom sa môžete prepojiť cez sériový terminál. Nasledujúce príkazy vám pomôžu čítať, zapisovať a mazať files, ako aj zmeniť nastavenia OpenLog. Na použitie nasledujúcich nastavení budete musieť byť v príkazovom režime.
Keď je OpenLog v príkazovom režime, STAT1 sa zapne/vypne pre každý prijatý znak. LED dióda zostane svietiť, kým sa neprijme ďalší znak.

File Manipulácia

  • nové File – Vytvára nový file pomenovaný File v aktuálnom adresári. Štandard 8.3 filemená sú podporované.
    NapríkladampNapríklad „87654321.123“ je prijateľné, zatiaľ čo „987654321.123“ nie.
    • Naprample: nový file1.txt
  • priložiť File – Pridať text na koniec FileSériové dáta sa potom načítajú z UART v streame a pridajú sa do fileNeprenáša sa cez sériový terminál. Ak File neexistuje, keď sa táto funkcia volá, file sa vytvorí.
    • Naprample: pridať novýfile.csv
  • písať File OFFSET – Napísať text do File z polohy OFFSET v rámci fileText sa číta z UARTu riadok po riadku a odosiela sa späť. Na ukončenie tohto stavu odošlite prázdny riadok.
    • Naprample: zápis logs.txt 516
  • rm File – Odstránenia File z aktuálneho adresára. Zástupné znaky sú podporované.
    • Naprampsúbor: rm README.txt
  • veľkosť File – Výstupná veľkosť File v bajtoch.
    • Naprampsúbor: veľkosť Log112.csv
    • Výstup: 11
  • čítať File + ŠTART+ TYP DĹŽKY – Výpis obsahu File začnite od ZAČIATOKU a pokračujte po DĹŽKU.
    Ak sa vynechá START, celý file sa uvádza. Ak sa vynechá argument LENGTH, zobrazí sa celý obsah od východiskového bodu. Ak sa vynechá argument TYPE, OpenLog sa predvolene zobrazí v ASCII. Existujú tri výstupné TYPE:
    • ASCII = 1
    • HEX = 2
    • SUROVÝ = 3
    Niektoré koncové argumenty môžete vynechať. Pozrite si nasledujúci príkladamples.
    Základné príznaky čítania + vynechania:
    • Naprample: čítať LOG00004.txt
    • Výstup: Akcelerometer X=12 Y=215 Z=317
    Čítanie od začiatku 0 s dĺžkou 5:
    • Naprample: čítanie LOG00004.txt 0 5
    • Výstup: Zrýchlenie
    Čítať z pozície 1 s dĺžkou 5 v HEX:
    • Naprample: čítanie LOG00004.txt 1 5 2
    • Výstup: 63 63 65 6C
  • Čítanie z pozície 0 s dĺžkou 50 v RAW:
  • • Naprample: čítanie LOG00137.txt 0 50 3
  • • Výstup: André– -þ Rozšírený test znakov
  • kat File – Napíšte obsah file v hexadecimálnom kóde do sériového monitora pre viewing. Niekedy je užitočné vidieť, že a file nahráva správne bez nutnosti vyťahovania SD karty a view a file na počítači.
    • Naprampsúbor: cat LOG00004.txt
    • Výstup: 00000000: 41 63 65 6c 3a 20 31

Manipulácia s adresármi

  • ls – Vypíše všetok obsah aktuálneho adresára. Podporované sú zástupné znaky.
    • Naprample: ls
    • Výstup: \src
  • Podadresár md – Vytvorenie podadresára v aktuálnom adresári.
    • Naprample: md Example_Sketches
  • Podadresár cd – Zmena na podadresár.
    • Naprample: cd Hello_World
  • cd .. – Prechod do nižšieho adresára v stromovej štruktúre. Všimnite si, že medzi „cd“ a „..“ je medzera. To umožňuje analyzátoru reťazcov vidieť príkaz cd.
    • Naprampnapr. cd ..
  • rm Podadresár – Odstráni podadresár. Aby tento príkaz fungoval, adresár musí byť prázdny.
    • Naprample: rm teploty
  • rm -rf Adresár – Vymaže adresár a všetky fileje v ňom obsiahnutý.
    • Naprample: rm -rf Knižnice

Príkazy funkcií nízkej úrovne

  • ? – Tento príkaz zobrazí zoznam dostupných príkazov v OpenLogu.
  • disk – Zobraziť ID výrobcu karty, sériové číslo, dátum výroby a veľkosť karty. Napr.ampvýstup je:
    Typ karty: SD2
    ID výrobcu: 3
    ID OEM: SD
    Produkt: SU01G
    Verzia: 8.0
    Sériové číslo: 39723042
    Rok výroby: 1/2010
    Veľkosť karty: 965120 KB
  • init – Znova inicializuje systém a znova otvorí SD kartu. Toto je užitočné, ak SD karta prestane reagovať.
  • sync – Synchronizuje aktuálny obsah vyrovnávacej pamäte s SD kartou. Tento príkaz je užitočný, ak máte vo vyrovnávacej pamäti menej ako 512 znakov a chcete ich zaznamenať na SD kartu.
  • reset – Preskočí OpenLog na nulu, znova spustí bootloader a potom inicializuje kód. Tento príkaz je užitočný, ak potrebujete upraviť konfiguráciu. file, resetujte OpenLog a začnite používať novú konfiguráciu. Vypnutie a vypnutie napájania je stále preferovanou metódou resetovania dosky, ale táto možnosť je k dispozícii.

Systémové nastavenia

Tieto nastavenia je možné manuálne aktualizovať alebo upraviť v súbore config.txt. file.

  • echo STATE – Mení stav systémového echa a ukladá sa do systémovej pamäte. STATE môže byť buď zapnuté, alebo vypnuté. Keď je zapnuté, OpenLog bude na príkazovom riadku odosielať prijaté sériové dáta. Keď je vypnuté, systém nenačíta prijaté znaky späť.
    Poznámka: Počas normálneho logovania bude echo vypnuté. Nároky na systémové prostriedky na logovanie prijatých údajov sú počas logovania príliš vysoké.
  • verbose STATE – Mení stav podrobného hlásenia chýb. STATE môže byť zapnutý alebo vypnutý. Tento príkaz je uložený v pamäti. Vypnutím podrobných chýb bude OpenLog reagovať iba znakom !, ak sa vyskytne chyba, a nie neznámym príkazom: COMMAND. Znak ! je pre vstavané systémy ľahšie analyzovateľný ako celá chyba. Ak používate terminál, ponechanie podrobného hlásenia zapnuté vám umožní zobraziť úplné chybové hlásenia.
  • baud – Tento príkaz otvorí systémové menu, ktoré používateľovi umožní zadať prenosovú rýchlosť. Podporovaná je ľubovoľná prenosová rýchlosť medzi 300 bps a 1 Mbps. Výber prenosovej rýchlosti je okamžitý a OpenLog vyžaduje na aktiváciu cyklus vypnutia a vypnutia napájania. Prenosová rýchlosť sa uloží do pamäte EEPROM a načíta sa pri každom zapnutí OpenLog. Predvolená hodnota je 9600 8N1.

Pamätajte: Ak sa doska zasekne na neznámej prenosovej rýchlosti, môžete prepojiť RX s GND a zapnúť OpenLog. LED diódy budú 2 sekundy blikať tam a späť a potom budú blikať súčasne. Vypnite OpenLog a odstráňte prepojku. OpenLog sa teraz resetuje na 9600 bps po troch stlačeniach klávesovej skratky `CTRL-Z`. Túto funkciu je možné prepísať nastavením bitu núdzového prepínania na 1.
Viac informácií nájdete v súbore config.txt.

  • set – Tento príkaz otvorí systémovú ponuku na výber režimu spustenia. Tieto nastavenia sa vykonajú pri
    • pri ďalšom zapnutí a sú uložené v energeticky nezávislej EEPROM. Nové File Záznam – Tento režim vytvára nový file pri každom zapnutí OpenLogu. OpenLog odošle 1 (UART je aktívny), 2 (SD karta je inicializovaná) a potom < (OpenLog je pripravený prijímať dáta). Všetky dáta sa zaznamenajú do súboru LOG#####.txt. Číslo ##### sa zvyšuje pri každom zapnutí OpenLogu (maximálne je 65533 záznamov). Číslo je uložené v EEPROM a je možné ho vynulovať z ponuky nastavení.
    Všetky prijaté znaky sa neodošlú. Tento režim môžete ukončiť a vstúpiť do príkazového režimu odoslaním kombinácie klávesov CTRL+z (ASCII 26). Všetky uložené dáta budú uložené.

Poznámka: Ak bolo vytvorených príliš veľa protokolov, OpenLog vypíše chybu **Príliš veľa protokolov**, ukončí tento režim a prejde do príkazového riadka. Sériový výstup bude vyzerať takto: `12!Príliš veľa protokolov!`.

  • Pripojiť File Záznam – Tento režim, známy aj ako sekvenčný režim, vytvára file nazýva sa SEQLOG.txt, ak tam ešte nie je, a pridá všetky prijaté údaje do fileOpenLog odošle 12<, kedy je OpenLog pripravený prijímať dáta. Znaky sa neodosielajú. Tento režim môžete ukončiť a vstúpiť do príkazového režimu odoslaním CTRL+z (ASCII 26). Všetky uložené dáta budú uložené.
  • Príkazový riadok – OpenLog odošle 12>, v ktorom je systém pripravený prijímať príkazy. Upozorňujeme, že znak > označuje, že OpenLog je pripravený prijímať príkazy, nie dáta. Môžete vytvoriť filea pridajte údaje do files, ale to si vyžaduje sériové spracovanie (na kontrolu chýb), takže tento režim štandardne nenastavujeme.
  • Obnoviť Nové File Číslo – Tento režim vynuluje protokol file číslo do súboru LOG000.txt. Toto je užitočné, ak ste nedávno vyprázdnili kartu microSD a chcete, aby sa záznam file čísla na začiatok odznova.
  • Nový escape znak – Táto možnosť umožňuje používateľovi zadať znak, ako napríklad CTRL+z alebo $ , a nastaviť ho ako nový escape znak. Toto nastavenie sa počas núdzového resetu resetuje na CTRL+z.
  • Počet únikových znakov – Táto možnosť umožňuje používateľovi zadať znak (napríklad 1, 3 alebo 17), čím sa aktualizuje nový počet únikových znakov potrebných na prechod do príkazového režimu. Napríkladampnapr. zadanie čísla 8 bude vyžadovať, aby používateľ osemkrát stlačil klávesy CTRL+z, aby sa dostal do príkazového režimu. Toto nastavenie sa počas núdzového resetu resetuje na hodnotu 3.

Vysvetlenie znakov escape: Dôvod, prečo OpenLog vyžaduje trojité stlačenie klávesov `CTRL+z` na vstup do príkazového režimu, je zabrániť náhodnému resetovaniu dosky počas nahrávania nového kódu z Arduino IDE. Existuje možnosť, že doska uvidí znak `CTRL+z` počas bootovania (problém, ktorý sme zaznamenali v skorších verziách firmvéru OpenLog), takže cieľom je tomu zabrániť. Ak máte podozrenie, že vaša doska bola z tohto dôvodu zablokovaná, môžete vždy vykonať núdzový reset tak, že počas zapínania podržíte pin RX na zemi.

Konfigurácia File

Ak nechcete používať sériový terminál na úpravu nastavení vášho OpenLogu, môžete nastavenia aktualizovať aj úpravou súboru CONFIG.TXT. file.
Poznámka: Táto funkcia funguje iba s verziou firmvéru 1.6 alebo novšou. Ak ste si zakúpili OpenLog po roku 2012, budete používať verziu firmvéru 1.6 alebo novšiu.
Na to budete potrebovať čítačku kariet microSD a textový editor. Otvorte súbor config.txt file (kapitalizácia file (na názve nezáleží) a nakonfigurujte ho! Ak ste svoj OpenLog ešte nikdy nezapínali pomocou SD karty, môžete ho vytvoriť aj manuálne fileAk ste predtým zapli OpenLog s vloženou microSD kartou, pri načítaní microSD karty by ste mali vidieť niečo podobné ako nasledovné.Vývojové dosky DEV-13712 SparkFun - textový editorOpenLog vytvorí súbory config.txt a LOG0000.txt file pri prvom zapnutí.
Predvolená konfigurácia file má jeden riadok nastavení a jeden riadok definícií.DEV-13712 Vývojové dosky SparkFun - textový editor 1Predvolená konfigurácia file napísané OpenLogom.
Upozorňujeme, že ide o bežné viditeľné znaky (neexistujú žiadne neviditeľné ani binárne hodnoty) a každá hodnota je oddelená čiarkou.
Nastavenia sú definované nasledovne:

  • baud: Prenosová rýchlosť komunikácie. Predvolená hodnota je 9600 bps. Prijateľné hodnoty kompatibilné s Arduino IDE sú 2400, 4800, 9600, 19200, 38400, 57600 a 115200. Môžete použiť aj iné prenosové rýchlosti, ale nebudete môcť komunikovať s OpenLogom cez sériový monitor Arduino IDE.
  • escape: Hodnota ASCII (v desiatkovom formáte) escape znaku. 26 je CTRL+z a je predvolená hodnota. 36 je $ a je bežne používaný escape znak.
  • esc#: Počet požadovaných znakov escape. Predvolene sú to tri, takže na prechod do príkazového režimu musíte trikrát stlačiť znak escape. Prijateľné hodnoty sú od 0 do 254. Nastavenie tejto hodnoty na 0 úplne vypne kontrolu znakov escape.
  • režim: Systémový režim. OpenLog sa štandardne spúšťa v režime Nový protokol (0). Prijateľné hodnoty sú 0 = Nový protokol, 1 = Sekvenčný protokol, 2 = Príkazový režim.
  • sloveso: Podrobný režim. Rozšírené (podrobné) chybové hlásenia sú predvolene zapnuté. Nastavením na 1 sa zapnú podrobné chybové hlásenia (napríklad neznámy príkaz: odstrániť !). Nastavenie na 0 vypne podrobné chyby, ale v prípade chyby sa zobrazí odpoveď !. Vypnutie podrobného režimu je užitočné, ak sa snažíte spracovať chyby zo zabudovaného systému.
  • echo: Režim ozveny. V príkazovom režime sa znaky štandardne odosielajú ozvenou. Nastavenie na 0 vypne ozvenu znakov. Vypnutie tejto funkcie je užitočné, ak sa spracovávajú chyby a nechcete, aby sa odoslané príkazy odosielali späť do OpenLogu.
  • ignoreRX: Núdzové prepínanie. OpenLog sa normálne núdzovo resetuje, keď je pin RX počas zapínania nastavený na nízku úroveň. Nastavenie na 1 zakáže kontrolu pinu RX počas zapínania. Toto môže byť užitočné pre systémy, ktoré z rôznych dôvodov udržiavajú linku RX na nízkej úrovni. Ak je núdzové prepínanie zakázané, nebudete môcť jednotku vynútiť späť na 9600 bps a konfigurácia file bude jediný spôsob, ako upraviť prenosovú rýchlosť.

Ako OpenLog upravuje konfiguráciu File
Existuje päť rôznych situácií, kedy môže OpenLog upraviť súbor config.txt file.

  • Konfig file nájdené: Počas zapínania bude OpenLog hľadať súbor config.txt file. Ak file ak sa nájde , OpenLog použije zahrnuté nastavenia a prepíše všetky predtým uložené systémové nastavenia.
  • Žiadna konfigurácia file nájdené: Ak OpenLog nedokáže nájsť súbor config.txt file OpenLog potom vytvorí súbor config.txt a zaznamená doň aktuálne uložené systémové nastavenia. To znamená, že ak vložíte novo naformátovanú kartu microSD, váš systém si zachová svoje aktuálne nastavenia.
  • Poškodená konfigurácia file nájdené: OpenLog vymaže poškodený súbor config.txt filea prepíše interné nastavenia EEPROM aj nastavenia súboru config.txt file do známeho dobrého stavu 9600,26,3,0,1,1,0.
  • Neplatné hodnoty v konfigurácii fileAk OpenLog zistí akékoľvek nastavenia obsahujúce neplatné hodnoty, OpenLog prepíše poškodené hodnoty v súbore config.txt. file s aktuálne uloženými systémovými nastaveniami EEPROM.
  • Zmeny prostredníctvom príkazového riadka: Ak sa systémové nastavenia zmenia prostredníctvom príkazového riadka (buď cez sériové pripojenie, alebo prostredníctvom sériových príkazov mikrokontroléra), tieto zmeny sa zaznamenajú do systémovej EEPROM aj do súboru config.txt. file.
  • Núdzový reset: Ak je OpenLog vypnutý a zapnutý pomocou prepojky medzi RX a GND a bit núdzového prepísania je nastavený na 0 (čo umožňuje núdzový reset), OpenLog prepíše interné nastavenia EEPROM aj nastavenia súboru config.txt. file do známeho dobrého stavu 9600,26,3,0,1,1,0.

Riešenie problémov

Existuje niekoľko rôznych možností, ako skontrolovať, či máte problémy s pripojením cez sériový monitor, či máte problémy so stratenými znakmi v protokoloch alebo či bojujete so zablokovaným OpenLogom.
Skontrolujte správanie LED diódy STAT1
LED dióda STAT1 zobrazuje rôzne správanie pri dvoch rôznych bežných chybách.

  • 3 bliknutia: Inicializácia karty microSD zlyhala. Možno bude potrebné kartu naformátovať pomocou systému FAT/FAT16 v počítači.
  • 5 bliknutí: OpenLog zmenil prenosovú rýchlosť a je potrebné ho vypnúť a znova napájať.

Dvojitá kontrola štruktúry podadresárov
Ak používate predvolený súbor OpenLog.ino exampOpenLog bude podporovať iba dva podadresáre. Budete musieť zmeniť FOLDER_TRACK_DEPTH z 2 na počet podadresárov, ktoré potrebujete podporovať. Keď to urobíte, prekompilujte kód a nahrajte upravený firmvér.
Overte počet Filev koreňovom adresári
OpenLog bude podporovať iba maximálne 65,534 XNUMX protokolov. files v koreňovom adresári. Odporúčame preformátovať kartu microSD, aby sa zrýchlilo zaznamenávanie.
Overte veľkosť upraveného firmvéru
Ak píšete vlastný náčrt pre OpenLog, overte si, či váš náčrt nie je väčší ako 32,256 500. Ak áno, zaberie horných XNUMX bajtov Flash pamäte, ktorú používa sériový bootloader Optiboot.
Dvojitá kontrola File Mená
Všetky file Názvy by mali byť alfanumerické. Súbor MyLOG1.txt je v poriadku, ale súbor Hi !e _.txt nemusí fungovať.
Použite 9600 Baudov
OpenLog beží na čipe ATmega328 a má obmedzené množstvo pamäte RAM (2048 bajtov). Keď do OpenLogu posielate sériové znaky, tieto znaky sa ukladajú do vyrovnávacej pamäte. Zjednodušená špecifikácia SD Group umožňuje, aby SD karte trvalo až 250 ms (časť 4.6.2.2 Zápis), kým sa blok dát do flash pamäte zapíše.
Pri rýchlosti 9600 b/s je to 960 bajtov (10 bitov na bajt) za sekundu. To je 1.04 ms na bajt. OpenLog v súčasnosti používa 512-bajtovú prijímaciu vyrovnávaciu pamäť, takže dokáže uložiť približne 50 ms znakov. To umožňuje OpenLogu úspešne prijímať všetky znaky prichádzajúce rýchlosťou 9600 b/s. So zvyšujúcou sa prenosovou rýchlosťou sa vyrovnávacia pamäť bude ukladať kratšie.
Čas pretečenia vyrovnávacej pamäte OpenLog

prenosová rýchlosť Čas na bajt  Čas do preplnenia vyrovnávacej pamäte
9600 bps 1.04 ms 532 ms
57600 bps 0.174 ms 88 ms
115200 bps 0.087 ms 44 ms

Mnohé SD karty majú čas záznamu rýchlejší ako 250 ms. To môže byť ovplyvnené „triedou“ karty a množstvom údajov, ktoré sú už na karte uložené. Riešením je použiť nižšiu prenosovú rýchlosť alebo zvýšiť čas medzi znakmi odoslanými pri vyššej prenosovej rýchlosti.
Naformátujte si kartu MicroSD
Nezabudnite použiť kartu s malým počtom alebo žiadnou files na ňom. Karta microSD s 3.1 GB ZIP súboru filealebo MP3 má pomalší čas odozvy ako prázdna karta.
Ak ste nenaformátovali kartu microSD v operačnom systéme Windows, preformátujte ju a vytvorte súbor DOS filesystém na SD karte.
Výmena kariet MicroSD
Existuje mnoho rôznych výrobcov kariet, preznačených kariet, veľkostí kariet a tried kariet a nie všetky nemusia fungovať správne. My zvyčajne používame 8GB microSD kartu triedy 4, ktorá funguje dobre pri 9600 bps. Ak potrebujete vyššie prenosové rýchlosti alebo väčší úložný priestor, môžete vyskúšať karty triedy 6 alebo vyššej.
Pridať oneskorenia medzi zápismi znakov
Pridaním malého oneskorenia medzi príkazmi Serial.print() môžete dať OpenLogu šancu zaznamenať svoj aktuálny
vyrovnávacia pamäť.
Napríkladample:
Serial.begin(115200);
pre(int i = 1; i < 10; i++) {
Serial.print(i, DEC);
Serial.println(„:abcdefghijklmnopqrstuvwxyz-!#“);
}

nemusí sa správne zaznamenávať, pretože sa odosiela veľa znakov hneď vedľa seba. Vloženie malého 15ms oneskorenia medzi zápismi veľkých znakov pomôže OpenLog zaznamenávať bez straty znakov.
Serial.begin(115200);
pre(int i = 1; i < 10; i++) {
Serial.print(i, DEC);
Serial.println(„:abcdefghijklmnopqrstuvwxyz-!#“);
oneskorenie(15);
}

Pridajte kompatibilitu sériového monitora Arduino
Ak sa pokúšate použiť OpenLog so vstavanou knižnicou sériového portu alebo knižnicou SoftwareSerial, môžete si všimnúť problémy s príkazovým režimom. Funkcia Serial.println() odosiela znak nového riadku AJ znak konca riadku. Existujú dva alternatívne príkazy, ktoré tento problém prekonajú.
Prvým je použitie príkazu \r (ASCII znak návratu riadku):
Serial.print(„TEXT\r“);
Prípadne môžete odoslať hodnotu 13 (desatinný znak konca riadku):
Serial.print(„TEXT“);
Serial.write(13);

Núdzový reset
Pamätajte, že ak potrebujete resetovať OpenLog do predvoleného stavu, môžete dosku resetovať prepojením pinu RX s GND, zapnutím OpenLog, čakaním, kým LED diódy začnú blikať súčasne, a potom vypnutím OpenLog a odstránením prepojky.
Ak ste zmenili bit núdzového prepísania na 1, budete musieť upraviť konfiguráciu. file, pretože núdzový reset nebude fungovať.
Overte si to v komunite
Ak máte stále problémy s OpenLogom, pozrite si aktuálne a uzavreté problémy v našom repozitári GitHub tu. S OpenLogom pracuje veľká komunita, takže je pravdepodobné, že niekto našiel riešenie problému, ktorý pozorujete.

Zdroje a ďalšie kroky

Teraz, keď ste úspešne zaznamenali údaje pomocou OpenLogu, môžete nastaviť vzdialené projekty a monitorovať všetky možné prichádzajúce údaje. Zvážte vytvorenie vlastného projektu Občianska veda alebo dokonca sledovača domácich zvierat, aby ste videli, čo Fluffy robí, keď je vonku!
Pozrite si tieto ďalšie zdroje, kde nájdete pomoc s riešením problémov alebo inšpiráciu pre váš ďalší projekt.

  • OpenLog GitHub
  • Projekt Illumitune
  • Pripojenie svetelného senzora LilyPad
  • BadgerHack: Doplnok pre senzor pôdy
  • Začíname s OBD-II
  • Vernierova fotobrána

Potrebujete viac inšpirácie? Pozrite si niektoré z týchto súvisiacich návodov:
Diaľkový senzor hladiny vody Photon
Naučte sa, ako zostrojiť diaľkový snímač hladiny vody pre zásobník vody a ako automatizovať čerpadlo na základe nameraných hodnôt!
Diaľkový senzor hladiny vody Photon
Naučte sa, ako zostrojiť diaľkový snímač hladiny vody pre zásobník vody a ako automatizovať čerpadlo na základe nameraných hodnôt!
Zaznamenávanie údajov do Tabuliek Google pomocou Tesselu 2
Tento projekt sa zaoberá dvoma spôsobmi zaznamenávania údajov do Tabuliek Google: pomocou IFTTT s web pripojenie alebo USB kľúč a „sneakernet“ bez.
Grafické znázornenie údajov zo senzorov pomocou Pythonu a Matplotlibu
Pomocou matplotlib vytvorte graf teplotných údajov v reálnom čase zozbieraných zo senzora TMP102 pripojeného k Raspberry Pi.
Ak máte spätnú väzbu k tutoriálu, navštívte komentáre alebo kontaktujte náš tím technickej podpory na adrese TechSupport@sparkfun.com.

Logo SparkFun

Dokumenty / zdroje

Vývojové dosky SparkFun DEV-13712 [pdf] Používateľská príručka
DEV-13712, DEV-11114, DEV-09873, CAB-12016, COM-13833, COM-13004, PRT-00115, PRT-08431, DEV-13712 Vývojové dosky SparkFun, DEV-13712, Vývojové dosky SparkFun, Vývojové dosky, Dosky

Referencie

Zanechajte komentár

Vaša emailová adresa nebude zverejnená. Povinné polia sú označené *