Inhoudsopgave:

Adruino seriële plotter - Ajarnpa
Adruino seriële plotter - Ajarnpa

Video: Adruino seriële plotter - Ajarnpa

Video: Adruino seriële plotter - Ajarnpa
Video: How To Use Arduino's Serial Plotter 2024, November
Anonim
Adruino Seriële Plotter
Adruino Seriële Plotter
Adruino Seriële Plotter
Adruino Seriële Plotter
Afbeelding
Afbeelding

De Arduino Serial Plotter-functie is toegevoegd aan de Arduino IDE, zodat u seriële gegevens van uw Arduino in realtime kunt plotten naar uw computer. Als je het beu bent om de analoge sensorinvoergegevens van je Arduino op je scherm te zien stromen zoals The Matrix, lijkt dit een mooiere manier om te visualiseren wat er aan de hand is. Een seriële plotter is een offline tool waarmee u ook gegevens kunt visualiseren en uw code offline kunt oplossen zonder dat u services van derden zoals Processing of Plotly hoeft te gebruiken. Omdat er geen officiële documentatie op de Arduino-website is over het gebruik en de functionaliteit van de seriële plotter, heb ik besloten om het gebruik en de functies ervan te documenteren.

Functies

  • Plotten van meerdere grafieken
  • Offline
  • Grafiek automatisch aanpassen
  • Ondersteunt grafieken met negatieve waarden
  • Automatisch scrollen langs de X-as
  • Verschillende kleuren voor elke variabele

Toepassingen

  • Offline gegevensvisualisatie
  • Problemen met codes oplossen
  • Golfvormanalyse

Benodigde onderdelen

Arduino - AliExpress of Arduino Starter Kit - AliExpress

Stap 1: Een grafiek plotten

Afbeelding
Afbeelding

Nu u de nieuwste versie van de Arduino IDE (1.6.7 of hoger) hebt geïnstalleerd, is het tijd om te begrijpen hoe de seriële plotter eigenlijk werkt. De Arduino Serial Plotter neemt inkomende seriële gegevenswaarden over de USB-verbinding en is in staat om de gegevens langs de X/Y-as te plotten, meer dan alleen het zien van getallen die op de seriële monitor worden uitgespuugd. De verticale Y-as past zichzelf automatisch aan naarmate de waarde van de uitvoer toeneemt of afneemt, en de X-as is een vaste as met 500 punten, waarbij elk vinkje op de as gelijk is aan een uitgevoerd Serial.println()-commando. Met andere woorden, de plot wordt langs de X-as bijgewerkt telkens wanneer Serial.println() wordt bijgewerkt met een nieuwe waarde.

Afbeelding
Afbeelding
Afbeelding
Afbeelding

Vergeet niet om de baudrate van de seriële plotter zo in te stellen dat deze overeenkomt met die van de code.

Meerdere percelen

Wanneer meerdere golfvormen worden weergegeven, wordt elke afzonderlijke variabele/waarde/parameter weergegeven met een andere kleur, zoals hieronder weergegeven.

Afbeelding
Afbeelding

Om meerdere variabelen of golfvormen tegelijk te plotten, wordt er een 'spatie' afgedrukt tussen de twee printstatements.

Seriële.afdruk (temperatuur);

Serieel.print(" "); Serial.println(vochtigheid);

OF

Seriële.afdruk (temperatuur);

Serieel.print("\t"); Serial.println(vochtigheid);

In dit geval hebben de waarden van de variabelen 'temperatuur en vochtigheid' afzonderlijke golfvormen die tegelijkertijd in dezelfde grafiek worden uitgezet.

Stap 2: Offline gegevensvisualisatie

Image
Image

Ik heb de Arduino Serial Monitor in mijn Automatic Plant Watering System gebruikt om vochtsensorgegevens te visualiseren en te plotten.

Afbeelding
Afbeelding

Het belangrijkste doel van de seriële plotter is dat u geen verbinding met internet hoeft te hebben om de gegevens van een sensor of uw project te visualiseren. En daarom blinkt de seriële plotter voor het doel van datavisualisatie uit in zijn werk.

