Obsah:

Sériový plotter Adruino: 5 krokov (s obrázkami)
Sériový plotter Adruino: 5 krokov (s obrázkami)

Video: Sériový plotter Adruino: 5 krokov (s obrázkami)

Video: Sériový plotter Adruino: 5 krokov (s obrázkami)
Video: Using Micro SD Card and Data logging with Arduino | Arduino Step by Step Course Lesson 106 2024, November
Anonim
Sériový plotter Adruino
Sériový plotter Adruino
Sériový plotter Adruino
Sériový plotter Adruino
Obrázok
Obrázok

Do Arduino IDE bola pridaná funkcia Arduino Serial Plotter, ktorá vám umožňuje natívne vykresľovať sériové údaje z vášho Arduina do počítača v reálnom čase. Ak vás už unavuje vidieť, ako sa vstupné údaje analógového senzora vášho Arduina nalievajú na vašu obrazovku ako Matrix, vyzerá to ako krajší spôsob, ako vizualizovať, čo sa deje. Sériový plotter je offline nástroj, ktorý vám tiež umožňuje vizualizovať údaje a odstraňovať problémy s kódom offline bez toho, aby ste museli používať služby tretích strán, ako je Processing alebo Plotly. Pretože na webovej stránke Arduino neexistuje žiadna oficiálna dokumentácia týkajúca sa použitia a funkcií sériového plotra, rozhodol som sa dokumentovať jeho použitie a funkcie.

Vlastnosti

  • Vynesenie viac grafu
  • Offline
  • Graf s automatickou zmenou veľkosti
  • Podporuje grafy so zápornou hodnotou
  • Automatické posúvanie pozdĺž osi X
  • Rôzne farby pre každú premennú

Aplikácie

  • Offline vizualizácia údajov
  • Riešenie problémov s kódom
  • Analýza priebehu

Potrebné diely

Arduino - AliExpress alebo Arduino Starter Kit - AliExpress

Krok 1: Zostavenie grafu

Obrázok
Obrázok

Teraz, keď ste si nainštalovali najnovšiu verziu Arduino IDE (1.6.7 alebo novšiu), je načase pochopiť, ako sériový plotter skutočne funguje. Sériový plotter Arduino preberá prichádzajúce hodnoty sériových dát cez USB pripojenie a je schopný graficky znázorniť údaje pozdĺž osi X/Y, a nielen vidieť, ako sa čísla vypľúvajú na sériový monitor. Vertikálna os Y sa automaticky upravuje, pretože hodnota výstupu sa zvyšuje alebo znižuje, a os X je pevná os 500 bodov, pričom každé začiarknutie osi sa rovná vykonanému príkazu Serial.println (). Inými slovami, graf sa aktualizuje pozdĺž osi X zakaždým, keď sa aktualizuje Serial.println () s novou hodnotou.

Obrázok
Obrázok
Obrázok
Obrázok

Nezabudnite nastaviť prenosovú rýchlosť sériového plotra tak, aby zodpovedala kódu.

Viacnásobné pozemky

Pri zobrazení viacerých priebehov je každá samostatná premenná/hodnota/parameter zobrazená inou farbou, ako je uvedené nižšie.

Obrázok
Obrázok

Aby bolo možné simultánne vykresliť viacero premenných alebo priebehov, medzi dvoma tlačovými príkazmi sa vytlačí „medzera“.

Sériový tlač (teplota);

Serial.print (""); Serial.println (vlhkosť);

ALEBO

Sériový tlač (teplota);

Serial.print ("\ t"); Serial.println (vlhkosť);

V tomto prípade budú mať hodnoty teploty a vlhkosti premenných simultánne vykreslené samostatné krivky.

Krok 2: Vizualizácia údajov offline

Image
Image

Na vizualizáciu a vykreslenie údajov senzora vlhkosti som použil sériový monitor Arduino v mojom systéme automatického zavlažovania rastlín.

Obrázok
Obrázok

Hlavným účelom sériového plotra je, že na zobrazenie údajov zo senzora alebo vášho projektu nemusíte byť pripojení k internetu. A preto na účely vizualizácie údajov sériový plotter vo svojej práci vyniká.

