Inhoudsopgave:

PhotonLamp - een WS2812b uitgeruste designlamp met MQTT-besturing - Ajarnpa
PhotonLamp - een WS2812b uitgeruste designlamp met MQTT-besturing - Ajarnpa

Video: PhotonLamp - een WS2812b uitgeruste designlamp met MQTT-besturing - Ajarnpa

Video: PhotonLamp - een WS2812b uitgeruste designlamp met MQTT-besturing - Ajarnpa
Video: Yamaha FZ6-S FAZER 2024, November
Anonim
Image
Image
De nieuwe ingewanden van de lamp - Partlist
De nieuwe ingewanden van de lamp - Partlist

Enkele jaren geleden kochten we een designlamp met een lampenkap in de vorm van een sigaar en gemaakt van melkglas. We hielden van het specifieke ontwerp van de kap en het algehele uiterlijk van de lamp. Maar ik was niet echt tevreden met het licht dat uit vijf kleine standaard gloeilampen kwam. Omdat de kap een vrij kleine straal heeft, kreeg je geen continue lichtindruk maar kon je de enkele bollen door de kap heen zien. Toen ik een WS2812b LED-strip tegenkwam, ontstond er een idee: ik wilde de lamp ombouwen/upcyclen en de standaard gloeilampen vervangen door RGB LED's. Om nog maar te zwijgen van het feit dat de "nieuwe" lamp bestuurbaar moet zijn via Wifi om een hogere WAF 8- te krijgen).

Stap 1: De nieuwe ingewanden van de lamp - deellijst

De nieuwe ingewanden van de lamp - Partlist
De nieuwe ingewanden van de lamp - Partlist

Omdat ik al een aantal projecten met Particle Photons (https://particle.io) heb gedaan, heb ik deze echt nette controller als basis van mijn project gekozen. Samengevat had ik deze hardware nodig om mijn lampconversie te bouwen:

  • 1x 90cm pijp met M6 metrische schroefdraad aan één uiteinde
  • 1x Deeltjesfoton
  • 1x HC-SR04 ultrasone sensor (voor een speciale twist)
  • sommige draden om de onderdelen aan te sluiten
  • 1x AC/DC 5V/2A voeding
  • stroomconnector voor de voet van de lamp om de voeding aan te sluiten
  • 1x WS2812b LED strip met 30 LED's per meter (3m lengte)
  • Een designlamp

Stap 2: De bedrading

de bedrading
de bedrading

Het opzetten van de bedrading is heel eenvoudig: Zoals te zien is in de fritzing-tekening, moet je de voeding aansluiten met de Photon op pin VIN en GND en met + en - aan het ene uiteinde van de eerste LED-strip. De HC-SR04 is verbonden door twee vrij lange draden met pin D2 (TRIGGER op HC-SR04) en D3 (ECHO op HC-SR04) van de Photon. De pin D4 van de Photon wordt aangesloten op DI van de eerste LED-strip.

Stap 3: Het harde deel - Monteer de stukken

Het moeilijke deel - Monteer de stukken
Het moeilijke deel - Monteer de stukken
Het moeilijke deel - Monteer de stukken
Het moeilijke deel - Monteer de stukken
Het moeilijke deel - Monteer de stukken
Het moeilijke deel - Monteer de stukken
Het moeilijke deel - Monteer de stukken
Het moeilijke deel - Monteer de stukken

De LED-strepen zijn zelfklevend, maar ik heb ze vastgezet met wat extra kabelbinders (zie detailfoto's). Om de draden zo kort mogelijk te houden, heb ik besloten om de vier ledstrips in zigzag te bedraden - pin D4 van de Photon is verbonden met DI van de eerste streep, DO van de eerste streep is verbonden aan het bovenste uiteinde van de buis met DI van de tweede streep. DO van de tweede streep is verbonden met DI van de derde streep aan de onderkant van de buis. DO van de derde streep is verbonden met DI van de vierde streep aan de bovenkant van de buis. De VCC- en GND-lijnen van elke streep zijn op dezelfde manier verbonden. De draden voor de ultrasone sensor zijn het langst en lopen door de binnenkant van de buis.

De voeding wordt aangesloten op een stopcontact dat ik in het gat in de voet van de lamp heb gestoken waar in de originele versie de 220V stroomkabel doorheen ging. Stroomkabels gaan van deze connector naar VIN/GND van de Photon, naar VCC/GND van de ledstrips en naar de ultrasone sensor.

Stap 4: De zachte delen - Firmware beschikbaar op Github

De zachte onderdelen - Firmware beschikbaar op Github
De zachte onderdelen - Firmware beschikbaar op Github

De firmware is beschikbaar in deze git-repository op Github:

github.com/happenpappen/PhotonLamp

Als u dezelfde pinnen gebruikt om de LED-strip en de HC-SR04 aan te sluiten, hoeft u alleen maar een bestand "MQTT_credentials.h" in de submap "src" te maken dat drie regels bevat voordat u de code compileert:

#define MQTT_HOST ""#define MQTT_USER ""#define MQTT_PASSWORD ""

Er zijn verschillende goede handleidingen voor het opzetten van een muggenserver die u gemakkelijk kunt vinden door uw favoriete zoekmachine te gebruiken…

Stap 5: De firmware - Hoe de MQTT-verbinding te gebruiken

Image
Image

Ik gebruik een Rasperry Pi 3 met mosquitto (https://www.mosquitto.org) als MQTT-server, raadpleeg de documentatie over het instellen ervan. U kunt zich abonneren op het onderwerp ([device id]= ID van uw Particle Photon):

/[apparaat ID]/#

om te zien of het succesvol verbinding maakt met de server en of het zijn status kan posten:

De uitvoer zou er als volgt uit moeten zien ([device id] = ID van uw Particle Photon):

/[apparaat-ID]/state/DisplayMode 8

/[apparaat-ID]/state/Brightness 250 /[apparaat-ID]/state/ForgroundColor 100, 023, 014 /[apparaat-ID]/state/BackgroundColor 034, 006, 034 /[apparaat-ID]/state/MaxDistance 92 /[apparaat-ID]/state/LastDistance 92 /[apparaat-ID]/state/CurrentDistance 92 /[apparaat-ID]/state/FirmwareVersion 0.6.3

De exacte uitvoer kan afhangen van de versie van de firmware die u gebruikt.

Maar er is meer leuks aan: Door te publiceren naar:

/[apparaat-ID]/set/[parameter] [waarde]

u kunt het patroon dat wordt weergegeven, evenals sommige kleuren wijzigen.

Om kleuren te wijzigen, stuur:

/[apparaat-ID van Particle Photon]/set/ForgroundColor/[rood], [groen], [blauw]

/[apparaat-ID van Particle Photon]/setBackgroundColor/[rood], [groen], [blauw]

Voer voor [rood], [groen] en [blauw] de decimale waarden van de respectieve kleur in.

Om het weergavepatroon te wijzigen, verzendt u:

/[apparaat-ID van Particle Photon]/set/DisplayMode [waarde tussen 1 en 11]

De huidige geïmplementeerde weergavemodi zijn:

  1. Lawaai
  2. RainbowCycle
  3. NoisePlusPalet
  4. Enkele kleur
  5. Cylon
  6. Regenen
  7. Vuur
  8. HorizontaleSplit
  9. HorizontaalDubbelSplit
  10. VerticaleSplit
  11. Spiraal (in ontwikkeling)

Sommigen van hen komen uit het voorbeeldgedeelte van FastLED.

Om de helderheid te wijzigen, verzendt u:

/[apparaat-ID]/set/Helderheid [waarde tussen 1 en 100]

Aanbevolen: