Buslight: Unterschied zwischen den Versionen

Aus Wiki CCC Göttingen
Zur Navigation springen Zur Suche springen
 
Zeile 112: Zeile 112:
== Software ==
== Software ==


=== Firmware ===
https://git.cccgoe.de/hw/stm32f1-buslight
https://git.cccgoe.de/hw/stm32f1-buslight
* basiert auf ChibiOS
* basiert auf ChibiOS
* beinhaltet auch Controller-Part: Jedes Buslight kann via USB angeschlossen werden (ACHTUNG: dann nicht noch anderweitig mit Strom versorgen! Entweder USB-Stromversorgung ODER über Buslight-Versorgungsleitungen, nie beides!)
=== Host-Server ===
https://git.cccgoe.de/hw/stm32f1-buslight-host
* LuaJIT-basiert (mwahahahaha!)
* inkl. HTTPD-Interface und TCP-Interface
* ausbaubedürftig


[[Category:Projekte]]
[[Category:Projekte]]

Aktuelle Version vom 17. August 2019, 17:49 Uhr

Beschreibung[Bearbeiten]

Buslight ist der Name eines dem Protolight ähnlichen Projekts: es handelt sich um individuell ansteuerbare RGB-PowerLEDs (nebst Stromversorgung). Der Bus ist RS485-basiert und baut elektrisch auf DMX512 auf. Die Ansteuerung ist ebenfalls DMX512-kompatibel - mit eigenen proprietären Erweiterungen (zB für das Setzen der DMX-Adressen).

Hardware[Bearbeiten]

Das Buslight basiert auf einem PCB, das keine komplexe Schaltung beherbergt, sondern im Grunde ein Modulträger für verschiedene Komponenten ist:

Kicad-Design: https://git.cccgoe.de/hw/buslight-pcb https://git.cccgoe.de/hw/buslight-pcb/blob/master/buslight.jpg

Die Versorgung ist für 24V geplant. Viel mehr geht nicht (wegen der MP1584-Wandler), viel weniger allerdings schon. Sollte ab so ca. 7V funktionieren.

Zusammenbau[Bearbeiten]

Löten I / Vorbereitung Power-LEDs[Bearbeiten]

Power-LED muss mit Verbindungslitzen versehen werden: Anders als auf dem Foto zu sehen empfielt sich eher, die Litzen nicht von der Mitte ausgehend in direkt wegführender Richtung anzulöten, sondern um 90 Grad gedreht, so dass eine Art Rad entsteht. Entsprechendes weiteres Foto folgt.

Vorbereitung Buck-Converter[Bearbeiten]

Die Buck-Converter müssen auf 5V eingestellt werden. Per default ist das winzige Poti auf den Modulen aktiviert - und ist in bisherigen Testfällen meist auf ca. 12V eingestellt gewesen. Es können aber für definierte Spannungen - darunter 5V (Achtung: Aufschrift auf Modul schnell mit dem Nachbarn, 9V, verwechselbar!) - Lötbrücken gesetzt werden. Dazu muss:

  1. die Leiterbahn zum Poti durchtrennt werden. Dazu mit einem Cuttermesser in Verlängerung der gedachten Linie zwischen den Lötbrücken die dünne Leiterbahn zum Poti durchtrennen. Optische Prüfung unter dem Mikroskop vornehmen.
  2. Lötpunkt auf die Brücke für 5V setzen
  3. Prüfung Trennung/Lötpunkt: TODO: Elektronische Testmöglichkeit schaffen!

Vorbereitung Dose[Bearbeiten]

Die Blechdose, die als Gehäuse dient, muss gebohrt werden:

  1. Anzeichnen (PCB als Schablone verwenden) mit wasserfestem Stift auf dem Dosendeckel: Loch in PCB-Mitte, 4 Befestigungslöcher
  2. 30mm-Bohrung einigermaßen in der Mitte (nicht exakt möglich wegen Aufreißlasche der Dose)
  3. 3.5mm-Bohrungen für die Befestigungslöcher

Der Bohrerwechsel dauert, daher am besten jeden der Schritte gleich für eine Vielzahl von Dosen vornehmen. Dosen grob entgraten (nach Zusammenbau liegen aber die Löcher verdeckt).

Löten II: Pin-Leisten, Buchsen[Bearbeiten]

Es sind im STM32-Modul-Footprint noch zwei Pins auf "der anderen Seite" angelegt, die auf dem Basis-PCB mit "NC" (not connected) markiert sind. Diese waren im Entwurf nur angelegt, da etwas unklar war, ob die Befestigung nur auf einer Seite stabil genug ist. Das ist sie aber, diese beiden Pins müssen nicht bestückt/verlötet werden.

  1. Pin-Leisten einfach von STM32-Sets nehmen. Benötigt werden 2, 5, 2 sowie 4 Pins lange Leisten. Statt je einmal 2 und 5 kann auch eine 8er-Leiste genommen werden und Pin 3 gezogen werden. Oder statt der 2, 5 und 2 Pin Leisten nur eine einzige 16-Pin-Leiste, bei der die Pins 3, 9, 10, 11 und 12 gezogen werden - ganz nach Geschmack. Pin-Leisten auf Oberseite (STM32: 2-, 5- und 2-Pin bzw. Alternativen) und Unterseite (MP1584: die einzelne 4-Pin-Leiste) anlöten.
  2. Buchsen auf Oberseite anlöten.

