Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| de:tech:gardenled [2022/11/14 13:53] – [Lösungsansatz] bullar | de:tech:gardenled [2026/08/12 12:15] (aktuell) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Zeile 5: | Zeile 5: | ||
| Unser Grundstück ist - wie häufig hier in Thailand - von einer zwei Meter hohen Mauer eingerahmt. Die hält Tiere wie streunende Strassenhunde aber auch Schlangen oder ähnliches ab. Von innen kann man diese Wand natürlich üppig begrünen. | Unser Grundstück ist - wie häufig hier in Thailand - von einer zwei Meter hohen Mauer eingerahmt. Die hält Tiere wie streunende Strassenhunde aber auch Schlangen oder ähnliches ab. Von innen kann man diese Wand natürlich üppig begrünen. | ||
| - | {{ : | + | {{ :media:tech:solarvilla: |
| Ein schicker Augenschmauss wäre eine indirekte Beleuchtung mit dimmbaren LED Spotlights hinter den Pflanzen. Dabei geht es um eine Länge von ca. 40m die mit Licht versorgt werden will. Eine Lösung muss her... | Ein schicker Augenschmauss wäre eine indirekte Beleuchtung mit dimmbaren LED Spotlights hinter den Pflanzen. Dabei geht es um eine Länge von ca. 40m die mit Licht versorgt werden will. Eine Lösung muss her... | ||
| Zeile 16: | Zeile 16: | ||
| Vorab habe ich schon die LED Spots nach Aussehen, Leistung, Preis und Größe ausgewählt. Dabei fiel die Wahl auf einen 5W/600lm Strahler mit 12V AC/DC Versorgung im IP65 Gehäuse vom thailändischen Amazon: LAZADA. | Vorab habe ich schon die LED Spots nach Aussehen, Leistung, Preis und Größe ausgewählt. Dabei fiel die Wahl auf einen 5W/600lm Strahler mit 12V AC/DC Versorgung im IP65 Gehäuse vom thailändischen Amazon: LAZADA. | ||
| - | {{ : | + | {{ :media:tech:gardenled: |
| Bei einem Preis von unter 4€ pro Stück kommt das ganze wirklich in einem wasserfesten Alugehäuse mit einer internen Steuerplatine und funktioniert! Lichtgeber ist eine 3mm LED die mit 21.5V bei einem Konstantstrom von 266mA betrieben wird. Die höhere Spannung wird durch einen Boost Regler [[http:// | Bei einem Preis von unter 4€ pro Stück kommt das ganze wirklich in einem wasserfesten Alugehäuse mit einer internen Steuerplatine und funktioniert! Lichtgeber ist eine 3mm LED die mit 21.5V bei einem Konstantstrom von 266mA betrieben wird. Die höhere Spannung wird durch einen Boost Regler [[http:// | ||
| Zeile 25: | Zeile 25: | ||
| </ | </ | ||
| <WRAP half column> | <WRAP half column> | ||
| - | | + | {{:media:tech:gardenled: |
| </ | </ | ||
| </ | </ | ||
| Zeile 45: | Zeile 45: | ||
| Alles zusammengefasst sieht der Schaltplan dann so aus: | Alles zusammengefasst sieht der Schaltplan dann so aus: | ||
| - | {{ : | + | {{ :media:tech:gardenled: |
| + | |||
| + | Der LED Boot Driver ist identisch zur Originalversion und nur durch die PWM-Ansteuerung ergänzt. Da ich bei den ersten Versuchen ein paar Hardwareausfälle (ATTINY85 + BP1808) wegen Überspannung hatte, wird das PWM Signal galvanisch mit einem Optokoppler (OC1) getrennt. An der RS485 Schnittstelle sind auch optional die Abschlusswiderstände vorgesehen (R1,R3,R4). Der MAXIM Baustein arbeitet im Halb-Duplex, | ||
| - | Der LED Boot Driver ist identisch zur Originalversion und nur durch die PWM-Ansteuerung ergänzt. Da ich bei den ersten Versuchen ein paar Hardwareausfälle (ATTINY85 + BP1808) wegen Überspannung hatte, wird das PWM Signal galvanisch mit einem Optokoppler (OC1) getrennt. An der RS485 Schnittstelle sind auch optional die Abschlusswiderstände vorgesehen (R1,R3,R4). Der MAXIM Baustein arbeitet im Halb-Duplex, | ||
| ==== PCB ==== | ==== PCB ==== | ||
| Zeile 53: | Zeile 54: | ||
| Bei den geometrischen Vorgaben kommen wir um eine beidseitige Bestückung nicht herum. Aber auf der zweiten Seite befinden sich nur die vier SS14 Dioden (D3-D6) des Brückengleichrichters und der große Thru-hole Kondensator C8. Diese Komponenten müssen dann handgelötet werden aber der Rest kann vorab im Reflow-Ofen (bei mir T-962) ' | Bei den geometrischen Vorgaben kommen wir um eine beidseitige Bestückung nicht herum. Aber auf der zweiten Seite befinden sich nur die vier SS14 Dioden (D3-D6) des Brückengleichrichters und der große Thru-hole Kondensator C8. Diese Komponenten müssen dann handgelötet werden aber der Rest kann vorab im Reflow-Ofen (bei mir T-962) ' | ||
| - | {{ : | + | {{ :media:tech:gardenled: |
| Das Platinenmaß geht mit 39.3mm x 19mm schon an die mechanische Grenze aber es passt. In Realität sieht die Platine auf der Vorderseite doch schon ordentlich gepackt aus. Die handgeschriebene **4** auf der CPU ist die progammierte ID der LED. Über diese Nummer läßt sich das Spotlight einzeln ansprechen. Doch dazu später mehr. | Das Platinenmaß geht mit 39.3mm x 19mm schon an die mechanische Grenze aber es passt. In Realität sieht die Platine auf der Vorderseite doch schon ordentlich gepackt aus. Die handgeschriebene **4** auf der CPU ist die progammierte ID der LED. Über diese Nummer läßt sich das Spotlight einzeln ansprechen. Doch dazu später mehr. | ||
| - | {{ : | + | {{ :media:tech:gardenled: |
| - | + | ||
| - | Um die Platine elektrisch isoliert in das Gehäuse einzubauen drucke ich aus flexiblem TPU ein zweiteiliges Cover. An beiden Enden über die Platine geschoben bleibt dann alles vor ungewollten Kurzschlüssen geschützt. Das STL File ist im Downloadbereich zu finden. | + | |
| - | {{ : | + | Um die Platine elektrisch isoliert in das Gehäuse einzubauen, drucke ich aus flexiblem TPU ein zweiteiliges Cover. An beiden Enden über die Platine geschoben bleibt dann alles vor ungewollten Kurzschlüssen geschützt. Das STL File ist im Downloadbereich zu finden. |
| + | {{ : | ||
| ===== Firmware ===== | ===== Firmware ===== | ||
| - | Den physikalischen Layer haben wir mit RS485 gewählt | + | Den physikalischen Layer haben wir mit RS485 festgelegt |
| In meiner Implementierung besteht ein Frame aus 13 Bytes: | In meiner Implementierung besteht ein Frame aus 13 Bytes: | ||
| - | * drei Header Bytes (0xAA) | + | * 3x Header Bytes (0xAA) |
| - | * des ID Bytes (0..15) | + | * 1x ID Bytes (0..15) |
| - | * drei Bytes Payload | + | * 3x Bytes Payload |
| * Function (0...255) | * Function (0...255) | ||
| * Value (0...255) | * Value (0...255) | ||
| * Delay (0...255) | * Delay (0...255) | ||
| - | * vier CRC Bytes (32-bit) | + | * 4x CRC Bytes (32-bit) |
| - | * ein EOF Byte (0x55) | + | * 1x EOF Byte (0x55) |
| - | der je nach Funktion vom Spotlight beantwortet wird. Bei Broadcastbefehlen erfolgt keine Antwort der Gegenseite. Hier die kurze Befehlsübersicht: | + | der je nach Funktion vom angesprochenen |
| < | < | ||
| Zeile 110: | Zeile 110: | ||
| In den Spotlights lassen sich auch individuelle Helligkeits- und Fadewerte abspeichern, | In den Spotlights lassen sich auch individuelle Helligkeits- und Fadewerte abspeichern, | ||
| + | |||
| ==== Programmierung ==== | ==== Programmierung ==== | ||
| - | In der Werkseinstellung des ATTINY85 ist das // | + | In der Werkseinstellung des ATTINY85 ist das // |
| - | {{ : | + | {{ :media:tech:gardenled: |
| + | |||
| + | Das Debug- und Programmingtool der ersten Wahl ist und bleibt der //SNAP (PG164100)// | ||
| - | Das Debug- und Programmingtool der ersten Wahl ist und bleibt //SNAP (PG164100)//. Alle diese Tools sind im Online Markt oder der Bucht einfach und für den DIY-Geldbeutel erschwinglich zu finden. | + | {{ : |
| - | {{ : | ||
| ===== Integration ===== | ===== Integration ===== | ||
| - | Hat man die Spotlights wie oben beschrieben programmiert, | + | Hat man die Spotlights wie oben beschrieben programmiert, |
| - | Mein Wunsch | + | Mein Ziel ist es aber die Spotlights in Home Assistant (HA) zu integrieren. Dazu brauchen wir ein Gateway, das die Spotlights als //Lights// in HA abbildet und zusätzlich einen UART Server |
| - | Für den UART server | + | Für den UART Server |
| <code C> | <code C> | ||
| Zeile 147: | Zeile 149: | ||
| </ | </ | ||
| - | Für die Einbindung der LEDs als Lights schreiben wir wieder ein //custom component// | + | Für die Einbindung der LEDs als Lights schreiben wir wieder ein //custom component// |
| ++++ garden-leds.h | | ++++ garden-leds.h | | ||
| Zeile 404: | Zeile 406: | ||
| Gegebenenfalls müssen die Pins '' | Gegebenenfalls müssen die Pins '' | ||
| + | |||
| + | |||
| ==== Hardware Gateway ==== | ==== Hardware Gateway ==== | ||
| Zeile 415: | Zeile 419: | ||
| | GND | GND | | | GND | GND | | ||
| - | Das Ganze dann auf einer Lochrasterplatine aufgelötet und verpackt | + | Das Ganze dann auf einer Lochrasterplatine aufgelötet und in einem wasserfesten Gehäuse |
| - | {{ : | + | {{ :media:tech:gardenled: |
| ==== Gesamtverdrahtung ==== | ==== Gesamtverdrahtung ==== | ||
| - | Zwischen den Spotlights und dem Gateway wird ein 4-adriges Kabel benötigt. Da ich Aussen in einem wasserdichten Rohr verlege, reicht mir eine PVC-Schlauchleitung H03VV-F4G0, | + | Zwischen den Spotlights und dem Gateway wird ein 4-adriges Kabel benötigt. Da ich Aussen in einem wasserdichten Rohr verlege, reicht mir eine PVC-Schlauchleitung H03VV-F4G0, |
| ^ Gateway | ^ Gateway | ||
| Zeile 429: | Zeile 434: | ||
| | B | B | B | ... | B | | | B | B | B | ... | B | | ||
| - | Je nach Anzahl der Spots brauchen wir noch ein leistungsfähigen Trafo für ~230V auf ~12V. Hier kann man z.B. einen gebrauchten Halogentrafo wiederverwenden. Die finden sich zuhauf in Gebrauchtwarenmärkten. Meinen 200W Trafo inkl. Sicherungen gab es dort für 8, | + | Je nach Anzahl der Spots brauchen wir noch einen leistungsfähigen Trafo für ~230V auf ~12V. Hier kann man z.B. einen gebrauchten Halogentrafo wiederverwenden. Die finden sich zuhauf in Gebrauchtwarenmärkten. Meinen 200W Trafo von ABB inkl. Sicherungen gab es dort für 8, |
| ===== Inbetriebnahme ===== | ===== Inbetriebnahme ===== | ||
| - | Schliessen wir nun das fertig verdrahtete Konqlumerat an, steht uns das Licht mit DImmfunktion in Home Assistant zur Verfügung. Die Fadezeit kann dort festgelegt werden und steht standardmässig auf 1s. Durch den Stream-Server können wir aber auch mit z.B. einem PC auf die LEDs zugreifen. Dazu habe ich ein kleines Pythonprogramm geschrieben (Source Code im Downloadbereich). | + | Schliessen wir nun das fertig verdrahtete Konqlumerat an, steht uns das Licht mit DImmfunktion in Home Assistant zur Verfügung. Die Fadezeit kann auch dort festgelegt werden und steht standardmässig auf 1s. Durch den Stream-Server können wir aber auch mit z.B. einem PC auf die LEDs zugreifen. Dazu habe ich ein kleines Pythonprogramm geschrieben (Source Code im Downloadbereich). |
| - | {{ : | + | {{ :media:tech:gardenled: |
| Damit lassen sich alle Funktionen auf alle oder einzelne LEDs ausführen. Mit **CHK** wird nach angeschlossen LEDs gesucht und im unteren Bereich steht ein einfacher Skript Editor zur Verfügung der die Programmierung von Abläufen erlaubt, bei einer Stepzeit von 100ms also 10Hz. Ein Gimmick für Silvester oder andere Parties. | Damit lassen sich alle Funktionen auf alle oder einzelne LEDs ausführen. Mit **CHK** wird nach angeschlossen LEDs gesucht und im unteren Bereich steht ein einfacher Skript Editor zur Verfügung der die Programmierung von Abläufen erlaubt, bei einer Stepzeit von 100ms also 10Hz. Ein Gimmick für Silvester oder andere Parties. | ||
| Zeile 448: | Zeile 453: | ||
| ===== Downloads ===== | ===== Downloads ===== | ||
| - | * {{: | + | * {{:media:tech:gardenled: |
| - | * {{: | + | * {{:media:tech:gardenled: |
| - | * {{: | + | * {{:media:tech:gardenled: |
| - | * {{: | + | * {{:media:tech:gardenled: |
| - | * {{: | + | * {{:media:tech:gardenled: |
| - | * {{: | + | * {{:media:tech:gardenled: |
| * {{| LED Test Tool Wifi (.py)}} | * {{| LED Test Tool Wifi (.py)}} | ||