IO Warrior 40 und LED Warrior
Moderator: Guido Körber
IO Warrior 40 und LED Warrior
Hallo liebe CM-Gemeinde,
heute ist mein IOW 40 SDK und ein LED Warrior Treibermodul angekommen. Bevor ich mich jetzt in die Tiefen des Codes und die entsprechenden Hardware-Lötarbeiten begebe, wollte ich einfach vorher nach "Best-Practice" Methoden fragen, wie ich das am besten integriere.
Was ich möchte, ist relativ simpel, ein Mikroschalter registriert ein Objekt, meldet dies per IO Warrior an die Software und schaltet daraufhin die beiden Luxeon 1W LEDs an, die per LED Warrior getrieben werden sollen. Im Datenblatt steht dabei zu MOD: "Pulling this pin low disables the LED output and puts the LED-Warrior01 into a standby mode."
Hierzu meine Frage: Kann ich diese Funktionalität direkt mit dem IOW nutzen und mir weitere Transistoren/Relais zu sparen um die LEDs an und auszuschalten? Und weiterhin: Ich würde gerne die "analoge" Dimmfunktionalität nutzen, um das Licht der LEDs besser kontrollieren zu können, lässt sich beides vereinbaren, wenn ja, wie am besten?
Heute Abend werde ich erstmal das SDK zusammenlöten und die ersten USB Gehversuche mit den Examples ausprobieren. Da wird sicherlich noch die ein oder anderen Frage bezüglich Coding kommen, aber eins nach dem anderen.
Danke für jeden kreativen Tip im Voraus,
Kamil
heute ist mein IOW 40 SDK und ein LED Warrior Treibermodul angekommen. Bevor ich mich jetzt in die Tiefen des Codes und die entsprechenden Hardware-Lötarbeiten begebe, wollte ich einfach vorher nach "Best-Practice" Methoden fragen, wie ich das am besten integriere.
Was ich möchte, ist relativ simpel, ein Mikroschalter registriert ein Objekt, meldet dies per IO Warrior an die Software und schaltet daraufhin die beiden Luxeon 1W LEDs an, die per LED Warrior getrieben werden sollen. Im Datenblatt steht dabei zu MOD: "Pulling this pin low disables the LED output and puts the LED-Warrior01 into a standby mode."
Hierzu meine Frage: Kann ich diese Funktionalität direkt mit dem IOW nutzen und mir weitere Transistoren/Relais zu sparen um die LEDs an und auszuschalten? Und weiterhin: Ich würde gerne die "analoge" Dimmfunktionalität nutzen, um das Licht der LEDs besser kontrollieren zu können, lässt sich beides vereinbaren, wenn ja, wie am besten?
Heute Abend werde ich erstmal das SDK zusammenlöten und die ersten USB Gehversuche mit den Examples ausprobieren. Da wird sicherlich noch die ein oder anderen Frage bezüglich Coding kommen, aber eins nach dem anderen.
Danke für jeden kreativen Tip im Voraus,
Kamil
IO-Warrior 40 und LED Warrior im Einsatz bei
http://www.shitbag.de
http://www.shitbag.de
-
- Site Admin
- Posts: 2879
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Re: IO Warrior 40 und LED Warrior
Nein, ohne weitere Elektronik wird das nichts. Der IO-Warrior hat an den Pins interne Pull-Up Widerstände, würde also den Eingang des LED-Warrior auf 5V ziehen, womit der dann seinen Ausgangsstrom auf etwa 250% hochfährt.
Um den LED-Warrior zu schalten ist auf jeden Fall eine Open Collector Treiber notwendig.
Regeln wird schwieriger, dazu würde ich ein elektronisches Poti empfehlen, das dann per I2C angesteuert werden kann. Allerdings ist der Regelbereich im Analogmodus nicht sehr groß, was u.a. darauf zurück zu führen ist, dass LEDs nicht linear mit dem Strom heller werden und das Auge auch Helligkeit nicht linear wahrnimmt.
Um den LED-Warrior zu schalten ist auf jeden Fall eine Open Collector Treiber notwendig.
Regeln wird schwieriger, dazu würde ich ein elektronisches Poti empfehlen, das dann per I2C angesteuert werden kann. Allerdings ist der Regelbereich im Analogmodus nicht sehr groß, was u.a. darauf zurück zu führen ist, dass LEDs nicht linear mit dem Strom heller werden und das Auge auch Helligkeit nicht linear wahrnimmt.
Re: IO Warrior 40 und LED Warrior
Hi Guido,
dank Dir für den schnelle Reply. Das Starterkit ist jetzt aufgebaut und hat auch auf Anhieb mit dem Kernelmodul des 2.6.28er Kernels funktioniert. Ist es normal, daß das Modul iowarrior0 und iowarrior1 als devices erkennt, wenn ich nur einen IOW dran habe?
Die Tests mit dem C Testkit haben auch sofort funktioniert. Vielen Dank schonmal für eine einfach Out-of-The-Box Lösung was Linux I/O angeht.
Zurück zum LED-Warrior, sollte ich dann die Versorgungspannung des LW Moduls per Open Collector Treiber schalten und dem MOD einfach nur ein kleines poti für die Helligkeit verpassen? Vielleicht sollte ich dazusagen, daß die Helligkeit nicht "im Betrieb per Software" nachgeführt werden muss. Ich will Sie nur einmal passend einstellen können, um die Kamera nicht in die Überbelichtung zu zwingen, also ruhig relativ unpräzise.
dank Dir für den schnelle Reply. Das Starterkit ist jetzt aufgebaut und hat auch auf Anhieb mit dem Kernelmodul des 2.6.28er Kernels funktioniert. Ist es normal, daß das Modul iowarrior0 und iowarrior1 als devices erkennt, wenn ich nur einen IOW dran habe?
Die Tests mit dem C Testkit haben auch sofort funktioniert. Vielen Dank schonmal für eine einfach Out-of-The-Box Lösung was Linux I/O angeht.
Zurück zum LED-Warrior, sollte ich dann die Versorgungspannung des LW Moduls per Open Collector Treiber schalten und dem MOD einfach nur ein kleines poti für die Helligkeit verpassen? Vielleicht sollte ich dazusagen, daß die Helligkeit nicht "im Betrieb per Software" nachgeführt werden muss. Ich will Sie nur einmal passend einstellen können, um die Kamera nicht in die Überbelichtung zu zwingen, also ruhig relativ unpräzise.
IO-Warrior 40 und LED Warrior im Einsatz bei
http://www.shitbag.de
http://www.shitbag.de
-
- Site Admin
- Posts: 2879
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Re: IO Warrior 40 und LED Warrior
Der IO-Warrior hat zwei Interfaces, das sind gewissermaßen logische Geräte beim USB, also ist es normal, dass da zwei auftauchen.
Die Versorgungsspannung schalten ist keine gute Idee, das gibt jede Menge Verluste.
Wenn die Einstellung auch manuell sein darf, dann einfach ein Poti mit 100kOhm oder mehr vom Steuereingang des LW01 gegen Masse. Dazu dann noch vom IO-Warrior angesteuert ein Transistor, der ebenfalls gegen Masse durchsteuert.
Die Versorgungsspannung schalten ist keine gute Idee, das gibt jede Menge Verluste.
Wenn die Einstellung auch manuell sein darf, dann einfach ein Poti mit 100kOhm oder mehr vom Steuereingang des LW01 gegen Masse. Dazu dann noch vom IO-Warrior angesteuert ein Transistor, der ebenfalls gegen Masse durchsteuert.
Re: IO Warrior 40 und LED Warrior
Genau deswegen wollte ich ja das Modul über den MOD schalten und die 12v Versorgungsspannung permanent anliegen lassen.
Wie ist das eigetlich mit der Vesorgungsspannung der LEDs? Ich würde das LW Modul gern mit den 12V beliefern, welche mir am an dem PC Netzteil zu Verfügung stehen und damit, wie im Schaltplan 2 Luxeon High-Power LEDs in Reihe betreiben. Regelt das Modul die Spannung auch oder regelt sich die Spannung durch den Konstantstrom und die Widerstände "von selbst"?
Anbei ist jetzt auch mal ein provisorisch zusammengeklickter Schaltplan, wie ich mir das ursprünglich vorgestellt habe, und meine, auch in Deinem letzten Post wiedergefunden zu haben. Brauch ich an der Basis evtl. noch einen Widerstand? Und wenn ja, warum ? *g
Danke schon mal wieder im Voraus ;)
Kamil
Wie ist das eigetlich mit der Vesorgungsspannung der LEDs? Ich würde das LW Modul gern mit den 12V beliefern, welche mir am an dem PC Netzteil zu Verfügung stehen und damit, wie im Schaltplan 2 Luxeon High-Power LEDs in Reihe betreiben. Regelt das Modul die Spannung auch oder regelt sich die Spannung durch den Konstantstrom und die Widerstände "von selbst"?
Anbei ist jetzt auch mal ein provisorisch zusammengeklickter Schaltplan, wie ich mir das ursprünglich vorgestellt habe, und meine, auch in Deinem letzten Post wiedergefunden zu haben. Brauch ich an der Basis evtl. noch einen Widerstand? Und wenn ja, warum ? *g
Danke schon mal wieder im Voraus ;)
Kamil
- Attachments
-
- Schaltplan IOW zu LW
- iowlw.png (5.91 KiB) Viewed 7035 times
IO-Warrior 40 und LED Warrior im Einsatz bei
http://www.shitbag.de
http://www.shitbag.de
-
- Site Admin
- Posts: 2879
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Re: IO Warrior 40 und LED Warrior
Ja, genau so meinte ich das. Basisvorwiderstand erübrigt sich, da der IO-Warrior das High-Signal ja über einen Pull-Up Widerstand erzeugt.
Die Spannung an den LEDs ergibt sich durch die Verwärtsspannung beim jeweiligen Strom.
Die Spannung an den LEDs ergibt sich durch die Verwärtsspannung beim jeweiligen Strom.
Re: IO Warrior 40 und LED Warrior
Prima, danke, auch für die Erklärung, Guido. Dann baue ich das heute Abend mal so auf, jetzt kann ich ja den Aufwand auf 2 Bauteile reduzieren.
Ich melde mich dann heute Abend nochmal mit dem Testergebnis, falls jemand anders auch mal die beiden Module direkt ohne viel Aufwand verdrahten will, ist das dann ja schon dokumentiert ;)
Ich melde mich dann heute Abend nochmal mit dem Testergebnis, falls jemand anders auch mal die beiden Module direkt ohne viel Aufwand verdrahten will, ist das dann ja schon dokumentiert ;)
IO-Warrior 40 und LED Warrior im Einsatz bei
http://www.shitbag.de
http://www.shitbag.de
Re: IO Warrior 40 und LED Warrior
Es hätte mich auch gewundert, wenn es mal bis zum Ende "einfach funktioniert" hätte ;) - Gestern Abend habe ich die Schaltung so aufgebaut, den LW huckepack auf dem Breadboard des IOW Starterkit, ein 100K Poti und einen BC547 dazu. Zu allem Überfluß hat dann gestern noch die Batterie vom Multimeter schlapp gemacht, also wurde das ganze ein leichter Blindflug.
Als ich dann die 12V dranhing wurden beide LEDs mal kurz richtig hell und dann ging eine aus. Müssten nicht eigentlich bei serieller LED Beschaltung beide LEDs ausgehen, wenn eine stirbt?
Auch ein Versuch mit dem IOW das Modul über den MOD Pin abzuschalten funktionierte nicht. Wobei ich bisher nicht sagen kann, ob vielleicht das Poti einen schlag hat oder meine Software-Ansteuerung für die Tonne ist. Die Basis des Transistors hängt an Port2 PIN7. Ich hab einfach die iowkittest geändert und gehofft, daß die Änderung von rep.Bytes von 3 auf 2 die Testroutine auf den Port2 schiebt. Liege ich da falsch?
Ich kauf jetzt erstmal frische Batterien fürs Multi und messe mal, was da vor sich geht.
Als ich dann die 12V dranhing wurden beide LEDs mal kurz richtig hell und dann ging eine aus. Müssten nicht eigentlich bei serieller LED Beschaltung beide LEDs ausgehen, wenn eine stirbt?
Auch ein Versuch mit dem IOW das Modul über den MOD Pin abzuschalten funktionierte nicht. Wobei ich bisher nicht sagen kann, ob vielleicht das Poti einen schlag hat oder meine Software-Ansteuerung für die Tonne ist. Die Basis des Transistors hängt an Port2 PIN7. Ich hab einfach die iowkittest geändert und gehofft, daß die Änderung von rep.Bytes von 3 auf 2 die Testroutine auf den Port2 schiebt. Liege ich da falsch?
Code: Select all
memset(&rep, 0xff, sizeof(rep));
rep.ReportID = 0;
rep.Bytes[2] = (UCHAR) value;
return IowKitWrite(devHandle, IOW_PIPE_IO_PINS,
(PCHAR) &rep, IOWKIT40_IO_REPORT_SIZE) == IOWKIT40_IO_REPORT_SIZE;
IO-Warrior 40 und LED Warrior im Einsatz bei
http://www.shitbag.de
http://www.shitbag.de
Re: IO Warrior 40 und LED Warrior
So, jetzt läuft alles, die Helligkeit lässt sich einigermassen justieren und mit dem iowtestkit gehen die LEDs an und aus. Der Fehler lag im fehlenden gemeinsamen GND-Bezug, gestern kams mir dann und ich hab dann testweise eine Kroko-Brücke zwischem dem LW GND und dem IOW GND gelegt. Kaum macht man es richtig, geht es. Danke nochmal für die Hilfe Guido.
IO-Warrior 40 und LED Warrior im Einsatz bei
http://www.shitbag.de
http://www.shitbag.de
-
- Site Admin
- Posts: 2879
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Re: IO Warrior 40 und LED Warrior
OK, ich hatte mich schon gewundert woran das liegen sollte.
Das mit den LEDs ist einfach zu erklären: Manche LEDs haben eine anitparallele Zenerdiode intern um bei Ausfall der LED nicht die ganze Kette dunkel werden zu lassen und natürlich gibt es auch den Fehlermodus des dauerhaften Durchschaltens.
Das mit den LEDs ist einfach zu erklären: Manche LEDs haben eine anitparallele Zenerdiode intern um bei Ausfall der LED nicht die ganze Kette dunkel werden zu lassen und natürlich gibt es auch den Fehlermodus des dauerhaften Durchschaltens.