Logotip SparkFunaVodnik za priklop OpenLoga

Uvod

Pozor! Ta vadnica je za Open Log za serijski UART [DEV-13712]. Če uporabljate Qwiic OpenLog za IC [DEV-15164], glejte Vodnik za priklop Qwiic OpenLog.
OpenLog Data Logger je preprosta odprtokodna rešitev za beleženje serijskih podatkov iz vaših projektov. OpenLog ponuja preprost serijski vmesnik za beleženje podatkov iz projekta na kartico microSD.Razvojne plošče DEV-13712 SparkFunSparkFun OpenLog
• DEV-13712Razvojne plošče DEV-13712 SparkFun - DeliSparkFun OpenLog z glavami
• DEV-13955

ni najdenega izdelka
Potrebni materiali
Za popoln pregled te vadnice boste potrebovali naslednje dele. Morda pa ne boste potrebovali vsega, odvisno od tega, kaj imate. Dodajte ga v košarico, preberite navodila in po potrebi prilagodite košarico.
Vodnik za priklop OpenLog Seznam želja SparkFun

Razvojne plošče DEV-13712 SparkFun - 1. del Arduino Pro Mini 328 – 3.3 V/8 MHz
DEV-11114
Modra je! Tanka je! To je Arduino Pro Mini! SparkFunov minimalistični pristop k Arduinu. To je 3.3V Arduino …
Razvojne plošče DEV-13712 SparkFun - 2. del SparkFun FTDI osnovni razdelilnik – 3.3 V
DEV-09873
To je najnovejša revizija našega [FTDI Basic](http://www.sparkfun.com/commerce/product_info.php?products_id=…
Razvojne plošče DEV-13712 SparkFun - 3. del SparkFun Cerberus USB kabel – 6 m
CAB-12016
Imate napačen USB kabel. Ni pomembno, katerega imate, napačen je. Kaj pa, če bi lahko imeli ...
Razvojne plošče DEV-13712 SparkFun - 4. del SparkFun OpenLog
DEV-13712
SparkFun OpenLog je odprtokodni zapisovalnik podatkov, ki deluje prek preproste serijske povezave in podpira mi…
Razvojne plošče DEV-13712 SparkFun - 5. del microSD kartica z adapterjem – 16 GB (razred 10)
COM-13833
To je pomnilniška kartica microSD razreda 10 s kapaciteto 16 GB, idealna za shranjevanje operacijskih sistemov za enoploščne računalnike in…
Razvojne plošče DEV-13712 SparkFun - 6. del USB bralnik microSD
COM-13004
To je odličen majhen bralnik microSD USB. Samo potisnite kartico microSD v notranjost USB priključka in ...
Razvojne plošče DEV-13712 SparkFun - 7. del Ženske glave
PRT-00115
Ena vrsta 40-luknjičnih ženskih konektorjev. Lahko se reže na velikost s kleščami za žico. Standardni razmik 1″. Uporabljamo …
Razvojne plošče DEV-13712 SparkFun - 8. del Premostitvene žice Premium 6″ M/M, pakiranje 10 kosov
PRT-08431
To je ekskluzivno za SparkFun! To so 155 mm dolgi mostički z moškimi konektorji na obeh koncih. Uporabite jih za s…
Razvojne plošče DEV-13712 SparkFun - 9. del Odlomljive moške glave – pravokotne
PRT-00553
Vrsta pravokotnih moških konektorjev – odlomite, da se prilegajo. 40 pinov, ki jih je mogoče razrezati na poljubno velikost. Uporablja se s tiskanimi vezji po meri ali generatorji…

Priporočeno branje
Če vam naslednji koncepti niso znani ali vam niso všeč, vam priporočamo, da jih preberete, preden nadaljujete z Vodnikom za povezovanje OpenLog.
Kako spajkati: Spajkanje skozi luknjo
Ta vadnica zajema vse, kar morate vedeti o spajkanju skozi luknjo.
Serijski periferni vmesnik (SPI)
SPI se pogosto uporablja za povezovanje mikrokrmilnikov s perifernimi napravami, kot so senzorji, pomični registri in SD kartice.
Serijska komunikacija
Koncepti asinhrone serijske komunikacije: paketi, nivoji signalov, hitrosti prenosa, UART-i in še več!
Osnove serijskega terminala
Ta vadnica vam bo pokazala, kako komunicirati s serijskimi napravami z uporabo različnih aplikacij za emulacijo terminala.

Konec strojne opremeview

Moč
OpenLog deluje z naslednjimi nastavitvami:
Nazivne vrednosti moči OpenLog

Vhod VCC 3.3 V–12 V (priporočeno 3.3 V–5 V)
Vhod RXI 2.0V-3.8V
Izhod TXO 3.3 V
Tok v mirovanju ~2mA–5mA (brez microSD kartice), ~5mA–6mA (z microSD kartico)
Aktivni tok pisanja ~20–23 mA (z microSD kartico)

Poraba toka naprave OpenLog pri pisanju na kartico microSD je približno od 20 mA do 23 mA. Odvisno od velikosti kartice microSD in njenega proizvajalca se lahko aktivna poraba toka pri pisanju naprave OpenLog na pomnilniško kartico razlikuje. Povečanje hitrosti prenosa podatkov bo prav tako porabilo več toka.
Mikrokontroler
OpenLog deluje na vgrajenem mikrokontrolerju ATmega328, ki zaradi vgrajenega kristala deluje na 16 MHz. ATmega328 ima naložen zagonski nalagalnik Optiboot, ki omogoča združljivost OpenLoga z nastavitvijo plošče »Arduino Uno« v Arduino IDE.Razvojne plošče DEV-13712 SparkFun - zagonski nalagalnikVmesnik
Serijski UART
Primarni vmesnik z OpenLogom je priključek FTDI na robu plošče. Ta priključek je zasnovan tako, da se ga priključi neposredno na Arduino Pro ali Pro Mini, kar mikrokrmilniku omogoča pošiljanje podatkov prek serijske povezave v OpenLog.Razvojne plošče DEV-13712 SparkFun - rob plošče

Opozorilo! Zaradi vrstnega reda pinov, ki ga omogoča združljivost z Arduini, ga ni mogoče neposredno priključiti na razdelilnik FTDI. Razvojne plošče DEV-13712 SparkFun - rob plošče 1Za več informacij si oglejte naslednji razdelek o priklopu strojne opreme.
SPI
Na nasprotnem koncu plošče so tudi štiri SPI testne točke. Z njimi lahko reprogramirate zagonski nalagalnik na ATmega328.Razvojne plošče DEV-13712 SparkFun - rob plošče 2Najnovejši OpenLog (DEV-13712) ima te pine razcepljene na manjših skoznjih luknjah. Če morate za reprogramiranje ali nalaganje novega zagonskega nalagalnika v OpenLog uporabiti ponudnika internetnih storitev, lahko za povezavo s temi testnimi točkami uporabite pogo pine.
Končni vmesnik za komunikacijo z OpenLogom je sama kartica microSD. Za komunikacijo kartica microSD potrebuje SPI pine. OpenLog ne shranjuje le podatkov tukaj, temveč lahko tudi posodobite konfiguracijo OpenLoga prek datoteke config.txt. file na kartici microSD.
kartica microSD
Vsi podatki, ki jih beleži OpenLog, so shranjeni na kartici microSD. OpenLog deluje z karticami microSD, ki imajo naslednje funkcije:

  • 64MB do 32GB
  • FAT16 ali FAT32

Razvojne plošče DEV-13712 SparkFun - rob plošče 3

Stanje LED
Na napravi OpenLog sta dve LED diodi za stanje, ki vam pomagata pri odpravljanju težav.

  • STAT1 – Ta modra indikatorska LED dioda je priključena na Arduino D5 (ATmega328 PD5) in se vklopi/izklopi, ko je prejet nov znak. Ta LED dioda utripa, ko deluje serijska komunikacija.
  • STAT2 – Ta zelena LED dioda je priključena na Arduino D13 (SPI Serial Clock Line/ATmega328 PB5). Ta LED dioda utripa le, ko je SPI vmesnik aktiven. Utripati bo videla, ko OpenLog posname 512 bajtov na kartico microSD.

Razvojne plošče DEV-13712 SparkFun - rob plošče 4

Priklop strojne opreme

Obstajata dva glavna načina za priključitev vašega OpenLoga na vezje. Za priključitev boste potrebovali nekaj konektorjev ali žic. Za varno povezavo se prepričajte, da ste jih spajkali na ploščo.
Osnovna serijska povezava
Nasvet: Če imate ženski konektor OpenLog in ženski konektor na FTDI, boste za povezavo potrebovali mostičke M/F.Razvojne plošče DEV-13712 SparkFun - osnovna serijska povezava

Ta strojna povezava je zasnovana za povezavo z OpenLogom, če morate ponovno programirati ploščo ali beležiti podatke prek osnovne serijske povezave.
Naredite naslednje povezave:
OpenLog → 3.3V FTDI osnovni preboj

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

Upoštevajte, da ne gre za neposredno povezavo med FTDI in OpenLogom – zamenjati morate priključka TXO in RXI.
Vaše povezave bi morale izgledati takole: Razvojne plošče DEV-13712 SparkFun - osnovni razdelilnikKo vzpostavite povezave med OpenLogom in FTDI Basic, priključite ploščo FTDI na kabel USB in jo priključite na računalnik.
Odprite serijski terminal, ga priključite na COM vrata vašega FTDI Basic in začnite!

Povezava strojne opreme projekta

Nasvet: Če imate ženske priključke prispajkane na OpenLogu, lahko moške priključke prispajkate na Arduino Pro Mini, da plošči povežete brez potrebe po žicah.Razvojne plošče DEV-13712 SparkFun - Povezava strojne opreme projektaČeprav je povezava z OpenLogom prek serijske povezave pomembna za reprogramiranje ali odpravljanje napak, se OpenLog izkaže v vgrajenih projektih. To splošno vezje priporočamo za povezavo vašega OpenLoga z mikrokrmilnikom (v tem primeru Arduino Pro Mini), ki bo zapisoval serijske podatke v OpenLog.
Najprej boste morali naložiti kodo na svoj Pro Mini, ki ga želite zagnati. Za nekaj primerov si oglejte skice Arduina.ampkodo, ki jo lahko uporabite.
Opomba: Če niste prepričani, kako programirati svoj Pro Mini, si oglejte naš vodič tukaj.
Uporaba Arduino Pro Mini 3.3V
Ta vadnica je vaš vodnik po vsem, kar je povezano z Arduinom Pro Mini. Pojasnjuje, kaj je, kaj ni in kako ga začeti uporabljati.
Ko programirate svoj Pro Mini, lahko odstranite ploščo FTDI in jo zamenjate z OpenLog.
Prepričajte se, da ste na Pro Mini in OpenLogu priključili pine z oznako BLK (če ste pravilno priključili pine z oznako GRN na obeh), se bodo ujemali).
Če OpenLoga ne morete priključiti neposredno v Pro Mini (zaradi neusklajenih priključkov ali drugih plošč), lahko uporabite mostičke in naredite naslednje povezave.
OpenLog → Arduino Pro/Arduino Pro Mini

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

