Inhoudsopgave:

Kerstboomlicht bestuurd door een stuk speelgoed. 12 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Kerstboomlicht bestuurd door een stuk speelgoed. 12 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"

Video: Kerstboomlicht bestuurd door een stuk speelgoed. 12 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"

Video: Kerstboomlicht bestuurd door een stuk speelgoed. 12 stappen (met afbeeldingen) Antwoorden op al uw
Video: Wacht tot je Ziet hoe de Mooiste Tweeling ter Wereld er NU Uitziet! 2024, November
Anonim
Image
Image
Voorbereiding. Loden strip
Voorbereiding. Loden strip

Gegroet makers!

Kerst en nieuwjaar komen eraan. Het betekent een feeststemming, cadeaus en natuurlijk een kerstboom versierd met felle kleurrijke lichtjes.

Voor mij zijn kerstverlichting op de massamarkt te saai. Om kinderen een plezier te doen, heb ik een unieke kerstboomversiering gemaakt die wordt bestuurd door speelgoed.

In deze handleiding ga ik je vertellen hoe je het kunt maken.

Stap 1: Het idee

Het idee is om bijvoorbeeld een zacht stuk speelgoed onder de kerstboom te leggen en het slim te maken. Ik wil dat een speeltje de kleur van een vaststaand object kan lezen en een boom in deze kleur kan schilderen. Het wordt dus een leuk spel voor kinderen die verschillende dingen kunnen gebruiken om de kerstboom in verschillende kleuren te schilderen.

Stap 2: Voorbereiding. Loden strip

Voorbereiding. Loden strip
Voorbereiding. Loden strip
Voorbereiding. Loden strip
Voorbereiding. Loden strip
Voorbereiding. Loden strip
Voorbereiding. Loden strip

Eerst moet ik een vervanger vinden voor de gebruikelijke kerstverlichting.

Nieuwe lampen moeten helder en gekleurd zijn en, belangrijker nog, ze moeten gemakkelijk te programmeren zijn.

Voor kerstverlichting koos ik voor adresseerbare programmeerbare digitale RGB ws2812b ledstrip. Deze LED strips zijn erg populair, je vindt ze overal. Ze zijn eenvoudig aan te sluiten op verschillende Arduino-controllers. Dergelijke LED's worden verkocht in banden van enkele tientallen stuks en worden gevoed door 5 12 of 24 V DC. U kunt meerdere banden achter elkaar koppelen en een groot aantal LED's beheren.

Ik vond een paar van dergelijke strips thuis. Mijn strips hebben elk 50 LED's en worden aangedreven door 5 V DC.

2 x WS2812B voorgesoldeerde LED-module String-knooppunten ~ 18 $

Hier is een mogelijke vervanging van de Amazon-winkel:

  • WS2812b 5m 60leds/pixels/m Flexibele individueel adresseerbare ledstrip
  • ALITOVE 16.4ft WS2812B individueel adresseerbare LED-stripverlichting

LED-tapes hebben veel variëteiten. Ze verschillen in het aantal LED's, de afstand tussen de LED's, groepering, voedingsspanning, etc. Kies wat je wilt.

Voor mijn speelgoed heb ik een kleine kerstboom gemaakt, dus 100 LED's zijn genoeg voor mij.

Stap 3: Voorbereiding. Speelgoed

Voorbereiding. Speelgoed
Voorbereiding. Speelgoed
Voorbereiding. Speelgoed
Voorbereiding. Speelgoed

Zoek het speeltje en beslis waar je de ledstripcontroller plaatst.

Deze stap is de belangrijkste omdat het resultaat door kinderen wordt geëvalueerd =).

In een nabijgelegen speelgoedwinkel vond ik een prachtige nieuwjaarsbeer. Je kunt een speeltje dat je al hebt verbeteren.

Ik besloot de LED-stripcontroller te bedekken met een stof en deze aan berenpoten te naaien. Ik wil dat de beer eruitziet alsof hij een cadeautje vasthoudt.

Ik kocht twee stukken stof met grappige patronen. De ene is zacht voor de ondergrond en de tweede is dun voor de toplaag.

Stap 4: Voorbereiding. Elektronica

Voorbereiding. Elektronica
Voorbereiding. Elektronica
Voorbereiding. Elektronica
Voorbereiding. Elektronica
Voorbereiding. Elektronica
Voorbereiding. Elektronica

Je hebt wat elektronische componenten nodig om speelgoed slimmer te maken.

Ik gebruik breakout-boards en Arduino-schilden uit de Amperka-winkel. Wat mij betreft, ze zijn erg handig vanwege een modulaire opbouw. Modules kunnen eenvoudig worden gecombineerd zonder te solderen.

U vindt het misschien moeilijk om ze te kopen, dus ik voeg links toe met een mogelijke vervanging.

Controller

Ik gebruik ESP-12 ontwikkelbord op basis van de ESP8266-chip. Deze boards zijn super klein en hebben voldoende functionaliteit. Goede keuze voor kleine projecten die weinig ruimte nodig hebben, zelfs als je geen wifi gebruikt en geen internetverbinding hebt.

1 x Amperka wifi-slot ~ 19$

Ik gebruik dit ontwikkelbord omdat het compatibel is met andere modules van dezelfde fabrikant.

Het heeft ook een vierkante vorm! Het zou gemakkelijk in een kleine geschenkdoos voor de beer moeten passen.

Mogelijke vervanging:

  • ESP-12E NODEMCU
  • WEMOS D1 MINI

Kleursensor

Om de kleur te bepalen gebruik ik Amperka Troyka TCS34725 kleurensensor breakout board. Mijn sensor is compatibel met de controllerkaart, maar deze kan worden vervangen door deze:

1 x RGB-kleurensensor met IR-filter en witte LED - TCS34725 ~ 8 $

Deze sensor gebruikt een I2C-interface voor communicatie. Het heeft ingebouwde heldere LED en uitgebreide instellingen zoals kleurversterking of kleurintegratie voor een nauwkeurigere herkenning.

Knop

Een eenvoudige Arduino-compatibele knop. Ik gebruik het als een aanraaksensor en laat de controller weten dat het nodig is om de kleur van een nieuw item te lezen.

1 x Amperka Troyka-knopmodule ~ 1 $

Mogelijke vervanging:

  • Adafruit Drukknop Power Switch Breakout
  • Elektronische bouwstenen-knopmodule

AC-DC spanningsomvormer

Om de LED-strip en controller van stroom te voorzien, heb ik de AC-DC 5V 8A-voeding gekocht.

1 x 5V 8.0A 40W voeding ~16$

Mijn ledstrip wordt gevoed door 5V. 8A stroom is genoeg voor een enorm aantal LED's. Ik voed ook de ESP-controller van deze voeding. Koop voedingen in geïsoleerde behuizingen, zonder open contactvlakken!

Mogelijke vervanging:

  • ALITOVE 5V 8A 40W AC naar DC-adapter Voedingsconverter
  • MEAN WELL originele LPV-60-5 5V 8A meanwell LPV-60 5V 40W

Optioneel:

DC-DC-spanningsomvormer en WS2812b-stuurprogramma

Voor Arduino-controllers kan de signaaldraad van de ws2812b LED-strip direct worden aangesloten op pinnen op het controllerbord. De meeste pinnen van ESP8266-ontwikkelkaarten zijn niet compatibel met 5V-logica. Het is nu beter om de ledstrip direct op dergelijke controllers aan te sluiten. Om dit probleem op te lossen gebruik ik deze module.

1 x Amperka Troyka ws2812 LED-strip driver ~ 9 $

Ik gebruik deze module omdat hij gemakkelijk aan mijn controller kan worden bevestigd. Ook heeft de module een 5 Volt logische buffer en DC-DC spanning Converter 5 of 3,3V. Op deze manier kan de ESP-controller worden gevoed door één draad samen met 12 of 24V LED-strip.

Stap 5: Montage. Elektronica

In elkaar zetten. Elektronica
In elkaar zetten. Elektronica
In elkaar zetten. Elektronica
In elkaar zetten. Elektronica
In elkaar zetten. Elektronica
In elkaar zetten. Elektronica
In elkaar zetten. Elektronica
In elkaar zetten. Elektronica

Monteer elektronische componenten. Ik heb mijn componenten aangesloten zoals weergegeven in het bijgevoegde schema.

Het schema kan verschillen afhankelijk van uw componenten, maar de betekenis blijft hetzelfde.

  • Sluit een knop aan op de controller. Ik heb hem aangesloten op pin A2 Esp8266. Als u geen module gebruikt, kunt u een gewone drukknop via een weerstand aansluiten.
  • Sluit een kleursensor aan op de controller. TCS34725 breakout-kaarten voor kleurensensoren communiceren via de I2C-bus. Koppel SDA- en SCL-pinnen tussen de sensor en de controller. Als uw sensorkaart een LED-pin heeft om de geïntegreerde LED te bedienen, sluit deze dan aan. Ik heb mijn LED-pin gekoppeld aan de A0 Esp8266-pin.
  • Sluit het ene uiteinde van de ledstrip aan op de controller. ws2812b LED-strip wordt aangesloten op een controller met behulp van de DI-pin. De logische spanning voor ws2812b LED-strips is 5V. Als je Arduino-achtige boards gebruikt, kun je de DI-pin rechtstreeks op de pin van de controller aansluiten. De spanning op logisch niveau voor de meeste Esp8266-kaarten is 3,3 V, dus gebruik een logisch niveau-converter of de LED-stripdriver. Ik heb DI Strip-draad aan het driverbord gesoldeerd en het driverbord aangesloten op de A5 Esp8266-pin.
  • Bevestig een ander uiteinde van de LED-strip aan de voeding. Die met de DO-pin. Soldeer indien nodig de stekker aan de voeding. Vergeet niet de draden te isoleren.

Mijn ws2812b ledstrip wordt gevoed door 5V. Ik heb zowel de strip als de controller van stroom voorzien via een enkele AC-DC 5V-voeding. Als uw LED-strip op 12 of 24V werkt, gebruik dan de downgrading-spanningsomvormer om alle elektronica van stroom te voorzien vanaf een enkele voeding.

Stap 6: XOD

XOD
XOD
XOD
XOD

Laten we de controller programmeren.

Net als in mijn vorige projecten gebruik ik de XOD visuele programmeeromgeving voor controllerfirmware.

Ik heb een aantal bibliotheken gepubliceerd die je nodig hebt om een programma te maken. Zorg er dus voor dat u ze toevoegt aan uw XOD-werkruimte.

  • gabbapeople/christmas-tree - Bibliotheek bevat ws2811 Neopixel-stuurprogramma en de wrapper voor een tcs34725-kleurensensor.
  • gabbapeople/color - Bibliotheek om met kleur te werken in XOD.

Vervolgens ga ik beschrijven hoe dit apparaat in XOD te programmeren.

Stap 7: Programmeren

Programmering
Programmering
Programmering
Programmering
Programmering
Programmering
Programmering
Programmering

Hier zijn knooppunten die u nodig hebt:

Het tsc-color-sensorknooppunt.

Dit is het eerste knooppunt dat op de patch wordt geplaatst. Het wordt gebruikt om de kleurwaarde van de sensor te meten. Node gebruikt de I2C-interface om gegevens uit te wisselen.

De kleursensor detecteert de kleur van het oppervlak in de RGB-schaal. Kleur is het resultaat van interactie tussen een lichtbron, een object en een waarnemer. In het geval van gereflecteerd licht, zal licht dat op een object valt, worden gereflecteerd of geabsorbeerd, afhankelijk van de oppervlakte-eigenschappen. De meeste kleurensensoren bevatten een witlichtzender en drie lichtintensiteitssensoren met kleurfilters.

  • LED- en LUM-ingangspinnen zijn voor de ingebouwde LED op het breakout-bord van de sensor. Deze ingebouwde LED is een lichtgever van de sensor. Volgens mijn schema plaats ik de A0-waarde op de LED-pin en stel de 1 luminantiewaarde in op de LUM-pin.
  • De IT-pin stelt de waarde van de integratietijd in. Deze factor beschrijft een aantal cycli om een kleur te integreren. Mogelijke waarden van IT zijn 1, 10, 20, 42, 64, 256.
  • De GAIN-pinwaarde is een versterkingsfactor. Deze coëfficiënt versterkt de kleur. U kunt de kleurwaarde 4, 16 of 60 keer verhogen. U kunt de kleur niet verbeteren. Dan moet de waarde op de GAIN-pin gelijk zijn aan 1. Ik kreeg het meest nauwkeurige resultaat met de 20 IT-waarde en 60 GAIN-waarde.
  • De INIT-pin activeert de initialisatie van de sensor en stelt aangepaste factoren in. Ik verander de INIT-pinwaarde in Bij opstarten.
  • De UPD-pin activeert een nieuwe sensormeting. Laat deze waarde Continu zijn.

De tcs-color-node voert een kleurwaarde uit in de vorm van een aangepast kleurtype.

Het WS2811-knooppunt

Dit knooppunt wordt gebruikt om de ledstrip of matrix op te zetten.

  • DI-pin is voor het bordpoortnummer waarop de ledstrip of matrix is aangesloten. Volgens mijn schema heb ik er de A5-waarde aan gegeven.
  • Zet het aantal gebruikte LED's op de SIZE-pin. Ik heb 2 ledstrips van 50 diodes met elkaar verbonden, dus ik heb de SIZE-waarde op 100 gezet.
  • De B-pin stelt de algehele helderheid voor alle LED's in een bereik van 0 tot 100 in. Ik stel de helderheid in op 80.

Dit knooppunt initialiseert uw LED-strip of matrix en construeert een aangepast type ws2811 voor verdere bewerkingen.

Het knooppunt voor alle kleuren

Wanneer de ws2811 node is geïnstalleerd, kunt u de ledstrip met verschillende functionele nodes aansturen.

  • kleur-allemaal. Node schildert alle LED's op de strip of matrix in een geselecteerde kleur.
  • kleur-pixel. Knooppunt kleurt bepaalde LED op de strip in de gekozen kleur. Zet het pixelnummer op de PN-pin.
  • kleur-n-pixels. Knooppunt kleurt een groep van N LED's in de geselecteerde kleur. Specificeer het start-LED-nummer van de groep met behulp van de STRT-pin. Specificeer de ordelijkheid van een groep bij de STEP-pin. Als u bijvoorbeeld elke tweede LED wilt schilderen, beginnend met het cijfer 30 en eindigend met het cijfer 70, stelt u de volgende waarden in: STRT = 30; N = 40 (70 - 30); STAP = 2.

In dit project bedien ik alle LED's tegelijkertijd en gebruik ik de color-all node.

Ik koppel de eerste invoerpin van het color-all-knooppunt met de uitvoerpin van het ws2811-knooppunt. Vervolgens koppel ik de input CLR-pin die de kleurwaarde neemt aan de output-pin van de sensor.

Een puls op de SET-pin van het color-all-knooppunt activeert een nieuwe kleurenset.

Het knoopknooppunt

Ik gebruik de knop om de controller te informeren over een nieuw object voor de kleurensensor. Hiervoor plaats ik het knoopknooppunt op de patch en koppel ik de output PRS-pin met de SET-pin van het color-all-knooppunt. Op deze manier genereert het klikken op de knop een pulssignaal om de kleur te veranderen.

Ik heb de knop aan de A2 Esp8266-pin bevestigd, dus ik heb de A2-waarde op de PORT-pin gezet.

