OpenLog Hookup Guide
Pambuka
Kepala munggah! Tutorial iki kanggo Open Log kanggo serial UART [DEV-13712]. Yen sampeyan nggunakake Qwiic OpenLog kanggo IC [DEV-15164], waca Qwiic OpenLog Hookup Guide.
OpenLog Data Logger minangka solusi open-source sing gampang digunakake kanggo ngangkut data serial saka proyek sampeyan. OpenLog menehi antarmuka serial prasaja kanggo log data saka project menyang kertu microSD.SparkFun OpenLog
• DEV-13712SparkFun OpenLog karo Header
• DEV-13955
ora ana produk sing ditemokake
Bahan sing dibutuhake
Kanggo ngrampungake tutorial iki, sampeyan butuh bagean ing ngisor iki. Sampeyan bisa uga ora mbutuhake kabeh gumantung saka apa sing sampeyan duwe. Tambahake menyang cart, waca pandhuan, lan atur troli yen perlu.
OpenLog Hookup Guide SparkFun Wish List
![]() |
Arduino Pro Mini 328 – 3.3V/8MHz DEV-11114 Iku biru! Iku tipis! Iku Arduino Pro Mini! Pendekatan desain minimal SparkFun kanggo Arduino. Iki minangka Arduino 3.3V… |
![]() |
SparkFun FTDI Breakout Dasar - 3.3V DEV-09873 Iki minangka revisi paling anyar saka [FTDI Basic](http://www.sparkfun.com/commerce/product_info.php?products_id=… |
![]() |
Kabel USB SparkFun Cerberus – 6ft CAB-12016 Sampeyan duwe kabel USB sing salah. Ora masalah sing sampeyan duwe, sing salah. Nanging kepiye yen sampeyan bisa… |
![]() |
SparkFun OpenLog DEV-13712 SparkFun OpenLog minangka logger data open source sing bisa digunakake liwat sambungan serial sing prasaja lan ndhukung… |
![]() |
Kertu microSD karo Adaptor - 16GB (Kelas 10) COM-13833 Iki minangka kertu memori microSD kelas 10 16GB, sampurna kanggo sistem operasi omah kanggo komputer papan tunggal… |
![]() |
MicroSD USB Reader COM-13004 Iki minangka maca USB microSD cilik sing apik tenan. Cukup geser kertu microSD menyang njero konektor USB, t… |
![]() |
Headers wadon PRT-00115 Baris tunggal 40-bolongan, header wadon. Bisa dipotong kanthi ukuran kanthi sepasang pemotong kawat. Standar .1″ spasi. Kita nggunakake… |
![]() |
Jumper Wires Premium 6″ M/M Paket 10 PRT-08431 Iki eksklusif SparkFun! Iki minangka jumper dawa 155mm kanthi konektor lanang ing ujung loro. Gunakake iki kanggo… |
![]() |
Break Away Male Header - Sudut Kanan PRT-00553 Baris header lanang sudut tengen - break pas. 40 pin sing bisa dipotong kanggo ukuran apa wae. Digunakake karo PCB khusus utawa gen… |
Disaranake Wacan
Yen sampeyan ora menowo utawa nyaman karo konsep ing ngisor iki, disaranake maca liwat iki sadurunge nerusake karo OpenLog Hookup Guide.
Carane Solder: liwat-Hole Soldering
Tutorial iki nyakup kabeh sing sampeyan kudu ngerti babagan solder liwat bolongan.
Serial Peripheral Interface (SPI)
SPI umume digunakake kanggo nyambungake mikrokontroler menyang periferal kayata sensor, register shift, lan kertu SD.
Komunikasi Serial
Konsep komunikasi serial Asynchronous: paket, tingkat sinyal, baud rate, UART lan liyane!
Dasar Terminal Serial
Tutorial iki bakal nuduhake sampeyan carane komunikasi karo piranti serial nggunakake macem-macem aplikasi terminal emulator.
Hardware Overview
daya
OpenLog mlaku ing setelan ing ngisor iki:
Rating Daya OpenLog
Input VCC | 3.3V-12V (Disaranake 3.3V-5V) |
Input RXI | 2.0V-3.8V |
Output TXO | 3.3V |
Draw Saiki Idle | ~2mA-5mA (tanpa kertu microSD), ~5mA-6mA (kartu microSD) |
Nulis Aktif Draw Saiki | ~ 20-23mA (w/ kertu microSD) |
Gambar OpenLog saiki kira-kira 20mA nganti 23mA nalika nulis menyang microSD. Gumantung saka ukuran kertu microSD lan pabrikan, gambar saiki aktif bisa beda-beda nalika OpenLog nulis menyang kertu memori. Nambah tingkat baud uga bakal narik luwih akeh saiki.
Mikrokontroler
OpenLog mbukak saka ATmega328 onboard, mlaku ing 16MHz thanks kanggo kristal onboard. ATmega328 nduweni bootloader Optiboot sing dimuat, sing ngidini OpenLog kompatibel karo setelan papan "Arduino Uno" ing Arduino IDE.Antarmuka
Serial UART
Antarmuka utama karo OpenLog yaiku header FTDI ing pinggir papan. Header iki dirancang kanggo plug langsung menyang Arduino Pro utawa Pro Mini, sing ngidini mikrokontroler ngirim data liwat sambungan serial menyang OpenLog.
Pènget! Amarga saka pesenan pin sing ndadekake iku kompatibel karo Arduinos, iku ora bisa plug langsung menyang Papan breakout FTDI. Kanggo informasi luwih lengkap, priksa manawa sampeyan mriksa bagean sabanjure ing Hardware Hookup.
SPI
Ana uga papat titik test SPI pecah ing mburi ngelawan saka Papan. Sampeyan bisa nggunakake iki kanggo reprogram bootloader ing ATmega328.OpenLog paling anyar (DEV-13712) ngilangi pin kasebut ing bolongan cilik sing dilapisi. Yen sampeyan kudu nggunakake ISP kanggo reprogram utawa upload bootloader anyar kanggo OpenLog, sampeyan bisa nggunakake pin pogo kanggo nyambung menyang titik test iki.
Antarmuka pungkasan kanggo komunikasi karo OpenLog yaiku kertu microSD dhewe. Kanggo komunikasi, kertu microSD mbutuhake pin SPI. Ora mung iki ngendi data disimpen dening OpenLog, nanging sampeyan uga bisa nganyari konfigurasi OpenLog liwat config.txt. file ing kertu microSD.
Kertu microSD
Kabeh data sing dicathet dening OpenLog disimpen ing kertu microSD. OpenLog bisa digunakake karo kertu microSD sing kalebu fitur ing ngisor iki:
- 64MB nganti 32GB
- FAT16 utawa FAT32
LED Status
Ana rong status LED ing OpenLog kanggo mbantu ngatasi masalah.
- STAT1 - LED indikator biru iki dipasang ing Arduino D5 (ATmega328 PD5) lan mateni / mateni nalika karakter anyar ditampa. LED iki kedhip nalika komunikasi Serial bisa digunakake.
- STAT2 - LED ijo iki disambungake menyang Arduino D13 (SPI Serial Clock Line / ATmega328 PB5). LED iki mung kedhip nalika antarmuka SPI aktif. Sampeyan bakal weruh lampu kilat nalika OpenLog ngrekam 512 bait menyang kertu microSD.
Hardware Hookup
Ana rong cara utama kanggo nyambungake OpenLog menyang sirkuit. Sampeyan mbutuhake sawetara header utawa kabel kanggo nyambungake. Priksa manawa sampeyan solder menyang Papan kanggo sambungan aman.
Sambungan Serial dhasar
Tip: Yen sampeyan duwe header wadon OpenLog lan header wadon ing FTDI sampeyan kudu kabel jumper M/F kanggo nyambung.
Sambungan hardware iki dirancang kanggo interfacing karo OpenLog yen sampeyan kudu reprogram Papan, utawa log data liwat sambungan serial dhasar.
Nggawe sambungan ing ngisor iki:
OpenLog → 3.3V FTDI Breakout Dasar
- GND → GND
- GND → GND
- VCC → 3.3V
- TXO → RXI
- RXI → TXO
- DTR → DTR
Elinga yen iku dudu sambungan langsung antarane FTDI lan OpenLog - sampeyan kudu ngalih sambungan pin TXO lan RXI.
Sambungan sampeyan kudu katon kaya ing ngisor iki: Sawise sampeyan duwe sambungan antarane OpenLog lan FTDI Basic, pasang papan FTDI menyang kabel USB lan menyang komputer.
Bukak terminal serial, nyambung menyang port COM saka FTDI Basic, lan menyang kutha!
Sambungan Hardware Proyek
Tip: Yen sampeyan duwe header wadon soldered ing OpenLog, sampeyan bisa solder header lanang menyang Arduino Pro Mini kanggo plug Papan bebarengan tanpa perlu kabel.Nalika interfacing karo OpenLog liwat sambungan serial penting kanggo reprogramming utawa debugging, Panggonan ngendi OpenLog cemlorot ing project ditempelake. Sirkuit umum iki cara disaranake sampeyan nyambungake OpenLog menyang mikrokontroler (ing kasus iki, Arduino Pro Mini) sing bakal nulis data serial menyang OpenLog.
Pisanan sampeyan kudu ngunggah kode menyang Pro Mini sing arep ditindakake. Mangga dipriksa Sketsa Arduino kanggo sawetara Example kode sing bisa digunakake.
Cathetan: Yen sampeyan ora yakin carane program Pro Mini, bukak tutorial kita kene.
Nggunakake Arduino Pro Mini 3.3V
Tutorial iki minangka pandhuan kanggo kabeh Arduino Pro Mini. Iki nerangake apa iku, apa ora, lan carane miwiti nggunakake.
Sawise sampeyan wis diprogram Pro Mini, sampeyan bisa mbusak Papan FTDI, lan ngganti karo OpenLog.
Priksa manawa sampeyan nyambungake lencana kanthi label BLK ing Pro Mini lan OpenLog (pin sing dilabel GRN ing loro kasebut uga cocog yen wis rampung kanthi bener).
Yen sampeyan ora bisa plug OpenLog langsung menyang Pro Mini (amarga header mismatched utawa Papan liyane ing dalan), sampeyan bisa nggunakake kabel jumper lan nggawe sambungan ing ngisor iki.
OpenLog → Arduino Pro/Arduino Pro Mini
- GND → GND
- GND → GND
- VCC → VCC
- TXO → RXI
- RXI → TXO
- DTR → DTR
Yen wis rampung, sambungan sampeyan kudu katon kaya ing ngisor iki karo Arduino Pro Mini lan Arduino Pro.
Diagram Fritzing nuduhake OpenLogs kanthi header kaca. Yen sampeyan loncat karo muter awak soket microSD relatif menyang ndhuwur Arduino kang view, kudu cocog karo header pemrograman kaya FTDI.
Cathetan sing sambungan punika dijupuk terus karo OpenLog "mudhun" (karo microSD madhep munggah).
⚡ Cathetan: Wiwit Vcc lan GND ing antarane OpenLog lan Arduino lagi dikuwasani dening header, sampeyan kudu nyambungake daya menyang pin liyane sing kasedhiya ing Arduino. Yen ora, sampeyan bisa solder kabel menyang pin daya kapapar ing salah siji Papan.
Daya munggah sistem, lan sampeyan siyap kanggo miwiti log!
Sketsa Arduino
Ana enem mantan bedaamples sketsa klebu sing bisa digunakake ing Arduino nalika disambungake menyang OpenLog.
- OpenLog_Benchmarking - Iki example digunakake kanggo nyoba OpenLog. Iki ngirim akeh banget data ing 115200bps liwat sawetara files.
- OpenLog_CommandTest - Iki example nuduhake carane nggawe lan append a file liwat kontrol baris printah liwat Arduino.
- OpenLog_ReadExample - Iki mantanample mlaku liwat carane ngontrol OpenLog liwat baris printah.
- OpenLog_ReadExample_GedheFile — Example saka carane mbukak gedhe disimpen file ing OpenLog lan laporake liwat sambungan bluetooth lokal.
- OpenLog_Test_Sketch - Digunakake kanggo nguji OpenLog kanthi akeh data serial.
- OpenLog_Test_Sketch_Binary - Digunakake kanggo nyoba OpenLog nganggo data binar lan karakter uwal.
Firmware
OpenLog duwe rong piranti lunak utama ing papan: bootloader lan firmware.
Arduino Bootloader
Cathetan: Yen sampeyan nggunakake OpenLog sing dituku sadurunge Maret 2012, bootloader onboard kompatibel karo setelan "Arduino Pro utawa Pro Mini 5V / 16MHz w / ATmega328" ing Arduino IDE.
Kaya sing wis kasebut sadurunge, OpenLog duwe bootloader serial Optiboot ing papan. Sampeyan bisa nambani OpenLog kaya Arduino Uno nalika upload exampkode le utawa perangkat kukuh anyar kanggo Papan.
Yen sampeyan mungkasi mbukak OpenLog lan kudu nginstal maneh bootloader, sampeyan uga pengin ngunggah Optiboot menyang papan. Mangga deleng tutorial babagan nginstal Arduino Bootloader kanggo informasi luwih lengkap.
Kompilasi lan Loading Firmware menyang OpenLog
Cathetan: Yen iki pisanan sampeyan nggunakake Arduino, please review tutorial kita nginstal Arduino IDE. Yen sampeyan durung nginstal perpustakaan Arduino sadurunge, priksa pandhuan instalasi kanggo nginstal perpustakaan kanthi manual.
Yen ana alesan sampeyan kudu nganyari utawa nginstal maneh perangkat kukuh ing OpenLog, proses ing ngisor iki bakal mbukak lan mbukak papan sampeyan.
Pisanan, mangga download Arduino IDE v1.6.5. Versi liyane saka IDE bisa uga kanggo ngumpulake perangkat kukuh OpenLog, nanging kita wis verifikasi iki minangka versi apik dikenal.
Sabanjure, download perangkat kukuh OpenLog lan bundel perpustakaan sing dibutuhake.
UNDUH OPENLOG FIRMWARE BUNDLE (ZIP)
Sawise perpustakaan lan perangkat kukuh diundhuh, instal perpustakaan menyang Arduino. Yen sampeyan ora yakin carane nginstal perpustakaan kanthi manual ing IDE, priksa tutorial kita: Nginstal Pustaka Arduino: Nginstal Pustaka kanthi Manual.
Cathetan: Kita nggunakake versi modifikasi saka perpustakaan SdFat lan SerialPort supaya bisa ngumumake kanthi sewenang-wenang sepira gedhene buffer TX lan RX. OpenLog mbutuhake buffer TX cilik banget (0) lan buffer RX kudu dadi gedhe. Nggunakake rong perpustakaan sing diowahi iki bebarengan ngidini nambah kinerja OpenLog.
Nggolek Versi Paling Anyar? Yen sampeyan luwih seneng versi perpustakaan lan perangkat kukuh sing paling anyar, sampeyan bisa ndownload langsung saka gudang GitHub sing disambung ing ngisor iki. Pustaka SdFatLib lan Serial Port ora katon ing manajer papan Arduino dadi sampeyan kudu nginstal perpustakaan kanthi manual.
- GitHub: OpenLog > Firmware > OpenLog_Firmware
- Pustaka Arduino Bill Greiman
SdFatLib-beta
SerialPort
Sabanjure, kanggo njupuk advantage saka perpustakaan dipunéwahi, ngowahi SerialPort.h file ditemokaké ing \ Arduino \ Libraries \ SerialPort direktori. Ganti BUFFERED_TX dadi 0 lan ENABLE_RX_ERROR_CHECKING dadi 0. Simpen ing file, lan mbukak Arduino IDE.
Yen durung, sambungake OpenLog menyang komputer liwat papan FTDI. Mangga priksa mantanample sirkuit yen sampeyan ora yakin carane nindakake iki bener.
Bukak sketsa OpenLog sing pengin diunggah ing menu Tools> Board, pilih "Arduino / Genuino Uno", banjur pilih port COM sing tepat kanggo papan FTDI ing Tools> Port.
Unggah kode.
Mekaten! OpenLog sampeyan saiki wis diprogram nganggo perangkat kukuh anyar. Sampeyan saiki bisa mbukak monitor serial lan sesambungan karo OpenLog. Nalika daya munggah, sampeyan bakal weruh 12> utawa 12< . 1 nuduhake sambungan serial ditetepake, 2 nuduhake kertu SD wis kasil initialized, <nuduhake OpenLog siyap kanggo log data serial ditampa lan> nuduhake OpenLog siap nampa printah.
Sketsa Firmware OpenLog
Ana telung sketsa sing bisa digunakake ing OpenLog, gumantung saka aplikasi tartamtu.
- OpenLog - Perangkat kukuh iki dikirim kanthi standar ing OpenLog. Ngirim? printah bakal nuduhake versi perangkat kukuh dimuat menyang unit.
- OpenLog_Light - Versi sketsa iki mbusak menu lan mode printah, saéngga buffer nampa tambah. Iki minangka pilihan sing apik kanggo logging kacepetan dhuwur.
- OpenLog_Minimal - Tingkat baud kudu disetel ing kode lan diunggah. Sketsa iki dianjurake kanggo pangguna sing berpengalaman nanging uga minangka pilihan sing paling apik kanggo logging kacepetan paling dhuwur.
Set Komando
Sampeyan bisa antarmuka karo OpenLog liwat terminal serial. Prentah ing ngisor iki bakal mbantu sampeyan maca, nulis, lan mbusak files, uga ngganti setelan OpenLog. Sampeyan kudu ing Mode Command supaya bisa nggunakake setelan ing ngisor iki.
Nalika OpenLog ana ing Mode Komando, STAT1 bakal ngaktifake / mateni saben karakter sing ditampa. LED bakal tetep urip nganti karakter sabanjure ditampa.
File Manipulasi
- anyar File – Nggawe anyar file jenenge File ing direktori saiki. Standar 8.3 filejeneng didhukung.
Kanggo example, "87654321.123" ditrima, nalika "987654321.123" ora.
• Example: anyar file1.txt - nambahi File - Tambah teks menyang mburi File. Data serial banjur diwaca saka UART ing stream lan nambah menyang file. Iku ora echoed liwat terminal serial. Yen File ora ana nalika fungsi iki disebut, ing file bakal digawe.
• Example: nambah anyarfile.csv - nulis File OFFSET - Tulis teks menyang File saka lokasi OFFSET ing file. Teks diwaca saka UART, baris demi baris lan dikumakake maneh. Kanggo metu saka negara iki, ngirim baris kosong.
• Example: nulis log.txt 516 - rm File – Mbusak File saka direktori saiki. Wildcards didhukung.
• Example: rm README.txt - ukuran File - Ukuran output saka File ing bita.
• Example: ukuran Log112.csv
• Output: 11 - maca File + START + TYPE LENGTH - Output isi saka File wiwit saka START lan arep kanggo LENGTH.
Yen START diilangi, kabeh file kacarita. Yen LENGTH diilangi, kabeh isi saka titik wiwitan dilaporake. Yen TYPE diilangi, OpenLog bakal dadi standar kanggo nglaporake ing ASCII. Ana telung TYPE output:
• ASCII = 1
• HEX = 2
• RAW = 3
Sampeyan bisa ninggalake sawetara argumentasi mburi. Priksa ex ing ngisor ikiamples.
Waca dhasar + gendera sing diilangi:
• Example: maca LOG00004.txt
• Output: Akselerometer X=12 Y=215 Z=317
Waca saka wiwitan 0 kanthi dawane 5:
• Example: maca LOG00004.txt 0 5
• Output: Accel
Waca saka posisi 1 kanthi dawa 5 ing HEX:
• Example: maca LOG00004.txt 1 5 2
• Output: 63 63 65 6C - Waca saka posisi 0 kanthi dawane 50 ing RAW:
- • Example: maca LOG00137.txt 0 50 3
- • Output: André– -þ Extended Karakter Test
- kucing File – Tulisen isine a file ing hex kanggo monitor serial kanggo viewing. Iki kadhangkala mbiyantu kanggo ndeleng sing a file ngrekam bener tanpa kudu narik kertu SD lan view ing file ing komputer.
• Example: kucing LOG00004.txt
• Output: 00000000: 41 63 65 6c 3a 20 31
Manipulasi Direktori
- ls - Dhaptar kabeh isi direktori saiki. Wildcards didhukung.
• Example: ls
• Output: \src - md Subdirektori - Nggawe Subdirektori ing direktori saiki.
• Example: md Example_Sketsa - cd Subdirektori - Ganti menyang Subdirektori.
• Example: cd Hello_World - cd .. – Ganti direktori ngisor ing wit. Elinga yen ana spasi ing antarane 'cd' lan '..'. Iki ngidini parser senar kanggo ndeleng printah cd.
• Examplan: cd.. - rm Subdirektori - Mbusak Subdirektori. Direktori kudu kosong supaya printah iki bisa digunakake.
• Example: rm suhu - rm -rf Direktori - Mbusak Direktori lan sembarang files sing ana ing.
• Example: rm -rf Pustaka
Prentah Fungsi Tingkat Rendah
- ? - Printah iki bakal narik dhaptar printah sing kasedhiya ing OpenLog.
- disk - Tampilake ID pabrikan kertu, nomer seri, tanggal pabrik lan ukuran kertu. Exampoutput punika:
Jinis kertu: SD2
ID Produsen: 3
OEM ID: SD
Produk: SU01
Versi: 8.0
Nomer Seri: 39723042
Tanggal produksi: 1/2010
Ukuran kertu: 965120 KB - init - Reinitialize sistem lan mbukak maneh kertu SD. Iki mbiyantu yen kertu SD mandheg nanggapi.
- sinkronisasi - Nyelarasake isi saiki buffer menyang kertu SD. Printah iki migunani yen sampeyan duwe kurang saka 512 karakter ing buffer lan pengin ngrekam ing kertu SD.
- reset - Mlumpat OpenLog menyang lokasi nol, mbukak bootloader banjur kode init. Printah iki mbiyantu yen sampeyan kudu ngowahi konfigurasi file, ngreset OpenLog lan miwiti nggunakake konfigurasi anyar. Power cycling isih cara sing disenengi kanggo ngreset papan, nanging pilihan iki kasedhiya.
Setelan Sistem
Setelan iki bisa dianyari kanthi manual, utawa diowahi ing config.txt file.
- echo STATE - Ngganti status echo sistem, lan disimpen ing memori sistem. STATE bisa urip utawa mati. Nalika ing , OpenLog bakal echo nampa data serial ing command prompt. Nalika mati, sistem ora maca maneh karakter sing ditampa.
Cathetan: Sajrone logging normal, gema bakal dipateni. Panjaluk sumber daya sistem kanggo mbaleni data sing ditampa dhuwur banget nalika logging. - verbose STATE - Ngganti negara laporan kesalahan verbose. STATE bisa urip utawa mati. Printah iki disimpen ing memori. Kanthi mateni kasalahan verbose, OpenLog bakal nanggapi mung! yen ana kesalahan tinimbang prentah sing ora dingerteni: COMMAND. Ing ! karakter luwih gampang kanggo sistem ditempelake kanggo parse saka kesalahan lengkap. Yen sampeyan nggunakake terminal, ninggalake verbose ing bakal ngidini sampeyan ndeleng pesen kesalahan lengkap.
- baud - Printah iki bakal mbukak menu sistem sing ngidini pangguna ngetik tingkat baud. Sembarang baud rate antarane 300bps lan 1Mbps didhukung. Pilihan baud rate langsung, lan OpenLog mbutuhake siklus daya supaya setelan bisa ditrapake. Tingkat baud disimpen ing EEPROM lan dimuat saben wektu OpenLog mbukak. Standar yaiku 9600 8N1.
Elingi: Yen sampeyan njaluk Papan macet ing tingkat baud dingerteni, sampeyan bisa dasi RX kanggo GND lan daya OpenLog. LED bakal kedhip bolak-balik sajrone 2 detik lan banjur bakal kedhip bebarengan. Daya mudhun OpenLog, lan mbusak jumper. OpenLog saiki direset menyang 9600bps kanthi karakter uwal `CTRL-Z` dipencet kaping telu berturut-turut. Fitur iki bisa diganti kanthi nyetel bit Darurat Override dadi 1.
Waca config.txt kanggo info liyane.
- set - Printah iki mbukak menu sistem kanggo milih mode boot munggah. Setelan iki bakal kelakon ing
• sabanjuré daya-on lan disimpen ing EEPROM non-molah malih. Anyar File Logging - Mode iki nggawe anyar file saben wektu OpenLog daya munggah. OpenLog bakal ngirim 1 (UART urip), 2 (kertu SD diinisialisasi), banjur < (OpenLog siap nampa data). Kabeh data bakal direkam menyang LOG#####.txt . Nomer ##### mundhak saben OpenLog kakuwasan (maks 65533 log). Nomer kasebut disimpen ing EEPROM lan bisa direset saka menu set.
Kabeh karakter ditampa ora echoed. Sampeyan bisa metu saka mode iki lan ngetik mode printah kanthi ngirim CTRL + z (ASCII 26). Kabeh data buffer bakal disimpen.
Cathetan: Yen kakehan log wis digawe, OpenLog bakal ngasilake kesalahan **Kakehan log**, metu saka mode iki, lan nyelehake menyang Command Prompt. Output serial bakal katon kaya `12!Kakehan log!`.
- Lampiran File Logging - Uga dikenal minangka mode urutan, mode iki nggawe a file disebut SEQLOG.txt yen durung ana, lan appends sembarang data ditampa menyang file. OpenLog bakal ngirim 12< nalika OpenLog siap nampa data. Tokoh-tokoh ora diwaca. Sampeyan bisa metu saka mode iki lan ngetik mode printah kanthi ngirim CTRL + z (ASCII 26). Kabeh data buffer bakal disimpen.
- Command Prompt - OpenLog bakal ngirim 12> ing wektu sistem wis siyap kanggo nampa printah. Elinga yen tandha > nuduhake OpenLog siyap nampa perintah, dudu data. Sampeyan bisa nggawe files lan nambah data menyang files, nanging iki mbutuhake sawetara parsing serial (kanggo mriksa kesalahan), supaya kita ora nyetel mode iki minangka standar.
- Reset Anyar File Nomer - Mode iki bakal ngreset log file nomer kanggo LOG000.txt . Iki mbiyantu yen sampeyan bubar mbusak kertu microSD lan pengin log file nomer kanggo miwiti maneh.
- Karakter Uwal Anyar - Opsi iki ngidini pangguna ngetik karakter kayata CTRL+z utawa $, lan nyetel iki minangka karakter uwal anyar. Setelan iki direset menyang CTRL+z sajrone reset darurat.
- Jumlah Karakter Uwal - Opsi iki ngidini pangguna ngetik karakter (kayata 1, 3, utawa 17), nganyari nomer karakter uwal anyar sing dibutuhake kanggo nyelehake menyang mode printah. Kanggo exampNanging, ngetik 8 bakal mbutuhake pangguna kanggo mencet CTRL + z kaping wolu kanggo njaluk menyang mode printah. Setelan iki direset dadi 3 sajrone reset darurat.
Penjelasan Karakter Uwal: Alesan OpenLog mbutuhake `CTRL + z` kaping 3 kanggo ngetik mode perintah yaiku kanggo nyegah papan ora sengaja direset nalika ngunggah kode anyar saka Arduino IDE. Ana kemungkinan papan kasebut bakal ndeleng karakter `CTRL + z` nalika bootloading (masalah sing kita deleng ing versi awal perangkat kukuh OpenLog), mula iki tujuane kanggo nyegah. Yen sampeyan nate curiga papan sampeyan wis diblokir amarga iki, sampeyan bisa nindakake reset darurat kanthi nahan pin RX menyang lemah nalika daya munggah.
Konfigurasi File
Yen sampeyan luwih seneng ora nggunakake terminal serial kanggo ngowahi setelan ing OpenLog, sampeyan uga bisa nganyari setelan kanthi ngowahi CONFIG.TXT. file.
Cathetan: Fitur iki mung bisa digunakake ing versi firmware 1.6 utawa luwih anyar. Yen sampeyan wis tuku OpenLog sawise 2012, sampeyan bakal mbukak firmware versi 1.6+
Kanggo nindakake iki, sampeyan butuh maca kertu microSD lan editor teks. Bukak config.txt file (kapitalisasi ing file jeneng ora Matter), lan ngatur adoh! Yen sampeyan durung nate mbukak OpenLog nganggo kertu SD, sampeyan uga bisa nggawe kanthi manual file. Yen sampeyan wis mbukak OpenLog karo kertu microSD dipasang sadurunge, sampeyan kudu ndeleng kaya ing ngisor iki nalika maca kertu microSD.OpenLog nggawe config.txt lan LOG0000.txt file ing daya munggah pisanan.
Konfigurasi gawan file nduweni siji baris setelan lan siji baris definisi.Konfigurasi standar file ditulis dening OpenLog.
Elinga yen iki minangka karakter sing katon biasa (ora ana nilai sing ora katon utawa binar), lan saben nilai dipisahake karo koma.
Setelan ditetepake kaya ing ngisor iki:
- baud : Tingkat komunikasi baud. 9600bps minangka standar. Nilai ditrima sing kompatibel karo Arduino IDE 2400, 4800, 9600, 19200, 38400, 57600, lan 115200. Sampeyan bisa nggunakake tarif baud liyane, nanging sampeyan ora bakal bisa kanggo komunikasi karo OpenLog liwat monitor serial Arduino IDE.
- uwal : Nilai ASCII (ing format desimal) saka karakter uwal. 26 yaiku CTRL + z lan minangka standar. 36 yaiku $ lan minangka karakter uwal sing umum digunakake.
- esc# : Jumlah karakter uwal sing dibutuhake. Kanthi gawan, iku telung, supaya sampeyan kudu mencet karakter uwal kaping telu kanggo nyelehake menyang mode printah. Nilai sing bisa ditampa yaiku saka 0 nganti 254. Nyetel nilai iki dadi 0 bakal mateni mriksa karakter uwal kanthi lengkap.
- Mode: Mode sistem. OpenLog diwiwiti ing mode Log Anyar ( 0 ) minangka standar. Nilai sing bisa ditampa yaiku 0 = Log Anyar, 1 = Log Sekuensial, 2 = Mode Command.
- tembung kriya: mode verbose. Pesen kesalahan sing ditambahi (verbose) diuripake kanthi gawan. Nyetel iki dadi 1 nguripake pesen kesalahan verbose (kayata prentah sing ora dingerteni: mbusak! ). Nyetel iki dadi 0 mateni kasalahan verbose nanging bakal nanggapi kanthi ! yen ana kesalahan. Mateni mode verbose praktis yen sampeyan nyoba ngatasi kesalahan saka sistem sing dipasang.
- echo: mode gema. Nalika ing mode printah, karakter sing echoed minangka standar. Nyetel iki dadi 0 mateni kumandhang karakter. Pateni iki praktis yen nangani kesalahan lan sampeyan ora pengin pesen dikirim maneh menyang OpenLog.
- ignoreRX : Ngganti Darurat. Biasane, OpenLog bakal ngreset darurat nalika pin RX ditarik mudhun nalika daya munggah. Nyetel iki kanggo 1 bakal mateni mriksa saka pin RX sak daya munggah. Iki bisa mbiyantu kanggo sistem sing bakal nahan garis RX kurang amarga macem-macem alasan. Yen Override Darurat dipateni, sampeyan ora bakal bisa meksa unit bali menyang 9600bps, lan konfigurasi file bakal mung cara kanggo ngowahi baud rate.
Kepiye OpenLog Ngowahi Konfigurasi File
Ana limang kahanan beda kanggo OpenLog ngowahi config.txt file.
- Konfigurasi file ketemu: Sajrone daya munggah, OpenLog bakal nggoleki config.txt a file. Yen ing file ditemokake, OpenLog bakal nggunakake setelan sing kalebu lan nimpa setelan sistem sing wis disimpen sadurunge.
- Ora ana konfigurasi file ketemu: Yen OpenLog ora bisa nemokake config.txt file banjur OpenLog bakal nggawe config.txt lan ngrekam setelan sistem saiki disimpen menyang. Iki tegese yen sampeyan masang kertu microSD mentas format, sistem bakal njaga setelan saiki.
- Konfigurasi sing rusak file ketemu: OpenLog bakal mbusak config.txt rusak file, lan bakal nulis ulang loro setelan EEPROM internal lan setelan config.txt file menyang negara dikenal-apik 9600,26,3,0,1,1,0.
- Nilai ilegal ing config file: Yen OpenLog nemokake setelan sing ngemot nilai ilegal, OpenLog bakal nimpa nilai sing rusak ing config.txt file karo setelan sistem EEPROM sing lagi disimpen.
- Owah-owahan liwat command prompt: Yen setelan sistem diganti liwat command prompt (salah siji liwat sambungan serial utawa liwat microcontroller printah serial) owah-owahan kasebut bakal direkam loro kanggo sistem EEPROM lan config.txt. file.
- Reset Darurat: Yen OpenLog nganggo siklus daya karo jumper antarane RX lan GND, lan bit Darurat Override disetel dadi 0 (ngidini reset darurat), OpenLog bakal nulis ulang setelan EEPROM internal lan setelan config.txt. file menyang negara dikenal-apik 9600,26,3,0,1,1,0.
Ngatasi masalah
Ana sawetara opsi beda kanggo mriksa yen sampeyan duwe masalah nyambungake liwat monitor serial, duwe masalah karo karakter dropped ing log, utawa nglawan OpenLog bricked.
Priksa Perilaku LED STAT1
STAT1 LED nuduhake prilaku beda kanggo loro kasalahan umum beda.
- 3 Blinks: Kertu microSD gagal kanggo miwiti. Sampeyan bisa uga kudu ngowahi format kertu nganggo FAT/FAT16 ing komputer.
- 5 Blinks: OpenLog wis diganti menyang baud rate anyar lan kudu daya cycled.
Priksa kaping pindho Struktur Subdirektori
Yen sampeyan nggunakake standar OpenLog.ino exampNanging, OpenLog mung bakal ndhukung rong subdirektori. Sampeyan kudu ngganti FOLDER_TRACK_DEPTH saka 2 dadi jumlah subdirektori sing kudu didhukung. Sawise sampeyan wis rampung iki, recompile kode munggah, lan upload perangkat kukuh dipunéwahi.
Verifikasi Nomer saka Files ing Direktori ROOT
OpenLog mung bakal ndhukung nganti 65,534 log files ing direktori root. Disaranake ngowahi format kertu microSD kanggo nambah kacepetan logging.
Verifikasi Ukuran Firmware sing Diowahi
Yen sampeyan nulis sketsa khusus kanggo OpenLog, priksa manawa sketsa sampeyan ora luwih gedhe tinimbang 32,256. Yen mangkono, iku bakal Cut menyang ndhuwur 500 bita saka memori Flash, kang digunakake dening Optiboot serial bootloader.
Priksa kaping pindho File Jeneng
Kabeh file jeneng kudu alpha-numeric. MyLOG1.txt oke, nanging Hai !e _.txt bisa uga ora bisa.
Gunakake 9600 Baud
OpenLog mbukak saka ATmega328 lan duwe jumlah RAM sing winates (2048 byte). Nalika sampeyan ngirim karakter serial menyang OpenLog, karakter iki bakal buffered. SD Group Simplified Specification ngidini kertu SD njupuk munggah 250ms (bagean 4.6.2.2 Tulis) kanggo ngrekam pamblokiran data kanggo memori lampu kilat.
Ing 9600bps, iku 960 byte (10 bit per byte) per detik. Yaiku 1.04ms saben bait. OpenLog saiki nggunakake 512 byte nampa buffer supaya bisa buffer watara 50ms karakter. Iki ngidini OpenLog kasil nampa kabeh karakter teka ing 9600bps. Nalika sampeyan nambah tingkat baud, buffer bakal tahan kanggo wektu kurang.
OpenLog Buffer Overrun Wektu
Baud Rate | Wektu saben bait | Wektu Nganti Buffer Overrun |
9600bps | 1.04ms | 532ms |
57600bps | 0.174ms | 88ms |
115200bps | 0.087ms | 44ms |
Akeh kertu SD duwe wektu rekaman luwih cepet tinimbang 250ms. Iki bisa dipengaruhi dening 'kelas' kertu lan pinten data wis disimpen ing kertu. Solusi kasebut yaiku nggunakake tingkat baud sing luwih murah utawa nambah wektu antarane karakter sing dikirim ing tingkat baud sing luwih dhuwur.
Format kertu MicroSD sampeyan
Elinga nggunakake kertu karo sawetara utawa ora files ing. Kertu microSD kanthi ZIP 3.1GB files utawa MP3 duwe wektu respon luwih alon tinimbang kertu kosong.
Yen sampeyan ora ngowahi format kertu microSD ing OS Windows, ngowahi format kertu microSD lan nggawe DOS filesistem ing kertu SD.
Ganti kertu MicroSD
Ana macem-macem jinis produsen kertu, kertu relabel, ukuran kertu, lan kelas kertu, lan bisa uga ora kabeh bisa digunakake kanthi bener. Biasane nggunakake kertu microSD 8GB kelas 4, sing bisa digunakake kanthi apik ing 9600bps. Yen sampeyan perlu tarif baud luwih, utawa papan panyimpenan luwih gedhe, sampeyan bisa uga pengin nyoba kelas 6 utawa kertu ndhuwur.
Tambah wektu tundha antarane Tulisan Karakter
Kanthi nambah wektu tundha cilik antarane statements Serial.print (), sampeyan bisa menehi OpenLog kesempatan kanggo ngrekam saiki.
panyangga.
Kanggo example:
Serial.begin(115200);
for(int i = 1 ; i < 10 ; i++) {
Serial.print(i, DEC);
Serial.println(“: abcdefghijklmnopqrstuvwxyz-!#”);
}
bisa uga ora mlebu log kanthi bener, amarga akeh karakter sing dikirim ing jejere saben liyane. Nglebokake wektu tundha cilik 15ms ing antarane tulisan gedhe bakal mbantu OpenLog ngrekam tanpa ngeculake karakter.
Serial.begin(115200);
for(int i = 1 ; i < 10 ; i++) {
Serial.print(i, DEC);
Serial.println(“: abcdefghijklmnopqrstuvwxyz-!#”);
tundha (15);
}
Tambah Arduino Serial Monitor Kompatibilitas
Yen sampeyan nyoba nggunakake OpenLog karo perpustakaan serial sing dibangun utawa perpustakaan SoftwareSerial, sampeyan bisa uga sok dong mirsani masalah karo mode printah. Serial.println () ngirim loro baris anyar lan bali kreta. Ana rong prentah alternatif kanggo ngatasi iki.
Pisanan nggunakake perintah \r (ASCII carriage return):
Serial.print("TEKS\r");
Utawa, sampeyan bisa ngirim nilai 13 (decimal carriage return):
Serial.print("TEKS");
Serial.write(13);
Darurat Reset
Elinga, yen sampeyan kudu ngreset OpenLog menyang negara gawan, sampeyan bisa ngreset Papan kanthi naleni pin RX kanggo GND, daya OpenLog, ngenteni nganti LED wiwit kedhip bebarengan, lan banjur daya mudhun OpenLog lan njabut jumper.
Yen sampeyan ngganti bit Darurat Override dadi 1, sampeyan kudu ngowahi konfigurasi kasebut file, amarga Reset Darurat ora bisa digunakake.
Priksa karo Komunitas
Yen sampeyan isih nemoni masalah karo OpenLog, priksa masalah saiki lan ditutup ing gudang GitHub ing kene. Ana komunitas gedhe sing nggarap OpenLog, dadi kemungkinan ana wong sing nemokake solusi kanggo masalah sing sampeyan deleng.
Resources lan Arep Luwih
Saiki sampeyan wis kasil mlebu data nganggo OpenLog, sampeyan bisa nyiyapake proyek remot lan ngawasi kabeh data sing bakal teka. Coba nggawe proyek Ilmu Kewarganegaraan dhewe, utawa malah tracker pet kanggo ndeleng apa sing ditindakake Fluffy nalika metu!
Priksa sumber daya tambahan iki kanggo ngatasi masalah, bantuan, utawa inspirasi kanggo proyek sabanjure.
- OpenLog GitHub
- Proyek Illumitune
- LilyPad Light Sensor Hookup
- BadgerHack: Sensor Tanah Add-On
- Miwiti OBD-II
- Vernier Photogate
Perlu inspirasi liyane? Priksa sawetara tutorial sing gegandhengan iki:
Photon Remote Water Level Sensor
Sinau carane nggawe sensor level banyu remot kanggo tank panyimpenan banyu lan carane ngotomatisasi pompa adhedhasar wacan!
Photon Remote Water Level Sensor
Sinau carane nggawe sensor level banyu remot kanggo tank panyimpenan banyu lan carane ngotomatisasi pompa adhedhasar wacan!
Ngangkut data menyang Google Sheets nganggo Tessel 2
Proyek iki nyakup cara nyathet data menyang Google Sheets kanthi rong cara: nggunakake IFTTT kanthi a web sambungan utawa USB pen drive lan "sneakernet" tanpa.
Data Sensor Grafik nganggo Python lan Matplotlib
Gunakake matplotlib kanggo nggawe plot wektu nyata data suhu sing diklumpukake saka sensor TMP102 sing disambungake menyang Raspberry Pi.
Yen sampeyan duwe saran tutorial, bukak komentar utawa hubungi tim dhukungan teknis ing TechSupport@sparkfun.com.
Dokumen / Sumber Daya
![]() |
SparkFun DEV-13712 Papan Pangembangan SparkFun [pdf] Pandhuan pangguna DEV-13712, DEV-11114, DEV-09873, CAB-12016, COM-13833, COM-13004, PRT-00115, PRT-08431, DEV-13712 Papan Pengembangan SparkFun, Papan Pengembangan DEV-13712, Papan Pengembangan SparkFun |