S7-200 Freeport Kommunikation / Problem mit USB-Konverter

jtm

Level-1
Beiträge
20
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

zunächst die Hardware-Voraussetzungen:

S7-200 CPU 226, Freeport-Kommunikation auf Port 1 (Bedienpanel auf Port 0)
Siemens PPI-Freeport Adapter

Folgendes Problem ergibt sich im Zuge der Kommunikation mit einer selbstgeschriebenen PC-Software, welche mit der SPS Daten austauscht:

Verwende ich PC-seitig die RS232, welche direkt am Mainboard des Geräts sitzt, so klappt die Kommunikation einwandfrei und die PC-seitig empfangenen Bytes enthalten stets die richtigen Informationen (zum Testen schicke ich konstante Bytes von der SPS ab).
Verwende ich aber einen USB-RS232 Konverter zur Kommunikation, so kommt am PC meist "Datenmüll" an, hin und wieder auch die richtigen Zeichen, aber meist stimmt der Inhalt nicht.

Selbstverständlich kenne ich die Thematik mit der Umschaltzeit des PPI-Adapters usw. und halte auch entsprechende Verzögerungszeiten bei der Antwort der SPS ein.
Auch habe ich bereits unterschiedliche Baudraten, Parity-Einstellungen etc. getestet - bringt alles keine Änderung.

Das Problem tritt auch mit einer PCI-RS232 Karte auf, sodass ich schön langsam keinen Ansatzpunkt mehr finde, was ich noch verändern könnte.

Hat hier jemand einen Tip, was ich noch ändern könnte?

Vielen Dank im Voraus,
Wolfgang
 
interessantes problem :)

anscheinend kennste dich ja aus da muss ich nicht fragen wie du deinen PPI - RS232 eingestellt hast ... mmm

schickst du nur von der sps an den pc oder auch umgekehrt ?

könntest dein programm ja mal hochladen dann könnte man reinschauen

wie haste die kommunikation gemacht? mit interupts? oder ohne

grüßel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

danke für die Antwort!
Ich schicke immer vom PC aus in zyklischen Abständen einen Kommandosatz an die SPS, welche ihrerseits darauf antwortet. Also keine "aktive" Kommunikation seitens der SPS, sondern nur, wenn sie einen Datensatz vom PC erhalten hat.

Den Antwort-Modus habe ich sowohl über Interrupts, als auch mit einem Verzögerungstimer probiert. Momentan bin ich beim Verzögerungstimer, weil mir das fast etwas eleganter vorkommt, als mehrere Interrupts dafür zu bemühen. Das Verhalten auf der PC-Seite bleibt aber unabhängig von der Lösung über Interrupts oder Timer das gleiche - die Daten passen einfach nicht.
Ich habe noch vergessen zu erwähnen, dass die Kommunikationsrichtung PC -> SPS stets einwandfrei funktioniert, egal über welche RS232-Hardware ich angehängt bin.

Sonst noch jemand eine Idee? :)
 
tausche mal den port ... ich benutzte immer port 0 als rs232

ein PPI ->RS232 adapter hast du aber in der verbindung liegen ja? und dann noch NullModem gedreht ? bei ner direkt verbindung, so mach ich es immer :)
 
ah genau :D wenn deine hardware rs232 so intelligent ist das diese den TX mit RX drehen kann ohne das du was siehst und merkst aber der USB rs232 und der PCI rs232 das nicht machen dann kann es daran liegen das kein nullmodem kabel zwischen drin liegt ;) kommt mir jetzt erst
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
aus eigener böser Erfahrung, diese selbstgeschriebenen Sachen auch in Delphi sind irgendwie problematisch beim Empfangen von Daten in den PC. Ich bin damals mit einem Kumpel drüber abgefault, da haben wir sowas mit einem PIC (das war mein Part) und PC gemacht.
Unter Dos (WIN 98) absolut perfekt, auch mit einer 8 fach Karte, kam Windows ins Spiel wurde das ganze zur Glückssache. Manchmal ging es, manchmal nicht. War ungefähr so wie bei Dir beschrieben. USB hatten wir aber damals noch nicht, ich denke das Dir hier das Betriebssystem einen Strich durch die Rechnung macht.
Kannst Du die Zeichenpuffer der UART bei diesen virtuellen RS 232 Ports abschalten? Wenn ja versuche das mal.

Gruß
Mario
 
Hallo,

nochmals danke für Eure Antworten.
Die physikalische Verbindung passt, natürlich hängt auch der Siemens PPI-Adapter dazwischen, der Freeport kann.
Wie gesagt, mit der eingebauten RS232 meines Notebooks funktioniert alles perfekt, mit USB-Adaper im Notebook leider nicht. Genauso wenig mit der PCI-Steckkarte im Rechner, wo die Software später laufen soll.

Momentan bin ich gerade auf der Suche nach einer anderen PCI-Steckkarte, um zu testen, obs mit einem anderen Produkt vielleicht funktioniert.

Achja: Die Puffer hab ich im Gerätemanager auch schon deaktiviert, hat auch nichts geholfen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für den Tip - angesichts des Preises und der Tatsache, dass beim Kunden schon eine vergleichbare Lösung mit einer ähnlichen Anlage läuft, versuch ich dann doch erst mal, obs nicht doch mit einer anderen RS-232 PCI-Karte läuft. :)
Ein anderer Ansatz wäre dann noch, über eine Profibus-Karte direkt auf den Speicher der S7-200 zu schreiben. Hat das schon mal wer gemacht?
 
So,

das Problem ist gelöst - wenngleich die Ursache nicht zu finden war.

Mit der PCIe-Karte eines anderen Herstellers (DeLock) funktionierte die Kommunikation auf Anhieb!

LG Wolfgang
 
Zurück
Oben