Het zuiveringsknooppunt

De kleurensensor kan kleurwaarden in een enorm bereik weergeven. Maar de ledstrip kan geen tussentinten weergeven. Om dit op te lossen gebruik ik alleen zogenaamde pure kleuren. Ze hebben een willekeurige tint, maar hebben altijd hun verzadiging maximaal. Om een kleurwaarde te zuiveren plaats ik de purify node tussen tsc-color-sensor en color-all nodes.

De patch is klaar. Druk op Deploy, kies het boardtype en upload het naar het apparaat.

Stap 8: Montage. Kader

In elkaar zetten. Kader
In elkaar zetten. Kader
In elkaar zetten. Kader
In elkaar zetten. Kader
In elkaar zetten. Kader
In elkaar zetten. Kader

Ik kan beginnen met het maken van een zachte hoes en ervoor zorgen dat het apparaat werkt zoals het hoort.

Als lijst heb ik een patroon van de doos op dik karton gedrukt.

Buig vervolgens de zijkanten van de doos en maak een vierkant gat voor de kleurensensor.

Opmerking:

Ik heb deze koffer speciaal gemaakt voor mijn elektronische componenten, die waarschijnlijk verschillen van de jouwe. De koffer is niet universeel, bovendien kun je een heel ander speeltje hebben. Gebruik dus fantasie!

Stap 9: Montage. Kleding stof

In elkaar zetten. Kleding stof
In elkaar zetten. Kleding stof
In elkaar zetten. Kleding stof
In elkaar zetten. Kleding stof
In elkaar zetten. Kleding stof
In elkaar zetten. Kleding stof

Ik heb twee verschillende stoffen op elkaar geplakt.

Zachte dikke stof is voor volume en dun is voor uiterlijk. In beide stoffen heb ik ook een gat gemaakt voor de sensor.

Ik heb het kartonnen frame op de stof bevestigd met gewoon plakband. Op dezelfde manier heb ik de randen van het gat gefixeerd.

Daarna knipte ik extra stukken stof af en naaide de contour van het gat van binnenuit met de hand.

Ik moet zeggen dat ik niet de beste naaister ben, dus oordeel niet over de kwaliteit. =)

Stap 10: Montage. Zacht hoesje

In elkaar zetten. Zacht hoesje
In elkaar zetten. Zacht hoesje
In elkaar zetten. Zacht hoesje
In elkaar zetten. Zacht hoesje
In elkaar zetten. Zacht hoesje
In elkaar zetten. Zacht hoesje
In elkaar zetten. Zacht hoesje
In elkaar zetten. Zacht hoesje

Ik heb de stof uitgerekt en met hetzelfde plakband vastgezet. De tape blijft in de behuizing en is niet zichtbaar.

Vervolgens plaatste ik het apparaat in een frame en naaide het volledig rond de contour, behalve een hoek waar de draden gaan.

Stap 11: Montage. Speelgoed en apparaat

In elkaar zetten. Speelgoed en apparaat
In elkaar zetten. Speelgoed en apparaat
In elkaar zetten. Speelgoed en apparaat
In elkaar zetten. Speelgoed en apparaat
In elkaar zetten. Speelgoed en apparaat
In elkaar zetten. Speelgoed en apparaat

Ik naaide mijn apparaat aan de poten van een teddybeer.

Ik wilde dat het eruitzag alsof hij een klein kerstcadeautje vasthield.

Stap 12: Resultaat

Resultaat
Resultaat
Resultaat
Resultaat

Zodra het apparaat is geprogrammeerd en op het speelgoed is bevestigd, kunt u de LED-strip aansluiten en het speelgoed onder de boom leggen!

Bevestig gekleurde voorwerpen aan het teddyberencadeau en de boom wordt in dezelfde kleur geverfd!

Abonneer je als je dit mini-project leuk vindt! =)

Er zullen veel verschillende grappige instructies zijn.

Aanbevolen: