Step 7 Problem mit CP340: kann nicht senden

Wurst.feat.Senf

New member
Beiträge
2
Punkte Reaktionen
0
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo liebe Community,
Ich besuche dieses Forum schon seit einiger Zeit ohne Account um Hilfe bei S7 Problemen zu erhalten und wurde bisher nie enttäuscht, dafür erstmal ein großes Dankeschön.
Für meine jetzige Arbeit komme ich allerdings mit den Beiträgen, die hier bereits vorhanden sind leider nicht weiter.
Folgendes Problem liegt vor:
Ich habe eine S7-300 und benutze als Software WinSPS-S7 V6. Ich möchte über eine CP340 mittels RS232 einen Hex-Befehl an einen Schrittmotor senden. Da das mitgelieferte Softwarepaket für die CP340 nur mittels Step 7 installiert werden konnte, habe ich mir über MHJ die nötigen Funktionsbausteine für den CP340 zukommen lassen. Die CP340 ist über die Hardware-CFG von WinSPS Projektiert.
Ich habe den P_Send Baustein (Bei mir FB3) in den OB1 eingefügt und folgendermaßen Parametriert:
IN:
REQ: E124.0
R: E124.1
LADDR: 272
DB_NO: 10
DBB_NO: 0
LEN: 9

OUT:
DONE: M1.0
ERROR: M1.1
STATUS: MW10

Als Instanz-DB für den FB3 habe ich den DB3 neu angelegt, dieser wird ordnungsgemäß vom FB3 verwendet und schreibt Daten hinein. Laut Hardware-CFG ist die E/A-Adresse des CP340 272-287, diesen habe ich auch über den SFC5(GADR_LGC) überprüft (Bei einer anderen LADDR kommt ein "SF-Fehler" an der SPS). Ich habe einen DB10 erstellt aus dem ich einfach ein WORD senden will.

Wenn ich über REQ das Senden anstoße kommt eine positive ERROR Flanke, wenn ich R anstoße kommt eine positive DONE-Flanke. Bei der ERROR-Flanke wird in den STATUS der Fehler W#16#1E0F geschrieben. Laut Handbuch ist dies ein Fehler der Ereignisklasse 30: "Fehler bei der Kommunikation zwischen CP und CPU" :

"Statischer Fehler bei Aufruf des SFC WR_REC bzw.
SFB RDREC. Der Returnwert RET_VAL des SFCs /
SFBs wird Ihnen in der Variablen SFCERR bzw.
SFCSTATUS im Instanz–DB zur Auswertung zur
Verfügung gestellt."

SFC WR_REC ist der SFB53 in meiner Software
Diesen habe ich parametriert und seinen STATUS ebenfalls ausgelesen. Im Idle-Zustand wird Fehler 16#7000 ausgegeben, was nur bedeutet REQ=0 und BUSY=0. Wenn ich REQ=1 ansteuere kommt der Fehler 80C1:
"Die Daten des auf der Baugruppe vorangegangenen
Schreibauftrags für denselben Datensatz sind von der
Baugruppe noch nicht verarbeitet."

BUSY ist dann dauerhaft auf 1 geschaltet und es passiert nichts weiter. An der CP340 leuchtet auch keine TXD-Lampe. Hat jemand eine Vermutung woran es hängt? Ich habe das Gefühl es sind nur 1-2 präzise Handgriffe nötig damit es klappt aber habe schon alles probiert was mir einfällt und mir läuft die Zeit davon.

Mit freundlichen Grüßen
Andre
 

312C

Member
Beiträge
6
Punkte Reaktionen
4
Hallo,
ich kenne mich zwar mit diesem WinSPS überhaupt nicht aus, in Step7 benötigt man aber für dein Vorhaben lediglich den P_Send FB. Dieser nutzt intern die WRREC und RDREC Bausteine. Meine Vermutung wäre jetzt, dass durch den separaten Aufruf von WR_REC die Kommunikation zwischen dem P_Send FB und dem CP gestört wird.
 

Thomas_v2.1

Well-known member
Beiträge
7.843
Punkte Reaktionen
2.333
Zuviel Werbung?
->Hier kostenlos registrieren
Wie hast du denn ohne das Softwarepaket für den CP diesen parametriert, also bezüglich Baudrate, Start/Stoppbits etc.? Oder ist das in deiner Konfigurationssoftware alles vorhanden?

Hast du noch andere Kommunikationsprozessoren im Rack? Der CP340 kann nicht hinter einem anderen CP betrieben werden (CP343-5, CP343-1) evtl. fängt deine Software das nicht ab.
 
OP
W

Wurst.feat.Senf

New member
Beiträge
2
Punkte Reaktionen
0
Danke für eure Antworten

@312C

Den Baustein WR_REC habe ich ebenfalls im OB1 in einem Netzwerk, da ich gesehen habe, dass der Instanz-DB von P_Send auf diesen zugreifen will. Ich habe diesen jetzt aber manuell parametriert, teilweise habe ich an die Eingänge Daten des Instanz-DBs gelegt. Ist es ausreichend, wenn der WR_REC lediglich im Projekt und in die SPS geladen wird?


@Thomas_v2.1

Den Cp konnte ich ohne Softwarepaket ins Rack einfügen, auch mit Baudrate, Anzahl der Bits, Übertragungsprotokoll, usw. Dies lief meiner Ansicht nach auch erfolgreich, da weder an der SPS noch an der CP die SF-Led leuchtete. Ich habe nur diese eine CP im System und will auch nur an einen einzigen Teilnehmer senden/empfangen.
Lediglich die Programmbausteine zum Senden und Empfangen und was noch dazugehört musste ich mir erst besorgen und ins Projekt importieren.
 
Oben