Ko končate, bi morale vaše povezave z Arduino Pro Mini in Arduino Pro izgledati takole.
Fritzingov diagram prikazuje OpenLogs z zrcaljenimi glavami. Če obrnete vtičnico microSD glede na vrh Arduina view, se morajo ujemati s programsko glavo kot FTDI.Razvojne plošče DEV-13712 SparkFun - Priključitev strojne opreme projekta 1

Opomba da je povezava ravna, pri čemer je OpenLog obrnjen »na glavo« (z microSD kartico navzgor).
⚡Opomba: Ker sta Vcc in GND med OpenLogom in Arduinom zasedena z priključki, boste morali napajanje priključiti na druge pine, ki so na voljo na Arduinu. V nasprotnem primeru lahko prispajkate žice na izpostavljene napajalne pine na obeh ploščah.
Vklopite sistem in pripravljeni ste začeti beleženje!

Skice za Arduino

Obstaja šest različnih bivšihampVključenih je nekaj skic, ki jih lahko uporabite na Arduinu, ko ste povezani z OpenLogom.

  • OpenLog_Benchmarking — Ta exampSerija le se uporablja za testiranje OpenLoga. Ta pošilja zelo velike količine podatkov s hitrostjo 115200 bps prek več files.
  • OpenLog_CommandTest — Ta example prikazuje, kako ustvariti in dodati file prek upravljanja z ukazno vrstico prek Arduina.
  • OpenLog_ReadExample — Ta bivšiampV tem dokumentu je opisano, kako upravljati OpenLog prek ukazne vrstice.
  • OpenLog_ReadExample_LargeFile — Nprampkako odpreti veliko shranjeno file na OpenLogu in ga sporočite prek lokalne povezave Bluetooth.
  • OpenLog_Test_Sketch — Uporablja se za testiranje OpenLoga z veliko serijskimi podatki.
  • OpenLog_Test_Sketch_Binary — Uporablja se za testiranje OpenLoga z binarnimi podatki in ubežnimi znaki.

Vdelana programska oprema

OpenLog ima vgrajena dva glavna programa: zagonski nalagalnik in vdelano programsko opremo.
Zagonski nalagalnik Arduina
Opomba: Če uporabljate OpenLog, ki je bil kupljen pred marcem 2012, je vgrajeni zagonski nalagalnik združljiv z nastavitvijo »Arduino Pro ali Pro Mini 5V/16MHz z ATmega328« v Arduino IDE.
Kot smo že omenili, ima OpenLog vgrajen serijski zagonski nalagalnik Optiboot. Pri nalaganju datotek lahko z OpenLogom ravnate enako kot z Arduinom Uno.ampkodo ali novo vdelano programsko opremo na ploščo.
Če se vam OpenLog na koncu zablokira in morate znova namestiti zagonski nalagalnik, boste želeli na ploščo naložiti tudi Optiboot. Za več informacij si oglejte naš vodič o namestitvi zagonskega nalagalnika Arduino.
Prevajanje in nalaganje vdelane programske opreme v OpenLog
Opomba: Če prvič uporabljate Arduino, prosim ponovnoview naš vodič o namestitvi Arduino IDE. Če še niste namestili knjižnice Arduino, si oglejte naš vodnik za namestitev, da ročno namestite knjižnice.
Če morate iz kakršnega koli razloga posodobiti ali ponovno namestiti vdelano programsko opremo na svojem OpenLogu, bo naslednji postopek zagnal vašo ploščo.
Najprej prenesite Arduino IDE v1.6.5. Druge različice IDE morda delujejo za prevajanje vdelane programske opreme OpenLog, vendar smo to potrdili kot znano dobro različico.
Nato prenesite vdelano programsko opremo OpenLog in zahtevani paket knjižnic.

PRENESITE PAKET VGRADNE PROGRAMSKE OPREME OPENLOG (ZIP)
Ko prenesete knjižnice in vdelano programsko opremo, namestite knjižnice v Arduino. Če niste prepričani, kako ročno namestiti knjižnice v integriranem razvojnem okolju (IDE), si oglejte naš vodič: Namestitev knjižnice Arduino: Ročna namestitev knjižnice.
Opomba: Uporabljamo spremenjene različice knjižnic SdFat in SerialPort, da poljubno določimo, kako velika naj bosta medpomnilnika TX in RX. OpenLog zahteva, da je medpomnilnik TX zelo majhen (0), medpomnilnik RX pa mora biti čim večji. Uporaba teh dveh spremenjenih knjižnic skupaj omogoča večjo zmogljivost OpenLoga.
Iščete najnovejše različice? Če želite najnovejše različice knjižnic in vdelane programske opreme, jih lahko prenesete neposredno iz spodnjih repozitorijev GitHub. Knjižnici SdFatLib in Serial Port nista vidni v upravitelju plošč Arduino, zato boste morali knjižnico ročno namestiti.

  • GitHub: OpenLog > Firmware > OpenLog_Firmware
  • Bill Greimanove knjižnice za Arduino
    SdFatLib-beta
    Serijska vrata

