SparkFun-emblemo

SparkFun DEV-13712 Partikla Fotono Kun Truoj Por Lutado

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-produkto

Specifoj

  • Produkta Nomo: OpenLog Datumregistrilo
  • Modelo: DEV-13712
  • Potenco-enigo: 3.3V-12V (Rekomendita 3.3V-5V)
  • RXI Eniga Volumotage: 2.0V-3.8V
  • TXO Elira Volumotage: 3.3V
  • Neaktiva kurento: ~2mA-5mA (sen microSD-karto), ~5mA-6mA (kun microSD-karto)
  • Aktiva Skribada Kurenta Konsumo: ~20-23mA (kun microSD-karto)

Produktaj Uzado-Instrukcioj

Materialoj Bezonataj:

  • Arduino Pro Mini 328 - 3.3V/8MHz
  • SparkFun FTDI Baza Elkonektilo - 3.3V
  • SparkFun Cerberus USB-kablo - 6 futoj
  • microSD-karto kun adaptilo - 16GB (Klaso 10)
  • microSD USB-legilo
  • Inaj Kapoj
  • Konektiloj Premium 6 M/M, pako de 10
  • Rompu Virajn Titolojn - Ortangulaj

Rekomendita Legado:

Aparataro Finisview:
La OpenLog funkcias ĉe la jenaj agordoj:

VCC-Enigo RXI-Enigo TXO-Eligo Neaktiva kurenta konsumo Aktiva Skribado Aktuala Tirado
3.3V-12V (Rekomendita 3.3V-5V) 2.0V-3.8V 3.3V ~2mA-5mA (sen microSD-karto), ~5mA-6mA (kun microSD-karto) ~20- 23mA (kun/ microSD-karto)

Enkonduko

Atentu! Ĉi tiu lernilo estas por la Malferma Registro por seria UART [DEV-13712]. Se vi uzas la Qwiic Malferman Registron por IC [DEV-15164], bonvolu rilati al la Gvidilo pri Konektado de Qwiic Malferma Registro.

La OpenLog Datenregistrilo estas facile uzebla, malfermfonteca solvo por registri seriajn datumojn de viaj projektoj. La OpenLog provizas simplan serian interfacon por registri datumojn de projekto al microSD-karto.

SparkFun OpenLog
DEV-13712

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (1)

SparkFun OpenLog kun Titoloj
DEV-13955

Neniu produkto trovita

Materialoj Bezonataj
Por plene tralabori ĉi tiun lernilon, vi bezonos la jenajn partojn. Eble vi ne bezonos ĉion depende de tio, kion vi havas. Aldonu ĝin al via ĉaro, tralegu la gvidilon, kaj ĝustigu la ĉaron laŭbezone.

Gvidilo pri Konektado de OpenLog

SparkFun Dezirlisto

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (2)SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (3)

Rekomendita Legado
Se vi ne konas aŭ ne komfortas kun la jenaj konceptoj, ni rekomendas tralegi ilin antaŭ ol daŭrigi kun la Gvidilo pri OpenLog-Konektado.

  • Kiel Luti: Tratrua Lutado. Ĉi tiu lernilo kovras ĉion, kion vi bezonas scii pri tratrua lutado.
  • Seria Komunikado Konceptoj pri nesinkrona seria komunikado: pakaĵetoj, signalniveloj, baŭdrapidecoj, UART-oj, kaj pli!
  • Seria Perifera Interfaco (SPI) SPI estas ofte uzata por konekti mikroregilojn al flankaparatoj kiel sensiloj, ŝovregistroj kaj SD-kartoj.
  • Bazaj Seriaj Terminaloj Ĉi tiu lernilo montros al vi kiel komuniki kun viaj seriaj aparatoj uzante diversajn terminalajn emulilajn aplikaĵojn.

Aparataro Finisview

Potenco
La OpenLog funkcias ĉe la jenaj agordoj:

OpenLog-Potencaj Rangigoj

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (4)

The OpenLog’s current draw is about 20mA to 23mA when writing to a microSD. Depending on the size of the microSD card and its manufacturer, the active current draw can vary when the OpenLog is writing to the memory card. Increasing the baud rate will also pull more current.

Mikrokontrolilo
La OpenLog funkcias per enkonstruita ATmega328, funkcianta je 16MHz, danke al la enkonstruita kristalo. La ATmega328 havas la Optiboot-startigan programon ŝarĝitan sur ĝi, kiu permesas al la OpenLog esti kongrua kun la
Agordoj de la plato “Arduino Uno” en la Arduino IDE.

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (5)

Interfaco

Seria UART
La ĉefa interfaco kun la OpenLog estas la FTDI-kapkonektilo ĉe la rando de la plato. Ĉi tiu kapkonektilo estas desegnita por rekte konektiĝi al Arduino Pro aŭ Pro Mini, kio permesas al la mikroregilo sendi la datumojn per seria konekto al la OpenLog.

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (6)

Averto! Pro la stiftordo, kiu igas ĝin kongrua kun la Arduinoj, ĝi ne povas konektiĝi rekte en FTDI-konektplaton.

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (7)

Por pliaj informoj, nepre legu la sekvan sekcion pri la Konektado de Aparataro.

SPI

Ankaŭ estas kvar SPI-testpunktoj ĉe la kontraŭa fino de la plato. Vi povas uzi ĉi tiujn por reprogrami la startigilon sur la ATmega328.

  • SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (8)La plej nova OpenLog (DEV-13712) dividas ĉi tiujn stiftojn sur pli malgrandajn tegitajn tratruojn. Se vi bezonas uzi provizanton de interreto (ISP) por reprogrami aŭ alŝuti novan startigilon al la OpenLog, vi povas uzi pogo-stiftojn por konekti al ĉi tiuj testpunktoj.
  • La fina interfaco por komuniki kun la OpenLog estas la microSD-karto mem. Por komuniki, la microSD-karto bezonas SPI-pinglojn. Ne nur tie la datumoj estas konservitaj de la OpenLog, sed vi ankaŭ povas ĝisdatigi la agordon de la OpenLog per la config.txt-dosiero. file sur la karto microSD.
    karto microSD