Löten III: PT4115-Module[Bearbeiten]

Dieser Schritt muss in jedem Fall vor dem Verlöten von STM32- und MAX485-Modul erfolgen - sonst sind die Lötstellen nicht mehr (STM32) oder zumindest nicht mehr gut (MAX485) zugänglich.

  1. alle drei PT4115-Module auf der Unterseite einstecken. Achtung: Bohrungen sind etwas zu klein. Vorsichtig Druck ausüben, dann geht es aber. Nicht an den Pins der Module herumfummeln: Der DIM-Pin (PWM) ist elektrisch sehr empfindlich
  2. Module verlöten. Von den IN+-Pins begonnen zu zählen sind die Pins 2 und 4 nicht auf dem Basis-PCB an Leitungen angeschlossen. Evtl. nimmt das Basis-PCB da wenig Zinn an. Kann ignoriert werden.

Löten IV: MAX485-Modul[Bearbeiten]

  1. MAX485-Modul aufsetzen. Schraubterminals auf Modul gehören auf die Seite, wo klein im Rahmen des PCB-Aufdrucks "MAX485 Board" steht. Evtl. müssen Modulbeinchen etwas geradegebogen werden.
  2. MAX485-Modul verlöten.

Löten V: STM32[Bearbeiten]

  1. evtl. Fläche für das STM32-Modul mit etwas Iso-Band so abdecken, dass Beinchen des PT4115 auf der Unterseite nicht gegen das STM32-Modul stoßen können. Oder Beinchen etwas trimmen.
  2. STM32-Modul vorbereiten: vorsichtig den Programmer-Anschluss (4 herausgeführte Pins) mit einer Zange auf ca. 80-90 Grad-Winkel hochbiegen (sonst ist der Anschluss in der Dose nicht mehr gut zugänglich)
  3. STM32-Modul aufsetzen: Micro-USB-Buchse ist auf der Seite des Aufdrucks "STM32F103 Blue Pill". ACHTUNG: Beachten, dass Beinchen der "Versorgungsecke" (5V/GND) erst bei Pin 2 des STM32-Moduls beginnen!
  4. STM32-Modul verlöten

Löten VI: MP1584-DC/DC[Bearbeiten]

  1. MP1584-Modul aufsetzen, Komponentenseite des Moduls zeigt von Basis-PCB weg
  2. MP1584-Modul verlöten

Löten VII: Power-LED[Bearbeiten]

  1. Litzen der Power-LED mit Basis-PCB verlöten

Zusammenbau in Dose[Bearbeiten]

  1. 4 Nylon-Abstandhalter mit M3-Bohrung in das PCB clippen
  2. 4 M3-Schrauben mit Nylon-Unterlegscheibe vorbereiten
  3. Power-LED über dem PCB leicht "eindrehen", so dass sie eine "Drehrichtung" hat, wenn sie weiter an das PCB gedrückt wird.
  4. PCB in Dose stülpen - noch ca. 90 Grad gedreht zu den Löchern. Beim weiteren Eindrücken in Richtung Boden dann LED auf Unterseite in Lochöffnung leicht mit Finger fixieren und währenddessen PCB in Richtung Befestigungslöcher drehen. So sollten die Litzen der Power-LED sich sauber eindrehen ohne zwischen LED und Öffnung im PCB zu liegen.
  5. Schrauben eindrehen und mit Inbusschlüssel ganz vorsichtig festziehen

Zubehör: Verbindungskabel[Bearbeiten]

Die Verbindungskabel müssen konfektioniert werden. Es wird erwartet, dass eine etwas größere Zahl von ca. 2m langen Enden benötigt wird. Das erworbene Kabel ist 4-adrig und hat einen ausreichenden Querschnitt, um die Stromversorgung auf dem Bus zu gewährleisten. Das Kabel hat eine gelb/grüne Ader sowie drei schwarze Adern, die bei genauem Hinsehen auch mit 1, 2, 3 beschriftet sind.

  1. Das Kabel ca. 3cm weit abisolieren
  2. die Adern jeweils ca. 5mm abisolieren und verdrillen
  3. auf beiden Seiten in identischer Reihenfolge in die Stecker schrauben.

Anpassungen in kommender Version =[Bearbeiten]

Folgende Änderungen am PCB sollten vorgenommen werden:

  • Jumper hinzufügen, um MP1584-Modul zu deaktivieren: Dann kann Versorgung des 5V-Teils (STM32, MAX485) problemlos via USB-Anschluss erfolgen
  • Erweiterungsanschluss? (Idee: Pin-Leiste mit GND/3.3V/5V/I2C/SPI/GPIO/Analog)

Software[Bearbeiten]

Firmware[Bearbeiten]

https://git.cccgoe.de/hw/stm32f1-buslight

  • basiert auf ChibiOS
  • beinhaltet auch Controller-Part: Jedes Buslight kann via USB angeschlossen werden (ACHTUNG: dann nicht noch anderweitig mit Strom versorgen! Entweder USB-Stromversorgung ODER über Buslight-Versorgungsleitungen, nie beides!)

Host-Server[Bearbeiten]

https://git.cccgoe.de/hw/stm32f1-buslight-host

  • LuaJIT-basiert (mwahahahaha!)
  • inkl. HTTPD-Interface und TCP-Interface
  • ausbaubedürftig