Guten Tag, ich brauche eure Hilfe bzgl. dem Einlesen von 2 Signalen über eine RS 232 Schnittstelle. Die Problemstellung sieht wie folgt aus: Ich habe ein PC Programm, das mir auf jeweils zwei Signale Werte kopiert. Da es sich um ein älteres Programm handelt, ist der Support über den Autor nicht mehr möglich. Alternativen hierzu gibt es jedoch hier auch nicht. Die beiden Signale werden über eine RS 232 Schnittstelle eingelesen. Werden RTS und CTS, DCD und DTR jeweils verbunden, dann bekomme ich je ein Signal für das Programm. Da die meisten PCs keine RS232 Schnittstelle mehr haben, läuft das ganze über einen USB Konverter. Nun zur eigentlichen Problemstellung: Das ganze funktioniert zu 95 % zuverlässig. Jedoch bekomme ich selten, aus welchen Gründen auch immer ein Signal an der Software, obwohl Hardwaremäßig die Pins „nicht“ verbunden werden. Versucht habe ich schon performa die Kontakte der RS232 Schnittstelle mit einem Widerstand auf Masse zu ziehen, dies hat jedoch keine Abhilfe geschaffen. Vielleicht hat jemand Tipps, was ich hierzu noch versuchen könnte. Vielen Dank
1. Versuche mal Dein Problem verständlich zu beschreiben, dann kann man Dir vielleicht helfen. 2. Es gibt RS-232 Einsteckkarten für PCs die um Längen besser laufen als USB-Adapter (besonders unter Windows). 3. Mach Dich mit den RS-232 Spannungspegeln vertraut. Das ist da nicht wie TTL. 0V ist kein erlaubter Zustand. High und Low sind da positive und negative Spannungen. 4. Die von Dir beschriebenen Pins verbindet man um das Hardware Handshake zu simulieren, wenn man das nicht braucht. Es kann durchaus sein, dass das auch mal ohne diese Verbindungen geht, bau die aber lieber ein, dann ist das definiert.
Jörg T. schrieb: > Versucht habe ich schon performa die Kontakte der RS232 Schnittstelle > mit einem Widerstand auf Masse zu ziehen, dies hat jedoch keine Abhilfe > geschaffen. Vielleicht hat jemand Tipps, was ich hierzu noch versuchen > könnte. Bei einer RS232-Schnittstelle irgendwelche Signale auf Masse zu ziehen, dürfte eher kontraproduktiv sein. Normgerechte Spannungspegel für RS-232 müssten am Empfänger unterhalb von -3V bzw, oberhalb von +3V liegen. Signalpegel zwischen −3 V und +3 V gelten als undefiniert. https://de.wikipedia.org/wiki/RS-232#Definition Wie sieht deine Schaltung aus und was für Handshake ist von der Software gefordert?
Vielen Dank für die schnelle Antwort. 1. Das Problem ist wie folgt. Ein Relais zieht an und somit erhält RTS CTS oder DCD und DTR Verbindung. Daraufhin bekomme ich in meiner Software ein Signal gesetzt. Nur bekommt die Software in seltenen Fällen auch anscheinend ein Signal, obwohl das Relais keine physikalische Verbindung herstellt. 2.Aber gibt es auch die RS-232 Einsteckkarten für Laptops??? 3.Da fehlen mir die Kenntnisse.....da muss ich wohl ein wenig was auffrischen. 4. Es funktioniert ja nur mit diesen Pins. """bau die aber lieber ein, dann ist das definiert.""" in wie fern einbauen. Das verstehe ich nicht ganz.
Zu 2.: Natürlich gibts die: https://www.ebay.de/i/192213940269 Zu 1.: Wenn die Schaltung die eigentlichen Datenleitungen RX und TX nicht nutzt, dann ist das eine Spezialsache. Die funktionieren unter umständen mit USB-Seriell Wandlern grundsätzlich nicht zuverlässig. Wie lange ist denn das Relais angezogen, nur kurzzeitig oder länger Zeit. Welche Pins verbindet das Relais. Wenn da wirklich nur 2 Pins miteinander verbunden werden ist die Schaltung ziemlicher Murks, denn dann könnte man die Verbindung nur dadurch erkennen, dass wenn man einen Pin toggelt der andere mitgeht... was unter Umständen auch durch kapazitive Kopplungen passiert.
:
Bearbeitet durch User
Hat sich irgend etwas geändert? Relais sind toll, wenn es um galvanische Trennung geht, aber echt mies, wenn die elektrische Störfreiheit im Vordergrund herumhängt. Hat sich bei den Treibern für den USB->RS-232 Konverter kein Fehler eingeschlichen, sollte es eigentlich gehen. Auch sind die heutigen Rechner schnell genug um mit dem zusätzlichen Overhead zurechtzukommen. Ich hatte vor kurzem Probleme mit einem älteren Konverter, der unter Fenster 10 zickte, unter Fenster 7 aber problemlos lief. Falls Du es mit Ersatz versuchen willst, spare nicht zu sehr. Ich schätze mal, dass Du alle Signale brauchst, also nicht nur rx und tx und dabei auch einen vernünftigen Pegel. Übrigens: Hast Du mal bei den Device-Treibern nachgesehen, ob nicht nur die Baudrate, sondern auch das Protokoll stimmen. Hier ist das Problem, dass es manche Updates zu gut meinen und gleich alles auf Start zurücksetzen und Du plötzlich Einstellungen hast, die Du aber gar nicht haben wolltest.
Hallo, Nenn doch mal Ross und Reiter... Welche Sotware? Welche Signal? Vielleicht gibt es ja Alternativen... Es gibt noch andere Usb zu seriel Chips ... Gruß Oliver
Vielen Dank für die Antworten und eure Mithilfe. Das das ganze Murks ist, dazu kann ich leider nicht viel sagen, da es eben so gemacht worden ist. Ich werde mir mal eine serielle Karte zulegen und es damit versuchen. Die Einstellungen der Treiber habe ich abgecheckt, da passt soweit alles von Baudrate zu Parity etc. passen soweit.
Jörg T. schrieb: > 2.Aber gibt es auch die RS-232 Einsteckkarten für Laptops??? Es gibt USB-Seriell-Wandler mit und ohne Handshake-Leitungen. Vielleicht hast du das nicht berücksichtigt. Einsteckkarten für Laptops würde ich eher exotisch einstufen, seit PCMCIA-Slots in Rechnern weitgehend durch ausreichend schnelle USB-Ports verdrängt worden sind.
Wir verwenden USB-RS232-Wandler mit FTDI-Chips ohne Probleme fuer derartige Steuerungsgeschichten (historisch gewachsene Messsysteme; Taster und LEDs an den Handshake-Leitungen) Testen kann man sowas auch problemlos mit hterm, das auch die Handshake-Leitungen bedienen kann (Eingang wie Ausgang). Generische Windows-Treiber haben aber leider gewisse Probleme, dass sie nicht ganz yuverlaessig sind.
Sebastian S. schrieb: > Ich schätze mal, dass Du alle Signale brauchst, also nicht nur rx und tx > und dabei auch einen vernünftigen Pegel. Wolfgang schrieb: > Bei einer RS232-Schnittstelle irgendwelche Signale auf Masse zu ziehen, > dürfte eher kontraproduktiv sein. Es geht hier ausschliesslich um die Handshake Eingänge, die aus den Ausgängen gespiesen werden! RxD und TxD hat damit nichts zu tun! Es wundert mich, dass das mit dem Wandler überhaupt funktioniert, aber ich hätte eher erwartet, dass ein Trigger verloren geht, denn Einer zuviele. So alt kann dann die Software doch nicht sein. Sauber über API programmiert. Mit einem guten Wandler (FT232) oder der genannten Karte hast Du gute Chancen, dass das läuft! Und die Software willst Du nicht nennen? Ist aber nicht etwa "Calimero"? Da hätte ich noch "Beziehungen"... Gruss Chregu
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.