İçindekiler:

Parlak Yollar (MST Öğretimi): 5 Adım
Parlak Yollar (MST Öğretimi): 5 Adım

Video: Parlak Yollar (MST Öğretimi): 5 Adım

Video: Parlak Yollar (MST Öğretimi): 5 Adım
Video: 7 Hamlede Mat Edebileceğiniz Satranç Açılışı 2024, Kasım
Anonim
Parlak Yollar (MST Öğretimi)
Parlak Yollar (MST Öğretimi)

Bright Paths'ın amacı, öğrencilere Minimum Yayılan Ağaçlar (MST'ler) hakkında bilgi vermektir. Düğüm A kaynaktır ve diğer tüm düğümlerin onlara ulaşmak için belirli bir ağırlığı (maliyeti) vardır. Bu öğretim yardımı, o düğümün maliyetine bağlı olarak her bir düğümü karartarak maliyeti gösterir. Düğümlerden teslimat gerektiren mağazalarmış gibi bahsetmeyi planlıyorum ve izlenen yola bağlı olarak hafif (ağırlık) maliyeti çok fazla olacak. Bunun sonucu, ağırlığa bağlı olarak ya sönen ya da sönen bir LED'dir. Genel olarak, bu sorunu öğrenciler için basitleştirmenin harika bir yolu. Bu problem Gezgin Satıcı Problemi olarak da bilinir.

1. Adım: Araçlar ve Malzemeler

Araçlar ve Malzemeler
Araçlar ve Malzemeler

Gereçler

  • MST'nizi tutmak için köpük çekirdek
  • Beadboard'unuzu MST'ye bağlamak için bazı Jumper Wires
  • Arduino'yu breadboard'a bağlamak için bazı Jumper Telleri
  • Düğümleri temsil etmek için aynı renkte sekiz LED
  • LED'ler için sekiz 220ohm Direnç
  • Parlaklıkları kontrol etmek için bir Arduino
  • Daha fazla PWM çıkışı elde etmek için bir Shift Register

Aletler

  • LED'leri tutmak için Sıcak Tutkal Tabancası
  • MST'yi çizmek için Sanat Malzemeleri
  • Programlama için bilgisayar

Adım 2: MST için Çizim ve LED'ler

MST için çizim ve LED'ler
MST için çizim ve LED'ler
MST için çizim ve LED'ler
MST için çizim ve LED'ler
MST için çizim ve LED'ler
MST için çizim ve LED'ler
  1. Eski bir ders kitabımdan bir tane yazdırdım ve baskıdaki düğümlerden köpük göbeğe delikler açtım.
  2. Kenarları kendi ağırlıklarıyla köpük çekirdeğin üzerine çizdim ve ayrıca A-H düğümlerini de etiketledim.
  3. Uzun pimi yukarı bakacak şekilde LED'leri tahtadan (düğümlerin üstünde) ittim, böylece sinyali daha sonra hangi pime göndereceğimi biliyordum. Ayrıca, yerinde tutmak için pimleri aşağı doğru itin.
  4. LED'leri yerine sıcak yapıştırın.
  5. Dişi ve erkek kabloları LED pinlerine yerleştirin. Yüksek pimlerimize veya yukarı bakanlara daha açık renkli teller yaptım.

3. Adım: Breadboard

ekmek tahtası
ekmek tahtası
ekmek tahtası
ekmek tahtası
ekmek tahtası
ekmek tahtası

Sparkfun'un vardiya kaydı için harika bir kılavuzu var ve bunu tüm kablolama için takip edebilirsiniz. Tek fark, LED'lerin doğrudan panoya değil, uzun atlama kablolarıyla bağlanmasıdır. Kodum için, MST'de A-H ile shift register satırındaki 0-7 pini.

4. Adım: Kod

kod
kod
kod
kod

Kodun amacı, düğümlerin ağırlıklarına göre LED'lerin parlaklığını değiştirmektir. Sağdaki resimde, wgtA'dan wgtH'ye kadar olan değerleri gösterir. Bunlar belirli bir LED üzerindeki ağırlık miktarını göstermek için değiştirebileceğiniz değerlerdir. Parlaklıktaki değişiklik şu şekilde sağlanır:

sr.set(ledA, 255/wgtA*1.1)

Bu çizgi, ışığı görünür tutmak için led'i maksimum parlaklığa bölünen ağırlık çarpı bir miktara ayarlar. Ağırlık arttıkça parlaklık azalabilir ve bu her LED için yapılır.

Adım 5: Sorunlar ve Gelecek

Sorunlar ve Gelecek
Sorunlar ve Gelecek

Bu projeye dört mavi LED ve dört yeşil LED ile başladım ancak parlaklıkları karşılaştırmaya çalışırken bir sorunla karşılaştım. Bunu dört tane daha mavi bularak düzelttim, ancak LED'leri seçerken bunu aklınızda bulundurun. Ayrıca Arduino'yu, devre tahtasını ve dizüstü bilgisayarı ayrı taşımam gerekiyor, bu nedenle Arduino'yu ve devre tahtasını tutacak bir muhafaza yapmak gelecekteki harika bir gelişme olurdu. Hangi yolun alındığını görselleştirmeye yardımcı olmak için LED'lere animasyonlar eklemek de harika olurdu. Genel olarak, MST'lerin nasıl çalıştığını göstermenin harika bir yolu ve onu daha fazla kullanmayı dört gözle bekliyorum.

Önerilen: