Innholdsfortegnelse:

Enkel ekstern dataplotting ved hjelp av Android / Arduino / PfodApp: 6 trinn
Enkel ekstern dataplotting ved hjelp av Android / Arduino / PfodApp: 6 trinn

Video: Enkel ekstern dataplotting ved hjelp av Android / Arduino / PfodApp: 6 trinn

Video: Enkel ekstern dataplotting ved hjelp av Android / Arduino / PfodApp: 6 trinn
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, November
Anonim
Enkel fjerndataplanlegging ved hjelp av Android / Arduino / PfodApp
Enkel fjerndataplanlegging ved hjelp av Android / Arduino / PfodApp

For å plotte data mot dato/klokkeslett ved bruk av bare Arduinos millis (), se denne InstructableArduino dato/tid Plotting/logging ved bruk av Millis () og PfodApp

Denne instruksen viser deg hvordan du plotter Arduino sensordata på Android -mobilen din og fanger den for senere nedlasting til datamaskinen din. Disse instruksjonene er også tilgjengelig på www.pfod.com.au Ingen Android -programmering er nødvendig og svært lite Arduino -programmering er nødvendig. Det er en forlengelse av Simple Mobile Data Logging med pfodApp

Trinn 1: Hurtigstart -planlegging

Rask start -planlegging
Rask start -planlegging

a) Skaff deg et Arduino -kort og en Bluetooth -modul (for eksempel Uno og Bluetooth Shield eller FioV3+Bluetooth) b) Installer Arduino IDE c) Koble til Arduino -kortet (ingen Bluetooth -modul tilkoblet) med en USB -kabel. d) Kopier denne skissen til Arduino IDE og kompiler og last den inn i Arduino-kortet) e) Fest Bluetooth Shield-modulen til Uno (Bluetooth Shield er forhåndskonfigurert for 9600baud MEN sett 3V/5V-bryteren til 5V og sett til Board/Til FT232 -bryteren til To Board -stillingen. f) Last Android -mobilen din med pfodApp. g) Opprett en forbindelse mellom mobilen og Bluetooth -modulen som beskrevet i pfodAppForAndroidGettingStarted.pdf h) Start pfodApp og koble til Arduino -kortet via Bluetooth -modulen. jeg er ferdig. Mobilen din vil nå lagre og plotte Arduino AtoD -omformer teller for inngang A0

Trinn 2: Plotteskissen

Plotteskissen
Plotteskissen

Plotting med pfodApp krever to ting:- a) en datastrøm (i CSV-format) og b) en plot-kommando fra pfodDevice (Arduino) Skissen, SimpleDataPlotting.ino, gjør bare to ting. Først leser den den analoge A0 -inngangen en gang i sekundet og sender ut de nåværende sekundene og tellingen i CSV -format. For det andre når pfodApp kobler til og ber om hovedmenyen, svarer skissen med plottingskommandoen for å begynne å plotte målingene. Her er koden som utføres en gang i sekundet for å lese den analoge A0 -inngangen og skrive de aktuelle sekundene, teller ut til Bluetooth -tilkoblingen. // les A0 en gang i sek int val = analogRead (0); // A0 // send ut gjeldende tid og lesing i csv -format parser.print (thisMillis/1000); // første felt er tid i sek parser.print (","); // komma skiller felt parser.println (val); // ny linje avslutter dataregistrering

Her er koden som svarer på pfodApp -forespørselen til pfodDevices (Arduino Unos) hovedmeny.

byte cmd = parser.parse (); hvis (cmd! = 0) {// har analysert en fullstendig melding {to} if ('.' == cmd) {// pfodApp har bedt om hovedmeny // send tilbake "åpen plottskjerm" parser.print (F ("{= Analog A0 Plot | Time (sek) | Counts}")); // dette er hovedmenyen} ellers hvis ('!' == cmd) {// CloseConnection -kommando closeConnection (parser.getPfodAppStream ()); } annet {// ukjent kommando parser.print (F ("{}")); // send alltid tilbake en pfod -melding, ellers vil pfodApp koble fra. }}

Når mobilens pfodApp kobler til, ber den automatisk om hovedmenyen (ved å sende {.} Meldingen), analyserer analysatoren i skissen (se koden nederst i skissen) {.} Og returnerer '.' kommando. Skissen sender deretter tilbake en plottkommando {= Analog A0 Plot | Time (sek) | A0 Counts} Denne kommandoen instruerer pfodApp til å åpne en skjerm som heter “Analog A0 Plot” og plotte tiden mot tellingen. PfodApp skanner deretter rådataene som kommer inn og ser etter linjer med to felt og tar det første feltet som x -verdien og det andre som y -verdien og legger det punktet til plottet. Når en plottskjerm (eller en rådataskjerm) åpnes, begynner pfodApp å lagre alle rådataene i en lokal fil på mobilen din. PfodApp fortsetter å lagre dataene til du avslutter pfodApp. Du kan laste ned denne filen til datamaskinen din for videre behandling (se ett av de senere trinnene). Det er en rekke andre alternativer til plottkommandoen som lar deg ignorere noen felt, angi plottvekter, plotte flere tomter på ett diagram etc. Se pfodSpecification for detaljer og eksempler. PfodApp kan mye mer enn bare å plotte, se disse eksemplene. Plottet ovenfor er et eksempel på to diagrammer hvorav det ene har to tomter. Denne tomten er fra ArduMower Gjør det selv robotklipper! som bruker samme pfodApp for å kontrollere en robotklipper. Den samme pfodApp brukes til å kontrollere alle pfodDevices. Det er pfodDevices som helt avgjør hvilke skjermer som vises for brukerne.

Trinn 3: Mer detalj

Flere detaljer
Flere detaljer
Flere detaljer
Flere detaljer

Den siste versjonen av pfodApp tilgjengelig fra Android Market gjør det mulig å plotte og lagre rådata som sendes av en pfodDevice (f.eks. Arduino) og lagres i en fil for senere bruk. Se pfodAppForAndroidGettingStarted.pdf for hvordan du laster ned filen fra Android -mobilen din til datamaskinen din. Plotting krever to ting:- a) en datastrøm (i CSV-format) og b) en plot-kommando fra pfodDevice pfodDevice (Arduino) kan sende alle typer data utenfor pfod-meldinger. pfod -meldinger som er vedlagt av {} som skiller dem fra andre data. Hvis du vil plotte data, må du sende dataene i CSV -format. Det er dataverdier atskilt med kommaer, og avsluttet med en ny linje (enten CR eller LF eller CR LF) For eksempel105, 680 Når pfodDevice ønsker å vise et plott for brukeren, sender pfodDevice en plottkommando. Arduino -skissen din har full kontroll over hva pfodApp plotter. Plottkommandoen gir en tittel til plottskjermen og spesifiserer hvilken strøm av rådata som skal plottes og hvilke felt fra den strømmen. Ulike strømmer av rådata har forskjellige antall kommaadskilte felt. Antall søyler | i plott -kommandoen må samsvare med antall felt i datastrømmen du vil plotte. Datalinjer med et annet antall felt ignoreres for dette plottet. Det er en rekke alternativer for plottingskommandoen for å velge feltene som skal plottes og angi skalaer og enheter og sette flere plott på det ene diagrammet. Det enkleste er å sende x-verdiene som det første feltet og y-verdiene som de følgende feltene, deretter i plottingskommando-navnet x-aksen og y-aksen f.eks. {= Analog A0 -plott | Tid (sek) | A0 teller} plottittel | x verdifelt | y -verdifelt Du kan også se rådataene som sendes til mobilen. “Raw Data” -skjermen kan nås fra pfodApp ved hjelp av mobilmenyen, eller den kan åpnes ved at pfodDevice sender en streamingRawData -melding, {= Title Of the Screen Goes Here} dvs. en avkortet versjon av plottingskommandoen. Uansett åpnes pfodApp -rådataskjermen og viser dataene som er sendt fra pfodDevice. Når skjermen åpnes, begynner pfodApp å lagre dataene i en fil. Navnet på filen vises hver gang skjermen (eller en plottskjerm) åpnes. For å forhindre at mobilen fylles opp med data du ikke ønsket, begynner pfodApp ikke å skrive data til mobilens SD -kort før første gang Raw Data -skjermen eller plottskjermen åpnes etter hver ny tilkobling. Første gang Raw Data -skjermen åpnes etter en ny tilkobling, blir opptil 4K byte med tidligere mottatte data (siden tilkoblingen ble opprettet) skrevet til filen når den åpnes. Disse dataene er også tilgjengelige for tomten. I de fleste tilfeller betyr dette at alle rådataene som sendes siden forbindelsen ble opprettet, blir lagret. Når tilkoblingen er stengt, skrives den siste av dataene og filen lukkes. Hvis filen allerede eksisterer, fra en tidligere tilkobling, blir den vedlagt av hver påfølgende tilkobling. Du kan laste ned og slette filen fra datamaskinen. Se pfodAppForAndroidGettingStarted.pdf for å få tilgang til filen fra datamaskinen din.

Trinn 4: Testing med SerialMonitor

Testing med SerialMonitor
Testing med SerialMonitor
Testing med SerialMonitor
Testing med SerialMonitor

Før du kobler til via bluetooth, kan du teste skissen ved hjelp av Arduino IDE SerialMonitor. Fjern først bluetooth -kortet, fordi det bruker de samme TX/RX -tilkoblingene som USB -programmeringen og seriell monitor -tilkobling, og kopier og lim inn skissen (SimpleDataPlotting.ino) i Arduino IDE og programmer Arduino -kortet. Åpne deretter Arduino IDE SerialMonitor Du kan se dataene sendes av Uno -kortet. Skriv deretter inn.. Og klikk "Send" for å sende kommandoen getMainMenu, {.} Dette er hva pfodApp sender først når den kobles til. Skissen svarer med kommandoen Plotting. {= Analog A0 Plot | Time (sec) | A0 Counts} som vil be pfodApp om å åpne en plottingskjerm og begynne å plotte dataene. Dette begynner også å lagre dataene i en fil. Se pfodSpecification for detaljer om alle meldingene og skjermbildene som pfod (Protocol for Operation Discovery) støtter.

Trinn 5: Koble til med en Android -mobil

Koble til med en Android -mobil
Koble til med en Android -mobil
Koble til med en Android -mobil
Koble til med en Android -mobil

Alt er bra, så du kan nå lukke Arduino IDE og SerialMonitor og feste Bluetooth -skjoldet, som tidligere vist. For å koble til Android Mobile, installer du først pfodApp fra Android Market, følg deretter pfodAppForAndroidGettingStarted.pdf -guiden for å koble Bluetooth -skjoldet til mobilen din og konfigurere en Bluetooth pfodApp -tilkobling. Jeg kalte tilkoblingen min for “Enkel datalogging”. Velg deretter tilkoblingen "Simple Data Logging" for å koble til den enkle dataloggeren. Så snart pfodApp kobler seg til, sender den {.} Meldingen skissen reagerer på med meldingen {= Analog A0 Plot | Time (sec) | A0 Counts} som forteller pfodApp plotte dataene og også begynne å lagre dataene. I denne tomten har jeg koblet A0 til Gnd og 5.5V og 3.3V og også forlatt den flytende bare ved å plukke opp støy.

Trinn 6: Overføring av data til datamaskinen

Overføring av data til datamaskinen
Overføring av data til datamaskinen

PfodAppForAndroidGettingStarted.pdf beskriver hvordan du kobler mobilen til datamaskinen din via USB og hvordan du slår på USB -masselagringen slik at du kan bla gjennom den fra datamaskinen. Du finner alle rådatafilene i pfodAppRawData -mappen. Som vist ovenfor lagret Simple Data Logger dataene i /pfodAppRawData /Simple Data Logging. Txt pfodApp bruker navnet på tilkoblingen som filnavn for å lagre data. Utvidelser til Simple Data Logger Nå som du har en enkel datalogger at både plotter og lagrer dataene dine, kan du endre skissen for å sende tilbake dine egne data. Bare skriv dataene dine, i CSV -format, til den samme serielle tilkoblingen som er koblet til Bluetooth -modulen. Hvis du har mer enn to datafelt, må du endre plottingskommandoen. Se pfodSpecification for detaljer og eksempler.

Anbefalt: