İçindekiler:

Adruino Seri Plotter: 5 Adım (Resimlerle)
Adruino Seri Plotter: 5 Adım (Resimlerle)

Video: Adruino Seri Plotter: 5 Adım (Resimlerle)

Video: Adruino Seri Plotter: 5 Adım (Resimlerle)
Video: Arduino project 😎^ Arduino #arduino #2022 #2021 #2023 #dc #arduinoproject #diy #foryou 2024, Kasım
Anonim
Adruino Seri Plotter
Adruino Seri Plotter
Adruino Seri Plotter
Adruino Seri Plotter
resim
resim

Arduino IDE'ye Arduino Seri Plotter işlevi eklendi, bu da Arduino'nuzdan bilgisayarınıza gerçek zamanlı olarak seri verileri yerel olarak grafiklendirmenize izin veriyor. Arduino'nuzun analog sensör giriş verilerinin The Matrix gibi ekranınıza aktığını görmekten bıktıysanız, bu, neler olup bittiğini görselleştirmenin daha güzel bir yolu gibi görünüyor. Seri çizici, Processing veya Plotly gibi üçüncü taraf hizmetleri kullanmak zorunda kalmadan verileri görselleştirmenize ve kodunuzu çevrimdışı olarak gidermenize olanak tanıyan çevrimdışı bir araçtır. Arduino web sitesinde Seri Plotter'ın kullanımı ve işlevselliği ile ilgili resmi bir belge bulunmadığından, kullanımlarını ve özelliklerini belgelemeye karar verdim.

Özellikleri

  • Çoklu Grafiğin Çizilmesi
  • Çevrimdışı
  • Grafiği Otomatik Yeniden Boyutlandır
  • Negatif Değer grafiklerini destekler
  • X ekseni boyunca otomatik kaydırma
  • Her değişken için farklı renkler

Uygulamalar

  • Çevrimdışı Veri Görselleştirme
  • Kod Sorun Giderme
  • Dalga Formu Analizi

Gerekli Parçalar

Arduino - AliExpress veya Arduino Başlangıç Seti - AliExpress

Adım 1: Bir Grafik Çizmek

resim
resim

Arduino IDE'nin (1.6.7 veya üstü) en son sürümünü yüklediğinize göre, Seri Çizici'nin gerçekte nasıl çalıştığını anlama zamanı. Arduino Seri Çizici, USB bağlantısı üzerinden gelen seri veri değerlerini alır ve X/Y ekseni boyunca verilerin grafiğini çizebilir, sadece Seri Monitöre tükürülen sayıları görmenin ötesinde. Dikey Y ekseni, çıktının değeri arttıkça veya azaldıkça kendini otomatik olarak ayarlar ve X ekseni, eksenin her işareti yürütülen bir Serial.println() komutuna eşit olan sabit bir 500 noktalı eksendir. Başka bir deyişle, Serial.println() her yeni bir değerle güncellendiğinde grafik X ekseni boyunca güncellenir.

resim
resim
resim
resim

Seri Çizicinin Baud Hızını kodunkiyle eşleşecek şekilde ayarlamayı unutmayın.

Çoklu Parseller

Birden çok dalga biçimini görüntülerken, her bir ayrı değişken/değer/parametre aşağıda gösterildiği gibi farklı bir renk kullanılarak görüntülenir.

resim
resim

Birden fazla değişkeni veya dalga biçimini aynı anda çizmek için iki yazdırma ifadesi arasında bir 'boşluk' yazdırılır.

Serial.print(sıcaklık);

Seri.print(" "); Serial.println(nem);

VEYA

Serial.print(sıcaklık);

Seri.print("\t"); Seri.println(nem);

Bu durumda, 'sıcaklık ve nem' değişkenlerinin değerleri, aynı grafik üzerinde eş zamanlı olarak çizilen ayrı dalga biçimlerine sahip olacaktır.

2. Adım: Çevrimdışı Veri Görselleştirme

Image
Image

Nem Sensörü Verilerini görselleştirmek ve çizmek için Otomatik Bitki Sulama Sistemimde Arduino Seri Monitörü kullandım.

resim
resim

Seri çiziciye sahip olmanın temel amacı, bir sensörden veya projenizden gelen verileri görselleştirmek için internete bağlı olmanıza gerek olmamasıdır. Ve bu nedenle, Veri Görselleştirme amacıyla Seri çizici işinde üstündür.

İster tekil bir dalga ister çoklu çizim grafiği olsun, Seri Çizici kendisini otomatik olarak yeniden boyutlandırır ve her dalgayı renk kodlar. Veri Görselleştirme işlevini test etmek için aşağıdaki adımları takip edebilirsiniz:

  1. Arduino'nuza birkaç sensör bağlayın
  2. Sensörlerin değerlerini yazdırın ve kodu yükleyin.

  3. Seri Plotter'ı açın.
resim
resim

Hava Durumu İstasyonundaki çeşitli sensörlerin okumasını görselleştirmek için Tweeting Hava İstasyonumda Seri Çiziciyi kullandım. Yukarıdaki dalga formları, SL-HS-220 sensörünün Sıcaklık(26°C) ve Nem(65%RH) okumalarının grafiğini göstermektedir.

3. Adım: Sorun Giderme

Seri Çizicinin en iyi kullanımlarından biri, kod ve devre sorunlarını gidermektir. Hatalı bağlantılar veya hatalı kodlama mantığı bazen istenmeyen bir çıktı döndürebilir. Hata ayıklamak için çok fazla kod satırının veya çok fazla kablonun olduğu bu gibi durumlarda, Seri Çizici tam hata noktasını gösterebilir.

Seri Plotter yardımıyla sensör okumasının yanlış olup olmadığını veya sensörün Arduino'ya düzgün bağlanmamış olup olmadığını kontrol edebilirsiniz. Seri Plotter ayrıca çeşitli koşullu ifadelerin ve değişkenlerin değerlerini ve hatta Arduino'nun pinlerinin durumlarını görüntüleyerek kodun hata ayıklamasına yardımcı olacaktır.

resim
resim

İyi bir örnek, bir Engelden Kaçınma Robotunda sorun giderme olabilir. Bu örnekte Mavi dalga biçimi Ultrasonik sensörü ve Sarı ve Kırmızı dalga biçimleri sol ve sağ motorları temsil etmektedir. Engel ve robot arasındaki mesafe azaldıkça Mavi dalga formu azalır. 10'luk bir eşik değerinde (minimum mesafe) robot sağa döner, bu nedenle iki motorun değerleri farklıdır;Sağ=50, Sol=100. Sağa dönüşü temsil eden Kırmızı dalga biçiminin azaldığını ve Sarı dalga biçiminin sabit hızda kaldığını görebilirsiniz.

Bir kablonun düzgün bağlanmamış olması veya bir bileşenin arızalı olması veya kodlama mantığınızın yanlış olup olmadığını gidermek size çok zaman kaybettirirdi. Ancak Seri Plotter'ın yardımıyla, dalga formlarını analiz ederek sorunu gidermek için gereken süre önemli ölçüde azaltılabilir.

resim
resim

Adım 4: İşlev Oluşturma ve Analiz

resim
resim

Temel bir programlama anlayışı ve birkaç satır kod ile Arduino, bir Fonksiyon Üreticisi olarak hareket edebilir. Arduino, Kare, Üçgen, Sinüs ve Testere Dişi dalga formları üretebilir. Arduino IDE'nin önceki sürümlerinde, herhangi bir görselleştirme olmadan yalnızca Seri Monitörde üretilen dalga biçimi türünün değerleri gözlemlenebilirdi. Çıktıyı yalnızca sayısal değerler temelinde analiz etmek zaman alıcı olacaktır; ve burası Seri Plotter'ın kullanışlı olduğu yerdir; üretilen dalga formlarının görselleştirilmesinde.

resim
resim
resim
resim
resim
resim
İşlev Oluşturucu.ino
İşlev Oluşturucu.ino

İşlev Oluşturucu.ino

Adım 5: Gelecekteki İyileştirme ve Eklemeler

resim
resim

Arduino IDE, Seri Çizici'nin eklenmesine uzun süredir ihtiyaç duyuyordu. Arduino IDE'nin işlevselliğini artırdı ancak yine de bazı özelliklerden yoksun:

  • Otomatik Kaydırma Geçişi
  • Seri Plotter ve Seri Monitörün eşzamanlı kullanımı.
  • X ekseni Ölçeği/Zaman ölçeği gerekli.

Arduino IDE'ye bu özellikler eklendikçe, bu Instructable'da değişiklikler yapmaya ve yeni adımlar eklemeye devam edeceğim.

Önerilen: