FHEM Forum

Verschiedenes => Bastelecke => Thema gestartet von: Dr. Boris Neubert am 29 März 2014, 17:25:07

Titel: Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: Dr. Boris Neubert am 29 März 2014, 17:25:07
Hallo,

in meinem Rack wird es wohlig warm, wenn mehrere virtuelle Maschinen den Virtual Machine Server auf Temperatur bringen. Ich habe daher zwei 12V-Lüfter zur Belüftung des Racks  eingebaut, die ich allerdings wegen Stromverbrauch und Lärmerzeugung nur bei Bedarf laufen lassen möchte (Servertemperatur wird gemessen und über FHEM sollen die Lüfter an- oder ausgeschaltet werden). Mein erster Versuch mit einem fertigen Thermostat-Modul (NTC schaltet Relais) ist gescheitert, weil die Hysterese zu gering war.

Ich würde gerne per USB-Port schalten. Das Ganze sollte preiswert sein (max. 15 €) und selbst möglich wenig Strom verbrauchen.

Ich habe mal einen Shop gesehen, wo es fertig bestückte USB-Module mit einem Atmel-µC für den Bau eigener Anwendungen gab, aber den finde ich nicht mehr.

Habt Ihr Anregungen oder Empfehlungen?

Viele Grüße
Boris
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: betateilchen am 29 März 2014, 17:31:06
Nimm einen einfach usb/seriell Adapter FT232 und benutze die seriellen Leitungen zum Schalten eines Transistors, der die Lüfter schaltet..

Deine gesuchte Bastelanleitung könnte eventuell diese hier sein?
http://www.obdev.at/products/vusb/powerswitch.html
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: Dr. Boris Neubert am 29 März 2014, 18:09:35
Zitat von: betateilchen am 29 März 2014, 17:31:06
Nimm einen einfach usb/seriell Adapter FT232 und benutze die seriellen Leitungen zum Schalten eines Transistors, der die Lüfter schaltet..

OK, das ist wirklich simpel, zumal ich noch Adapter in der Schublade habe.

Anfängerfrage: was muß ich auf /dev/ttyUSB0 schreiben, damit am Adapter ein Pin auf 0 oder 1 geht?

Zitat
Deine gesuchte Bastelanleitung könnte eventuell diese hier sein?
http://www.obdev.at/products/vusb/powerswitch.html

So ähnlich. Was ich meine war eine fertig mit einer der USB-Varianten vom ATTINY und weiteren SMD-Bausteinen bestückte Platine im DILxx-Format, welche auf der einen Seite einen USB-Anschluß hatte und ringsherum die restlichen Pins des µC herausgeführt. Ebenfalls Transistor* dran und rasch ein einfaches Programm mit LUFA aka MyUSB draufgebraten - fertig.

Viele Grüße
Boris

* entsprechend 2x 12V/0,451A dimensioniert
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: betateilchen am 29 März 2014, 18:17:26
Zitat von: Dr. Boris Neubert am 29 März 2014, 18:09:35
Anfängerfrage: was muß ich auf /dev/ttyUSB0 schreiben, damit am Adapter ein Pin auf 0 oder 1 geht?

Ich würde einfach eine der Handshake-Leitungen zum Schalten nehmen. So wie man das vor 30 Jahren schon an RS232 gemacht hat. Und genau so lange ist es her, dass ich das zum letzten Mal selbst gemacht habe. Da muss ich auch erst Google bemühen.

setserial /dev/ttyUSB1 0 0

Irgendwas in der Art - schau dir mal die manpage zu setserial an.
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: UweH am 29 März 2014, 21:22:32
http://www.sprut.de/electronic/pic/projekte/luefter/luefter.htm (http://www.sprut.de/electronic/pic/projekte/luefter/luefter.htm)
Nicht unbedingt minimal, aber ein cooles Teil. Hab ich bei mir im PC und funktioniert seit Jahren zuverlässig. Regelt CPU- und Grafiklüfter und ist mit den beiden Temperaturanzeigen auch noch ein hübsches Mäusekino  :)
Nur kein USB...
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: betateilchen am 29 März 2014, 21:39:44
 :o ich könnte auch noch ein paar Brotbackrezepte beisteuern. Das wäre auch nicht minimalistisch und auch nicht mit USB.
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: Pfriemler am 29 März 2014, 22:05:58
Ich hatte schon das "wieso soll sich FHEM darum kümmern" in den Fingern - aber das machte mich neugierig:

Zitat von: Dr. Boris Neubert am 29 März 2014, 17:25:07
erster Versuch mit einem fertigen Thermostat-Modul (NTC schaltet Relais) ist gescheitert, weil die Hysterese zu gering war.

Waren die Lüfter ständig am Schalten oder wie?
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: Dr. Boris Neubert am 30 März 2014, 04:36:29
Zitat von: Pfriemler am 29 März 2014, 22:05:58
Waren die Lüfter ständig am Schalten oder wie?

ja, es wird halt die warme Luft aus dem Gehäuse geblasen und dann schaltet der Thermostat ab, bis sogleich die erwärmte Luft, die aus den Servern kommt, für das Wiedereinschalten sorgt.

Mit Temperaturmessung via sensors oder ipmitool und Regelung per Fhem geht das sicher besser.

Grüße
Boris
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: Dr. Boris Neubert am 30 März 2014, 08:37:45
Zitat von: betateilchen am 29 März 2014, 18:17:26
Ich würde einfach eine der Handshake-Leitungen zum Schalten nehmen. So wie man das vor 30 Jahren schon an RS232 gemacht hat. Und genau so lange ist es her, dass ich das zum letzten Mal selbst gemacht habe. Da muss ich auch erst Google bemühen

Es gibt tatsächlich reihenweise Google-Ergebnisse, aber wenig Ausgegorenes. Ein ausgearbeitetes Beispiel aus dem Jahr 2000(!) ist hier:

http://www.linux-community.de/Internal/Nachrichten/Serielle-Fernsteuerung-Schnell-geschaltet
(http://www.linux-community.de/Internal/Nachrichten/Serielle-Fernsteuerung-Schnell-geschaltet)
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: Pfriemler am 30 März 2014, 09:25:15
Ok, bei vielen Wärmequellen diese abzufragen und daraus einen Bedarf zu errechnen macht natürlich schon Sinn. Sonst hätte ich jetzt einen Lüfternachlauf ins Feld geworfen, aber dessen Kosten ziehen mit der eleganten USB-Lösung gleich. Oder aber ich würde gleich mal über eine Lüfterdrehzahlregelung nachdenken... wäre mit PWM ja kein Hit.

Geht nich gips nich

Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: betateilchen am 30 März 2014, 12:02:02
ZitatEs gibt tatsächlich reihenweise Google-Ergebnisse, aber wenig Ausgegorenes.

Ich hatte Dir doch setserial genannt - das Programm ist ausgegoren. Hilft Dir das nicht weiter?

Ansonsten nimm die kleine Homematic-Schaltplatine und häng ein Relais dran. Dann hast Du zwar kein USB, bist aber out-of-the-box fhem-kompatibel :)

http://www.elv.de/homematic-schaltaktor-fuer-batteriebetrieb-komplettbausatz.html
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: Dr. Boris Neubert am 30 März 2014, 12:23:54
Zitat von: betateilchen am 30 März 2014, 12:02:02
Ich hatte Dir doch setserial genannt - das Programm ist ausgegoren. Hilft Dir das nicht weiter?

man setserial hat mir nichts darüber verraten, wie ich einzelne Leitungen der seriellen Schnittstelle setze.

Zitat
Ansonsten nimm die kleine Homematic-Schaltplatine und häng ein Relais dran. Dann hast Du zwar kein USB, bist aber out-of-the-box fhem-kompatibel :)

Homematic kommt mir gar nicht erst ins Haus  :o

Ich habe aber noch einen FS20-4fach Schaltaktor...

Jedenfalls liegt jetzt hier schonmal das Meßgerät, der USB-nach-RS232-Konverter, und eine Sub-D-Buchse auf dem Tisch, und vielleicht wird daraus ja schon was.

Jetzt gehe ich aber erstmal grillen!

Viele Grüße
Boris

Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: PeMue am 30 März 2014, 17:07:25
Hallo Boris,

vielleicht hilft Dir das (http://forum.ubuntuusers.de/topic/seriell-rts-dtr-einzeln-schalten/).

Gruß PeMue
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: betateilchen am 02 April 2014, 14:54:50
das ist doch das gleiche, was setserial auch macht :P
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: betateilchen am 02 April 2014, 15:39:32
Beispiel in py (sowas sollte aber in perl auch möglich sein)


import time
import serial

ser = serial.Serial(0)
ser.setRTS(False)
time.sleep(0.5)
ser.setRTS(True)
time.sleep(0.5)
ser.setRTS(False)


Damit kann man einen Blinker bauen  :P
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: betateilchen am 02 April 2014, 15:41:16
weitere Infos auf OS-Ebene: http://www.linuxquestions.org/questions/programming-9/manually-controlling-rts-cts-326590/
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: Dr. Boris Neubert am 06 April 2014, 10:29:01
So, das habe ich heute mal mit einem modifizierten C-Programm aus Udos Link ausprobiert, und siehe da, es geht mit einem USB-RS232-Konverter basierend auf dem PL2303 nicht. Öffnen des Devise setzt RTS (RTS geht dann von -6,4 V auf +6,6 V). Man kann aber RTS nicht mit ioctl setzen oder löschen. Gelöscht wird es erst, wenn ich das Device wieder schließe.

Werde mir jetzt mal ein FT232RL-basiertes Modul für dreifuffzich in China bestellen...

Viele Grüße
Boris
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: betateilchen am 06 April 2014, 13:01:13
Na immerhin bist Du ja jetzt schon ein ganzes Stück weiter mit Deiner Minimallösung :)
Titel: Antw:Minimallösung für 1x Ein per USB gesucht (Schalten von 12V-Lüftern)
Beitrag von: Pfriemler am 09 April 2014, 09:50:48
Mir fällt gerade ein, dass ich vor Jahren mal kleine Reglerplatinen an (vor)laute Prozessor- und Grafikkarten-Lüfter verbaut habe (diese hässlichen kleinen 40mm-Dinger). Die schalteten nicht, sondern regelten in einem Bereich von etwa 10 Grad. Da pumpte nix. Kostete ca 5 Euro... (wegduck)

Geht nich gips nich