Nato, da izkoristimo prednostitagMed spremenjenimi knjižnicami spremenite datoteko SerialPort.h file najdeno v imeniku \Arduino\Libraries\SerialPort. Spremenite BUFFERED_TX na 0 in ENABLE_RX_ERROR_CHECKING na 0. Shranite filein odprite Arduino IDE.
Če tega še niste storili, povežite svoj OpenLog z računalnikom prek plošče FTDI. Prosimo, dvakrat preverite ...ampvezje, če niste prepričani, kako to pravilno storiti.
Odprite skico OpenLog, ki jo želite naložiti, v meniju Orodja>Plošča, izberite »Arduino/Genuino Uno« in v meniju Orodja>Porta izberite ustrezna vrata COM za vašo ploščo FTDI.
Naložite kodo.
To je to! Vaš OpenLog je zdaj programiran z novo vdelano programsko opremo. Zdaj lahko odprete serijski monitor in komunicirate z OpenLogom. Ob vklopu boste videli 12> ali 12<. 1 pomeni, da je serijska povezava vzpostavljena, 2 pomeni, da je bila kartica SD uspešno inicializirana, < pomeni, da je OpenLog pripravljen za beleženje vseh prejetih serijskih podatkov, in > pomeni, da je OpenLog pripravljen za sprejemanje ukazov.
Skice vdelane programske opreme OpenLog
V OpenLogu so priložene tri skice, ki jih lahko uporabite, odvisno od vaše posebne aplikacije.

  • OpenLog – Ta vdelana programska oprema je privzeto nameščena na enoti OpenLog. Z ukazom ? boste prikazali različico vdelane programske opreme, naloženo v enoti.
  • OpenLog_Light – Ta različica skice odstrani meni in ukazni način, kar omogoča povečanje sprejemnega medpomnilnika. To je dobra možnost za hitro beleženje.
  • OpenLog_Minimal – Hitrost prenosa podatkov mora biti nastavljena v kodi in naložena. Ta skica je priporočljiva za izkušene uporabnike, vendar je tudi najboljša možnost za najhitrejše beleženje.

Nabor ukazov

Z OpenLogom se lahko povežete prek serijskega terminala. Naslednji ukazi vam bodo pomagali pri branju, pisanju in brisanju files, kot tudi spremeniti nastavitve OpenLog. Za uporabo naslednjih nastavitev morate biti v ukaznem načinu.
Medtem ko je OpenLog v ukaznem načinu, se STAT1 vklopi/izklopi za vsak prejeti znak. LED lučka bo ostala prižgana, dokler ni prejet naslednji znak.

File Manipulacija

  • novo File – Ustvari novo file imenovan File v trenutnem imeniku. Standard 8.3 fileimena so podprta.
    Na primeramp»87654321.123« je sprejemljivo, »987654321.123« pa ne.
    • Nprample: novo file1.txt
  • dodati File – Dodaj besedilo na konec FileSerijski podatki se nato preberejo iz UART-a v toku in se dodajo v fileNe odmeva prek serijskega terminala. Če File ne obstaja, ko je ta funkcija klicana, file bo ustvarjen.
    • Nprample: dodaj novofile.csv
  • pisati File OFFSET – Napiši besedilo v File od lokacije OFFSET znotraj fileBesedilo se bere iz UART-a, vrstico za vrstico, in se vrne nazaj. Za izhod iz tega stanja pošljite prazno vrstico.
    • Nprample: napiši logs.txt 516
  • rm File – Izbriši File iz trenutnega imenika. Podprti so nadomestni znaki.
    • Nprample: rm README.txt
  • velikost File – Izhodna velikost File v bajtih.
    • Nprample: velikost Log112.csv
    • Izhod: 11
  • prebrati File + ZAČETEK+ VRSTA DOLŽINE – Izpis vsebine File začenši od ZAČETKA in nadaljujte z DOLŽINO.
    Če je START izpuščen, celoten file se poroča. Če izpustite argument LENGTH, se poroča celotna vsebina od začetne točke. Če izpustite argument TYPE, bo OpenLog privzeto poročal v ASCII. Obstajajo trije izhodni TIPI:
    • ASCII = 1
    • HEX = 2
    • SUROV = 3
    Nekatere končne argumente lahko izpustite. Preverite naslednji primeramples.
    Osnovne zastavice za branje + izpuščene zastavice:
    • Nprample: preberi LOG00004.txt
    • Izhod: Akcelerometer X=12 Y=215 Z=317
    Branje od začetka 0 z dolžino 5:
    • Nprample: preberi LOG00004.txt 0 5
    • Izhod: Pospešek
    Preberi od pozicije 1 z dolžino 5 v šestnajstiškem zapisu:
    • Nprample: preberi LOG00004.txt 1 5 2
    • Izhod: 63 63 65 6C
  • Branje od pozicije 0 z dolžino 50 v RAW:
  • • Nprample: preberi LOG00137.txt 0 50 3
  • • Izhod: André– -þ Razširjeni preizkus značaja
  • mačka File – Napišite vsebino file v šestnajstiški kodi za serijski monitor za viewing. Včasih je koristno videti, da a file pravilno snema, ne da bi bilo treba izvleči SD kartico in view the file na računalniku.
    • Nprampdatoteka: cat LOG00004.txt
    • Izhod: 00000000: 41 63 65 6c 3a 20 31

Manipulacija imenikov

  • ls – Izpiše vso vsebino trenutnega imenika. Podprti so nadomestni znaki.
    • Nprample: ls
    • Izhod: \src
  • Poddirektorij md – Ustvari poddirektorij v trenutnem imeniku.
    • Nprample: md Izv.ample_Skice
  • Podimenik cd – Sprememba v podimenik.
    • Nprample: cd Pozdravljen_Svet
  • cd .. – Preklopi v nižji imenik v drevesu. Upoštevajte, da je med 'cd' in '..' presledek. To omogoča razčlenjevalniku nizov, da vidi ukaz cd.
    • Nprample: cd ..
  • Poddirektorij rm – Izbriše poddirektorij. Da bi ta ukaz deloval, mora biti imenik prazen.
    • Nprample: sobne temperature
  • rm -rf Imenik – Izbriše imenik in vse fileje vsebovano v njem.
    • Nprample: rm -rf Knjižnice