Bez ohľadu na to, či ide o singulárnu vlnu alebo graf s viacerými grafmi, sériový plotter automaticky zmení veľkosť a farebne kóduje každú vlnu. Ak chcete otestovať funkciu vizualizácie údajov, musíte vykonať nasledujúce kroky:

  1. Pripojte niekoľko senzorov k svojmu Arduinu
  2. Vytlačte hodnoty senzorov a nahrajte kód.
  3. Otvorte sériový plotter.
Obrázok
Obrázok

Na vizualizáciu čítania rôznych senzorov na meteorologickej stanici som použil sériový plotter v mojej meteorologickej stanici Tweeting. Vyššie uvedené krivky ukazujú graf hodnôt teploty (26 ° C) a vlhkosti (65%relatívnej vlhkosti) senzora SL-HS-220.

Krok 3: Riešenie problémov

Jedným z najlepších spôsobov použitia sériového plotra je riešenie problémov s kódom a obvodom. Chybné pripojenia alebo nesprávna logika kódovania môžu niekedy vrátiť neželaný výstup. V takých prípadoch, keď príliš veľa riadkov kódu alebo príliš veľa káblov na ladenie, môže sériový plotter zobraziť presný bod chyby.

Pomocou sériového plotra môžete skontrolovať, či je snímač nesprávny, alebo dokonca nie je správne pripojený k Arduinu. Sériový plotter tiež pomôže pri ladení kódu zobrazením hodnôt rôznych podmienených príkazov a premenných alebo dokonca stavov pinov Arduina.

Obrázok
Obrázok

Dobrým príkladom by bolo riešenie problémov s robotom na vyhýbanie sa prekážkam. V tomto prípade modrý priebeh predstavuje ultrazvukový snímač a žltý a červený priebeh predstavuje ľavý a pravý motor. Keď sa vzdialenosť medzi prekážkou a robotom zmenšuje, modrý priebeh sa zmenšuje. Pri prahovej hodnote (minimálna vzdialenosť) 10 sa robot otočí doprava, a preto majú dva motory rôzne hodnoty; vpravo = 50, vľavo = 100. Môžete vidieť, ako sa červený priebeh vlny znižuje a žltý tvar vlny zostáva na konštantnej rýchlosti, čo predstavuje správne odbočenie.

Riešenie problémov, či nie je vodič správne pripojený, alebo komponent nefunguje správne alebo je nesprávna kódovacia logika, vás stojí veľa času. Ale pomocou sériového plotra je možné výrazne skrátiť čas potrebný na riešenie problému analyzovaním priebehov.

Obrázok
Obrázok

Krok 4: Generovanie a analýza funkcií

Obrázok
Obrázok

So základným zmyslom pre programovanie a niekoľkými riadkami kódu je Arduino schopné fungovať ako generátor funkcií. Arduino je schopné vytvárať štvorcové, trojuholníkové, sínusové a pílové vlny. V predchádzajúcich verziách Arduino IDE bolo možné bez akejkoľvek vizualizácie sledovať iba hodnoty typu tvaru vlny, ktorý sa vytvára v sériovom monitore. Analýza výstupu výlučne na základe číselných hodnôt by bola časovo náročná; a to je miesto, kde sa hodí sériový plotter; pri vizualizácii vytváraných priebehov.

Obrázok
Obrázok
Obrázok
Obrázok
Obrázok
Obrázok
Generátor funkcií.ino
Generátor funkcií.ino

Generátor funkcií.ino

Krok 5: Budúce zlepšenie a doplnky

Obrázok
Obrázok

Arduino IDE už dlho potrebuje pridanie sériového plotra. Zvýšila funkčnosť Arduino IDE, ale stále nemá niektoré funkcie:

  • Prepínanie automatického posúvania
  • Súčasné používanie sériového plotra a sériového monitora.
  • Vyžaduje sa mierka osi X/časový rozsah.

Keď budú tieto funkcie pridané do Arduino IDE, budem pokračovať v zmenách a pridávaní nových krokov do tohto Instructable.

Odporúča: