Inhoudsopgave:

Bright Paths (MST aanleren): 5 stappen
Bright Paths (MST aanleren): 5 stappen

Video: Bright Paths (MST aanleren): 5 stappen

Video: Bright Paths (MST aanleren): 5 stappen
Video: 5 helderzienden en Channel's VOORSPELLINGEN voor de MENSHEID in 2024! GROTE VERANDERING KOMT BI... 2024, Juli-
Anonim
Bright Paths (MST doceren)
Bright Paths (MST doceren)

Het doel van Bright Paths is om studenten te leren over Minimum Spanning Trees (MST's). Knooppunt A is de bron en alle andere knooppunten hebben een bepaald gewicht (kosten) om ze te bereiken. Dit leerhulpmiddel laat die kosten zien door elk knooppunt te dimmen, afhankelijk van de kosten voor dat knooppunt. Ik ben van plan over de knooppunten te praten alsof het winkels zijn die leveringen nodig hebben en afhankelijk van het pad dat wordt genomen, zullen de kosten van licht (gewicht) te hoog zijn. Het resultaat hiervan is een LED die, afhankelijk van het gewicht, ofwel gedimd of uit is. Al met al een geweldige manier om dit probleem voor studenten te vereenvoudigen. Dit probleem wordt ook wel het handelsreizigersprobleem genoemd.

Stap 1: Gereedschap en benodigdheden

Gereedschappen en benodigdheden
Gereedschappen en benodigdheden

Benodigdheden

  • Foamcore om je MST vast te houden
  • Enkele jumperdraden om je beadboard aan te sluiten op de MST
  • Enkele jumperdraden om de Arduino op het breadboard aan te sluiten
  • Acht LED's, van dezelfde kleur, om knooppunten weer te geven
  • Acht 220ohm weerstanden voor de LED's
  • Een Arduino om de helderheid te regelen
  • Een Shift Register om meer PWM-uitgangen te krijgen

Gereedschap

  • Heet lijmpistool om de LED's vast te houden
  • Kunstbenodigdheden om de MST. te tekenen
  • Computer om te programmeren

Stap 2: Tekening en LED's voor de MST

Tekening en LED's voor de MST
Tekening en LED's voor de MST
Tekening en LED's voor de MST
Tekening en LED's voor de MST
Tekening en LED's voor de MST
Tekening en LED's voor de MST
  1. Ik drukte er een uit een oud leerboek van mij en prikte gaten, door de knooppunten op de afdruk, in de schuimkern.
  2. Ik tekende de randen met hun respectieve gewichten op de schuimkern en labelde ook de knooppunten A-H.
  3. Ik duwde de LED's door het bord (bovenop de knooppunten) en hield de lange pin naar boven gericht, zodat ik wist naar welke pin ik het signaal later moest sturen. Duw ook de pinnen naar beneden om ze op hun plaats te houden.
  4. Heet lijm de LED's op hun plaats.
  5. Plaats de vrouwelijke naar mannelijke draden op de LED-pinnen. Ik deed lichter gekleurde draden op onze hoge pinnen, of degenen die naar boven gericht waren.

Stap 3: Breadboard

Breadboard
Breadboard
Breadboard
Breadboard
Breadboard
Breadboard

Sparkfun heeft een geweldige handleiding voor het schakelregister en je kunt dit volgen voor alle bedrading. Het enige verschil is dat de LED's worden aangesloten via de lange startkabels, niet rechtstreeks op het bord. Voor mijn code, pin 0-7 op het schuifregister in lijn met A-H op de MST.

Stap 4: Coderen

Code
Code
Code
Code

Het doel van de code is om de helderheid van de LED's te wijzigen op basis van het gewicht van de knooppunten. Op de afbeelding rechts ziet u de wgtA tot en met wgtH. Dit zijn de waarden die u kunt wijzigen om de hoeveelheid gewicht op een bepaalde LED weer te geven. De verandering in helderheid wordt bereikt door:

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

Deze lijn stelt de led in op de maximale helderheid gedeeld door het gewicht maal een hoeveelheid om het licht zichtbaar te houden. De helderheid kan dan afnemen naarmate het gewicht toeneemt en dit wordt gedaan voor elke LED.

Stap 5: Problemen en toekomst

Problemen en toekomst
Problemen en toekomst

Ik begon dit project met vier blauwe LED's en vier groene LED's, maar ik kwam een probleem tegen bij het vergelijken van helderheid. Ik heb dit opgelost door nog vier blauwe te vinden, maar houd hier rekening mee bij het kiezen van LED's. Ik moet ook de Arduino, het breadboard en de laptop afzonderlijk dragen, dus het zou een grote verbetering zijn om een behuizing te maken voor de Arduino en het breadboard. Het zou ook cool zijn om animaties aan de LED's toe te voegen om te visualiseren welk pad wordt genomen. Al met al een geweldige manier om te laten zien hoe MST's werken en ik kijk ernaar uit om het vaker te gebruiken.

Aanbevolen: