Innholdsfortegnelse:

Adruino Serial Plotter: 5 trinn (med bilder)
Adruino Serial Plotter: 5 trinn (med bilder)

Video: Adruino Serial Plotter: 5 trinn (med bilder)

Video: Adruino Serial Plotter: 5 trinn (med bilder)
Video: Как настроить и использовать камеру ESP32 с камерой Micro USB WiFi 2024, November
Anonim
Adruino seriell plotter
Adruino seriell plotter
Adruino seriell plotter
Adruino seriell plotter
Bilde
Bilde

Arduino Serial Plotter -funksjonen er lagt til i Arduino IDE, slik at du kan grafisk seriell data fra Arduino til datamaskinen din i sanntid. Hvis du er lei av å se Arduinos analoge sensorinndata strømme ut på skjermen din som The Matrix, ser dette ut som en penere måte å visualisere hva som skjer. En seriell plotter er et frakoblet verktøy som lar deg også visualisere data og feilsøke koden din uten å måtte bruke tredjepartstjenester som Processing eller Plotly. Siden det ikke er noen offisiell dokumentasjon på Arduino -nettstedet om bruk og funksjonalitet til serieplotteren, bestemte jeg meg for å dokumentere bruken og funksjonene.

Funksjoner

  • Plotting av flere grafer
  • Frakoblet
  • Auto-størrelse på grafen
  • Støtter grafer med negativ verdi
  • Bla automatisk langs X-aksen
  • Ulike farger for hver variabel

applikasjoner

  • Offline datavisualisering
  • Kode feilsøking
  • Bølgeformanalyse

Deler påkrevd

Arduino - AliExpress eller Arduino Starter Kit - AliExpress

Trinn 1: Plotte en graf

Bilde
Bilde

Nå som du har installert den nyeste versjonen av Arduino IDE (1.6.7 eller nyere) er det på tide å forstå hvordan Serial Plotter faktisk fungerer. Arduino Serial Plotter tar innkommende serielle dataverdier over USB -tilkoblingen og er i stand til å tegne dataene langs X/Y -aksen, utover å bare se tall som blir spyttet ut på Serial Monitor. Den vertikale Y-aksen auto justerer seg selv når verdien av utgangen øker eller minker, og X-aksen er en fast 500 punkts akse med hvert kryss i aksen lik en utført kommando Serial.println (). Med andre ord oppdateres plottet langs X-aksen hver gang Serial.println () oppdateres med en ny verdi.

Bilde
Bilde
Bilde
Bilde

Husk å angi overføringshastigheten til serieplotteren slik at den samsvarer med koden.

Flere tomter

Når du viser flere bølgeformer, vises hver separate variabel/verdi/parameter med en annen farge som vist nedenfor.

Bilde
Bilde

For å plotte flere variabler eller bølgeformer samtidig, skrives det ut et "mellomrom" mellom de to utskriftssetningene.

Serial.print (temperatur);

Serial.print (""); Serial.println (fuktighet);

ELLER

Serial.print (temperatur);

Serial.print ("\ t"); Serial.println (fuktighet);

I dette tilfellet vil verdiene av variablenes temperatur og fuktighet ha separate bølgeformer plottet på samme graf samtidig.

Trinn 2: Offline datavisulering

Image
Image

Jeg brukte Arduino Serial Monitor i mitt automatiske plantevanningssystem for å visualisere og plotte fuktighetssensordata.

Bilde
Bilde

Hovedhensikten med å ha seriell plotter er at du ikke trenger å være koblet til Internett for å visualisere dataene fra en sensor eller prosjektet ditt. Og derfor med tanke på datavisualisering utmerker seriell plotter seg på jobben.

Enten det er en entallbølge eller en graf med flere plotter, endrer størrelsen på serienummeret seg automatisk og fargekoder hver bølge. For å teste datavisualiseringsfunksjonen kan du følge følgende trinn:

  1. Koble et par sensorer til din Arduino
  2. Skriv ut verdiene til sensorene og last opp koden.

  3. Åpne serieplotteren.
Bilde
Bilde

Jeg har brukt seriell plotter i min tweeterende værstasjon for å visualisere avlesningen av de forskjellige sensorene på værstasjonen. Bølgeformene ovenfor viser plottingen av temperatur (26 ° C) og fuktighet (65%relativ luftfuktighet) for SL-HS-220-sensoren.

Trinn 3: Feilsøking

En av de beste bruksområdene til Serial Plotter er å feilsøke koden og kretsen. Feil tilkoblinger eller feil kodingslogikk kan noen ganger returnere en uønsket utgang. I slike tilfeller der det er for mange kodelinjer eller for mange ledninger til å feilsøke seriell plotter kan vise det nøyaktige feilpunktet.

Ved hjelp av Serial Plotter kan du sjekke om en sensoravlesning er feil eller om sensoren ikke er riktig koblet til Arduino. Seriell plotter vil også hjelpe med feilsøking av kode ved å vise verdiene forskjellige betingede utsagn og variabler eller til og med tilstandene til pinnene på Arduino.

Bilde
Bilde

Et godt eksempel på dette er å feilsøke en robot for hindring av hindringer. I dette eksemplet representerer den blå bølgeformen den ultralydssensoren og de gule og røde bølgeformene representerer venstre og høyre motor. Etter hvert som avstanden mellom hindringen og roboten avtar, reduseres den blå bølgeformen. Ved en terskelverdi (minimumsavstand) på 10, svinger roboten til høyre, derfor har de to motorene forskjellige verdier; Høyre = 50, Venstre = 100. Du kan se den røde bølgeformen synke og den gule bølgeformen forbli konstant hastighet som representerer høyre sving.

Feilsøking om en ledning ikke var riktig tilkoblet eller at en komponent ikke fungerte eller kodelogikken din var feil, ville ha kostet deg mye tid. Men ved hjelp av Serial Plotter kan tiden det tar å feilsøke problemet reduseres betydelig ved å analysere bølgeformene.

Bilde
Bilde

Trinn 4: Funksjonsgenerering og analyse

Bilde
Bilde

Med en grunnleggende programmeringssans og et par linjer med kode, er Arduino i stand til å fungere som en funksjonsgenerator. Arduino er i stand til å produsere firkantede, trekantede, sinus- og sagtannbølgeformer. I tidligere versjoner av Arduino IDE kunne man bare observere verdiene for typen bølgeform som ble produsert i Serial Monitor uten noen visualisering. Det ville være tidkrevende å analysere utdataene utelukkende på grunnlag av numeriske verdier; og dette er stedet hvor seriell plotter kommer godt med; i å visualisere bølgeformene som produseres.

Bilde
Bilde
Bilde
Bilde
Bilde
Bilde
Funksjon Generator.ino
Funksjon Generator.ino

Funksjon Generator.ino

Trinn 5: Fremtidig forbedring og tillegg

Bilde
Bilde

Arduino IDE har lenge trengt tillegg av serieplotteren. Det har økt funksjonaliteten til Arduino IDE, men mangler fremdeles noen funksjoner:

  • Autoskroll -veksle
  • Samtidig bruk av Serial Plotter & Serial Monitor.
  • X-akseskala/tidsskala påkrevd.

Siden disse funksjonene er lagt til i Arduino IDE, vil jeg fortsette å gjøre endringer og legge til nye trinn i denne instruksen.

Anbefalt: