LabVIEWForum.de - Mehrere Protokolle über einen RS485-Bus?

LabVIEWForum.de

Normale Version: Mehrere Protokolle über einen RS485-Bus?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Ihr Lieben!

Ich habe folgendes Problem:

2 verschiedene Geräte = 2 verschiedene Protokolle (Modbus RTU und Multiprozessor Protokoll)

Diese 2 Geräte sollen nun über einen RS-485 Bus mit dem Rechner kommunizieren.
So nun ist ja der RS485 Bus nur eine elektrische Spezifikation und da mehrere Sender auf einer gemeinsamen Leitung arbeiten, muß aber durch das Protokoll sichergestellt werden, daß zu jedem Zeitpunkt maximal ein Datensender aktiv ist.

Meine Frage wäre, ob es überhaupt möglich ist mit verschiedenen Protokollen gleichzeitig auf einem RS485 Bus zu arbeiten? Meine Meinung dazu wäre, dass es mit der entsprechenden Programmierung in LabVIEW (immer nur ein Datensender aktiv) egal welches Protokoll doch eigentlich machbar sein müsste oder nicht?

Vielleicht hat schon mal jemand ein ähnliches Problem gehabt und es mittels LabVIEW gelöst?Big Grin

vielen Dank schon mal
Also ich sehe da nur Programmier und Handshake-Aufwand. Big Grin

Was meinst Du genau mit Protokolländerung? Etwa auch die Com-Einstellungen wie Parität, Stoppbits etc.?

Gruß!
Ahhh das ging ja ma fix mit der Antwort.

Naja ich meine, die Geräte kommunizieren ja über unterschiedliche Protokolle und wollte wissen ob es theoretisch überhaupt möglich ist über den RS485 Bus zur gleichen zeit mit unterschiedlichen Protokollen zu kommunizieren oder ob die Geräte alle das gleiche Protokoll benutzen müssen?!

Die Zustandsänderungen in den inaktiven Zustand (damit immer nur eines aktiv ist) der Geräte mache ich dann sicherlich über die programmierung der Protokolle (in LabVIEW) oder wie?Blush

Ansprechen tu ich dann die Geräte auch ganz normal mit VISA oder?
Hmm...

Ich schiesse jetzt mal ins Blaue, da mir nicht klar ist, was die Protokollunterschiede in Deinem Fall sein sollen:

Wenn Du beide Teilnehmer abwechselnd ansprechen möchtest, und sich die Einstellungen des Buses (Parität etc.) nicht ändern, ist alles kein Problem. Du stellst sicher, mit wem Du gerade sprechen möchtest und lässt dann die Daten flutschen. Hier ist ein Handshake gut, um gaaaanz sicher zu sein, dass nur der eine teilnehmer zuhört und abschliessend dann weghört. Die Teilnehmer müssen dazu natürlich verschiedene Datenköpfe erwarten/senden. Je nach dem Inzwischen bdurch den kopf bekannten teilnehmer kannst Du dann die Daten Verenden etc.

Wenn sich die Comeinstellungen ändern, müsstest Du den Comport schliessen und mit den Anderen neu öffnen. Ist ein bisserl blöd, da Du vorher dem anderen Teilnehmer sagen musst: "Höre jetzt ja nicht hin, wenn ich mit anderen Settings sende".

Es ist jetzt aber schwer, genaues zu sagen. Poste doch mal die Daten der zwei Teilnehmer (Comsettings und die Daten, die Du senden musst). Dann sehen wir weiter.

Ziel sollte es sein, die Comsettings für beide Teilnehmer identisch zu halten. Die meissten Komponenten lassen sich da gut einstellen.

Gruß
Gerät 1 = 20888Baud, keine Bitkorrektur, 1Stoppbit, 8 Datenbits, RESET, Multiprocessor Protocol

Gerät 2 = 9600 Baud, Parity keine, 2 Stoppbits, 8 Datenbits, Startbit 1, Modbus RTU Protocol

Du siehst also völlig unterschiedlich!!! Und die sind hardwareseitig vorgegeben kann ich also nich ändern! Da wärs wohl die beste Lösung einfach nen 2fach Konverter auf USB anzuschließen und dann jeweils nen einzelnen Bus zu nehmen oder?
' schrieb:Gerät 1 = 20888Baud, keine Bitkorrektur, 1Stoppbit, 8 Datenbits, RESET, Multiprocessor Protocol

Gerät 2 = 9600 Baud, Parity keine, 2 Stoppbits, 8 Datenbits, Startbit 1, Modbus RTU Protocol

Du siehst also völlig unterschiedlich!!! Und die sind hardwareseitig vorgegeben kann ich also nich ändern! Da wärs wohl die beste Lösung einfach nen 2fach Konverter auf USB anzuschließen und dann jeweils nen einzelnen Bus zu nehmen oder?

Das wäre ein Ansatz...

Auch wenn mir die Baudrate von gerät 1 spanisch vorkommt...Dry

Da wäre eine zweite Com-Schnittstelle genau richtig. Dann funktioniert das ganze sogar Quasiparallel!
Du hast nicht zufällig eine zweite Com auf dem Mainboard übrig? Ich mag diese Konverter nicht...Tongue
Gab es da nicht sowas wie "switches" für RS?Tippen

Wenn alles über eine Schnittstelle gehen soll, musst Du dafür sorgen, dass der andere Teilnehmer unter keinen Umständen auf die Daten des Anderen hört.

Gruß
' schrieb:Das wäre ein Ansatz...

Auch wenn mir die Baudrate von gerät 1 spanisch vorkommt...Dry

Da wäre eine zweite Com-Schnittstelle genau richtig. Dann funktioniert das ganze sogar Quasiparallel!
Du hast nicht zufällig eine zweite Com auf dem Mainboard übrig? Ich mag diese Konverter nicht...Tongue
Gab es da nicht sowas wie "switches" für RS?Tippen

Wenn alles über eine Schnittstelle gehen soll, musst Du dafür sorgen, dass der andere Teilnehmer unter keinen Umständen auf die Daten des Anderen hört.

Gruß


Tja keen Plan mit der baudrate, das hat mir der Hersteller so vorgegeben. Ich habe nürlich keinen 2ten Port zur Verfügung (scheissendreck). Bisher habe ich eigentlich mit den Konvertern (RS485-RS232 oder RS232-USB usw.) keine Probleme gehabt hat alles wunderbarstens funktioniert. Und wenn nur ein USB-Kabel zum Rechner geht is och viel eleganter finde ich. Werde da mal austesten mit sonem konverter, da bekomme ich ja dann virtuelle com-Ports angezeigt die ich dann einfach mit VISA ansprechen muss. oder liege ich da falsch?

Aloha
' schrieb:Tja keen Plan mit der baudrate, das hat mir der Hersteller so vorgegeben. Ich habe nürlich keinen 2ten Port zur Verfügung (scheissendreck). Bisher habe ich eigentlich mit den Konvertern (RS485-RS232 oder RS232-USB usw.) keine Probleme gehabt hat alles wunderbarstens funktioniert. Und wenn nur ein USB-Kabel zum Rechner geht is och viel eleganter finde ich. Werde da mal austesten mit sonem konverter, da bekomme ich ja dann virtuelle com-Ports angezeigt die ich dann einfach mit VISA ansprechen muss. oder liege ich da falsch?

Aloha

Das USB geht - musste ich auch schon mal machen Lol

Gruß
Referenz-URLs