Of het nu een enkelvoudige golf is of een grafiek met meerdere grafieken, de seriële plotter past zichzelf automatisch aan en kleurcodes elke golf. Om de Data Visualization-functie te testen, kunt u de volgende stappen volgen:

  1. Sluit een aantal sensoren aan op je Arduino
  2. Print de waarden van de sensoren & Upload de code.

  3. Open de seriële plotter.
Afbeelding
Afbeelding

Ik heb de seriële plotter in mijn Tweeting Weerstation gebruikt om de uitlezing van de verschillende sensoren op het weerstation te visualiseren. De bovenstaande golfvormen tonen de grafiek van de temperatuur (26 ° C) en vochtigheid (65% RV) van de SL-HS-220-sensor.

Stap 3: Problemen oplossen

Een van de beste toepassingen van de seriële plotter is het oplossen van problemen met de code en het circuit. Defecte verbindingen of onjuiste codeerlogica kunnen soms een ongewenste output opleveren. In dergelijke gevallen waar er te veel coderegels of te veel draden zijn om fouten te debuggen, kan de seriële plotter het exacte foutpunt aangeven.

Met behulp van de seriële plotter kunt u controleren of een sensoruitlezing onjuist is of zelfs als de sensor niet goed is aangesloten op de Arduino. De seriële plotter helpt ook bij het debuggen van code door de waarden weer te geven van verschillende voorwaardelijke verklaringen en variabelen of zelfs de toestanden van de pinnen van de Arduino.

Afbeelding
Afbeelding

Een goed voorbeeld hiervan is het oplossen van problemen met een Obstacle Avoidance Robot. In dit voorbeeld vertegenwoordigt de blauwe golfvorm de ultrasone sensor en de gele en rode golfvormen vertegenwoordigen de linker- en rechtermotor. Naarmate de afstand tussen het obstakel en de robot kleiner wordt, neemt de blauwe golfvorm af. Bij een drempelwaarde (minimale afstand) van 10, draait de robot naar rechts, vandaar dat de twee motoren verschillende waarden hebben; Rechts=50, Links=100. U kunt de rode golfvorm zien afnemen en de gele golfvorm een constante snelheid zien behouden die de juiste afslag vertegenwoordigt.

Problemen oplossen of een draad niet goed was aangesloten of een onderdeel niet goed werkte of uw codeerlogica niet klopte, zou u veel tijd hebben gekost. Maar met behulp van de seriële plotter kan de hoeveelheid tijd die nodig is om het probleem op te lossen aanzienlijk worden verminderd door de golfvormen te analyseren.

Afbeelding
Afbeelding

Stap 4: Functiegeneratie en analyse

Afbeelding
Afbeelding

Met een basisprogrammeergevoel en een paar regels code kan de Arduino fungeren als een functiegenerator. De Arduino kan vierkante, driehoekige, sinus- en zaagtandgolfvormen produceren. In eerdere versies van de Arduino IDE kon men alleen de waarden waarnemen van het type golfvorm dat in de seriële monitor werd geproduceerd zonder enige visualisatie. Het zou tijdrovend zijn om de output uitsluitend op basis van numerieke waarden te analyseren; en dit is de plek waar de seriële plotter van pas komt; bij het visualiseren van de golfvormen die worden geproduceerd.

Afbeelding
Afbeelding
Afbeelding
Afbeelding
Afbeelding
Afbeelding
Functie Generator.ino
Functie Generator.ino

Functie Generator.ino

Stap 5: Toekomstige verbetering en toevoegingen

Afbeelding
Afbeelding

De Arduino IDE heeft lang de toevoeging van de seriële plotter nodig gehad. Het heeft de functionaliteit van de Arduino IDE vergroot, maar mist nog steeds enkele functies:

  • Automatisch scrollen wisselen
  • Gelijktijdig gebruik van seriële plotter en seriële monitor.
  • X-as schaal/tijdschaal vereist.

Aangezien deze functies aan de Arduino IDE worden toegevoegd, zal ik doorgaan met het aanbrengen van wijzigingen en het toevoegen van nieuwe stappen aan deze Instructable.

Aanbevolen: