SparkFun-logo

SparkFun DEV-13712 Čestični foton sa rupama za lemljenje

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-proizvod

Specifikacije

  • Naziv proizvoda: OpenLog Data Logger
  • Model: DEV-13712
  • Ulazno napajanje: 3.3V-12V (preporučeno 3.3V-5V)
  • RXI ulazna jačina zvukatage: 2.0V-3.8V
  • Izlazna jačina TXO-atage: 3.3V
  • Potrošnja struje u mirovanju: ~2mA-5mA (bez microSD kartice), ~5mA-6mA (sa microSD karticom)
  • Potrošnja struje pri aktivnom pisanju: ~20-23mA (sa microSD karticom)

Upute za upotrebu proizvoda

Potrebni materijali:

  • Arduino Pro Mini 328 – 3.3V/8MHz
  • SparkFun FTDI osnovni razvodni kabel – 3.3V
  • SparkFun Cerberus USB kabel – 6 m
  • microSD kartica sa adapterom – 16 GB (klasa 10)
  • microSD USB čitač
  • Female Headers
  • Žice za paljenje Premium 6 M/M, pakovanje od 10
  • Odvojivi muški zaglavci – pod pravim uglom

Preporučena literatura:

Hardware Overview:
OpenLog radi sa sljedećim postavkama:

VCC ulaz RXI ulaz TXO izlaz Potrošnja struje u mirovanju Povlačenje struje pri aktivnom pisanju
3.3 V - 12 V (preporučeno 3.3 V - 5 V) 2.0V-3.8V 3.3V ~2mA-5mA (bez microSD kartice), ~5mA-6mA (sa microSD karticom) ~20-23mA (sa microSD karticom)

Uvod

Pažnja! Ovaj tutorijal je za Open Log za serijski UART [DEV-13712]. Ako koristite Qwiic OpenLog za IC [DEV-15164], pogledajte Qwiic OpenLog vodič za povezivanje.

OpenLog Data Logger je jednostavno rješenje otvorenog koda za bilježenje serijskih podataka iz vaših projekata. OpenLog pruža jednostavno serijsko sučelje za bilježenje podataka iz projekta na microSD karticu.

SparkFun OpenLog
DEV-13712

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (1)

SparkFun OpenLog sa zaglavljima
DEV-13955

Nije pronađen nijedan proizvod

Potrebni materijali
Da biste u potpunosti prošli kroz ovaj tutorijal, trebat će vam sljedeći dijelovi. Možda vam neće trebati sve, ovisno o tome što imate. Dodajte to u korpu, pročitajte vodič i prilagodite korpu po potrebi.

Vodič za povezivanje OpenLog-a

SparkFun lista želja

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (2)SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (3)

Preporučeno čitanje
Ako niste upoznati ili vam nisu ugodni sljedeći koncepti, preporučujemo da ih pročitate prije nego što nastavite s OpenLog vodičem za povezivanje.

  • Kako lemiti: Lemljenje kroz rupu. Ovaj tutorijal pokriva sve što trebate znati o lemljenju kroz rupu.
  • Serial Communication Koncepti asinhrone serijske komunikacije: paketi, nivoi signala, brzine prijenosa podataka, UART-ovi i još mnogo toga!
  • Serijski periferni interfejs (SPI) SPI se obično koristi za povezivanje mikrokontrolera sa perifernim uređajima kao što su senzori, registri za pomjeranje i SD kartice.
  • Osnove serijskog terminala Ovaj tutorijal će vam pokazati kako komunicirati sa serijskim uređajima koristeći razne aplikacije za emulaciju terminala.

Hardware Overview

Snaga
OpenLog radi sa sljedećim postavkama:

OpenLog ocjene snage

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (4)

Potrošnja struje OpenLog-a je oko 20mA do 23mA prilikom pisanja na microSD karticu. U zavisnosti od veličine microSD kartice i njenog proizvođača, aktivna potrošnja struje može varirati kada OpenLog upisuje na memorijsku karticu. Povećanje brzine prijenosa podataka će također povući više struje.

Mikrokontroler
OpenLog koristi ugrađeni ATmega328, koji radi na 16MHz, zahvaljujući ugrađenom kristalu. ATmega328 ima ugrađen Optiboot bootloader, što omogućava OpenLogu da bude kompatibilan sa...
Postavke ploče "Arduino Uno" u Arduino IDE-u.

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (5)

Interface

Serial UART
Primarni interfejs sa OpenLogom je FTDI konektor na ivici ploče. Ovaj konektor je dizajniran za direktno priključivanje na Arduino Pro ili Pro Mini, što omogućava mikrokontroleru da šalje podatke preko serijske veze na OpenLog.

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (6)

Upozorenje! Zbog redoslijeda pinova koji ga čini kompatibilnim s Arduinom, ne može se direktno priključiti na FTDI razvodnu ploču.

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (7)

Za više informacija, obavezno pogledajte sljedeći odjeljak o povezivanju hardvera.

SPI

Na suprotnom kraju ploče nalaze se i četiri SPI testna priključka. Možete ih koristiti za reprogramiranje bootloadera na ATmega328.

  • SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (8)Najnoviji OpenLog (DEV-13712) izvlači ove pinove na manje galvanizirane prolazne rupe. Ako trebate koristiti internet provajdera za reprogramiranje ili postavljanje novog bootloadera na OpenLog, možete koristiti pogo pinove za povezivanje s ovim testnim tačkama.
  • Konačni interfejs za komunikaciju s OpenLog-om je sama microSD kartica. Za komunikaciju, microSD kartica zahtijeva SPI pinove. OpenLog ne samo da ovdje pohranjuje podatke, već i možete ažurirati konfiguraciju OpenLog-a putem config.txt datoteke. file na microSD kartici.
    microSD kartica

Svi podaci koje OpenLog zabilježi pohranjuju se na microSD karticu. OpenLog radi s microSD karticama koje imaju sljedeće karakteristike:

  • 64MB do 32GB
  • FAT16 ili FAT32

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (9)

Na OpenLogu postoje dvije statusne LED diode koje vam pomažu u rješavanju problema.

  • STAT1 – Ova plava LED indikatorska dioda je priključena na Arduino D5 (ATmega328 PD5) i uključuje se/isključuje kada se primi novi znak. Ova LED dioda treperi kada serijska komunikacija funkcioniše.
  • STAT2 – Ova zelena LED dioda je povezana na Arduino D13 (SPI serijska linija takta/ATmega328 PB5). Ova LED dioda treperi samo kada je SPI interfejs aktivan. Vidjet ćete da treperi kada OpenLog snimi 512 bajtova na microSD karticu.

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (10)

Hardware Hookup

Postoje dvije glavne metode za povezivanje vašeg OpenLoga na strujno kolo. Trebat će vam neki konektori ili žice za povezivanje. Obavezno zalemite na ploču radi sigurne veze.

Osnovna serijska veza

SavjetAko imate ženski konektor na OpenLogu i ženski konektor na FTDI-ju, trebat će vam M/F kratkospojnici za povezivanje.

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (11)

Ova hardverska veza je dizajnirana za povezivanje s OpenLog-om ako trebate reprogramirati ploču ili zapisivati ​​podatke preko osnovne serijske veze.

Napravite sljedeće veze:
OpenLog → 3.3V FTDI osnovni proboj

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

Imajte na umu da nije riječ o direktnoj vezi između FTDI-ja i OpenLoga – morate zamijeniti TXO i RXI pinove.

Vaše veze bi trebale izgledati ovako:

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (12)

Nakon što uspostavite veze između OpenLoga i FTDI Basic-a, priključite FTDI ploču na USB kabl i računar. Otvorite serijski terminal, povežite se na COM port vašeg FTDI Basic-a i krenite!

Veza hardvera projekta

Savjet: Ako imate ženske konektore zalemljene na OpenLogu, možete zalemiti muške konektore na Arduino Pro Mini kako biste spojili ploče bez potrebe za žicama.

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (13)

Iako je povezivanje s OpenLogom putem serijske veze važno za reprogramiranje ili otklanjanje grešaka, OpenLog se ističe u ugrađenim projektima. Ovaj opći dijagram preporučuje kako spojiti vaš OpenLog na mikrokontroler (u ovom slučaju, Arduino Pro Mini) koji će zapisivati ​​serijske podatke na OpenLog.

Prvo, morat ćete prenijeti kod na svoj Pro Mini koji namjeravate pokrenuti. Molimo pogledajte Arduino skice za neke primjere.ampkod koji možete koristiti.

Napomena: Ako niste sigurni kako programirati svoj Pro Mini, pogledajte naš tutorijal ovdje.

Korištenje Arduino Pro Mini 3.3V

  • Ovaj tutorijal je vaš vodič kroz sve što se tiče Arduina Pro Mini. Objašnjava šta je, šta nije i kako ga početi koristiti.
  • Nakon što ste programirali svoj Pro Mini, možete ukloniti FTDI ploču i zamijeniti je OpenLog-om. Obavezno povežite pinove označene sa BLK i na Pro Mini i na OpenLog-u (pinovi označeni sa GRN na oba će se također poklapati ako je to ispravno urađeno).
  • Ako ne možete direktno priključiti OpenLog u Pro Mini (zbog neusklađenih konektora ili drugih ploča koje smetaju), možete koristiti kratkospojnike i napraviti sljedeće veze.

OpenLog → Arduino Pro/Arduino Pro Mini

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

Kada završite, vaše veze bi trebale izgledati ovako sa Arduino Pro Mini i Arduino Pro. Fritzingov dijagram prikazuje OpenLogs sa zrcaljenim zaglavljima. Ako okrenete microSD utičnicu u odnosu na vrh Arduina view, trebali bi se podudarati sa programskim zaglavljem kao FTDI.

SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (14)

Imajte na umu da je veza direktna s OpenLog-om "naopačke" (s microSD karticom okrenutom prema gore).

Napomena: Budući da su Vcc i GND između OpenLoga i Arduina zauzeti konektorima, morat ćete spojiti napajanje na ostale dostupne pinove na Arduinu. U suprotnom, mogli biste zalemiti žice na izložene pinove za napajanje na bilo kojoj ploči.

Uključite svoj sistem i spremni ste za početak evidentiranja!

Arduino skice

Postoji šest različitih bivšihampUključene su skice koje možete koristiti na Arduinu kada ste povezani s OpenLog-om.

  • OpenLog_Benchmarking — Ovaj bivšiample se koristi za testiranje OpenLoga. Ovo šalje vrlo velike količine podataka brzinom od 115200bps preko više files.
  • OpenLog_CommandTest — Ovaj bivšiample pokazuje kako kreirati i dodati file putem komandne linije upravljanja preko Arduina.
  • OpenLog_ReadExample — Ovaj bivšiampOvaj članak objašnjava kako kontrolisati OpenLog putem komandne linije.
  • OpenLog_ReadExample_LargeFile — prample o tome kako otvoriti veliku pohranu file na OpenLogu i prijavite to putem lokalne Bluetooth veze.
  • OpenLog_Test_Sketch — Koristi se za testiranje OpenLoga s puno serijskih podataka.
  • OpenLog_Test_Sketch_Binary — Koristi se za testiranje OpenLoga s binarnim podacima i escape znakovima.

Firmware

OpenLog ima dva glavna softvera na sebi: bootloader i firmver.

Arduino bootloader

Napomena: Ako koristite OpenLog koji je kupljen prije marta 2012. godine, ugrađeni bootloader je kompatibilan s postavkom "Arduino Pro ili Pro Mini 5V/16MHz w/ ATmega328" u Arduino IDE-u.

  • Kao što je ranije spomenuto, OpenLog ima ugrađeni serijski bootloader Optiboot. Možete tretirati OpenLog baš kao Arduino Uno prilikom učitavanja example kod ili novi firmver na ploču.
  • Ako na kraju "brickate" (ili "zabrikate") vaš OpenLog i trebate ponovo instalirati bootloader, također ćete htjeti učitati Optiboot na ploču. Molimo pogledajte naš vodič o instaliranju Arduino Bootloadera za više informacija.

Kompajliranje i učitavanje firmvera na OpenLog

Napomena: Ako prvi put koristite Arduino, molimo vas da ponovoview naš vodič o instaliranju Arduino IDE-a. Ako prethodno niste instalirali Arduino biblioteku, pogledajte naš vodič za instalaciju kako biste ručno instalirali biblioteke.

  • Ako iz bilo kojeg razloga trebate ažurirati ili ponovo instalirati firmver na vašem OpenLog-u, sljedeći postupak će pokrenuti vašu ploču.
  • Prvo, preuzmite Arduino IDE v1.6.5. Druge verzije IDE-a mogu biti sposobne za kompajliranje OpenLog firmvera, ali mi smo ovu verziju potvrdili kao poznatu kao ispravnu.
  • Zatim preuzmite OpenLog firmver i potreban paket biblioteka.

PREUZMITE OPENLOG FIRMWARE PAKET (ZIP)

  • Nakon što preuzmete biblioteke i firmver, instalirajte ih u Arduino. Ako niste sigurni kako ručno instalirati biblioteke u IDE-u, pogledajte naš vodič: Instaliranje Arduino biblioteke: Ručno instaliranje biblioteke.

Napomena:

  • Koristimo modificirane verzije biblioteka SdFat i SerialPort kako bismo proizvoljno odredili veličinu TX i RX bafera. OpenLog zahtijeva da TX bafer bude vrlo mali (0), a RX bafer mora biti što veći.
  • Korištenje ove dvije modificirane biblioteke zajedno omogućava poboljšane performanse OpenLoga.

Tražite najnovije verzije?
Ako biste radije imali najnovije verzije biblioteka i firmvera, možete ih preuzeti direktno iz GitHub repozitorija povezanih ispod. Biblioteke SdFatLib i Serial Port nisu vidljive u Arduino upravitelju ploča, tako da ćete ih morati ručno instalirati.

  • GitHub: OpenLog > Firmware > OpenLog_Firmware
  • Bill Greimanove Arduino biblioteke
    • SdFatLib-beta
    • Serijski port
  • Zatim, da iskoristimo prednostitagOd modificiranih biblioteka, modificirajte SerialPort.hh file nalazi se u direktoriju \Arduino\Libraries\SerialPort. Promijenite BUFFERED_TX na 0 i ENABLE_RX_ERROR_CHECKING na 0. Sačuvajte file, i otvorite Arduino IDE.
  • Ako to još niste učinili, povežite svoj OpenLog s računarom putem FTDI ploče. Molimo vas da dvaput provjerite exampstrujno kolo ako niste sigurni kako to pravilno uraditi.
  • Otvorite OpenLog skicu koju želite prenijeti u meniju Alati>Ploča, odaberite "Arduino/Genuino Uno" i odaberite odgovarajući COM port za vašu FTDI ploču u meniju Alati>Port.
  • Prenesi kod.
  • To je to! Vaš OpenLog je sada programiran s novim firmverom. Sada možete otvoriti serijski monitor i komunicirati s OpenLogom. Prilikom uključivanja, vidjet ćete ili 12> ili 12<. 1 označava da je serijska veza uspostavljena, 2 označava da je SD kartica uspješno inicijalizirana, < označava da je OpenLog spreman za bilježenje primljenih serijskih podataka, a > označava da je OpenLog spreman za primanje naredbi.

Skice OpenLog firmvera
Postoje tri uključene skice koje možete koristiti na OpenLogu, ovisno o vašoj konkretnoj primjeni.

  • OpenLog – Ovaj firmver se standardno isporučuje na OpenLogu. Slanjem naredbe ? prikazat će se verzija firmvera učitana na uređaj.
  • OpenLog_Light – Ova verzija sketch-a uklanja meni i komandni mod, omogućavajući povećanje prijemnog bafera. Ovo je dobra opcija za brzo evidentiranje.
  • OpenLog_Minimal – Brzina prijenosa podataka mora biti postavljena u kodu i postavljena na server. Ova skica se preporučuje iskusnim korisnicima, ali je ujedno i najbolja opcija za najbrže bilježenje podataka.