Ĉiuj datumoj registritaj de OpenLog estas konservitaj sur la microSD-karto. OpenLog funkcias kun microSD-kartoj, kiuj havas la jenajn funkciojn:

  • 64MB ĝis 32GB
  • FAT16 aŭ FAT32

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (9)

Estas du statusaj LED-oj sur la OpenLog por helpi vin solvi problemojn.

  • STAT1 – Ĉi tiu blua indikilo LED estas konektita al Arduino D5 (ATmega328 PD5) kaj ŝaltiĝas/malŝaltiĝas kiam nova signo estas ricevita. Ĉi tiu LED palpebrumas kiam seria komunikado funkcias.
  • STAT2 – Ĉi tiu verda LED estas konektita al Arduino D13 (SPI Seria Horloĝlinio/ ATmega328 PB5). Ĉi tiu LED nur palpebrumas kiam la SPI-interfaco estas aktiva. Vi vidos ĝin palpebrumi kiam la OpenLog registras 512 bajtojn al la microSD-karto.

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (10)

Aparataro Hokupo

Estas du ĉefaj metodoj por konekti vian OpenLog al cirkvito. Vi bezonos kelkajn konektilojn aŭ dratojn por konekti. Certigu, ke vi lutas ilin al la plato por sekura konekto.

Baza Seria Konekto

KonsiletoSe vi havas inan konektilon sur la OpenLog kaj inan konektilon sur la FTDI, vi bezonos M/F konektdratojn por konekti.

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (11)

Ĉi tiu aparatara konekto estas desegnita por interfaco kun OpenLog se vi bezonas reprogrami la platon aŭ protokoli datumojn per baza seria konekto.

Faru la sekvajn konektojn:
OpenLog → 3.3V FTDI Baza Elkonektilo

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

Rimarku, ke ĝi ne estas rekta konekto inter la FTDI kaj OpenLog - vi devas interŝanĝi la TXO kaj RXI-pinglajn konektojn.

Viaj konektoj devus aspekti jene:

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (12)

Post kiam vi havas la konektojn inter la OpenLog kaj la FTDI Basic, konektu vian FTDI-platon al USB-kablo kaj via komputilo. Malfermu serian terminalon, konektu ĝin al la COM-pordo de via FTDI Basic, kaj ek!

Projekta Aparatara Konekto

Konsilo: Se vi lutigis la inajn konektilojn sur la OpenLog, vi povas luti virajn konektilojn al la Arduino Pro Mini por konekti la platojn kune sen bezono de dratoj.

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (13)

Kvankam interfaco kun la OpenLog per seria konekto estas grava por reprogramado aŭ sencimigado, la loko kie OpenLog brilas estas en enigita projekto. Ĉi tiu ĝenerala cirkvito estas kiel ni rekomendas, ke vi konektu vian OpenLog al mikroregilo (en ĉi tiu kazo, Arduino Pro Mini) kiu skribos seriajn datumojn al la OpenLog.

Unue, vi devos alŝuti la kodon al via Pro Mini, kiun vi intencas uzi. Bonvolu rigardi la Arduino-Skizojn por kelkaj ekzemploj.ampla kodon, kiun vi povas uzi.

Notu: Se vi ne certas kiel programi vian Pro Mini, bonvolu rigardi nian lernilon ĉi tie.

Uzante la Arduino Pro Mini 3.3V

  • Ĉi tiu lernilo estas via gvidilo pri ĉio rilata al Arduino Pro Mini. Ĝi klarigas kio ĝi estas, kio ĝi ne estas, kaj kiel komenci uzi ĝin.
  • Post kiam vi programis vian Pro Mini, vi povas forigi la FTDI-platon kaj anstataŭigi ĝin per la OpenLog. Certigu, ke vi konektas la stiftojn etikeditajn BLK sur ambaŭ la Pro Mini kaj OpenLog (la stiftoj etikeditaj GRN sur ambaŭ ankaŭ kongruos se farite ĝuste).
  • Se vi ne povas rekte konekti la OpenLog-on en la Pro Mini (pro nekongruaj konektiloj aŭ aliaj platoj en la vojo), vi povas uzi konektdratojn kaj fari la jenajn konektojn.

OpenLog → Arduino Pro/Arduino Pro Mini

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

Kiam vi finos, viaj konektoj devus aspekti kiel jenaj kun la Arduino Pro Mini kaj Arduino Pro. La Fritzing-diagramo montras la OpenLog-ojn kun la kaplinioj spegulitaj. Se vi turnas la microSD-ingon rilate al la supro de la Arduino... view, ili devus kongrui kun la programa kaplinio kiel FTDI.

SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (14)

Notu, ke la konekto estas rekta kun la OpenLog "renversita" (kun la microSD supren).

Notu: Ĉar Vcc kaj GND inter la OpenLog kaj Arduino estas okupitaj de la konektiloj, vi devos konekti la aliajn disponeblajn stiftojn de la Arduino al la elektrofonto. Alie, vi povus luti dratojn al la videblaj elektrofontoj sur ambaŭ plato.

Ŝaltu vian sistemon, kaj vi pretas komenci registri!

Arduino-Skizoj

