Inhoudsopgave:
- Stap 1: Soldeer de printplaat
- Stap 2: Flash de ATTiny
- Stap 3: Stuur een code vanaf uw Raspberry Pi
- Stap 4: Maak een Behuizing
Video: RC-gestuurde RGB-ledstrip - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
Creëer je eigen rc-gestuurde led-strip voor individuele kamerverlichting!
De meeste rgb-led-strips worden aangestuurd door een infrarood afstandsbediening. Om het aan of uit te zetten of de kleur te veranderen, moet je voor de ontvanger blijven. Dit is saai en niet echt slim. Om het licht op een koelere manier te regelen, heb ik een rc-gestuurd bord ontwikkeld om de juiste kleur van de strip in te stellen. De rc-code kan worden verzonden vanaf een raspberry pi, denk aan IFTTT. Dat is een stuk slimmer dan de ir-afstandsbediening.
Dingen die je nodig hebt:
- rgb-led-strip, dit zou bijvoorbeeld voldoende zijn
- ATtiny85
- 433 MHz ontvanger (en optioneel zender)
- 5v regelaar (L7805)
- 3 NPN-transistoren, ik heb een darlingtonarray gebruikt
- 1 µF condensator
- 10 µF condensator
- 12v voeding
- strip printplaat
- meerdere draden
- ATTiny programmeur, arduino-mega of arduino-uno
- optioneel raspberry pi om signalen te verzenden
Stap 1: Soldeer de printplaat
Als je alle componenten hebt, moet je de printplaat solderen.
De led-strip heeft 12v nodig, de ATTiny en de rc ontvanger hebben 5v nodig, daardoor krijgt het circuit 12v.
Voor de ATTiny en de rc-ontvanger gebruik ik de 5v-regelaar, mijn circuit is geïnspireerd door sooraj619
Het bord schakelt de drie kleuren rood, groen en blauw in een tijdschema van 3 ms naar de led-strip. Elke kleur in het juiste percentage om de opgegeven kleur te bereiken. Door een tijdsduur van de dienstregeling met 3 ms zie je niet de drie kleuren rood groen en blauw verwisselen, maar juist de juiste kleur (bijvoorbeeld geel gemengd door rood en groen). In mijn gereedschapskist zat een darlingtonarray, daarom heb ik deze array gebruikt om de kleuren te wisselen. U kunt elke NPN-transistor gebruiken.
Vergeet niet een antenne van 17 cm op de ontvanger.
Stap 2: Flash de ATTiny
Nu is het tijd om de ATTiny te flashen met de juiste Arduino-schets.
Om de microcontroller te flashen, heb ik de arduino ide gebruikt. Ik heb geen programmeur, dus ik gebruikte mijn arduino-mega. Je kunt je arduino-uno of je arduino-mega gebruiken om de ATTiny te flashen, zoals hier of hier beschreven
De sketch gebruikt de rc switch library om het signaal te ontvangen, deze kun je hier downloaden.
De rc-switchbibliotheek is geschreven voor de arduino-kaarten en gebruikt daarom enkele routines die niet beschikbaar zijn in de ATTiny-microcontroller. Vanwege de ATTiny initialiseert de regel 153 tot 165 de interrupt op een zeer radicale manier. Je moet ook de methode 'handleInterrupt' van 'private' naar 'public' maken in de rc switch bibliotheek.
Stap 3: Stuur een code vanaf uw Raspberry Pi
Nu is het tijd om het licht aan te doen.
Om een signaal te sturen moet je de rasperry pi verbinden met de rc zender. Verschillende websites demonstreren het verzenden van rc-codes met de raspberry pi. Bijvoorbeeld hier, hier en hier. De afbeelding toont de ledstrip achter een tv-scherm, maar dit is een fotomontage van drie afbeeldingen met één kleur.
Een minimaal c programma om een code te versturen kan er als volgt uitzien:
#include "RCSwitch.h" #include
#erbij betrekken
int main(int argc, char *argv) {
int-PIN = 0;
int bericht = atoi(argv[1]);
if (wiringPiSetup () == 1) retourneer 1;
printf("bericht wordt verzonden[%d]\n", bericht);
RCSwitch mijnSwitch = RCSwitch();
mySwitch.enableTransmit(PIN);
mySwitch.send(bericht, 32);
}
De kleur is gecodeerd in een geheel getal met 4 byte. De meest linkse byte moet gelijk zijn aan 10, zie 178 in de schets. De volgende drie bytes bevatten de kleurintensiteit voor elke kleur (rood, groen en blauw).
Om een groen licht met een intensiteit van 66% in te stellen, voert u het commando in: sudo sendInt 167815680, waarbij sendInt het hierboven gecompileerde programma is.
Schakel de led uit met het commando: sudo sendInt 167772160
Stel je de mogelijkheden voor met IFTTT, bijvoorbeeld 3 seconden blauw licht voor een e-mail, groen voor een google-kalendermelding. Dat is een beetje slimmer dan de ir afstandsbediening voor de ontvanger te drukken;)
Stap 4: Maak een Behuizing
Maak een 3D-geprinte behuizing.
Het ontwerp heeft een gat voor de stroomkabel en gaten in de bovenkant om de ledstrip aan te sluiten.
Ik heb Fusion 360 gebruikt om de behuizing te ontwerpen en het resultaat geëxporteerd als een.step-bestand.
Netfabb maakt zowel de vlakvulling als de voorbereiding van de bouwopdracht mogelijk. Ik heb de 3mf bevestigd die de boven- en onderkant van de behuizing bevat. Netfabb ondersteunt ook het maken van gcodes.
Als laatste heb ik een prusa i3 mk2 gebruikt om de behuizing te printen.
Aanbevolen:
Zelfgemaakte RGB-lamp: 4 stappen
Zelfgemaakte RGB-lamp: omdat we thuis allemaal sociale afstand nemen, hebben we meer vrije tijd. Dit is een eenvoudig project dat je kunt maken om je kamer te versieren en ook te verlichten
RGB Pixel Christmas Light Show deel 1: 7 stappen
RGB Pixel Christmas Light Show Deel 1: In deze instructie laat ik je zien hoe je een RGB-pixel-lichtshow kunt bouwen. Er is VEEL te dekken. In feite ga ik dit waarschijnlijk opsplitsen in ongeveer 3-5 verschillende instrucables. Deze gaat over de basis. Je hebt veel leesvoer
RGB-lichtbak: 7 stappen
RGB-lichtbak: in dit project laat ik je zien hoe je een RGB-lichtbak maakt die veel toepassingen heeft, zoals fotografie
Sfeerlamp met RGB-led: 4 stappen
Mood Lamp With RGB Led: Dit is een voorbeeld van een lamp die *sentimientos* gebruikt door Arduino Uno. Primero heeft verschillende materialen nodig voor jumpers, leds RGB of Neopixel, afhankelijk van de meest gebruikte hardware. En este caso utilizaremos led RGB con ánodo común
RGB-lichtgestuurde beweging van de handpalmen Contactloos: 4 stappen
RGB-lichtgestuurde beweging van de handpalmen Contactloos: RGB-nachtlampje, met de mogelijkheid om de kleur van het nachtlampje te regelen met handbewegingen. Met behulp van drie afstandssensoren veranderen we de helderheid van elk van de drie componenten van de RGB-kleur bij het naderen of verwijderen van de hand. Een Ar