Set naredbi

Možete se povezati s OpenLogom putem serijskog terminala. Sljedeće naredbe će vam pomoći da čitate, pišete i brišete files, kao i promijeniti postavke OpenLoga. Morat ćete biti u komandnom režimu da biste koristili sljedeće postavke.

Dok je OpenLog u komandnom režimu, STAT1 će se uključivati/isključivati ​​za svaki primljeni znak. LED će ostati upaljen dok se ne primi sljedeći znak.

  • Novo File – Stvara novo file imenovani File u trenutnom direktoriju. Standard 8.3 fileimena su podržana. Na primjeramptj. „87654321.123“ je prihvatljivo, dok „987654321.123“ nije.
    • Example: novo file1.txt
  • Dodati File – Dodavanje teksta na kraj FileSerijski podaci se zatim čitaju iz UART-a u toku i dodaju u fileNe prenosi se preko serijskog terminala. Ako File ne postoji kada se ova funkcija pozove, file će biti kreiran.
    • Example: dodati novofile.csv
  • Pišite File OFFSET – Upišite tekst u File od lokacije OFFSET unutar fileTekst se čita iz UART-a, red po red, i vraća se nazad. Da biste izašli iz ovog stanja, pošaljite praznu liniju.
    • Example: write logs.txt 516
  • rm File – Briše File iz trenutnog direktorija. Podržani su džoker znakovi.
    • Example: rm README.txt
  • veličina File – Izlazna veličina File u bajtovima.
    • Example: veličina Log112.csv
    • Izlaz: 11
  • Čitaj File + POČETAK+ TIP DUŽINE – Ispis sadržaja File počevši od START-a i nastavljajući do DUŽINE. Ako se START izostavi, cijeli file se prijavljuje. Ako se izostavi LENGTH, prijavljuje se cijeli sadržaj od početne tačke. Ako se izostavi TYPE, OpenLog će po defaultu prijavljivati ​​u ASCII formatu. Postoje tri izlazna TYPE-a:
    • ASCII = 1
    • HEX = 2
    • RAW = 3
  • Možete izostaviti neke završne argumente. Provjerite sljedeći primjeramples.
  • Osnovne oznake za čitanje + izostavljene oznake:
    • Example: pročitaj LOG00004.txt
    • Izlaz: Akcelerometar X=12 Y=215 Z=317
  • Čita od početka 0 sa dužinom od 5:
    • Example: pročitaj LOG00004.txt 0 5
    • Izlaz: Ubrzanje
  • Čita se od pozicije 1 dužine 5 u HEX formatu:
    • Example: pročitaj LOG00004.txt 1 5 2
    • Izlaz: 63 63 65 6C
  • Čita se od pozicije 0 sa dužinom od 50 u RAW formatu:
    • Example: pročitaj LOG00137.txt 0 50 3
    • Izlaz: André– -þ Prošireni test karaktera
  • Cat File – Napišite sadržaj jednog file u heksadecimalnom kodu serijskog monitora za viewing. Ponekad je korisno vidjeti da je file snima ispravno bez potrebe za vađenjem SD kartice i view the file na kompjuteru.
    • Example: cat LOG00004.txt
    • Izlaz: 00000000: 41 63 65 6c 3a 20 31

Manipulacija direktorijima

  • ls – Prikazuje sav sadržaj trenutnog direktorija. Podržani su džoker znakovi.
    • Example: ls
    • Izlaz: \src
  • md Poddirektorij – Kreirajte poddirektorij u trenutnom direktoriju.
    • Example: md Example_Skice
  • cd Poddirektorij – Promjena u poddirektorij.
    • Example: cd Zdravo_Svijete
  • cd .. – Promjena u niži direktorij u stablu. Imajte na umu da postoji razmak između 'cd' i '..'. Ovo omogućava parseru stringova da vidi CD naredbu.
    • Example: cd ..
  • rm Poddirektorij – Briše poddirektorij. Direktorij mora biti prazan da bi ova naredba radila.
    • Example: rm temperature
  • rm -rf Direktorij – Briše direktorij i sve filesadržano u njemu.
    • Example: rm -rf Biblioteke

Funkcijske naredbe niskog nivoa

  • ? – Ova komanda će prikazati listu dostupnih komandi na OpenLogu.
  • Disk – Prikazuje ID proizvođača kartice, serijski broj, datum proizvodnje i veličinu kartice. Npr.ampizlaz je:
    • Tip kartice: SD2 ID proizvođača: 3
    • OEM ID: SD
    • Proizvod: SU01G
    • Verzija: 8.0
    • Serijski broj: 39723042 Datum proizvodnje: 1/2010 Veličina kartice: 965120 KB
  • init – Ponovo inicijalizira sistem i ponovo otvori SD karticu. Ovo je korisno ako SD kartica prestane reagirati.
  • Sinhronizacija – Sinhronizira trenutni sadržaj bafera sa SD karticom. Ova komanda je korisna ako imate manje od 512 znakova u baferu i želite ih snimiti na SD karticu.
  • Reset – Vraća OpenLog na lokaciju nula, ponovo pokreće bootloader, a zatim inicijalizacijski kod. Ova komanda je korisna ako trebate urediti konfiguraciju. file, resetirajte OpenLog i počnite koristiti novu konfiguraciju. Isključivanje i isključivanje napajanja je i dalje preferirana metoda za resetiranje ploče, ali ova opcija je dostupna.

System Settings

Ove postavke se mogu ručno ažurirati ili uređivati ​​u datoteci config.txt file.

  • Echo STATE – Mijenja stanje sistema i pohranjuje se u sistemsku memoriju. STATE može biti uključeno ili isključeno. Dok je uključen, OpenLog će prikazivati ​​primljene serijske podatke u komandnoj liniji. Dok je isključen, sistem ne čita primljene znakove.

Napomena: Tokom normalnog evidentiranja, echo će biti isključen. Zahtjevi sistemskih resursa za eho primljenih podataka su preveliki tokom evidentiranja.

  • Verbose STATE – Mijenja stanje detaljnog izvještavanja o greškama. STATE može biti uključeno ili isključeno. Ova naredba se pohranjuje u memoriju. Isključivanjem detaljnih izvještaja o greškama, OpenLog će odgovoriti samo sa znakom ! ako postoji greška, umjesto nepoznate naredbe: C OMMAND.D..T Znakovi he su lakši za parsiranje ugrađenim sistemima nego puna greška. Ako koristite terminal, ostavljanje detaljnog izvještavanja uključenim omogućit će vam da vidite potpune poruke o grešci.
  • baud – Ova naredba će otvoriti sistemski meni koji omogućava korisniku da unese brzinu prijenosa podataka. Podržana je bilo koja brzina prijenosa podataka između 300bps i 1Mbps. Odabir brzine prijenosa podataka je trenutan, a OpenLog zahtijeva isključivanje i isključivanje napajanja da bi postavke stupile na snagu. Brzina prijenosa podataka se pohranjuje u EEPROM i učitava se svaki put kada se OpenLog uključi. Zadana vrijednost je 9600 8N1.

Zapamtite: Ako vam se ploča zaglavi na nepoznatoj brzini prijenosa podataka, možete povezati RX na GND i uključiti OpenLog. LED diode će treperiti naprijed-nazad 2 sekunde, a zatim će treperiti istovremeno. Isključite OpenLog i uklonite kratkospojnik. OpenLog se sada resetuje na 9600bps kada se tri puta uzastopno pritisne escape znak `CTRL-Z`. Ova funkcija se može poništiti postavljanjem bita za hitno prebacivanje na 1. Pogledajte config.txt za više informacija.

  • Postavi – Ova komanda otvara sistemski meni za odabir načina pokretanja. Ove postavke će se primijeniti pri sljedećem uključivanju i pohranjuju se u nehlapljivu EEPROM memoriju.
    • Novo File Zapisivanje – Ovaj način rada kreira novi file Svaki put kada se OpenLog uključi. OpenLog će prenijeti 1 (UART je aktivan), 2 (SD kartica je inicijalizirana), zatim < (OpenLog je spreman za prijem podataka). Svi podaci će biti snimljeni u LOG#####.txt. Broj ##### se povećava svaki put kada se OpenLog uključi (maksimalno je 65533 logova). Broj je pohranjen u EEPROM-u i može se resetirati iz menija za podešavanje. Nisu svi primljeni znakovi prikazani. Možete izaći iz ovog načina rada i ući u komandni način rada slanjem CTRL+z (ASCII 26). Svi baferovani podaci će biti pohranjeni.
  • Napomena: Ako je kreirano previše logova, OpenLog će ispisati grešku **Previše logova**, izaći iz ovog načina rada i preći na komandni redak. Serijski izlaz će izgledati kao `12!Previše logova!`
    • Dodati File Zapisivanje – Poznato i kao sekvencijalni način rada, ovaj način rada kreira file naziva se SEQLOG.txt ako već nije tamo i dodaje sve primljene podatke u fileOpenLog će prenijeti 12<, nakon čega je OpenLog spreman za primanje podataka. Znakovi se ne ponavljaju. Možete izaći iz ovog načina rada i ući u komandni način rada slanjem CTRL+z (ASCII 26). Svi baferovani podaci će biti pohranjeni.
    • Komandni redak – OpenLog će poslati 12> u kojem trenutku je sistem spreman za primanje komandi. Imajte na umu da znak > označava da je OpenLog spreman za primanje komandi, a ne podataka. Možete kreirati filei dodajte podatke u files, ali ovo zahtijeva određeno serijsko parsiranje (za provjeru grešaka), tako da ovaj način rada ne postavljamo po zadanim postavkama.
    • Resetuj Novo File Broj – Ovaj način rada će resetirati dnevnik file broj u LOG000.txt. Ovo je korisno ako ste nedavno ispraznili microSD karticu i želite da zapisnik file brojeve za ponovni početak.
    • Novi znak za izlaz – Ova opcija omogućava korisniku da unese znak, kao što je CTRL+z ili $, i postavi ga kao novi znak za izlaz. Ova postavka se resetuje na CTRL+z tokom hitnog resetovanja.
    • Broj escape znakova – Ova opcija omogućava korisniku da unese znak (kao što je 1, 3 ili 17), ažurirajući novi broj escape znakova potrebnih za prelazak u komandni režim. Na primjeramptj. unosom broja 8 korisnik će morati osam puta pritisnuti CTRL+z da bi ušao u komandni režim. Ova postavka se resetuje na 3 tokom hitnog resetovanja.
  • Objašnjenje escape znakova: Razlog zašto OpenLog zahtijeva `CTRL+z` pritisnuto 3 puta za ulazak u komandni mod je sprječavanje slučajnog resetiranja ploče tokom učitavanja novog koda iz Arduino IDE-a. Postoji mogućnost da ploča vidi znak `CTRL+z` koji se pojavljuje tokom pokretanja sistema (problem koji smo vidjeli u ranijim verzijama OpenLog firmvera), tako da ovo ima za cilj da to spriječi. Ako ikada posumnjate da je vaša ploča "brickana" zbog ovoga, uvijek možete izvršiti hitno resetiranje tako što ćete držati RX pin na masi tokom uključivanja.

Konfiguracija File

Ako ne želite koristiti serijski terminal za mijenjanje postavki na vašem OpenLogu, postavke možete ažurirati i mijenjanjem CONFIG.TXT datoteke. file.

Napomena: Ova funkcija radi samo na verziji firmvera 1.6 ili novijoj. Ako ste kupili OpenLog nakon 2012. godine, koristit ćete verziju firmvera 1.6+.

  • Da biste to uradili, trebat će vam čitač microSD kartica i program za uređivanje teksta. Otvorite datoteku config.txt file (velika slova file ime nije bitno) i konfigurirajte! Ako nikada prije niste uključili svoj OpenLog pomoću SD kartice, možete i ručno kreirati fileAko ste prethodno uključili OpenLog s umetnutom microSD karticom, trebali biste vidjeti nešto poput sljedećeg prilikom očitavanja microSD kartice.SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (15)OpenLog kreira datoteke config.txt i LOG0000.txt file pri prvom uključivanju.
  • Zadana konfiguracija file ima jedan red postavki i jedan red definicija.SparkFun-DEV-13712-Particle-Photon-With-Holes-For-Soldering-sl- (16)Zadana konfiguracija file napisao je OpenLog.
  • Imajte na umu da su ovo regularni vidljivi znakovi (nema nevidljivih ili binarnih vrijednosti) i da je svaka vrijednost odvojena zarezom.

Postavke su definirane na sljedeći način:

  • baud: Brzina komunikacije u baudu. Zadana vrijednost je 9600 bps. Prihvatljive vrijednosti kompatibilne s Arduino IDE-om su 2400, 4800, 9600, 19200, 38400, 57600 i 115200. Možete koristiti i druge brzine prijenosa, ali nećete moći komunicirati s OpenLogom putem serijskog monitora Arduino IDE-a.
  • Escap:e ASCII vrijednost (u decimalnom formatu) escape znaka. 26 je CTRL+z i podrazumijevana je vrijednost. 36 je $ i često korišten escape znak.
  • Esc #: Broj potrebnih escape znakova. Podrazumevano je tri, tako da morate pritisnuti escape znak tri puta da biste se vratili u komandni režim. Prihvatljive vrijednosti su od 0 do 254. Postavljanje ove vrijednosti na 0 će potpuno onemogućiti provjeru escape znakova.
  • Režim Sistemski režim. OpenLog se podrazumevano pokreće u režimu Novi dnevnik (0). Prihvatljive vrednosti su 0 = Novi dnevnik, 1 = Sekvencijalni dnevnik, 2 = Komandni režim.
  • Glagol: Verbose mod. Proširene (verbose) poruke o grešci su uključene prema zadanim postavkama. Postavljanjem na 1 uključuje se verbose poruke o grešci (kao što je nepoznata naredba: ukloni !). Postavljanjem na 0 isključuje se verbose greške, ali će se odgovoriti znakom ! ako postoji greška. Isključivanje verbose moda je korisno ako pokušavate obraditi greške iz ugrađenog sistema.
  • Eho: Režim eha. Dok ste u komandnom režimu, znakovi se po defaultu eho-uju. Postavljanjem na 0 isključuje se eho znakova. Isključivanje je korisno ako se obrađuju greške i ne želite da se poslane komande eho-uju nazad u OpenLog.II.
  • Zanemarite RXEmergency Override. Normalno, OpenLog će se hitno resetovati kada RX pin bude nizak tokom uključivanja. Postavljanjem ovoga na 1 onemogućićete provjeru RX pina tokom uključivanja. Ovo može biti korisno za sisteme koji će RX liniju držati niskom iz različitih razloga. Ako je Emergency Override onemogućen, nećete moći prisilno vratiti uređaj na 9600bps, a konfiguracija... file će biti jedini način za promjenu brzine prijenosa podataka.

