Turinys:

Paprastas nuotolinis duomenų braižymas naudojant „Android“/ „Arduino“/ „PfodApp“: 6 veiksmai
Paprastas nuotolinis duomenų braižymas naudojant „Android“/ „Arduino“/ „PfodApp“: 6 veiksmai

Video: Paprastas nuotolinis duomenų braižymas naudojant „Android“/ „Arduino“/ „PfodApp“: 6 veiksmai

Video: Paprastas nuotolinis duomenų braižymas naudojant „Android“/ „Arduino“/ „PfodApp“: 6 veiksmai
Video: Why The Way We Work Doesn't Work - Virtual Frontier Podcast E36 2024, Lapkritis
Anonim
Paprastas nuotolinis duomenų braižymas naudojant „Android“/ „Arduino“/ „PfodApp“
Paprastas nuotolinis duomenų braižymas naudojant „Android“/ „Arduino“/ „PfodApp“

Norėdami nubrėžti duomenis pagal datą/laiką, naudodami tik „Arduino“milis (), žr. Šią instrukciją „Arduino“datos/laiko brėžimas/registravimas naudojant „Millis“() ir „PfodApp“

Ši instrukcija parodo, kaip nubraižyti „Arduino“jutiklio duomenis „Android“mobiliajame telefone ir užfiksuoti, kad vėliau juos būtų galima atsisiųsti į kompiuterį. Šios instrukcijos taip pat yra prieinamos adresu www.pfod.com.au „Android“programavimas nereikalingas ir „Arduino“programavimo reikia labai nedaug. Tai paprasto mobiliojo duomenų registravimo pratęsimas naudojant „pfodApp“

1 veiksmas: greitas braižymo pradžia

Greita braižymo pradžia
Greita braižymo pradžia

a) Gaukite „Arduino“plokštę ir „Bluetooth“modulį (pvz., „Uno“ir „Bluetooth Shield“arba „FioV3+Bluetooth“) b) Įdiekite „Arduino IDE“c) Prijunkite „Arduino“plokštę (be „Bluetooth“modulio) USB kabeliu. d) Nukopijuokite šį eskizą į „Arduino IDE“ir sukompiliuokite bei įkelkite į „Arduino“plokštę) e) Prijunkite „Bluetooth“skydo modulį prie „Uno“(„Bluetooth“skydas yra iš anksto sukonfigūruotas 9600baud. į „Board“/„To FT232“perjunkite į „To Board“padėtį. f) Įkelkite „Android Mobile“naudodami „pfodApp“. g) Nustatykite ryšį tarp mobiliojo telefono ir „Bluetooth“modulio, kaip aprašyta pfodAppForAndroidGettingStarted.pdf. h) Paleiskite „pfodApp“ir prisijunkite prie „Arduino“plokštės per „Bluetooth“modulį. aš baigiau. Dabar jūsų mobilusis telefonas sutaupys ir nubraižys „Arduino AtoD“keitiklio skaičių įėjimui A0

2 žingsnis: braižymo eskizas

Braižymo eskizas
Braižymo eskizas

Braižant naudojant „pfodApp“reikia dviejų dalykų:- a) duomenų srauto (CSV formatu) ir b) sklypo komandos iš „pfodDevice“(„Arduino“) eskizas „SimpleDataPlotting.ino“atlieka tik du dalykus. Pirmiausia jis nuskaito A0 analoginį įvestį kartą per sekundę ir siunčia dabartines sekundes bei skaičius CSV formatu, antra, kai „pfodApp“prisijungia ir prašo pagrindinio meniu, eskizas reaguoja su braižymo komanda, kad būtų galima pradėti brėžti matavimus. Čia yra kodas, kuris vykdomas vieną kartą per sekundę, norint nuskaityti A0 analoginę įvestį ir parašyti dabartines sekundes, skaičiuojant prie „Bluetooth“ryšio. // skaityti A0 kartą per sekundę int val = analogRead (0); // A0 // išveskite dabartinį laiką ir skaitymą csv formato parser.print (thisMillis/1000); // pirmasis laukas yra laikas sekose parser.print (","); // kablelis atskiria laukus parseris.println (val); // nauja eilutė nutraukia duomenų įrašą

Čia yra kodas, kuris reaguoja į „pfodApp“užklausą pagrindiniam meniu „pfodDevice“(„Arduino Uno“).

baitas cmd = analizatorius.parse (); if (cmd! = 0) {// išnagrinėjo visą pranešimą {to} if ('.' == cmd) {// „pfodApp“paprašė pagrindinio meniu // atsiųsti „atviro braižymo ekrano“parser.print (F ("{= Analoginis A0 grafikas | Laikas (sek.) | Skaičiai}")); // tai yra pagrindinis meniu} else if ('!' == cmd) {// CloseConnection komanda closeConnection (parser.getPfodAppStream ()); } else {// nežinoma komanda parser.print (F ("{}"))); // visada siųskite atgal pfod žinutę, kitaip pfodApp atsijungs. }}

Kai jūsų mobiliojo telefono pfodApp prisijungia, jis automatiškai prašo pagrindinio meniu (siunčiant pranešimą {.}), Eskizo analizatorius (žr. Kodą eskizo apačioje) analizuoja {.} Ir grąžina „.“komandą. Tada eskizas atsiunčia brėžinio komandą {= Analoginis A0 brėžinys | Laikas (sek.) | A0 skaičius} Ši komanda nurodo „pfodApp“atidaryti ekraną pavadinimu „Analoginis A0 brėžinys“ir apskaičiuoti laiką pagal skaičiavimus. Tada „pfodApp“nuskaito gaunamus neapdorotus duomenis ir ieško eilučių su dviem laukais, o pirmąjį lauką laiko x reikšme, o antrąjį - y reikšme ir prideda tą tašką prie grafiko. Kai atidaromas braižymo ekranas (arba neapdorotų duomenų ekranas), „pfodApp“pradeda išsaugoti visus neapdorotus duomenis į vietinį failą jūsų mobiliajame telefone. „PfodApp“ir toliau saugo duomenis, kol išeisite iš „pfodApp“. Galite atsisiųsti šį failą į savo kompiuterį tolesniam apdorojimui (žr. Vieną iš vėlesnių veiksmų). „Plot“komandoje yra daug kitų parinkčių, kurios leidžia ignoruoti kai kuriuos laukus, nustatyti schemos mastelius, sudaryti kelis grafikus vienoje diagramoje ir tt Išsamesnės informacijos ir pavyzdžių rasite pfodSpecification. „PfodApp“gali nuveikti daug daugiau nei tik braižyti, žr. Šiuos pavyzdžius. Aukščiau pateiktas brėžinys yra dviejų diagramų, iš kurių vienoje yra du sklypai, pavyzdys. Šis siužetas yra iš „ArduMower“roboto vejapjovės „pasidaryk pats“! kuri naudoja tą patį „pfodApp“, kad valdytų vejapjovę robotą. Tas pats „pfodApp“naudojamas valdyti visus „pfodDevices“. Būtent „pfodDevices“visiškai nustato, kokie ekranai rodomi vartotojams.

3 žingsnis: išsamiau

Daugiau informacijos
Daugiau informacijos
Daugiau informacijos
Daugiau informacijos

Naujausia „pfodApp“versija, pasiekiama „Android“prekyvietėje, leidžia nubraižyti neapdorotus duomenis, siunčiamus „pfodDevice“(pvz., „Arduino“) ir išsaugoti juos faile, kad vėliau būtų galima juos naudoti. Žr. PfodAppForAndroidGettingStarted.pdf, kaip atsisiųsti failą iš „Android“mobiliojo į kompiuterį. Braižant reikia dviejų dalykų:- a) duomenų srauto (CSV formatu) ir b) brėžinio komandos iš pfodDevice Jūsų pfodDevice (Arduino) gali siųsti bet kokio tipo duomenis už pfod pranešimų. „pfod“pranešimus, kurie priskiriami {}, o tai išskiria juos iš kitų duomenų. Jei norite nubraižyti duomenis, turite siųsti duomenis CSV formatu. Tai yra duomenų reikšmės, atskirtos kableliais, o baigiamos nauja eilute (CR, LF arba CR LF) Pavyzdžiui, 105, 680 Kai „pfodDevice“nori parodyti naudotojui brėžinį, „pfodDevice“siunčia brėžinio komandą. Jūsų „Arduino“eskizas visiškai kontroliuoja, ką pfodApp planuoja. Siužeto komanda suteikia sklypo ekrano pavadinimą ir nurodo, kurį neapdorotų duomenų srautą reikia nubraižyti ir kuriuos to srauto laukus. Skirtingi neapdorotų duomenų srautai turi skirtingą skaičių kableliais atskirtų laukų. Strypų skaičius | schemoje komanda turi atitikti norimo brėžti duomenų srauto laukų skaičių. Duomenų eilutės su skirtingu laukų skaičiumi šiame grafike ignoruojamos. Braižymo komandai yra daugybė parinkčių, kuriomis galima pasirinkti brėžtinus laukus, nustatyti mastelius ir vienetus bei į vieną diagramą įtraukti kelis brėžinius. Paprasčiausia x reikšmes siųsti kaip pirmąjį lauką, o y reikšmes-kaip sekančius laukus, tada braižymo komandoje pavadinkite x ašį ir y ašį, pvz. {= Analoginis A0 brėžinys | Laikas (sek.) | A0 Skaičiuoja} sklypo pavadinimas | x reikšmių laukas | y reikšmių laukas Taip pat galite peržiūrėti į mobilųjį telefoną siunčiamus neapdorotus duomenis. Ekraną „Neapdoroti duomenys“galima pasiekti naudojant „pfodApp“naudojant jūsų mobiliojo telefono meniu arba jį atidaryti naudojant „pfodDevice“, siunčiantį „streamingRawData“pranešimą, {= ekrano pavadinimas eina čia}, t. Y. Sutrumpintą braižymo komandos versiją. Bet kuriuo atveju atidaromas neapdorotų duomenų ekranas „pfodApp“ir bus rodomi duomenys, išsiųsti iš „pfodDevice“. Kai atidaromas ekranas, „pfodApp“pradės įrašyti duomenis į failą. Failo pavadinimas rodomas kiekvieną kartą, kai atidaromas ekranas (arba braižymo ekranas). Kad jūsų mobilusis telefonas nepripildytų duomenų, kurių nenorėjote, „pfodApp“nepradeda rašyti duomenų į mobiliojo telefono SD kortelę, kol pirmą kartą po kiekvieno naujo prisijungimo neatveriamas neapdorotų duomenų ekranas arba braižymo ekranas. Pirmą kartą atidarius neapdorotų duomenų ekraną po naujo ryšio, atidarant į failą įrašoma iki 4K baitų anksčiau gautų duomenų (nuo tada, kai buvo užmegztas ryšys). Šie duomenys taip pat yra apie sklypą. Daugeliu atvejų tai reiškia, kad visi neapdoroti duomenys, išsiųsti nuo prisijungimo, bus išsaugoti. Kai ryšys uždaromas, įrašomi paskutiniai duomenys ir failas uždaromas. Jei failas jau yra, iš ankstesnio ryšio jis pridedamas prie kiekvieno kito ryšio. Galite atsisiųsti ir ištrinti failą iš savo kompiuterio. Kaip pasiekti failą iš kompiuterio, žr. PfodAppForAndroidGettingStarted.pdf.

4 veiksmas: bandymas naudojant „SerialMonitor“

Testavimas naudojant „SerialMonitor“
Testavimas naudojant „SerialMonitor“
Testavimas naudojant „SerialMonitor“
Testavimas naudojant „SerialMonitor“

Prieš prisijungdami per „Bluetooth“, galite išbandyti eskizą naudodami „Arduino IDE SerialMonitor“. Pirmiausia nuimkite „Bluetooth“plokštę, nes ji naudoja tas pačias TX/RX jungtis kaip USB programavimo ir nuoseklaus monitoriaus jungtis, ir nukopijuokite ir įklijuokite eskizą („SimpleDataPlotting.ino“) į „Arduino IDE“ir užprogramuokite „Arduino“plokštę. Tada atidarykite „Arduino IDE SerialMonitor“. Galite matyti duomenis, siunčiamus iš „Uno“plokštės. Tada įveskite {.} Ir spustelėkite „Siųsti“, kad išsiųstumėte „getMainMenu“komandą, {.} Štai ką „pfodApp“pirmiausia atsiųs prisijungus. Eskizas reaguoja į komandą Braižymas. {= Analoginis A0 brėžinys | Laikas (sek.) | A0 skaičiuoja}, kuris paprašys „pfodApp“atidaryti braižymo ekraną ir pradėti brėžti duomenis. Tai taip pat pradeda išsaugoti duomenis faile. Išsamesnės informacijos apie visus pranešimus ir ekranus, kuriuos palaiko „pfod“(„Operation Discovery“protokolas), rasite „pfodSpecification“.

5 veiksmas: prisijunkite prie „Android Mobile“

Prisijungimas prie „Android Mobile“
Prisijungimas prie „Android Mobile“
Prisijungimas prie „Android Mobile“
Prisijungimas prie „Android Mobile“

Viskas gerai, todėl dabar galite uždaryti „Arduino IDE“ir „SerialMonitor“ir pritvirtinti „Bluetooth“skydą, kaip parodyta anksčiau. Norėdami prisijungti prie „Android Mobile“, pirmiausia įdiekite „pfodApp“iš „Android Market“, tada vadovaukitės pfodAppForAndroidGettingStarted.pdf vadovu, kad suporuotumėte „Bluetooth“skydą su savo mobiliuoju telefonu ir nustatytumėte „Bluetooth“„pfodApp“ryšį. Savo ryšį pavadinau „Paprastas duomenų registravimas“. Tada pasirinkite „Paprastas duomenų registravimo“ryšį, kad prisijungtumėte prie paprasto duomenų kaupiklio. Kai tik „pfodApp“prisijungia, jis siunčia pranešimą {.}, Į kurį eskizas atsako, pranešimu {= Analoginis A0 brėžinys | Laikas (sek.) | A0 skaičius}, kuriame nurodoma, kad „pfodApp“nubraižo duomenis ir pradeda saugoti duomenis. Šiame sklype aš prijungiau A0 prie Gnd ir 5.5V ir 3.3V, taip pat palikau jį plūduriuojantį tik skleidžiant triukšmą.

6 veiksmas: duomenų perkėlimas į kompiuterį

Duomenų perkėlimas į kompiuterį
Duomenų perkėlimas į kompiuterį

PfodAppForAndroidGettingStarted.pdf išsamiai aprašoma, kaip prijungti mobilųjį telefoną prie kompiuterio per USB ir kaip įjungti USB atmintinę, kad galėtumėte naršyti ją iš savo kompiuterio. Visus neapdorotų duomenų failus rasite aplanke „pfodAppRawData“. Kaip parodyta aukščiau, „Simple Data Logger“išsaugojo duomenis į /pfodAppRawData /Simple Data Logging.txt. „PfodApp“naudoja ryšio pavadinimą kaip failo pavadinimą duomenims išsaugoti. Paprastų duomenų registratoriaus plėtiniai Dabar, kai turite paprastą duomenų kaupiklį kad ir nubraižytų, ir išsaugotų jūsų duomenis, galite pakeisti eskizą, kad atsiųstumėte savo duomenis. Tiesiog įrašykite savo duomenis CSV formatu į tą patį nuoseklųjį ryšį, kuris yra prijungtas prie jūsų „Bluetooth“modulio. Jei turite daugiau nei du duomenų laukus, turėsite pakeisti braižymo komandą. Daugiau informacijos ir pavyzdžių rasite „pfodSpecification“.

Rekomenduojamas: