Innehållsförteckning:
- Steg 1: Lampans nya inre - dellista
- Steg 2: Ledningen
- Steg 3: Den hårda delen - Montera bitarna
- Steg 4: De mjuka delarna - inbyggd programvara tillgänglig på Github
- Steg 5: Firmware - Hur man använder MQTT -anslutningen
Video: PhotonLamp - en WS2812b utrustad designerlampa med MQTT -kontroll: 5 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
För flera år sedan köpte vi en designlampa som hade en lampskärm i form av en cigarr och var gjord av mjölkglas. Vi gillade den speciella utformningen av skärmen och lampans övergripande utseende. Men jag har inte riktigt varit nöjd med ljuset som kom från fem små standardlampor. Eftersom skuggan har en ganska liten radie fick du inget kontinuerligt ljusintryck men du kunde se de enskilda lamporna genom skuggan. När jag snubblade över en WS2812b LED -remsa fick jag en idé: jag ville konvertera/cykla lampan och byta ut de vanliga glödlamporna mot RGB -lysdioder. För att inte tala om att den "nya" lampan ska kunna styras av Wifi för att få en högre WAF 8-).
Steg 1: Lampans nya inre - dellista
Eftersom jag redan gjorde några projekt med Particle Photons (https://particle.io) väljer jag denna riktigt snygga controller som bas för mitt projekt. Sammanfattat jag behövde denna hårdvara för att bygga min lampkonvertering:
- 1x 90 cm rör med M6 metrisk gänga i ena änden
- 1x partikelfoton
- 1x ultraljudssensor HC-SR04 (för en speciell twist)
- några ledningar för att ansluta delarna
- 1x AC/DC 5V/2A strömförsörjning
- strömkontakt för lampans bas för att ansluta strömförsörjningen
- 1x WS2812b LED -remsa med 30 lysdioder per meter (3 m längd)
- En designlampa
Steg 2: Ledningen
Installationen av ledningarna är riktigt enkel: Som visas på fritzing -ritningen måste du ansluta strömförsörjningen till Photon på stift VIN och GND och med + och - i ena änden av den första LED -stripen. HC-SR04 är ansluten med två ganska långa trådar med stift D2 (TRIGGER på HC-SR04) och D3 (ECHO på HC-SR04) på Photon. Stiftet D4 på Photon ansluter till DI för den första LED -randen.
Steg 3: Den hårda delen - Montera bitarna
LED-ränderna är självhäftande, men jag säkrade dem med några extra buntband (se detaljbilder). För att hålla trådarna så korta som möjligt bestämde jag mig för att leda de fyra ledremsorna i sicksack - stift D4 på Photon är anslutet till DI för den första raden, DO för den första raden är ansluten i rörets övre ände till DI av den andra randen. DO för den andra raden är ansluten till DI för den tredje randen vid rörets botten. DO för den tredje raden är ansluten till DI för den fjärde randen på toppen av röret. VCC- och GND -linjerna för varje rand är anslutna på samma sätt. Ledningarna för ultraljudssensorn är de längsta och går genom insidan av röret.
Strömförsörjningen är ansluten till ett uttag jag satte in i hålet i lampans bas där 220V strömkabel i originalversionen gick igenom. Strömkablar går från denna kontakt till VIN/GND på Photon, till VCC/GND på ledremsorna och till ultraljudssensorn.
Steg 4: De mjuka delarna - inbyggd programvara tillgänglig på Github
Den fasta programvaran är tillgänglig i detta git -arkiv på Github:
github.com/happenpappen/PhotonLamp
Om du använder samma stift för att ansluta LED-remsan och HC-SR04 är det enda du behöver ändra innan du sammanställer koden att skapa en fil "MQTT_credentials.h" i "src" -katalogen som innehåller tre rader:
#define MQTT_HOST "" #define MQTT_USER "" #define MQTT_PASSWORD ""
Det finns flera bra guider för hur du konfigurerar en myggserver som du enkelt kan hitta med din favorit sökmotor …
Steg 5: Firmware - Hur man använder MQTT -anslutningen
Jag använder en Rasperry Pi 3 med mygga (https://www.mosquitto.org) som MQTT -server, se dess dokumentation om hur du konfigurerar den. Du kan prenumerera på ämnet ([device id] = ID för din Particle Photon):
/[enhets-ID]/#
för att se om den lyckas ansluta till servern och om den kan lägga upp status:
Utdata ska se ut så här ([enhets -id] = ID för din partikelfoton):
/[enhets -id]/state/DisplayMode 8
/[enhets -id]/tillstånd/Ljusstyrka 250/[enhets -id]/tillstånd/ForgroundColor 100, 023, 014/[enhets -id]/tillstånd/BackgroundColor 034, 006, 034/[enhets -id]/tillstånd/MaxDistance 92/[enhets -id]/state/LastDistance 92/[device id]/state/CurrentDistance 92/[device id]/state/FirmwareVersion 0.6.3
Den exakta utmatningen kan bero på vilken firmwareversion du använder.
Men det finns roligare i det: Genom att publicera till:
/[enhets -id]/set/[parameter] [värde]
du kan ändra mönstret som visas samt vissa färger.
För att ändra färger skicka:
/[enhets -ID för Particle Photon]/set/ForgroundColor/[röd], [grön], [blå]
/[enhets -ID för Particle Photon]/setBackgroundColor/[röd], [grön], [blå]
För [röd], [grön] och [blå] sätter du in decimalvärdena för respektive färg.
För att ändra visningsmönstret, skicka:
/[enhets -id för Particle Photon]/set/DisplayMode [värde mellan 1 och 11]
Nuvarande implementerade visningslägen är:
- Ljud
- RainbowCycle
- NoisePlusPalette
- SingleColor
- Cylon
- Regn
- Brand
- Horisontell delning
- HorizontalDoubleSplit
- VerticalSplit
- Spiral (under utveckling)
Några av dem är från exempelavsnittet i FastLED.
För att ändra ljusstyrka, skicka:
/[enhets -id]/set/Ljusstyrka [värde mellan 1 och 100]
Rekommenderad:
Apple HomeKit WS2812B LED -kontroller: 3 steg (med bilder)
Apple HomeKit WS2812B LED -kontroller: Det finns många projekt baserade på WS2812B LED -remsor där ute, men de flesta av dessa använder homebridge eller någon annan lösning - mestadels baserad på MQTT - för att kommunicera med HomeKit. Vissa projekt använder också effekter via Apple HomeKit, men ingen av
Ambilight -system för varje ingång som är ansluten till din TV. WS2812B Arduino UNO Raspberry Pi HDMI (uppdaterad 12.2019): 12 steg (med bilder)
Ambilight -system för varje ingång som är ansluten till din TV. WS2812B Arduino UNO Raspberry Pi HDMI (Uppdaterad 12.2019): Jag har alltid velat lägga till ambilight till min TV. Det ser så coolt ut! Jag gjorde äntligen det och jag blev inte besviken! Jag har sett många videor och många självstudier om hur man skapar ett Ambilight -system för din TV men jag har aldrig hittat en fullständig handledning för mitt exakta
Fullt utrustad utomhuskamera baserad på Raspberry Pi: 21 steg
Fullt utrustad utomhuskamera baserad på Raspberry Pi: Om du hade nedslående upplevelser med billiga webbkameror, deras dåligt skrivna programvara och/eller otillräcklig hårdvara, kan du enkelt bygga en semi-professionell webbkamera med en Raspberry Pi och några andra elektroniska komponenter enkelt för att hitta på vilken löpning
Handledning för gränssnitt RGB Led WS2812B med Arduino UNO: 7 steg (med bilder)
Handledning för gränssnitt RGB Led WS2812B med Arduino UNO: Denna handledning kommer att lära dig några grunder om hur du använder Sparkfun RGB Led WS2812B med Arduino UNO
DIY PC -omgivningsbelysning med Arduino- och WS2812b -lysdioder: 6 steg (med bilder)
DIY PC -omgivningsbelysning med Arduino- och WS2812b -lysdioder: Ville ha lite mer djup för min spel-/filmvisning, så här installerade jag min omgivande belysning. Innan vi börjar kräver detta projekt att du vet hur du använder ett lödkolv och några andra grundläggande verktyg. Om du inte är bekväm lödning