IOWarrior 56 - USB disconnect (suspend) unter Linux/CentOs

Dies ist das deutsche Forum für alle Themen um den IO-Warrior. Beiträge bitte nur in Deutsch.

Moderator: Guido Körber

mike001
Posts: 8
Joined: Fri Jun 21, 2013 11:51 pm

IOWarrior 56 - USB disconnect (suspend) unter Linux/CentOs

Post by mike001 »

Hallo zusammen,

Habe folgendes Problem mit der USB-Anbindung:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
"disabled by hub (EMI?), re-enabling...... I/O-Warror #0 now disconnected"


Problem im Detail:
~~~~~~~~~~~
Meine Haussteuerung (Rollomotoren 220V über Relais, Schalter mit 24V…) basierend auf einem reinen IOWarrior Input Board und einem Output Board ist nach vereinfachten Testbetrieb (mit nur einem Relais und einem Schalter) endlich8)) fertig.

Nachdem ich nun alle 50 Ein- und 50 Ausgänge in betrieb genommen habe, funktioniert das Schalten nur einige mal (manchmal auch nur einmal), anschliessend hängt der USB-Host Controller die beiden IOWarriors aus und gleich wieder ein. Leider fliegt hierbei auch meine Steuerung weg, so dass ich effektiv gar nichts steuern kann 8(
Das System läuft auf Centos 6.3. Die unten abgebildete Sequence steht im dmesg log, wenn der Fehlerfall auftritt. Im Netz habe ich nach dem Problem gesucht, leider steht da nur, Schirmung prüfen…. .

http://www.linuxquestions.org/questions ... ng-841593/

Ich verwende ein Board bei dem alle Ausgänge mit Optokopplern „abgeschirmt“ sind (siehe Bild anbei).
Die verwendeten Finderrelais haben einen sehr geringen Strombedarf.

Zur Info: Beide Boards sind über java mit einem zentralen Knoten (Server) verbunden. Dieser entscheidet anhand des Inputs (Schalter) welcher Ausgang (Relais) zu schalten ist.


Habe auch schon einen aktiven USB-Hub (stellt 2A bereit) an den USB-Port meines Rechners (Übrigens ein Stromsparender Intel Atom d525 : http://ark.intel.com/de/products/49490) gehangen, und die beiden Warrior über diesen Hub angeschlossen, Problem bleibt dennoch bestehen. Werde mir morgen noch mal zwei doppelt geschirmte USB Kabel kaufen… .

Bin fast ratlos und wäre über jeden Tipp dankbar.


Hier dmesg:
~~~~~~~
Jun 24 18:06:20 darkmoon kernel: hub 1-8:1.0: port 3 disabled by hub (EMI?), re-enabling...
Jun 24 18:06:20 darkmoon kernel: usb 1-8.3: USB disconnect, device number 5
Jun 24 18:06:20 darkmoon kernel: iowarrior 1-8.3:1.0: I/O-Warror #0 now disconnected
Jun 24 18:06:20 darkmoon kernel: iowarrior 1-8.3:1.1: iowarrior_callback - usb_submit_urb failed with result -19
Jun 24 18:06:20 darkmoon kernel: iowarrior 1-8.3:1.1: I/O-Warror #1 now disconnected
Jun 24 18:06:20 darkmoon kernel: usb 1-8.3: new full speed USB device number 7 using ehci_hcd
Jun 24 18:06:28 darkmoon kernel: usb 1-8.3: New USB device found, idVendor=07c0, idProduct=1503
Jun 24 18:06:28 darkmoon kernel: usb 1-8.3: New USB device strings: Mfr=1, Product=2, SerialNumber=4
Jun 24 18:06:28 darkmoon kernel: usb 1-8.3: Product: IO-Warrior56
Jun 24 18:06:28 darkmoon kernel: usb 1-8.3: Manufacturer: Code Mercenaries
Jun 24 18:06:28 darkmoon kernel: usb 1-8.3: SerialNumber: 00000C15
Jun 24 18:06:28 darkmoon kernel: usb 1-8.3: configuration #1 chosen from 1 choice
Jun 24 18:06:30 darkmoon kernel: iowarrior 1-8.3:1.0: IOWarrior product=0x1503, serial=00000C15 interface=0 now attached to iowarrior0
Jun 24 18:06:31 darkmoon kernel: iowarrior 1-8.3:1.1: IOWarrior product=0x1503, serial=00000C15 interface=1 now attached to iowarrior1
Jun 24 18:06:31 darkmoon kernel: hub 1-8:1.0: port 4 disabled by hub (EMI?), re-enabling...
Jun 24 18:06:31 darkmoon kernel: usb 1-8.4: USB disconnect, device number 6
Jun 24 18:06:31 darkmoon kernel: iowarrior 1-8.4:1.0: I/O-Warror #2 now disconnected
Jun 24 18:06:31 darkmoon kernel: iowarrior 1-8.4:1.1: I/O-Warror #3 now disconnected
Jun 24 18:06:31 darkmoon kernel: usb 1-8.4: new full speed USB device number 8 using ehci_hcd
Jun 24 18:06:31 darkmoon kernel: usb 1-8.4: New USB device found, idVendor=07c0, idProduct=1503
Jun 24 18:06:31 darkmoon kernel: usb 1-8.4: New USB device strings: Mfr=1, Product=2, SerialNumber=4
Jun 24 18:06:31 darkmoon kernel: usb 1-8.4: Product: IO-Warrior56
Jun 24 18:06:31 darkmoon kernel: usb 1-8.4: Manufacturer: Code Mercenaries
Jun 24 18:06:31 darkmoon kernel: usb 1-8.4: SerialNumber: 00000C0A
Jun 24 18:06:31 darkmoon kernel: usb 1-8.4: configuration #1 chosen from 1 choice
Jun 24 18:06:31 darkmoon kernel: iowarrior 1-8.4:1.0: IOWarrior product=0x1503, serial=00000C0A interface=0 now attached to iowarrior2
Jun 24 18:06:31 darkmoon kernel: iowarrior 1-8.4:1.1: IOWarrior product=0x1503, serial=00000C0A interface=1 now attached to iowarrior3
Attachments
Links output-Board. IOW-Ausgang schaltet Relais auf Masse durch. Relais kommt von 24V.<br /><br /><br />Rechts &quot;teilweise - abgeklemmtes&quot; InputBoard
Links output-Board. IOW-Ausgang schaltet Relais auf Masse durch. Relais kommt von 24V.


Rechts "teilweise - abgeklemmtes" InputBoard
einblick.JPG (118.21 KiB) Viewed 15104 times
User avatar
Christoph Jung
Posts: 670
Joined: Sun Oct 08, 2006 3:43 pm
Location: Germany / Berlin
Contact:

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by Christoph Jung »

Wie lang ist denn das USB-Kabel zwischen PC und Hub, bzw. zwischen HUB und IO-Warriorn?
Wieviel Strom wird denn insgesamt vom IO-Warrior für die Optokopler/Relais gezogen? Nicht das der IO-Warrior zu viel strom verlangt und der Hub dadurch aus dem Tritt kommt.
Abteilung: Softwareentwicklung
Folge uns auf Twitter
Follow us on twitter
Guido Körber
Site Admin
Posts: 2856
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by Guido Körber »

Ich nehme an der Fehler tritt in dem Moment aus wo eines oder mehrere der Relais schalten?

Was für Relais sind das? Wenn es elektromechanische sind, vermisse ich die Freilaufdioden.

Die 2 A des Hubs sind irrelevant. Ein USB Gerät kann nur maximal 500 mA bekommen, dazu kommt die Frage ob der Strom auf der Leiterplatte richtig verteilt wird.
mike001
Posts: 8
Joined: Fri Jun 21, 2013 11:51 pm

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by mike001 »

Dank für die schnellen Antworten:

Kabellängen:
PC<--- 0,5m -->Hub<--1,8m --> Board

Relaisstrom:
Ein elektromechanisches Relais zieht einen Strom von 9,4mA bei 24V (50 Relais=470mA).
Der Fehler tritt aber schon auf, wenn ich nur ein Relais schalte, also bei 9,4mA.
(http://www.reichelt.de/Koppelrelais/FIN ... OUPID=3295)

Die Relais besitzen einen "Protection and Indication Circuit" im Sockel,
ist hierbei eine weitere Freilaufdiode nötig?

Im Testbetrieb ist mir allerdings folgendes aufgefallen:
Wenn ich das Siemens LOGO Netzteil von 220V trenne und wieder zuschalte,
und somit effektiv NUR die 24V für die Relais an/ausschalte kam gelegentlich der selbe Fehler.
wüsste aber auch nicht wo die "Einstreuung" herkommen sollte?
Guido Körber
Site Admin
Posts: 2856
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by Guido Körber »

Da ist leider nur so ein Nicht-Datenblatt zu finden. Es ist also ziemlich unklar was dieses Relais intern macht. Eventuell hat es sogar noch mal einen Optokoppler mit drin?

Ist denn zwischen der Stromversorgung der Relais und dem IO-Warrior eine galvanische Verbindung?
mike001
Posts: 8
Joined: Fri Jun 21, 2013 11:51 pm

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by mike001 »

Habe nach längerem Suchen eine Innenansicht der ProtectionUnit gefunden (siehe Bild)
(...DC version with pole safety and coil indication...)

Eigentlich ist da eine Freilaufdioden eingebaut.
Die Spannungsversorgung des IOW erfolgt über den USB-Anschluss,
Die 24V sind galvanisch getrennt an die OptoKoppler geführt.
Es sollte eigentlich alles ok sein.

Ich werde heute nochmal die Optokoppler:
- ohne Relais schalten lassen
- mit Relais, aber ohne Last schalten lassen


Gespannt:Mike
Attachments
p-unit.PNG
p-unit.PNG (15.46 KiB) Viewed 15065 times
Guido Körber
Site Admin
Posts: 2856
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by Guido Körber »

Also demnach wird der Strom für die Relaisspulen über Treiber geschickt die galvanisch mit dem IOW verbunden sind?

Da gibt es dann ein paar Möglichkeiten sich Störungen einzufangen.
mike001
Posts: 8
Joined: Fri Jun 21, 2013 11:51 pm

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by mike001 »

Die Ausgänge des IOW schalten über einen Optokoppler und dahinterliegender Treiberstufe die Relais auf Masse.
Die beiden Spannungen 5V (USB) und 24V (Relais) sind galvanisch getrennt.

Habe gestern die von den Relais geschaltene 220V abgeklemmt, und die Relais nur "leer" schalten lassen.
Dabei lief alles Fehlerfrei und es konnten alle 50 Ausgänge auf einmal geschalten werden - dies mehrfach.
Es sollte also eigentlich nichts mit den 24V zu tun haben.

Sobald ich die 220V angeklemmt habe, und schalte kam wieder der USB-Fehler.... .
Dieser Fehler entsteht aber nicht beim Einschalten sondern IMMER beim Abschalten der Relais.

Im Datenblatt des Relais fand ich gestern noch den Hinweis, bei Induktiver Last (wie eben meine Rollomotoren)
ist eine Freilaufdiode parallel zur Last zu schalten. Wie hier der Einfluss auf den USB-Port sein kann, ist mir allerdings unklar.


Was mich bei den Relais allerdings wundert ist:
Die eine Diode im Sockel des Relais (siehe Abbildung weiter oben im Thread) sollte sicherlich einen Verpolschutz sicherstellen,
ich kann aber die 24V + und - vertauschen, das Relais schaltet immer. Auf dem Foto hat das Diodenelement eine Bezeichnung 3W4.


Würde also nun eine Freilaufdiode parallel zur Last schalten.... .
Attachments
Innenansicht des Finder-Relaissockels. Auf dem Foto hat das Diodenelement eine Bezeichnung 3W4.
Innenansicht des Finder-Relaissockels. Auf dem Foto hat das Diodenelement eine Bezeichnung 3W4.
relais-innen-foto.jpg (229.47 KiB) Viewed 15052 times
mike001
Posts: 8
Joined: Fri Jun 21, 2013 11:51 pm

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by mike001 »

Habe heute alles ausprobiert.

Am Ende sogar:
- das ganze Board abgeklemmt,
- aus dem Schaltschrank entnommen
- ein Relais mit einem längeren 2m Kabel an das Board geklemmt
- Schaltschranktür geschlossen, so dass der aus Metall bestehende Schaltschrank komplett geschlossen war
- PC, und Boards befinden sich außerhalb des Schrankes, Relais im Inneren.
- USB-Kabel sind doppelt geschirmt und mit Ferritkern
- Relais geschalten...
- die ersten Schaltvorgänge (an dann aus) gingen, Rollo fährt, leider dann...
- das Ausschalten des Relais bewirkt nach dem 4 Schaltvorgang den selben FEHLER....

Woher auch immer der EM-Impuls kommen sollte, er kommt irgendwie vom ausschaltenden Relais.
Bin Ratlos.
mike001
Posts: 8
Joined: Fri Jun 21, 2013 11:51 pm

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by mike001 »

Bei Stöbern im Netz sind mir ganz ähnliche Probleme aufgefallen,

"EMV Problem USB / Netzfilter"
http://www.mikrocontroller.net/topic/266363

diese enden allerdings auch nach allen möglichen "Testbauten" im Status "ratlos" 8(
mike001
Posts: 8
Joined: Fri Jun 21, 2013 11:51 pm

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by mike001 »

Nachtrag:

- USB-Verbindung zwischen IOW und "PC" steht
- KEIN einiges Kabel vom IOW zu den Relais angeschlossen
- Ein Relais "per Hand" auf Masse ziehen
- Rollomotor läuft
- per Hand Masse von Relais entfernen
=> Die Störung trifft die USB-Strecke (sicherlich das IOW-Board selbst) und Fehler wird "induziert" ...

Hat jemand einen Hinweis, welches Metallgehäuse ich verwenden sollte,
oder ob ich ggf. mit HF-Folie mein Plastegehäuse (in dem der IOW sitzt) schützen kann?

Würde dann die Strahlung über die angeschlossenen 24V Kabel einstreunen, so dass diese auch
geschirmt sein sollten.

Bin für jeden Hinweis dankbar.
Thoene
Posts: 33
Joined: Sat Aug 29, 2009 8:13 pm

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by Thoene »

Hallo.
Das Logo Netzteil ist ein Schaltnetzteil. Es könnten von dort Impulse beim Schalten der Motore irgendwie
zur Speisung des IOW kommen.
1. Mal versuchen die 230 Volt zum PC über Filter zu betreiben.
2. Die 24 Volt von einem Analogen Netzteil (Trafo-Gleichrichter-Elco-Regler7824) erzeugen.
Hilfreich wäre einen kompl. Schaltplan mit PC-IOW-Netzteil-Motoren zu posten.
Viel Glück.
mike001
Posts: 8
Joined: Fri Jun 21, 2013 11:51 pm

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by mike001 »

Nach weiteren Versuchen den Fehler einzukreisen ist die Lösung gefunden:

http://www.mikrocontroller.net/articles/Snubber

Aktuell sind 10 Relais mit dem RC-Glied bestückt 100Ohm/1W und 0,1µ und alles funktioniert prima.
Aktuell fliesst im ausgeschaltenen Zustand über die 10 Snubber ein Ruhestrom von 55mA, was natürlich nicht so schön ist.
Werde morgen den Snubber parallel zu Last schalten, hoffe dass die Entstörung da noch ausreichend ist,
sonst wären das bei 40 Rollos ~ 200mA für "Blindflug" $-)
Attachments
snubber.jpg
snubber.jpg (130.94 KiB) Viewed 14875 times
Guido Körber
Site Admin
Posts: 2856
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by Guido Körber »

Also ein klassisches Entstörungsproblem.
rollio0815
Posts: 2
Joined: Fri Sep 19, 2014 8:05 am

Re: IOWarrior 56 - USB disconnect (suspend) unter Linux/Cen

Post by rollio0815 »

Hallo zusammen,

habe das gleich Problem wie mike001 aber so was von.

Mit verschiedenen Boards (Intel Atom und Raspberry pi) wollte mal nachhören ob die RC Glieder parallel zur Last Erfolg hatten?

Gruß
Post Reply