Ukazi funkcij nizke ravni

  • ? – Ta ukaz bo prikazal seznam razpoložljivih ukazov v OpenLogu.
  • disk – Prikaži ID proizvajalca kartice, serijsko številko, datum izdelave in velikost kartice. Na primerampizhod je:
    Vrsta kartice: SD2
    ID proizvajalca: 3
    ID proizvajalca originalne opreme: SD
    Izdelek: SU01G
    Različica: 8.0
    Serijska številka: 39723042
    Datum izdelave: 1/2010
    Velikost kartice: 965120 KB
  • init – Ponovno inicializirajte sistem in ponovno odprite kartico SD. To je koristno, če se kartica SD preneha odzivati.
  • sync – Sinhronizira trenutno vsebino medpomnilnika s kartico SD. Ta ukaz je uporaben, če imate v medpomnilniku manj kot 512 znakov in jih želite posneti na kartico SD.
  • ponastavitev – Skoči OpenLog na lokacijo nič, ponovno zažene zagonski nalagalnik in nato inicializira kodo. Ta ukaz je uporaben, če morate urediti konfiguracijo. file, ponastavite OpenLog in začnite uporabljati novo konfiguracijo. Izklop in izklop napajanja je še vedno najprimernejša metoda za ponastavitev plošče, vendar je ta možnost na voljo.

Sistemske nastavitve

Te nastavitve je mogoče ročno posodobiti ali urediti v datoteki config.txt. file.

  • echo STATE – Spremeni stanje sistemskega ukaza echo in se shrani v sistemski pomnilnik. STATE je lahko vklopljen ali izklopljen. Ko je vklopljen, bo OpenLog v ukazni vrstici prikazal prejete serijske podatke. Ko je izklopljen, sistem ne bere nazaj prejetih znakov.
    Opomba: Med običajnim beleženjem bo odmev izklopljen. Zahteve sistemskih virov za odmev prejetih podatkov so med beleženjem prevelike.
  • podrobno STANJE – Spremeni stanje podrobnega poročanja o napakah. STANJE je lahko vklopljeno ali izklopljeno. Ta ukaz je shranjen v pomnilniku. Če izklopite podrobne napake, se bo OpenLog v primeru napake odzval le z znakom ! in ne z neznanim ukazom: COMMAND. Znak ! je za vgrajene sisteme lažji za razčlenjevanje kot celotno napako. Če uporabljate terminal, boste, če pustite podrobno poročanje vklopljeno, videli celotna sporočila o napakah.
  • baud – Ta ukaz odpre sistemski meni, ki uporabniku omogoča vnos hitrosti prenosa. Podprta je katera koli hitrost prenosa med 300 bps in 1 Mbps. Izbira hitrosti prenosa je takojšnja in OpenLog zahteva izklop/izklop, da nastavitve začnejo veljati. Hitrost prenosa se shrani v EEPROM in se naloži vsakič, ko se OpenLog vklopi. Privzeta vrednost je 9600 8N1.

Ne pozabite: Če se plošča zatakne pri neznani hitrosti prenosa, lahko RX povežete z GND in vklopite OpenLog. LED diode bodo utripale 2 sekundi, nato pa bodo utripale sočasno. Izklopite OpenLog in odstranite mostiček. OpenLog se zdaj ponastavi na 9600 bps, če trikrat zapored pritisnete ubežni znak `CTRL-Z`. To funkcijo lahko preglasite tako, da bit za preglasitev v sili nastavite na 1.
Za več informacij glejte datoteko config.txt.

  • nastavi – Ta ukaz odpre sistemski meni za izbiro načina zagona. Te nastavitve se bodo izvedle ob
    • ob naslednjem vklopu in se shranijo v nehlapni EEPROM. Novo File Beleženje – Ta način ustvari novo file Vsakič, ko se OpenLog vklopi, bo OpenLog poslal 1 (UART je aktiven), 2 (SD kartica je inicializirana) in nato < (OpenLog je pripravljen za sprejem podatkov). Vsi podatki bodo zapisani v datoteko LOG#####.txt. Število ##### se poveča vsakič, ko se OpenLog vklopi (največje število dnevnikov je 65533). Število je shranjeno v EEPROM-u in ga je mogoče ponastaviti v nastavitvenem meniju.
    Vsi prejeti znaki se ne ponovijo. Ta način lahko zapustite in vstopite v ukazni način s pritiskom na CTRL+z (ASCII 26). Vsi shranjeni podatki bodo shranjeni.

Opomba: Če je bilo ustvarjenih preveč dnevnikov, bo OpenLog izpisal napako **Preveč dnevnikov**, zapustil ta način in se vrnil v ukazni poziv. Serijski izhod bo videti takole: `12!Preveč dnevnikov!`.

  • Pripni File Beleženje – Ta način, znan tudi kot zaporedni način, ustvari file imenovana SEQLOG.txt, če je še ni, in doda vse prejete podatke v fileOpenLog bo poslal 12<, ko bo OpenLog pripravljen za sprejem podatkov. Znaki se ne odmevajo. Ta način lahko zapustite in vstopite v ukazni način s pritiskom na CTRL+z (ASCII 26). Vsi shranjeni podatki bodo shranjeni.
  • Ukazni poziv – OpenLog bo poslal 12>, ko bo sistem pripravljen za sprejemanje ukazov. Upoštevajte, da znak > označuje, da je OpenLog pripravljen za sprejemanje ukazov, ne podatkov. Ustvarite lahko filein dodajte podatke v files, vendar to zahteva nekaj serijskega razčlenjevanja (za preverjanje napak), zato tega načina ne nastavimo privzeto.
  • Ponastavi Novo File Številka – Ta način ponastavi dnevnik file številko v datoteko LOG000.txt. To je koristno, če ste pred kratkim izpraznili kartico microSD in želite dnevnik file številke za začetek znova.
  • Nov ubežni znak – Ta možnost uporabniku omogoča vnos znaka, kot je CTRL+z ali $, in njegovo nastavitev kot novega ubežnega znaka. Med ponastavitvijo v sili se ta nastavitev ponastavi na CTRL+z.
  • Število ubežnih znakov – Ta možnost uporabniku omogoča vnos znaka (na primer 1, 3 ali 17) in posodobitev novega števila ubežnih znakov, potrebnih za prehod v ukazni način. Na primerampČe vnesete 8, bo moral uporabnik osemkrat pritisniti CTRL+z, da preklopi v ukazni način. Ta nastavitev se med ponastavitvijo v sili ponastavi na 3.

Pojasnilo ubežnih znakov: Razlog, zakaj OpenLog zahteva trikratni pritisk tipke `CTRL+z` za vstop v ukazni način, je preprečitev nenamerne ponastavitve plošče med nalaganjem nove kode iz Arduino IDE. Obstaja možnost, da bi plošča med zagonom opazila znak `CTRL+z` (težava, ki smo jo opazili v zgodnjih različicah vdelane programske opreme OpenLog), zato je cilj tega preprečiti. Če kdaj sumite, da je vaša plošča zaradi tega blokirana, lahko vedno izvedete zasilno ponastavitev tako, da med vklopom držite pin RX na masi.

Konfiguracija File

Če za spreminjanje nastavitev na vašem OpenLogu ne želite uporabljati serijskega terminala, lahko nastavitve posodobite tudi s spreminjanjem datoteke CONFIG.TXT. file.
Opomba: Ta funkcija deluje samo v različici vdelane programske opreme 1.6 ali novejši. Če ste OpenLog kupili po letu 2012, boste uporabljali različico vdelane programske opreme 1.6 ali novejšo.
Za to boste potrebovali bralnik kartic microSD in urejevalnik besedil. Odprite datoteko config.txt file (zapis velike začetnice file (ime ni pomembno) in ga konfigurirajte! Če še nikoli niste vklopili svojega OpenLoga s kartico SD, lahko ustvarite tudi ročno fileČe ste OpenLog vklopili z vstavljeno kartico microSD, bi morali pri branju kartice microSD videti nekaj takega.Razvojne plošče DEV-13712 SparkFun - urejevalnik besedilOpenLog ustvari datoteki config.txt in LOG0000.txt file ob prvem vklopu.
Privzeta konfiguracija file ima eno vrstico nastavitev in eno vrstico definicij.DEV-13712 Razvojne plošče SparkFun - urejevalnik besedil 1Privzeta konfiguracija file napisal OpenLog.
Upoštevajte, da so to običajni vidni znaki (ni nevidnih ali binarnih vrednosti) in da so vrednosti ločene z vejico.
Nastavitve so definirane na naslednji način:

  • baud: Hitrost prenosa podatkov v baudih. Privzeta vrednost je 9600 bps. Sprejemljive vrednosti, ki so združljive z Arduino IDE, so 2400, 4800, 9600, 19200, 38400, 57600 in 115200. Uporabite lahko tudi druge hitrosti prenosa podatkov, vendar ne boste mogli komunicirati z OpenLogom prek serijskega monitorja Arduino IDE.
  • escape: Vrednost ASCII (v decimalni obliki) ubežnega znaka. 26 je CTRL+z in je privzeta vrednost. 36 je $ in je pogosto uporabljen ubežni znak.
  • esc#: Zahtevano število ubežnih znakov. Privzeto je tri, zato morate ubežni znak pritisniti trikrat, da se vrnete v ukazni način. Sprejemljive vrednosti so od 0 do 254. Če to vrednost nastavite na 0, boste preverjanje ubežnih znakov popolnoma onemogočili.
  • način: Sistemski način. OpenLog se privzeto zažene v načinu Nov dnevnik (0). Sprejemljive vrednosti so 0 = Nov dnevnik, 1 = Zaporedni dnevnik, 2 = Ukazni način.
  • glagol: Podrobni način. Razširjena (podrobna) sporočila o napakah so privzeto vklopljena. Če to nastavite na 1, se vklopijo podrobna sporočila o napakah (na primer neznan ukaz: odstrani !). Če to nastavite na 0, se podrobna sporočila o napakah izklopijo, vendar se bo v primeru napake odzval z znakom !. Izklop podrobnega načina je priročen, če poskušate obravnavati napake iz vgrajenega sistema.
  • echo: Način odmeva. V ukaznem načinu se znaki privzeto odmevajo. Če to nastavite na 0, se odmev znakov izklopi. Izklop te možnosti je priročen, če obravnavate napake in ne želite, da se poslani ukazi odmevajo nazaj v OpenLog.
  • ignoreRX: Preglasitev v sili. Običajno se OpenLog ponastavi v sili, ko je pin RX med vklopom nizek. Če to nastavite na 1, boste onemogočili preverjanje pina RX med vklopom. To je lahko koristno za sisteme, ki bodo linijo RX iz različnih razlogov ohranjali nizko. Če je preglasitev v sili onemogočena, enote ne boste mogli prisiliti nazaj na 9600 bps in konfiguracija file bo edini način za spreminjanje hitrosti prenosa.

Kako OpenLog spreminja konfiguracijo File
Obstaja pet različnih situacij, v katerih lahko OpenLog spremeni datoteko config.txt. file.

  • Config file najdeno: Med vklopom bo OpenLog poiskal datoteko config.txt file. Če je file če je najden, bo OpenLog uporabil vključene nastavitve in prepisal vse predhodno shranjene sistemske nastavitve.
  • Brez konfiguracije file najdeno: Če OpenLog ne najde datoteke config.txt file nato bo OpenLog ustvaril datoteko config.txt in vanjo posnel trenutno shranjene sistemske nastavitve. To pomeni, da bo sistem ohranil trenutne nastavitve, če vstavite na novo formatirano kartico microSD.
  • Poškodovana konfiguracija file najdeno: OpenLog bo izbrisal poškodovano datoteko config.txt filein bo prepisal tako notranje nastavitve EEPROM-a kot nastavitve datoteke config.txt file v znano dobro stanje 9600,26,3,0,1,1,0.
  • Neveljavne vrednosti v konfiguraciji fileČe OpenLog odkrije kakršne koli nastavitve, ki vsebujejo neveljavne vrednosti, bo OpenLog prepisal poškodovane vrednosti v datoteki config.txt. file s trenutno shranjenimi sistemskimi nastavitvami EEPROM.
  • Spremembe prek ukaznega poziva: Če se sistemske nastavitve spremenijo prek ukaznega poziva (prek serijske povezave ali prek serijskih ukazov mikrokrmilnika), se te spremembe zabeležijo tako v sistemski EEPROM kot v datoteko config.txt. file.
  • Ponastavitev v sili: Če OpenLog ponovno vklopite in izklopite z mostičkom med RX in GND ter je bit za preglasitev v sili nastavljen na 0 (kar omogoča ponastavitev v sili), bo OpenLog prepisal tako notranje nastavitve EEPROM kot nastavitve datoteke config.txt. file v znano dobro stanje 9600,26,3,0,1,1,0.

Odpravljanje težav

Obstaja več različnih možnosti za preverjanje, ali imate težave s povezovanjem prek serijskega monitorja, težave z izgubljenimi znaki v dnevnikih ali se borite z blokiranim OpenLogom.
Preverite delovanje LED STAT1
LED dioda STAT1 prikazuje različno delovanje pri dveh različnih pogostih napakah.

  • 3 utripi: Inicializacija kartice microSD ni uspela. Morda boste morali kartico formatirati z datotečnim sistemom FAT/FAT16 v računalniku.
  • 5 utripov: OpenLog je spremenil hitrost prenosa in ga je treba ponovno vklopiti/izklopiti.

Dvojno preverjanje strukture podimenikov
Če uporabljate privzeto datoteko OpenLog.ino exampTorej bo OpenLog podpiral samo dva poddirektorija. Spremeniti boste morali FOLDER_TRACK_DEPTH iz 2 na število poddirektorjev, ki jih morate podpirati. Ko to storite, ponovno prevedite kodo in naložite spremenjeno vdelano programsko opremo.
Preverite število Filev korenskem imeniku
OpenLog bo podpiral le do 65,534 dnevnikov. files v korenskem imeniku. Priporočamo, da kartico microSD ponovno formatirate, da izboljšate hitrost beleženja.
Preverite velikost spremenjene vdelane programske opreme
Če pišete skico po meri za OpenLog, preverite, ali vaša skica ni večja od 32,256. Če je tako, bo zasedla zgornjih 500 bajtov bliskovnega pomnilnika, ki ga uporablja serijski zagonski nalagalnik Optiboot.
Dvojno preverjanje File Imena
Vse file Imena morajo biti alfanumerična. MyLOG1.txt je v redu, vendar Hi !e _.txt morda ne bo delovala.
Uporabite 9600 baudov
OpenLog deluje na ATmega328 in ima omejeno količino RAM-a (2048 bajtov). Ko pošljete serijske znake v OpenLog, se ti shranijo v medpomnilnik. Poenostavljena specifikacija SD Group dovoljuje, da kartica SD zapiše podatkovni blok v bliskovni pomnilnik v do 250 ms (razdelek 4.6.2.2 Pisanje).
Pri 9600 bps je to 960 bajtov (10 bitov na bajt) na sekundo. To je 1.04 ms na bajt. OpenLog trenutno uporablja 512-bajtni sprejemni medpomnilnik, tako da lahko shrani približno 50 ms znakov. To OpenLogu omogoča uspešen sprejem vseh znakov, ki prihajajo s hitrostjo 9600 bps. Ko povečate hitrost prenosa, bo medpomnilnik zdržal krajši čas.
Čas prekoračitve medpomnilnika OpenLog

Hitrost prenosa Čas na bajt  Čas do prekoračitve medpomnilnika
9600 bps 1.04ms 532ms
57600 bps 0.174ms 88ms
115200 bps 0.087ms 44ms

Številne SD kartice imajo čas snemanja hitrejši od 250 ms. Na to lahko vplivata »razred« kartice in količina podatkov, ki so že shranjeni na kartici. Rešitev je uporaba nižje hitrosti prenosa ali povečanje časa med znaki, poslanimi pri višji hitrosti prenosa.
Formatirajte kartico MicroSD
Ne pozabite uporabiti kartice z malo ali nič files na njem. Kartica microSD s 3.1 GB datoteke ZIP fileDatoteke s ali MP3 imajo počasnejši odzivni čas kot prazna kartica.
Če kartice microSD niste formatirali v operacijskem sistemu Windows, jo ponovno formatirajte in ustvarite datoteko DOS filesistem na SD kartici.
Zamenjava kartic MicroSD
Obstaja veliko različnih proizvajalcev kartic, preimenovanih kartic, velikosti kartic in razredov kartic, in vse morda ne bodo delovale pravilno. Običajno uporabljamo 8 GB kartico microSD razreda 4, ki dobro deluje pri 9600 bps. Če potrebujete višje hitrosti prenosa ali večji prostor za shranjevanje, boste morda želeli poskusiti kartice razreda 6 ali višjega.
Dodajte zakasnitve med zapisovanjem znakov
Z dodajanjem majhnega zamika med stavki Serial.print() lahko OpenLogu omogočite, da zabeleži svoj trenutni
medpomnilnik.
Na primerample:
Serial.begin(115200);
za(int i = 1; i < 10; i++) {
Serijski.print(i, DEC);
Serial.println(“:abcdefghijklmnopqrstuvwxyz-!#”);
}

Morda se ne bo pravilno beležilo, saj se veliko znakov pošilja drug ob drugem. Če med zapisovanjem velikih znakov vstavite majhen 15-milimetrski zamik, bo OpenLog lažje beležil brez izpuščanja znakov.
Serial.begin(115200);
za(int i = 1; i < 10; i++) {
Serijski.print(i, DEC);
Serial.println(“:abcdefghijklmnopqrstuvwxyz-!#”);
zamuda (15);
}

Dodajte združljivost serijskega monitorja Arduino
Če poskušate uporabljati OpenLog z vgrajeno serijsko knjižnico ali knjižnico SoftwareSerial, lahko opazite težave z ukaznim načinom. Serial.println() pošlje tako znak za novo vrstico KOT znak za premik vrstice. Za premagovanje te težave obstajata dva alternativna ukaza.
Prvi je uporaba ukaza \r (ASCII znak za preklic vrstice):
Serijska.tisk("BESEDILO\r");
Lahko pa pošljete vrednost 13 (decimalni znak za začetek vrstice):
Serijska.tisk("BESEDILO");
Serial.write(13);

Ponastavitev v sili
Ne pozabite, če morate OpenLog ponastaviti na privzeto stanje, lahko ploščo ponastavite tako, da priklopite RX pin na GND, vklopite OpenLog, počakate, da LED diode začnejo utripati sočasno, nato pa izklopite OpenLog in odstranite mostiček.
Če ste bit za preglasitev v sili spremenili na 1, boste morali spremeniti konfiguracijo. file, saj ponastavitev v sili ne bo delovala.
Preverite s skupnostjo
Če imate še vedno težave z OpenLogom, si oglejte trenutne in zaključene težave v našem repozitoriju GitHub tukaj. Z OpenLogom sodeluje velika skupnost, zato obstaja velika verjetnost, da je nekdo že našel rešitev za težavo, ki jo opažate.

Viri in nadaljnji koraki

Zdaj, ko ste uspešno beležili podatke z OpenLogom, lahko nastavite oddaljene projekte in spremljate vse morebitne prihajajoče podatke. Razmislite o ustvarjanju lastnega projekta Citizen Science ali celo sledilnika hišnih ljubljenčkov, da vidite, kaj Fluffy počne, ko je na poti!
Za odpravljanje težav, pomoč ali navdih za vaš naslednji projekt si oglejte te dodatne vire.

  • OpenLog GitHub
  • Projekt Illumitune
  • Priklop svetlobnega senzorja LilyPad
  • BadgerHack: Dodatek za senzor tal
  • Uvod v OBD-II
  • Vernierjeva fotovrata

Potrebujete še več navdiha? Oglejte si nekaj teh povezanih vadnic:
Senzor nivoja vode Photon za daljinsko upravljanje
Naučite se, kako zgraditi daljinski senzor nivoja vode za rezervoar za vodo in kako avtomatizirati črpalko na podlagi odčitkov!
Senzor nivoja vode Photon za daljinsko upravljanje
Naučite se, kako zgraditi daljinski senzor nivoja vode za rezervoar za vodo in kako avtomatizirati črpalko na podlagi odčitkov!
Beleženje podatkov v Google Preglednice s Tesselom 2
Ta projekt obravnava, kako beležiti podatke v Google Preglednice na dva načina: z uporabo IFTTT z web povezavo ali USB-ključ in »sneakernet« brez.
Grafični prikaz podatkov senzorjev s Pythonom in Matplotlibom
Z uporabo matplotlib ustvarite graf temperaturnih podatkov v realnem času, zbranih s senzorja TMP102, priključenega na Raspberry Pi.
Če imate kakršne koli povratne informacije o vadnici, obiščite komentarje ali se obrnite na našo tehnično podporo na TechSupport@sparkfun.com.

Logotip SparkFuna

Dokumenti / Viri

Razvojne plošče SparkFun DEV-13712 [pdf] Uporabniški priročnik
DEV-13712, DEV-11114, DEV-09873, CAB-12016, COM-13833, COM-13004, PRT-00115, PRT-08431, DEV-13712 Razvojne plošče SparkFun, DEV-13712, Razvojne plošče SparkFun, Razvojne plošče, Plošče

Reference

Pustite komentar

Vaš elektronski naslov ne bo objavljen. Obvezna polja so označena *