Hallo! ich verwende für eine RS232 Kommunikation 4 Einzellitzen als Leitung (also kein Kabel mit 4 Leitungen, sondern einfach 4 Ennzellitzen AWG26) - d.h. ohne Schirmung, ohne Verdrillung, etc... Litze 1: GND Litze 2: Serial RX Litze 3: Serial TX Litze 4: Vcc +5V Die Litzen sind genau 1m lang, das ganze funktioniert auch ganz gut. Ist in einem Gerät verbaut. Manchmal, in ganz seltenen Fällen kommt ein Communication Timeout der seriellen Schnittstelle. Das ist sehr selten udn ich weiß cniht, woran das liegen kann. Ist es grundsätzlich eine schlechte Idee, hier nur Einzellitzen zu verwenden? Wäre ein geschirmtes Kabel bzw verdrillte Litzen hier besser? Möglicherweise werden hier irgendwo Störungen eingefangen, 1m ist ja auch nicht mehr so wenig...? Danke!
Werz schrieb: > ich verwende für eine RS232 Sicher dass es R232 ist und nicht TTL? Also sind RS232 Leitungstreiber verbaut? Was für eine Datenrate? Werz schrieb: > Manchmal, in ganz seltenen Fällen kommt ein Communication Timeout der > seriellen Schnittstelle. Das ist sehr selten udn ich weiß cniht, woran > das liegen kann. Na dann hänge doch Mal ein Oszi dran mit passendem Trigger. Vllt kackt auch einfach einer deiner Teilnehmer zwischendurch ab. Im einfachsten Fall also Mal ein Pin Toggle in die Main der Programme, Trigger Kommunikationsausfall und Mal alle 3/5 Spuren aufzeichnen. Werz schrieb: > Wäre ein geschirmtes Kabel Das wäre ein erster Schritt. Werz schrieb: > bzw verdrillte Litzen hier besser? Mit was willst du denn verdrillen? Ist ja keine differentielle Übertragung. Flachbandkabel macht man ab und zu noch. Wobei jede 2. Ader belegt wird. Die anderen auf GND. Werz schrieb: > 1m ist ja auch nicht mehr so wenig...? Kommt auf die Übertragungsrate an. Im Industrieumfeld wird auch mit 1MBaud auf >100m übertragen. Geht schon. Da ist es aber immer differentiell.
Werz schrieb: > einfach 4 Ennzellitzen AWG26) > - d.h. ohne Schirmung, ohne Verdrillung, etc... Nicht schön, aber auch nicht kriegsentscheidend. RS232 ist sehr, sehr robust. Klingt eher nach fehlerhafter Software. Wirklich RS232 oder doch nur TTL-Pegel? (wobei auch das bei 1m noch funktionieren solte)
:
Bearbeitet durch User
Hallo, danke schon mal für eure Antworten! Ja, es ist wirklich RS232 - Baudrate ist 9600bps. Hm ja wie gesagt, dieser Fehler kommt wirklich sehr selten...
Haben beide Geräte das gleiche GND Potential? Trenne mal die Verbindungen und messe mit einem Multimeter im die Wechselspannung zwischen GND vom linken Gerät und GND vom rechten Gerät. Es muss weniger als 0,5V sein.
Werz schrieb: > Litze 1: GND > Litze 2: Serial RX > Litze 3: Serial TX > Litze 4: Vcc +5V > Baudrate ist 9600bps. > Die Litzen sind genau 1m lang, das ganze funktioniert auch ganz gut. Ist > in einem Gerät verbaut. > Manchmal, in ganz seltenen Fällen kommt ein Communication Timeout der > seriellen Schnittstelle. erinnert mich an vor 30 Jahren als ich dem AtariST die Tastatur nach aussen legte. Mit 5V gabs Probleme also habe mit einem einfachen Transistor, genauer zwei für Rx & Tx auf 12V gelegt. Heute würde ich Pegelwandler einsetzen, höherere Spannung mehr Störabstand.
Joachim B. schrieb: > Heute würde ich Pegelwandler einsetzen, höherere Spannung mehr > Störabstand. Ah, die IBM Sackgasse. Heute (bzw. schon seit 30 Jahren glaube ich) übertragen wir locker flockig 1 Megabit über 1 Kilometer. Mit RS422 und viel weniger als 5V.
Werz schrieb: > Ja, es ist wirklich RS232 - Baudrate ist 9600bps. Und mit welchen Spannungspegeln werden die Daten übertragen?
Wolfgang schrieb: > Und mit welchen Spannungspegeln werden die Daten übertragen? Werz schrieb: > Litze 4: Vcc +5V ich rate mal: 5V?
Joachim B. schrieb: >> Litze 4: Vcc +5V > > ich rate mal: > 5V? Wobei ich mich frage: wozu +5V? Was betreibt er am anderen Ende damit?
Werz schrieb: > einfach 4 Ennzellitzen AWG26 Die hast du aber schon halbwegs eng aneinander gelegt? Werz schrieb: > RS232 - Baudrate ist 9600bps. Mit 9600 und RS232 kann man im industriellen Umfeld locker 20m zurücklegen MaNi schrieb: > Mit was willst du denn verdrillen? Wenn TX mit GND verdrillt ist und RX auch mit GND verdrillt ist, dann kann auf diesen beiden Signalpfaden schon mal keine riesige Leiterschleife aufgezogen werden und dort auch keine Störungen engekoppelt werden. Und wenn man nichts besseres hat, verdrillt man einfach RX mit GND und TX mit Vcc, denn weschselstromtechnisch sollte GND sowieso das selbe Potential haben wie Vcc. > Ist ja keine differentielle Übertragung. Naja, im Grunde ist jede Datenübertragung irgendwie "differenziell", denn wenn da keine Pegeldifferenzen aufträten, dann könnte man keine Information übertragen.
1 m und 9600 Baud sind so wenig, dass der Fehler höchstwahrscheinlich woanders liegt. Da müssten schon mehrere A irgendwo nahe am Signalkabel fließen und induktiv einkoppeln, alternativ mehrere 100V kapazitiv. Wenn Du wissen willst, wo der Fehler liegt, schalte Parity ein und zähle die uartfehler (einfache counter ++ für Parity, framing, overrun) Wenn Du nur die Fehler reduzieren willst, schaue ob Du beim Senden 1,5 oder 2 stoppbits einstellen kannst. Und dass beide wirklich quartzgenau gleich sind.
Lothar M. schrieb: >> Ist ja keine differentielle Übertragung. > Naja, im Grunde ist jede Datenübertragung irgendwie "differenziell", > denn wenn da keine Pegeldifferenzen aufträten, dann könnte man keine > Information übertragen. Ähh, NEIN. Differentielle Übertragung bedeutet, das das Nutzsignal als Differenz der zwei Datenleitungen enststeht. Und das die Summe der Nutzsignale, also der Strom/Spannung gegenüber dem Bezugspotential (typisch GND) eben Null ist. Damit kann dann das Signalpaar nahezu beliebig im Pegel schwanken (Gleichtakt) ohne das es eine Auswirkung auf den Informationsgehalt hat.
Bentschie schrieb: > Und das die Summe der Nutzsignale, > also der Strom/Spannung gegenüber dem Bezugspotential (typisch GND) eben > Null ist. Nennt man das nicht "symmetrisch"?
Werz schrieb: > Manchmal, in ganz seltenen Fällen kommt ein Communication Timeout der > seriellen Schnittstelle. Ist doch halb so wild. Dann musst du die Kommunikation doch einfach wieder aufsetzen. Du brauchst sowieso so einen Fehlerbehandlungsalgorithmus, weil es naiv wäre, dasvon auszugehen, dass die Übertragung immer und auch noch durchgehend fehlerfrei klappt. > Das ist sehr selten udn ich weiß cniht, woran das liegen kann. Probiers mit dem ESD-Test des kleinen Mannes: kauf dir einen elektrischen Viehtreiber für 20€ und funke mit dem mal in der Nähe des Geräts herum. Wenn das Gerät ein Metallgehäuse hat, dann kannst du ruhig mal eine Zeitlang auf dem Gehäuse rumbrutzeln (nein, NICHT auf die Anschlüsse, das bringt die sicher um). Wenn das Gerät eine Kunstoffkiste ist, dann lege es auf eine Metallplatte und lass die Funken dort überspringen. Am besten diagonal von einer Ecke zur anderen. Wenn dein Gerät da bei jedem Funken austickt, dann musst du noch was verbessern... Bentschie schrieb: > Ähh, NEIN. Du solltest nochmal ausführlich darüber nachdenken, was ich geschrieben habe. > Differentielle Übertragung bedeutet, das das Nutzsignal als Differenz > der zwei Datenleitungen enststeht. Die "Differenz" entsteht bei der unipolaren Übertragung dadurch, dass das Potential der TX-Leitung (oder auch RX-Leitung) sich vom Potential der GND-Leitung unterscheidet. Der Strom, der auf der TX-Leitung zum Empfänger hinfließt, muss auf der Masseleitung wieder zum Sender zurückfließen. Und dieser Stromkreis aus hin- und rückführender Leitung muss möglichst klein sein. Bei symmetrischer Übertragung genauso wie bei asymmetrischer Übertragung. Denn sobald du da durch eine getrennte Leitungsführung ine Fläche aufspannst, können dort Störungen einkoppeln. > Damit kann dann das Signalpaar nahezu beliebig im Pegel schwanken > (Gleichtakt) ohne das es eine Auswirkung auf den Informationsgehalt hat. Und genau das passiert auch bei der asymmetrischen Übertragung: die TX-Leitung, die mit GND verdrillt ist, kann dann zusammen mit der GND-Leitung "schwanken", ohne dass sich diese Schwankung auf die Pegeldifferenz auswirkt.
:
Bearbeitet durch Moderator
Lothar M. schrieb: > Die "Differenz" entsteht bei der unipolaren Übertragung dadurch, dass > das Potential der TX-Leitung sich vom Potential der GND-Leitung > unterscheidet. Ja, gut ich hätte das doch ausführlicher formulieren sollen. Das letztlich eine Potentialdiffernez entsteht ist immer so. Das ist trivial, da ja die Spannung die Information darstellt. > Der Strom, der auf der TX Leitung zum Empfänger hinfließt, muss auf > der Masseleitung wieder zum Sender zurückfließen. Und dieser > Stromkreis aus hin- und rückführender Leitung muss möglichst klein > sein. Bei symmetrischer Übertragung genauso wie bei asymmetrischer > Übertragung. Ja, das ist auch klar. Die Fläche der Schleife ist entscheidend. Deshalb verwenden ja differentielle Busse verdrillte Leitungen. Wenn die Störung halbwegs großflächig einkoppelt (Großflächig bezogen auf die Fläche einer Verdrillung), so koppelt sich das gegenseitig raus (eine halbe Verdrillung positiv und eine halbe Verdrillung negativ). > Denn sobald du da durch eine getrennte Leitungsführung ine Fläche > aufspannst, können dort Störungen einkoppeln. Ich sehe gerade, du kamst aus einer anderen Richtung als ich. Du hattest vorgeschlagen, alle Adern (Signale und Versorgung) einfach zu verdrillen. Das wird in dem Fall sicherlich ausreichend helfen. Ich kam aus der anderen Richtung: Stefan ⛄ F. schrieb: > Ah, die IBM Sackgasse. Heute (bzw. schon seit 30 Jahren glaube ich) > übertragen wir locker flockig 1 Megabit über 1 Kilometer. Mit RS422 und > viel weniger als 5V. Dort wurde behauptet, höhere Pegel wäre Mist und nur differentiell ist die Lösung. Und kurz danch kamst Du und hast, zumindest in meinem ersten Leseverständniss, gesagt, "Verdrillen ist ja auch wie differentiell" ja, das wird gerade etwas off-topic. Für die reine Signalübertragung ist das vermutlich (ich habe das jetzt ins Detail nicht näher durchdacht) gleich. Aber sobald die GND Verbindung auch für die Versorgung genutzt wird oder keine Stichleitung mehr ist, hat die einen Spannungsabfall. Dann ist differentiell etwas ganz anderes als single ended. Also um es kurz zu machen, in dem konkreten Fall (RS232 mit 3 Leitung TX, RX und GND) ist Verdrillen nacher auch wie differentiell. Sobald diese GND-Verbindung irgendwo noch anders Genutz wird stimmt es so nicht mehr. Danke!
Bentschie schrieb: > Sobald diese GND-Verbindung irgendwo noch anders Genutz wird > stimmt es so nicht mehr. Bezogen auf das Signal und die von aussen eingekoppelten Störungen bleibt alles wie zuvor. Denn der Extremfall wäre ja wieder, dass die GND Leitung linksherum und die Signalleitung rechtsherum geführt wird. Und das ist mit Sicherheit die schlechteste Variante. Allerdings kann durch einen zusätzlichen Stromfluss auf der GND-Leitung eine zusätzliche Spannungsdifferenz auftreten, die sich natürlich wiederum auf die Signaldifferenz überlagert und das Signal stört, wenn sie zu groß wird. Und genau dieses Problem hat man bei der symmetrischen Übertragung nicht.
Werz schrieb: > in ganz seltenen Fällen kommt ein Communication Timeout der > seriellen Schnittstelle. Der Timeout ist keine Eigenschaft der ser. Übertragung, sondern der verwendeten Software. Ich würde die Übertragung mit einem Terminal-Programm aufzeichen, um zu sehen, wann und wo sie hängen bleibt.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.