Estas ses malsamaj eks-ampla skizoj inkluzivitaj, kiujn vi povas uzi sur la Arduino kiam konektita al OpenLog.

  • OpenLog_Benchmarking — Ĉi tiu ekz.ample estas uzata por testi OpenLog. Ĉi tio sendas tre grandajn kvantojn da datumoj je 115200 bps tra pluraj files.
  • OpenLog_CommandTest — Ĉi tiu ekz.ample montras kiel krei kaj aldoni file per komandlinia kontrolo tra la Arduino.
  • MalfermuProtokolon_LeguEksample — Ĉi tiu eksample klarigas kiel regi la OpenLog per la komandlinio.
  • MalfermuProtokolon_LeguEksample_LargeFile — Ekzampekzemplo pri kiel malfermi grandan konservitan dosieron file sur OpenLog kaj raporti ĝin per loka Bluetooth-konekto.
  • OpenLog_Test_Sketch — Uzata por testi OpenLog kun multaj seriaj datumoj.
  • OpenLog_Test_Sketch_Binary — Uzata por testi OpenLog per binaraj datumoj kaj eskap-signoj.

Firmvaro

La OpenLog havas du ĉefajn programarojn surŝipe: la startigilon kaj la firmvaron.

Arduino Bootloader

Notu: Se vi uzas OpenLog-on aĉetitan antaŭ marto 2012, la enkonstruita startigilo kongruas kun la agordo "Arduino Pro aŭ Pro Mini 5V/16MHz kun ATmega328" en la Arduino IDE.

  • Kiel menciite antaŭe, la OpenLog havas la serian startigilon Optiboot enkonstruitan. Vi povas trakti la OpenLog-on same kiel Arduino Uno dum alŝutado de ekz.ampla kodo aŭ nova firmvaro al la tabulo.
  • Se vi finfine brikigas vian OpenLog kaj bezonas reinstali la startigilon, vi ankaŭ volos alŝuti Optiboot sur la tabulon. Bonvolu rigardi nian lernilon pri instalado de Arduino-startigilo por pliaj informoj.

Kompili kaj Ŝarĝi Firmvaron sur la OpenLog

Notu: Se ĉi tio estas via unua fojo uzante Arduinon, bonvolu rememori.view nia lernilo pri instalado de la Arduino IDE. Se vi antaŭe ne instalis Arduino-bibliotekon, bonvolu kontroli nian instalan gvidilon por permane instali la bibliotekojn.

  • Se pro iu ajn kialo vi bezonas ĝisdatigi aŭ reinstali la firmvaron sur via OpenLog, la jena procezo ekfunkciigos vian tabulon.
  • Unue, bonvolu elŝuti la Arduino IDE v1.6.5. Aliaj versioj de la IDE eble funkcios por kompili la OpenLog-firmvaron, sed ni konfirmis ĉi tion kiel konatan bonan version.
  • Poste, elŝutu la firmvaron OpenLog kaj la bezonatan bibliotekaron.

ELŜUTU OPENLOG FIRMWARE BUNDLE (ZIP)

  • Post kiam vi elŝutis la bibliotekojn kaj firmvaron, instalu la bibliotekojn en Arduino. Se vi ne certas kiel permane instali la bibliotekojn en la IDE, bonvolu rigardi nian lernilon: Instali Arduino-Bibliotekon: Mane Instali Bibliotekon.

Notu:

  • Ni uzas modifitajn versiojn de la bibliotekoj SdFat kaj SerialPort por arbitre deklari kiom grandaj estu la bufroj de sendo kaj ricevo. La OpenLog postulas, ke la sendo-bufro estu tre malgranda (0), kaj la ricevo-bufro estu kiel eble plej granda.
  • Uzi ĉi tiujn du modifitajn bibliotekojn kune permesas pliigitan rendimenton de OpenLog.

Ĉu vi serĉas la plej novajn versiojn?
Se vi preferus la plej ĝisdatajn versiojn de la bibliotekoj kaj firmvaro, vi povas elŝuti ilin rekte el la GitHub-deponejoj ligitaj sube. La bibliotekoj SdFatLib kaj Seria Pordo ne estas videblaj en la Arduino-platadministrilo, do vi devos permane instali la bibliotekon.

  • GitHub: OpenLog > Firmvaro > OpenLog_Firmware
  • La Arduino-bibliotekoj de Bill Greiman
    • SdFatLib-betao
    • SeriaPorto
  • Sekve, por preni avantaĝontage el la modifitaj bibliotekoj, modifu la SerialPort.hh file trovita en la dosierujo \Arduino\Libraries\SerialPort. Ŝanĝu BUFFERED_TX al 0 kaj ENABLE_RX_ERROR_CHECKING al 0. Konservu la file, kaj malfermu la Arduino IDE.
  • Se vi ankoraŭ ne faris tion, konektu vian OpenLog al la komputilo per FTDI-plato. Bonvolu duoble kontroli la ekz.ampla cirkviton se vi ne certas kiel fari tion ĝuste.
  • Malfermu la OpenLog-skizon, kiun vi volas alŝuti, sub la menuo Iloj>Tabulo, elektu "Arduino/Genuino Uno", kaj elektu la ĝustan COM-pordon por via FTDI-tabulo sub Iloj>Pordo.
  • Alŝutu la kodon.
  • Jen tio! Via OpenLog nun estas programita per nova firmvaro. Vi nun povas malfermi serian monitoron kaj interagi kun la OpenLog. Ĉe ŝalto, vi vidos aŭ 12> aŭ 12<. 1 indikas, ke la seria konekto estas establita, 2 indikas, ke la SD-karto sukcese inicialiĝis, < indikas, ke OpenLog pretas registri iujn ajn ricevitajn seriajn datumojn, kaj > indikas, ke OpenLog pretas ricevi komandojn.

Skizoj de OpenLog-firmvaro
Estas tri inkluzivitaj skizoj, kiujn vi povas uzi en OpenLog, depende de via specifa apliko.

  • OpenLog – Ĉi tiu firmvaro defaŭlte venas kun la OpenLog. Sendo de la komando ? montros la firmvaran version ŝarĝitan sur la aparaton.
  • OpenLog_Light – Ĉi tiu versio de la skizo forigas la menuon kaj komandan reĝimon, permesante pliigi la ricevan bufron. Ĉi tio estas bona opcio por altrapida protokolado.
  • OpenLog_Minimal – La baŭdrapido devas esti agordita en la kodo kaj alŝutita. Ĉi tiu skizo estas rekomendinda por spertaj uzantoj sed ankaŭ estas la plej bona elekto por la plej alta rapida registrado.

Komandaro

Vi povas interagi kun la OpenLog per seria terminalo. La jenaj komandoj helpos vin legi, skribi kaj forigi files, kaj ankaŭ ŝanĝi la agordojn de la OpenLog. Vi devos esti en Komanda Reĝimo por uzi la jenajn agordojn.

Dum OpenLog estas en Komanda Reĝimo, STAT1 ŝaltiĝos/malŝaltiĝos por ĉiu ricevita signo. La LED restos ŝaltita ĝis la sekva signo estos ricevita.

  • Nova File – Kreas novan file nomita File en la aktuala dosierujo. Normo 8.3 filenomoj estas subtenataj. Ekzempleampekzemple, “87654321.123” estas akceptebla, dum “987654321.123” ne estas.
    • Example: nova file1.txt
  • Aldoni File – Aldoni tekston al la fino de la FileSeriaj datumoj estas poste legitaj de la UART en fluo kaj aldonitaj al la fileĜi ne estas ripetata super la seria terminalo. Se la File ne ekzistas kiam ĉi tiu funkcio estas vokita, la file estos kreita.
    • Example: aldoni novanfile.csv
  • Skribu File OFSETO – Skribu tekston al la File de la loko OFSET ene de la fileLa teksto estas legata de la UART, linio post linio, kaj resendata. Por eliri el ĉi tiu stato, sendu malplenan linion.
    • Example: skribi protokolojn.txt 516
  • rm File – Forigas la File el la aktuala dosierujo. Ĵokeroj estas subtenataj.
    • Example: rm README.txt
  • grandeco File – Elira grandeco de File en bajtoj.
    • Example: grandeco Log112.csv
    • Eligo: 11
  • Legu File + KOMENCO+ LONGOTIPO – Eligu la enhavon de File komencante de KOMENCO kaj irante por LONGO. Se KOMENCO estas preterlasita, la tuta file estas raportita. Se LENGTH estas preterlasita, la tuta enhavo de la komenca punkto estas raportita. Se TYPE estas preterlasita, la OpenLog defaŭlte raportos en ASCII. Estas tri eligaj TYPE-oj:
    • Askio = 1
    • HEX = 2
    • KRUDA = 3
  • Vi povas preterlasi kelkajn finajn argumentojn. Kontrolu la jenan ekzemplonamples.
  • Baza legado + ellasitaj flagoj:
    • Example: legu LOG00004.txt
    • Eligo: Akcelometro X=12 Y=215 Z=317
  • Legu de komenco 0 kun longo de 5:
    • Example: legu LOG00004.txt 0 5
    • Eligo: Akcelo
  • Legu de pozicio 1 kun longo de 5 en HEX:
    • Example: legu LOG00004.txt 1 5 2
    • Eligo: 63 63 65 6C
  • Legu de pozicio 0 kun longo de 50 en RAW:
    • Example: legu LOG00137.txt 0 50 3
    • Eligo: André– -tch Plilongigita Karaktero-Testo
  • Kato File – Skribu la enhavon de file en deksesuma numero al la seria monitoro por viewing. Tio estas kelkfoje helpema por vidi, ke file registras ĝuste sen devi eltiri la SD-karton kaj view la file en komputilo.
    • Exampdosiero: cat LOG00004.txt
    • Eligo: 00000000: 41 63 65 6c 3a 20 31

Manipulado de dosierujoj

  • ls – Listigas la tutan enhavon de la aktuala dosierujo. Ĵokeroj estas subtenataj.
    • Example: ls
    • Eligo: \src
  • md Subdosierujo – Kreu subdosierujon en la aktuala dosierujo.
    • Example: md Eksample_Sketches
  • cd Subdosierujo – Ŝanĝi al Subdosierujo.
    • Example: cd Saluton_Mondo
  • cd .. – Ŝanĝas al pli malalta dosierujo en la arbo. Notu, ke estas spaco inter 'cd' kaj '..'. Ĉi tio permesas al la tekstanalizilo vidi la komandon CD.
    • Example: ld ..
  • rm Subdosierujo – Forigas subdosierujon. La dosierujo devas esti malplena por ke ĉi tiu komando funkciu.
    • Example: rm temperaturoj
  • rm -rf Dosierujo – Forigas la Dosierujon kaj ajnan files enhavita en ĝi.
    • Example: rm -rf Bibliotekoj

Malaltnivelaj Funkciaj Komandoj

  • ? – Ĉi tiu komando montros liston de disponeblaj komandoj en la OpenLog.
  • Disko - Montru la identigilon de la karto-fabrikisto, serian numeron, fabrikaddaton kaj kartgrandecon. Ekz.ampla eligo estas:
    • Kartotipo: SD2 Fabrikista ID: 3
    • OEM-identigilo: SD
    • Produkto: SU01G
    • Versio: 8.0
    • Seria numero: 39723042 Dato de fabrikado: 1/2010 Kartgrandeco: 965120 KB
  • init – Reinicialigi la sistemon kaj remalfermi la SD-karton. Tio estas helpema se la SD-karto ĉesas respondi.
  • Sinkronigi – Sinkronigas la nunan enhavon de la bufro al la SD-karto. Ĉi tiu komando estas utila se vi havas malpli ol 512 signojn en la bufro kaj volas registri ilin sur la SD-karto.
  • Restarigi – Saltas OpenLog al loko nulo, reekfunkciigas la startigilon, kaj poste la komencan kodon. Ĉi tiu komando estas helpema se vi bezonas redakti la agordon. file, restarigu la OpenLog, kaj komencu uzi la novan agordon. Malŝalti kaj reŝalti la tabulon estas ankoraŭ la preferata metodo por restarigi ĝin, sed ĉi tiu opcio estas havebla.

Sistemaj Agordoj

Ĉi tiuj agordoj povas esti mane ĝisdatigitaj aŭ redaktitaj en la config.txt-dosiero. file.

  • Eĥo STATE – Ŝanĝas la staton de la sistemo, kaj estas konservita en la sistemmemoro. STATE povas esti aŭ ŝaltita aŭ malŝaltita. Dum ŝaltita, OpenLog eĥos ricevitajn seriajn datumojn en la komandlinio. Dum malŝaltita, la sistemo ne relegas ricevitajn signojn.

Notu: Dum normala protokolado, eĥo estos malŝaltita. La bezonoj de la sistemaj rimedoj por eĥi la ricevitajn datumojn estas tro altaj dum la protokolado.

  • Multvorta STATO – Ŝanĝas la staton de multvorta erarraportado. STATO povas esti aŭ ŝaltita aŭ malŝaltita. Ĉi tiu komando estas konservita en memoro. Malŝaltante multvortajn erarojn, OpenLog respondos nur per ! se estas eraro, anstataŭ nekonata komando: C OMMAND.D..T La signoj estas pli facile analizeblaj por enigitaj sistemoj ol la plena eraro. Se vi uzas terminalon, lasi multvortan ŝaltita permesos al vi vidi plenajn erarmesaĝojn.
  • baŭdo – Ĉi tiu komando malfermos sisteman menuon, kiu permesas al la uzanto enigi baŭdrapidecon. Ĉiu baŭdrapideco inter 300 bps kaj 1 Mbps estas subtenata. La elekto de baŭdrapideco estas tuja, kaj la OpenLog postulas ciklon de ŝaltado por ke la agordoj ekvalidu. La baŭdrapideco estas konservita en EEPROM kaj estas ŝargita ĉiufoje kiam OpenLog ŝaltiĝas. La defaŭlto estas 9600 8N1.

Memoru: Se la plato blokiĝas je nekonata baŭdrapido, vi povas ligi RX al GND kaj ŝalti OpenLog. La LED-oj palpebrumos tien kaj reen dum 2 sekundoj kaj poste palpebrumos samtempe. Malŝaltu OpenLog kaj forigu la ĵerzon. OpenLog nun estas restartigita al 9600 bps per premado de la eskap-signon `CTRL-Z` tri sinsekve. Ĉi tiu funkcio povas esti superregita per agordo de la Kriz-Superrega bito al 1. Vidu config.txt por pliaj informoj.

  • Agordi – Ĉi tiu komando malfermas sisteman menuon por elekti la startigan reĝimon. Ĉi tiuj agordoj okazos ĉe la sekva ŝalto kaj estas konservitaj en nevolatila EEPROM.
    • Nova File Protokolado – Ĉi tiu reĝimo kreas novan file ĉiufoje kiam OpenLog ŝaltiĝas. OpenLog sendos 1 (UART funkcias), 2 (SD-karto estas inicialigita), poste < (OpenLog pretas ricevi datumojn). Ĉiuj datumoj estos registritaj en LOG#####.txt. La nombro ##### pliiĝas ĉiufoje kiam OpenLog ŝaltiĝas (la maksimumo estas 65533 protokoloj). La nombro estas konservita en EEPROM kaj povas esti restarigita el la agorda menuo. Ne ĉiuj ricevitaj signoj estas ripetataj. Vi povas forlasi ĉi tiun reĝimon kaj eniri komandan reĝimon sendante CTRL+z (ASCII 26). Ĉiuj bufritaj datumoj estos konservitaj.
  • Notu: Se tro multaj protokoloj estas kreitaj, OpenLog eligos eraron **Tro multaj protokoloj**, eliru el ĉi tiu reĝimo kaj falu al la Komando-Prompto. La seria eligo aspektos kiel `12!Tro multaj protokoloj!
    • Aldoni File Registrado - Ankaŭ konata kiel sinsekva reĝimo, ĉi tiu reĝimo kreas file nomata SEQLOG.txt se ĝi ne jam estas tie, kaj aldonas iujn ajn ricevitajn datumojn al la file. OpenLog sendos 12<, je kiu momento OpenLog pretas ricevi datumojn. Signoj ne estas ripetataj. Vi povas forlasi ĉi tiun reĝimon kaj eniri komandan reĝimon sendante CTRL+z (ASCII 26). Ĉiuj bufritaj datumoj estos konservitaj.
    • Komandpromptilo – OpenLog sendos 12>, je kiu momento la sistemo estos preta ricevi komandojn. Notu, ke la signo > indikas, ke OpenLog pretas ricevi komandojn, ne datumojn. Vi povas krei files kaj aldonu datumojn al files, sed tio postulas iom da seria sintakso (por erarkontrolo), do ni ne agordas ĉi tiun reĝimon defaŭlte.
    • Restarigi Novan File Nombro - Ĉi tiu reĝimo restarigos la protokolon file numeron al LOG000.txt. Tio estas helpema se vi ĵus malplenigis microSD-karton kaj volas la protokolon file nombrojn por rekomenci denove.
    • Nova Eskap-Signo – Ĉi tiu opcio permesas al la uzanto enigi signon, ekzemple CTRL+z aŭ $, kaj agordi ĝin kiel la novan eskap-signon. Ĉi tiu agordo estas restarigita al CTRL+z dum kriza restartigo.
    • Nombro de Eskapaj Signoj – Ĉi tiu opcio permesas al la uzanto enigi signon (kiel ekzemple 1, 3, aŭ 17), ĝisdatigante la novan nombron de eskapaj signoj necesaj por fali al komanda reĝimo. EkzempleampEkzemple, enigi 8 postulos, ke la uzanto premu CTRL+z ok fojojn por atingi komandan reĝimon. Ĉi tiu agordo estas restarigita al 3 dum kriza restartigo.
  • Eskapaj Signoj Klarigo: La kialo, kial OpenLog postulas trifoje premon de `CTRL+z` por eniri komandan reĝimon, estas por malhelpi, ke la tabulo hazarde restartiĝu dum alŝuto de nova kodo el la Arduino IDE. Ekzistas la ebleco, ke la tabulo vidus la signon `CTRL+z` aperonta dum la startigo (problemo, kiun ni vidis en la fruaj versioj de la OpenLog-firmvaro), do ĉi tio celas malhelpi tion. Se vi iam suspektas, ke via tabulo estis brikigita pro tio, vi ĉiam povas fari krizan restartigon tenante la RX-pinglon al tero dum ŝaltado.

Agordo File

Se vi preferas ne uzi la serian terminalon por modifi la agordojn en via OpenLog, vi ankaŭ povas ĝisdatigi la agordojn modifante la CONFIG.TXT-dosieron. file.

Notu: Ĉi tiu funkcio funkcias nur ĉe firmvara versio 1.6 aŭ pli nova. Se vi aĉetis OpenLog post 2012, vi uzos firmvaran version 1.6+.

  • Por fari tion, vi bezonos microSD-kartlegilon kaj tekstredaktilon. Malfermu la config.txt-dosieron. file (la majuskligo de la file nomo ne gravas), kaj agordu for! Se vi neniam antaŭe ŝaltis vian OpenLog per la SD-karto, vi ankaŭ povas permane krei la fileSe vi jam ŝaltis la OpenLog-on kun la microSD-karto enigita antaŭe, vi devus vidi ion similan al la sekvanta kiam vi legas la microSD-karton.SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (15)La OpenLog kreas config.txt kaj LOG0000.txt file ĉe la unua ŝaltado.
  • La defaŭlta agordo file havas unu linion de agordoj kaj unu linion de difinoj.SparkFun-DEV-13712-Partikla-Fotono-Kun-Truoj-Por-Lutado-fig- (16)La defaŭlta agordo file estis verkita de OpenLog.
  • Notu, ke ĉi tiuj estas regulaj videblaj signoj (ne ekzistas nevideblaj aŭ duumaj valoroj), kaj ĉiu valoro estas apartigita per komo.

La agordoj estas difinitaj jene:

  • baŭdo: La baŭdrapido de komunikado. 9600 bps estas la defaŭlto. Akcepteblaj valoroj kongruaj kun la Arduino IDE estas 2400, 4800, 9600, 19200, 38400, 57600, kaj 115200. Vi povas uzi aliajn baŭdrapidojn, sed vi ne povos komuniki kun la OpenLog per la seria monitorilo de Arduino IDE.
  • Escap:e La ASCII-valoro (en decimala formato) de la eskap-signo. 26 estas CTRL+z kaj estas la defaŭlto. 36 estas $ kaj estas ofte uzata eskap-signo.
  • Esc #: La nombro da necesaj eskap-signoj. Defaŭlte, ĝi estas tri, do vi devas premi la eskap-signon tri fojojn por atingi komandan reĝimon. Akcepteblaj valoroj estas de 0 ĝis 254. Agordi ĉi tiun valoron al 0 tute malebligos la kontrolon de eskap-signoj.
  • Reĝimo Sistemreĝimo. OpenLog defaŭlte komenciĝas en Nova Protokolo-reĝimo (0). Akcepteblaj valoroj estas 0 = Nova Protokolo, 1 = Sinsekva Protokolo, 2 = Komanda Reĝimo.
  • Verbo: Multvorta reĝimo. Plilongigitaj (multvortaj) erarmesaĝoj estas ŝaltitaj defaŭlte. Agordi ĉi tion al 1 ŝaltas multvortajn erarmesaĝojn (kiel ekzemple nekonata komando: forigi !). Agordi ĉi tion al 0 malŝaltas multvortajn erarojn, sed respondos per ! se estas eraro. Malŝalti multvortan reĝimon estas oportuna se vi provas trakti erarojn de enigita sistemo.
  • Eĥo: Eĥa reĝimo. Dum en komanda reĝimo, signoj estas ripetataj defaŭlte. Agordi ĉi tion al 0 malŝaltas signo-eĥon. Malŝalti ĉi tion estas oportuna se oni pritraktas erarojn, kaj vi ne volas, ke senditaj komandoj estu ripetataj reen al OpenLog.II
  • iignoreRXEmergency Override. Normale, OpenLog krizos restartigon kiam la RX-pinglo estas malaltigita dum ŝaltado. Agordi ĉi tion al 1 malŝaltos la kontroladon de la RX-pinglo dum ŝaltado. Ĉi tio povas esti helpema por sistemoj, kiuj tenos la RX-linion malaltigita pro diversaj kialoj. Se Emergency Override estas malŝaltita, vi ne povos devigi la aparaton reen al 9600bps, kaj la agordo file estos la sola maniero modifi la baŭdrapidecon.

Kiel OpenLog Modifas la Agordon File
Estas kvin malsamaj situacioj por ke OpenLog modifu la config.txt-dosieron. file.

  • Agordo file trovita: Dum ŝaltado, OpenLog serĉos config.txt-dosieron file. Se la file estas trovita, OpenLog uzos la inkluzivitajn agordojn kaj anstataŭigos iujn ajn antaŭe konservitajn sistemajn agordojn.
  • Neniu agordo file trovita: Se OpenLog ne povas trovi la config.txt-dosieron file tiam OpenLog kreos config.txt kaj registros la nuntempe konservitajn sistemajn agordojn en ĝi. Tio signifas, ke se vi enmetas nove formatitan microSD-karton, via sistemo konservos siajn nunajn agordojn.
  • Korupta agordo file trovita: OpenLog forigos la koruptitan config.txt-dosieron file, kaj reskribos kaj la internajn EEPROM-agordojn kaj la config.txt-agordojn file al la konata-bona stato de 9600,26,3,0,1,1,0.
  • Malpermesitaj valoroj en agordo fileSe OpenLog malkovras iujn ajn agordojn enhavantajn kontraŭleĝajn valorojn, OpenLog anstataŭigos la koruptitajn valorojn en config.txt file kun la nuntempe konservitaj EEPROM-sistemagordoj.
  • Ŝanĝoj per la komandlinio: Se la sistemaj agordoj estas ŝanĝitaj per la komandlinio (ĉu per seria konekto aŭ per seriaj komandoj de la mikroregilo), tiuj ŝanĝoj estos registritaj kaj en la sistema EEPROM kaj en la config.txt-dosiero. file.
  • Kriza Rekomencigo: Se la OpenLog estas reŝaltita per konektilo inter RX kaj GND, kaj la Kriza Superregado-bito estas agordita al 0 (permesante krizan rekomencigon), OpenLog reskribos kaj la internajn EEPROM-agordojn kaj la config.txt-agordojn. file al la konata-bona stato de 9600,26,3,0,1,1,0.

Solvado de problemoj

Estas pluraj malsamaj ebloj por kontroli ĉu vi havas problemojn konektiĝi per la seria monitoro, problemojn kun perditaj signoj en protokoloj, aŭ batalas kontraŭ brikigita OpenLog.

Kontrolu la konduton de STAT1 LED
La LED-lumo STAT1 montras malsaman konduton por du malsamaj oftaj eraroj.

  • 3 Palpebrumoj: La microSD-karto malsukcesis inicialiĝi. Eble necesas formatigi la karton per FAT/FAT16 sur komputilo.
  • 5 Palpebrumoj: OpenLog ŝanĝiĝis al nova baŭdrapido kaj bezonas esti reŝaltita.

Duobla Kontrolo de Subdosieruja Strukturo

  • Se vi uzas la defaŭltan OpenLog.ino ekz.ampekzemple, OpenLog subtenos nur du subdosierujojn. Vi devos ŝanĝi FOLDER_TRACK_DEPTH de 2 al la nombro da subdosierujoj, kiujn vi bezonas subteni. Post kiam vi faris tion, rekompilu la kodon kaj alŝutu la modifitan firmvaron.
  • Kontrolu la nombron de Files en la Radika Dosierujo
  • OpenLog nur subtenos ĝis 65,534 XNUMX protokolojn files en la radika dosierujo. Ni rekomendas reformatigi vian microSD-karton por plibonigi la registradan rapidon.
  • Kontrolu la grandecon de via modifita firmvaro
  • Se vi skribas kutiman skizon por la OpenLog, kontrolu, ke via skizo ne estas pli granda ol 32,256 500. Se jes, ĝi tranĉos en la suprajn XNUMX bajtojn de fulmmemoro, kiun uzas la seria startigilo Optiboot.
  • Duobla Kontrolo File Nomoj
  • Ĉiuj file nomoj estu alfa-numeraj. MyLOG1.txt estas en ordo, sed Hi !e _ .txtt eble ne funkcios.
  • Uzu 9600 baŭdojn
  • OpenLog funkcias per la ATmega328 kaj havas limigitan kvanton da RAM (2048 bajtoj). Kiam vi sendas seriajn signojn al OpenLog, ĉi tiuj signoj estas bufritaj. La SD-Grupa Simpligita Specifo permesas al SD-karto bezoni ĝis 250ms (sekcio 4.6.2.2 Skribo) por registri datenblokon al fulmmemoro.
  • Je 9600 bps, tio estas 960 bajtoj (10 bitoj por bajto) por sekundo. Tio estas 1.04 ms por bajto. OpenLog nuntempe uzas 512-bajtan ricevan bufron, do ĝi povas bufri ĉirkaŭ 50 ms da signoj. Ĉi tio permesas al OpenLog sukcese ricevi ĉiujn signojn venantajn je 9600 bps. Ju pli vi pliigas la baŭdrapidecon, la bufro daŭros malpli longe.

MalfermaRegistra Bufro-Superkuro-Tempo

Baudrapideco Tempo po bajto Tempo Ĝis Bufro estas Troŝarĝita
9600bps 1.04 ms 532 ms
57600bps 0.174 ms 88 ms
115200bps 0.087 ms 44 ms

Multaj SD-kartoj havas pli rapidan registrotempon ol 250ms. Ĉi tion povas influi la 'klaso' de la karto kaj kiom da datumoj jam estas stokitaj sur la karto. La solvo estas uzi pli malaltan baŭdrapidecon aŭ pliigi la tempon inter la signoj senditaj je la pli alta baŭdrapideco.

Formatu vian MicroSD-karton
Memoru uzi karton kun malmultaj aŭ neniuj files sur ĝi. MicroSD-karto kun 3.1GB da ZIP-kodo files aŭ MP3-dosieroj havas pli malrapidan respondotempon ol malplena karto. Se vi ne formatis vian microSD-karton per Vindoza operaciumo, reformatigu la microSD-karton kaj kreu DOS-dosieron. filesistemo sur la SD-karto.
Interŝanĝi MicroSD-kartojn
Ekzistas multaj malsamaj specoj de kartfabrikistoj, renomitaj kartoj, kartgrandecoj kaj kartklasoj, kaj ili eble ne ĉiuj funkcias ĝuste. Ni tipe uzas 8GB-an mikroSD-karton de klaso 4, kiu bone funkcias je 9600 bps. Se vi bezonas pli altajn baŭdrapidecojn aŭ pli grandan stokan spacon, vi eble volas provi kartojn de klaso 6 aŭ pli altajn.
Aldoni Prokrastojn Inter Skriboj de Karakteroj
Aldonante malgrandan prokraston inter Serial.print() deklaroj, vi povas doni al OpenLog ŝancon registri sian nunan bufron.
Por ekzample:
  • Serial.begin(115200);
    por (int i = 1 ; i < 10 ; i++) { Seria.print(i, DEC); Seria.println(":abcdefghijklmnopqrstuvwxyz-!#"); }

eble ne registriĝos ĝuste, ĉar multaj signoj estas sendataj tuj apud unu la alian. Enmeto de malgranda prokrasto de 15ms inter skriboj de grandaj signoj helpos OpenLog registri sen perdi signojn.

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

Aldoni Kongruecon kun Arduino Seria Monitoro

Se vi provas uzi OpenLog kun la enkonstruita seria biblioteko aŭ la SoftwareSerial biblioteko, vi eble rimarkos problemojn kun la komanda reĝimo. Serial.println() sendas kaj novlinian KAJ ĉarrevenan komandon. Ekzistas du alternativaj komandoj por solvi ĉi tion.

La unua estas uzi la komandon \r (ASCII-ĉaroreveno):
Seria.presi("TEKSTO\r");

Alternative, vi povas sendi la valoron 13 (decimala ĉarreveno):

  • Seria.presi("TEKSTO");
  • Seria.skribi(13);

Urĝa Restarigo

Memoru, se vi bezonas restarigi la OpenLog al defaŭlta stato, vi povas restarigi la platon ligante la RX-pinglon al GND, ŝaltante la OpenLog, atendante ĝis la LED-oj komencos palpebrumi samtempe, kaj poste malŝaltante la OpenLog kaj forigante la jumperon.
Se vi ŝanĝis la pecon de Kriza Superregado al 1, vi devos modifi la agordon. file, ĉar la Kriza Rekomencigo ne funkcios.

Kontrolu kun la Komunumo

Se vi ankoraŭ havas problemojn kun via OpenLog, bonvolu kontroli la nunajn kaj fermitajn problemojn en nia GitHub-deponejo ĉi tie. Ekzistas granda komunumo laboranta kun OpenLog, do estas probable, ke iu trovis solvon por la problemo, kiun vi vidas.

Rimedoj kaj Plua Irado

Nun kiam vi sukcese registris datumojn per via OpenLog, vi povas starigi malproksimajn projektojn kaj monitori ĉiujn eblajn alvenantajn datumojn. Konsideru krei vian propran Civitanan Sciencan projekton, aŭ eĉ dorlotbestan spurilon por vidi kion Fluffy faras kiam li/ŝi estas ekstere!
Rigardu ĉi tiujn pliajn rimedojn por solvi problemojn, helpi aŭ inspiri vin por via sekva projekto.

  • MalfermaLog GitHub
  • Illumitune-Projekto
  • Konekto al LilyPad-lumsensilo
  • BadgerHack: Aldonaĵo por Grunda Sensilo
  • Komencante kun OBD-II
  • Vernier Photogate

Ĉu vi bezonas pli da inspiro? Rigardu kelkajn el ĉi tiuj rilataj lerniloj:

  • Fotona Malproksima Akvonivela Sensilo
    Lernu kiel konstrui malproksiman akvonivelan sensilon por akvotanko kaj kiel aŭtomatigi pumpilon bazitan sur la legaĵoj!
  • Gvidilo pri la Projekto de Blynk Board
    Serio de Blynk-projektoj, kiujn vi povas starigi sur la Blynk-tabulo sen iam ajn reprogrami ĝin.
  • Registrado de datumoj en Google Sheets per Tessel 2
    Ĉi tiu projekto klarigas kiel registri datumojn en Google Sheets laŭ du manieroj: uzante IFTTT kun web konekto aŭ USB-memorilo kaj “sneakernet” sen.
  • Grafeaj Sensilaj Datumoj per Python kaj Matplotlib
    Uzu matplotlib por krei realtempan grafikaĵon de temperaturdatumoj kolektitaj de TMP102-sensilo konektita al Raspberry Pi.

Se vi havas iujn ajn komentojn pri lerniloj, bonvolu viziti la komentojn aŭ kontakti nian teknikan subtenan teamon ĉe Teknika Subteno@sparkfun.com.

Oftaj Demandoj

Kio estas la rekomendinda potenco-enigo por la OpenLog?

La rekomendinda potenca enigo por la OpenLog estas inter 3.3V kaj 5V.

Kiom da kurento konsumas la OpenLog kiam ĝi estas neaktiva?

La OpenLog konsumas proksimume 2mA ĝis 5mA kiam ĝi estas neaktiva sen microSD-karto, kaj ĉirkaŭ 5mA ĝis 6mA kiam microSD-karto estas enigita.

Kio estas la celo de la microSD USB-konekto al la OpenLog?

La microSD USB-legilo ebligas facilan translokigon de datumoj de la microSD-karto uzata kun la OpenLog al komputilo.

Dokumentoj/Rimedoj

SparkFun DEV-13712 Partikla Fotono Kun Truoj Por Lutado [pdf] Uzantogvidilo
DEV-13712, DEV-13955, DEV-13712 Partikla Fotono Kun Truoj Por Lutado, DEV-13712, Partikla Fotono Kun Truoj Por Lutado, Truoj Por Lutado, Por Lutado, Lutado

Referencoj

Lasu komenton

Via retadreso ne estos publikigita. Bezonataj kampoj estas markitaj *