Hallo zusammen,
ich habe ein Projekt, wo ich einen Arduino über eine serielle Schnittstelle steure. Hierzu verwende ich die emulierte serielle Schnittstelle des per USB verbundenen Arduinos.
Die Kommunikation läuft größtenteils relativ reibungslos, jedoch fliegen in unvorhersehbaren Abständen (manchmal alle 5 Minuten, manchmal ganze Tage lang gar nicht) Exceptions.
Die Exception lautet:
Fehlermeldung:
- Ein an das System angeschlossenes Gerät funktioniert nicht.
SerialDirectController (Zeile 28)
System.IO.Ports.SerialPort.Write(String text)
System.IO.Ports.SerialStream.Write(...)
System.IO.Ports.SerialStream.EndWrite(...)
System.IO.InternalResources.WinIOError(...)
Der Code, welchen ich für die Ansteuerung verwende ist folgender:
// Für die Initialisierung
this.serialPort = new SerialPort(port, 9600, Parity.None, 8, StopBits.One);
this.serialPort.Open();
// Die eigentlichen Befehle
...
this.serialPort.Write("SetCameraOn#");
...
this.serialPort.Write("SetCameraOff#");
...
Weiß jemand von euch vielleicht Rat?
Vielen Danke und viele Grüße
Christoph
Meine Erfahrung ist, dass die serielle Schnittstelle via USB an genau 2 Stellen Probleme macht,
Gibts noch ne andere möglichkeit?
Auf native umzustellen ist eigentlich keine Option. Es arbeiten ja viele Geräte mit emulierten seriellen Schnittstellen (z.B. GPS - Empfänger) - das müsste doch verlässlich funktionieren?
Hast du mal andere USB/Seriell-Adapter getestet?
Ich habe aber auch die Erfahrung gemacht, dass die USB-Adapter am schlechtesten funktionieren.
Sehr gute erfahrungen habe ich mit einer RS232 ExpressCard gemacht, da hatte ich noch nie Probleme.
Hallo Christoph K.,
USB/RS232 Konverter mit FTDI Chipsatz sind empfehlenswert!
Wir haben selbst viele Converter im Einsatz ich selbst verwende einen von Digitus, täglich 8 stunden über ein Jahr lang und mir ist dein Problem nicht bekannt.
Ich würde deswegen nicht pauschal sagen das USB/Serial Converter nichts taugen und man auf nativ tauschen muss.
Nur um sicher zu gehen du hast es auch mit einer nativen versucht und es liegt definitiv am Adapter?
Möglicher weiße löst sich dein Problem schon wenn du einen anderen Adapter verwendest, wir selbst unterschützen nur ein paar Adapter (da manche Probleme mit Handshake oder sonst irgendwas haben).