Kako OpenLog mijenja konfiguraciju File
Postoji pet različitih situacija u kojima OpenLog može izmijeniti datoteku config.txt. file.

  • Config file pronađeno: Tokom uključivanja, OpenLog će tražiti datoteku config.txt file. Ako je file ako se pronađe, OpenLog će koristiti uključene postavke i prepisati sve prethodno pohranjene sistemske postavke.
  • Nema konfiguracije file pronađeno: Ako OpenLog ne može pronaći datoteku config.txt file OpenLog će zatim kreirati datoteku config.txt i u nju snimiti trenutno pohranjene sistemske postavke. To znači da će, ako umetnete novoformatiranu microSD karticu, vaš sistem zadržati trenutne postavke.
  • Oštećena konfiguracija file pronađeno: OpenLog će izbrisati oštećenu datoteku config.txt file, i prepisat će i interne EEPROM postavke i postavke config.txt datoteke file do poznatog dobrog stanja 9600,26,3,0,1,1,0.
  • Nedozvoljene vrijednosti u konfiguraciji fileAko OpenLog otkrije bilo koje postavke koje sadrže nedozvoljene vrijednosti, OpenLog će prepisati oštećene vrijednosti u datoteci config.txt. file sa trenutno pohranjenim EEPROM sistemskim postavkama.
  • Promjene putem komandne linije: Ako se sistemske postavke promijene putem komandne linije (bilo putem serijske veze ili putem serijskih naredbi mikrokontrolera), te promjene će biti zabilježene i u sistemskom EEPROM-u i u config.txt datoteci. file.
  • Hitno resetovanje: Ako se OpenLog ponovo uključi i isključi kratkospojnikom između RX i GND, a bit za hitno poništavanje (Emergency Override bit) je postavljen na 0 (što omogućava hitno resetovanje), OpenLog će prepisati i interna podešavanja EEPROM-a i podešavanja config.txt datoteke. file do poznatog dobrog stanja 9600,26,3,0,1,1,0.

Rješavanje problema

Postoji nekoliko različitih opcija za provjeru ako imate problema s povezivanjem preko serijskog monitora, imate problema s izgubljenim znakovima u logovima ili se borite s blokiranim OpenLogom.

Provjerite ponašanje STAT1 LED diode
STAT1 LED pokazuje različito ponašanje za dvije različite uobičajene greške.

  • 3 treptaja: Inicijalizacija microSD kartice nije uspjela. Možda ćete morati formatirati karticu pomoću FAT/FAT16 sistema podataka na računaru.
  • 5 treptaja: OpenLog je promijenio brzinu prijenosa podataka i potrebno ga je ponovo uključiti i isključiti.

Dvostruka provjera strukture poddirektorija

  • Ako koristite zadani OpenLog.ino exampDakle, OpenLog će podržavati samo dva poddirektorija. Morat ćete promijeniti FOLDER_TRACK_DEPTH sa 2 na broj poddirektorija koje trebate podržavati. Nakon što to učinite, ponovo kompajlirajte kod i prenesite modificirani firmver.
  • Provjerite broj Files u korijenskom direktoriju
  • OpenLog će podržavati samo do 65,534 logova. files u korijenskom direktoriju. Preporučujemo da ponovo formatirate microSD karticu kako biste poboljšali brzinu zapisivanja.
  • Provjerite veličinu vašeg modificiranog firmvera
  • Ako pišete prilagođenu skicu za OpenLog, provjerite da vaša skica nije veća od 32,256. Ako je tako, zauzet će gornjih 500 bajtova Flash memorije, koju koristi Optiboot serijski bootloader.
  • Dvostruka provjera File Imena
  • Sve file Imena trebaju biti alfanumerička. MyLOG1.txt je u redu, ali Hi !e _ .txtt možda neće raditi.
  • Koristi 9600 Bauda
  • OpenLog radi na ATmega328 i ima ograničenu količinu RAM-a (2048 bajtova). Kada šaljete serijske znakove OpenLogu, ovi znakovi se baferuju. Pojednostavljena specifikacija SD grupe dozvoljava SD kartici da snimi blok podataka u fleš memoriju za do 250 ms (odjeljak 4.6.2.2 Pisanje).
  • Pri brzini od 9600 bps, to je 960 bajtova (10 bitova po bajtu) u sekundi. To je 1.04 ms po bajtu. OpenLog trenutno koristi prijemni bafer od 512 bajtova tako da može baferovati oko 50 ms znakova. Ovo omogućava OpenLogu da uspješno primi sve znakove koji dolaze pri brzini od 9600 bps. Kako povećavate brzinu prijenosa podataka, bafer će kraće trajati.

Vrijeme prekoračenja OpenLog bafera

Baud Rate Vrijeme po bajtu Vrijeme do prekoračenja bafera
9600bps 1.04ms 532ms
57600bps 0.174ms 88ms
115200bps 0.087ms 44ms

Mnoge SD kartice imaju vrijeme snimanja brže od 250ms. Na to može utjecati 'klasa' kartice i količina podataka koja je već pohranjena na kartici. Rješenje je korištenje niže brzine prijenosa podataka ili povećanje vremena između znakova poslanih pri višoj brzini prijenosa podataka.

Formatirajte svoju MicroSD karticu
Ne zaboravite koristiti karticu s malo ili bez files na njemu. MicroSD kartica sa 3.1 GB ZIP datoteke files ili MP3 datoteke imaju sporije vrijeme odziva od prazne kartice. Ako niste formatirali microSD karticu na Windows operativnom sistemu, ponovo formatirajte microSD karticu i kreirajte DOS filesistem na SD kartici.
Zamijenite MicroSD kartice
Postoji mnogo različitih proizvođača kartica, preimenovanih kartica, veličina kartica i klasa kartica, i možda neće sve raditi ispravno. Obično koristimo microSD karticu klase 8 od 4 GB, koja dobro radi na 9600 bps. Ako su vam potrebne veće brzine prijenosa podataka ili veći prostor za pohranu, možda biste trebali isprobati kartice klase 6 ili više.
Dodajte kašnjenja između pisanja znakova
Dodavanjem malog kašnjenja između naredbi Serial.print(), možete dati OpenLogu priliku da snimi svoj trenutni bafer.
Za nprample:
  • Serial.begin(115200);
    za (int i = 1; i < 10; i++) { Serial.print(i, DEC); Serial.println(":abcdefghijklmnopqrstuvwxyz-!#"); }

možda se neće ispravno evidentirati, jer se šalje mnogo znakova jedan pored drugog. Umetanje malog kašnjenja od 15 ms između pisanja velikih znakova pomoći će OpenLog-u da snima bez gubitka znakova.

  • Serial.begin(115200);
    za (int i = 1; i < 10; i++) { Serial.print(i, DEC); Serial.println(":abcdefghijklmnopqrstuvwxyz-!#"); delay(15); }

Dodajte kompatibilnost serijskog monitora za Arduino

Ako pokušavate koristiti OpenLog s ugrađenom serijskom bibliotekom ili bibliotekom SoftwareSerial, možete primijetiti probleme s načinom rada naredbe. Serial.println() šalje i znak za novi red I znak za povratak na početak reda. Postoje dvije alternativne naredbe za rješavanje ovog problema.

Prvo je korištenje naredbe \r (ASCII znak za povratak na početak reda):
Serial.print(“TEKST\r”);

Alternativno, možete poslati vrijednost 13 (decimalni znak za povratak na početak reda):

  • Serial.print("TEKST");
  • Serial.write(13);

Hitno resetovanje

Zapamtite, ako trebate resetirati OpenLog na zadano stanje, možete resetirati ploču tako što ćete RX pin spojiti na GND, uključiti OpenLog, pričekati da LED diode počnu treptati istovremeno, a zatim isključiti OpenLog i ukloniti kratkospojnik.
Ako ste promijenili bit za hitno premošćivanje na 1, morat ćete izmijeniti konfiguraciju. file, jer hitno resetiranje neće raditi.

Provjerite sa zajednicom

Ako i dalje imate problema sa svojim OpenLogom, pogledajte trenutne i zatvorene probleme na našem GitHub repozitoriju ovdje. Postoji velika zajednica koja radi sa OpenLogom, tako da postoji vjerovatnoća da je neko pronašao rješenje za problem koji vidite.

Resursi i daljnji napredak

Sada kada ste uspješno zabilježili podatke pomoću OpenLoga, možete postaviti udaljene projekte i pratiti sve moguće podatke koji dolaze. Razmislite o kreiranju vlastitog projekta Građanske nauke ili čak alata za praćenje kućnih ljubimaca kako biste vidjeli šta Fluffy radi kada je u pokretu!
Pogledajte ove dodatne resurse za rješavanje problema, pomoć ili inspiraciju za vaš sljedeći projekat.

  • OpenLog GitHub
  • Projekt Illumitune
  • Priključak za LilyPad svjetlosni senzor
  • BadgerHack: Dodatak za senzor tla
  • Početak rada sa OBD-II
  • Vernierova foto kapija

Trebate još inspiracije? Pogledajte neke od ovih povezanih tutorijala:

  • Photon daljinski senzor nivoa vode
    Naučite kako napraviti daljinski senzor nivoa vode za rezervoar za vodu i kako automatizirati pumpu na osnovu očitanja!
  • Vodič za projekt Blink Board
    Serija Blynk projekata koje možete postaviti na Blynk ploči bez ikakvog ponovnog programiranja.
  • Zapisivanje podataka u Google tablice pomoću Tessela 2
    Ovaj projekat pokriva kako evidentirati podatke u Google Sheets na dva načina: korištenjem IFTTT-a sa web priključak ili USB memorijski stick i "sneakernet" bez.
  • Grafičko prikazivanje podataka senzora pomoću Pythona i Matplotliba
    Koristite matplotlib za kreiranje grafikona u realnom vremenu koji prikazuje podatke o temperaturi prikupljene sa TMP102 senzora povezanog na Raspberry Pi.

Ako imate povratne informacije o tutorijalu, posjetite komentare ili kontaktirajte naš tim za tehničku podršku na TechSupport@sparkfun.com.

Često postavljana pitanja

Koja je preporučena ulazna snaga za OpenLog?

Preporučeni ulazni napon za OpenLog je između 3.3 V i 5 V.

Koliko struje OpenLog troši u stanju mirovanja?

OpenLog troši otprilike 2mA do 5mA kada je u stanju mirovanja bez microSD kartice, a oko 5mA do 6mA kada je microSD kartica umetnuta.

Koja je svrha microSD USB veze sa OpenLog-om?

microSD USB čitač omogućava jednostavan prenos podataka sa microSD kartice koja se koristi sa OpenLog-om na računar.

Dokumenti / Resursi

SparkFun DEV-13712 Čestični foton sa rupama za lemljenje [pdf] Korisnički priručnik
DEV-13712, DEV-13955, DEV-13712 Čestični foton sa rupama za lemljenje, DEV-13712, Čestični foton sa rupama za lemljenje, Rupe za lemljenje, Za lemljenje, Lemljenje

Reference

Ostavite komentar

Vaša email adresa neće biti objavljena. Obavezna polja su označena *