Step 7 Stromaufzeichnung per S7-Steuerung

Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe mich gerade mal daran versucht.

Jedoch haut der mit immer unter rev_val die Code W#16#80B1 raus. Was bedeutet:
Die Längenangabe in Parameter RECORD ist falsch

Wo ich aber nun ein ? über Kopf bekomme, da in der Beschreibung vom Baustein gesagt wird, das es Byte sein MUSS:
Zielbereich für die gelesenen Diagnosedaten. Es ist nur der Datentyp BYTE zulässig. Die Mindestlänge des zu lesenden Datensatzes bzw. des Zielbereichs beträgt 6. Die Maximallänge des zu lesenden Datensatzes beträgt 240; bei Normslaves, bei denen die Anzahl der Normdiagnosedaten größer als 240 Bytes ist und maximal 244 Bytes beträgt, werden die ersten 240 Bytes in den Zielbereich übertragen und das entsprechende Overflow-Bit in den Daten gesetzt.

Dies habe ich im Datenbaustein auch berücksichtig ...

Naja aber er zeigt mir auch einen spezifischen Fehlercode und keinen allgemeinen.

Gruß
Thorsten
 
Hallo Thorsten,
aus deinem letzten Beitrag werde ich nicht so ganz schlau.
Was ich vorgeschlagen hatte, dass du machen sollst wäre :
Du legst einen DB (oder in einem schon vorhandenen DB) eine Struktur an, die so aufgebaut ist, wie in deinem Bild "3.jpg".
Diese Struktur übergibst du als Zielbereich (am Besten symbolisch) dem SFC13 (oder 14 ?).
Kannst du den Code dieses Aufrufs von dir dann mal posten ? Und vielleicht auch die Struktur (wie von mir vorgeschlagen) ?

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Larry,

ja das werd ich dann morgen machen, muss jetzt leider erst auf Reparatur und danach werd ich wohl mal Feierabend machen.

Aber was ich meine ist:
CALL SFC13
REQ := E0.0
LADDR :=W#16#3FE
RET_VAL:= DB3.DBW2
RECORD :=DB3.DBB4
BUSY :=DB3.DBX5.0

Und ich habe den eigentlich wie beschrieben im DB ( in diesem Fall DB3 beschrieben).

0.0 DB_Var Int
2.0 Db_Var1 Int
4.0 Db_Var2 Byte
5.0 Db_Var3 Bool

Eigentlich sollte da nicht der Fehler W#16#80B1 raus kommen.

Ich sag aber mal Vielen Dank und bis morgen!

Gruß
Thorsten
 
... ich hatte mir das "etwas" anders vorgestellt ... 8)

- wie kommst du für LADDR auf 3FE ? Deine Adresse ist doch 256 also w#16#100 ...
- dein Record sollte doch den kompletten Datenbereich der Baugruppe abbilden - aslo 24 Bytes - entsprechend also p#DB4.DBX4.0 Bytes 24 (also ein ANY-Pointer).
- den DB selbst würde ich symbolisch benennen (von mir aus auch "DB3"). In dem DB dann eine Struktur (STRUCT) anlegen (eventuell nennst du die "Empfangsdaten"). Die Struktur beinhaltet dann die Bestandteile des Bildes "3.jpg" - also :
Statuswort : WORD
erw_Statuswort_1 : WORD
erw_Statuswort_2 : WORD
erw_Statuswort_3 : WORD
Prozesswert_1 : DINT
Prozesswert_2 : DINT
Prozesswert_3 : DINT
Prozesswert_4 : DINT
... das übergibst du dann symbolisch dem SFC - also "DB3".Empfangsdaten
Vielleicht sieht es dann besser aus ...

Gruß
Larry
 
Guten Morgen!

Also 3FE habe ich, weil ja laut beschreibung vom SFC die Diagnoseadresse verlangt wird und die ist bei mir 1022. Hab ich das etwa falsch verstanden?

Mit einem Any-Pointer kenne ich mich nicht aus, werd mich mal da einlesen und dann versuchen es hin zu bekommen.

Danke Larry!

Gruß
Thorsten
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich kann das mit dem SFC gerade nicht nachschauen - ich habe das so aus der Erinnerung geschrieben.
Um die Angabe für RECORD zu verstehen mußt du dich allerdings noch nicht zwangsläufig mit dem ANY-Pointer auskennen. Hier reicht es im Moment schon aus, dass du weißt, dass du hier einen Zielbereich angibst.

Insgesamt vermute ich aber, dass dein Problem mit der Baugruppe noch irgendwo anders liegt ...
 
Vielleicht in der Hardware an sich.

Ich meine mich erinnern zu können das bei WAGO oder Beckhoff Serien von Buskopplern dabei waren, bei denen die Sonderkarten direkt nach dem Koppler projektiert und gesteckt sein mussten, erst danach durften die digitalen EAs kommen.

Nagelt mich bitte nicht drauf fest, ist schon ein paar Jahre her...

Aber einen Versuch könnte es wert sein...

griele Füsse dtsclipper
 
HALT, HALT, Haaaaaallt!!!!

Ich glaub ihr redet gerade aneinander vorbei...
Mal ganz anders ... was ist denn, wenn du mit dem PB-SFC's (ich meine das wären SFC13 bzw. SFC14) mal den Slave ausliesst und das Ganze dann in einen entsprechenden DB überträgst ?
Larry du meinst sicher SFC14 (DPRD_DAT) und SFC15 (DPWR_DAT)!!!!

SFC13 ist: "Lesen der Diagnosedaten (Slave-Diagnose) eines DP-Slaves mit der SFC 13 "DPNRM_DG""

Deshalb auch euer Uneinigkeit wegen der Beschaltung des Parameters LADDR.

Bevor Bone noch weiter in Falsche Richtung sucht... ;)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
... was ist denn, wenn du mit dem PB-SFC's (ich meine das wären SFC13 bzw. SFC14) mal den Slave ausliesst und das Ganze dann in einen entsprechenden DB überträgst ?

Danke für die Richtigstellung.
Genaus so meinte ich es - ich hatte ja auch geschrieben : "ich meine ...".

Gruß
Larry
 
Hallo,

mal eine kleine Aktualisierung. Das mit dem SFC13 hab ich mitlerweile auch bemerkt aber parallel dazu habe ich von Wago einen Rückruf erhalten und jetzt warte ich derzeit auf den Baustein.

Laut dem Mitarbeiter sollte das eigentlich auch so funktionieren wie ich das am Anfang schon gemacht habe, indem ich den Ein-Ausgangsbereich von der Klemme von 256 auf z.B. 56 runter setze.
Ich soll dann mal den Baustein damit "bestücken" und schauen ob es dann geht und wenn nicht soll ich mich zurück melden. Ich halte euch da aber auf den laufenden!

Aber das mit der Klemme, das werd ich auch mal eben noch testen, die direkt hinter den Buskoppler zu setzen, bin mir gerade nicht so sicher ob ich das nicht schon gemacht hatte oder ob ich von anfang an die Eingangsklemme dazwischen gesetzt hatte.

Gruss
Thorsten
 
... ich denke mal, dass das Problem ggf. tatsächlich in deinem Slave selbst liegt (bzw. der Konfiguration davon).
Dazu würde mich das Feedback dann auf alle Fälle auch interessieren ...

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aber das mit der Klemme, das werd ich auch mal eben noch testen, die direkt hinter den Buskoppler zu setzen, bin mir gerade nicht so sicher ob ich das nicht schon gemacht hatte oder ob ich von anfang an die Eingangsklemme dazwischen gesetzt hatte.

Gruss
Thorsten

Ich meine auch das die Reihenfolge der Karten in HW-Konfig und der Realität übereinstimmen müssen - kannstDu das mal schnell prüfen?
 
Hallo,

ja die HW-Config passt mit der Realität zusammen. hab die Eingangsklemme entfernt und auch die HW-Confi angepasst. Keine Änderung leider.

@Larry
Mitlerweile habe ich sogar ein ganzes Projekt von Wago erhalten, was ich aber leider nicht öffnen kann ... auf meinem Laptop ist noch Version 5.4.

Ich update den jetzt erst ebend und dann erhoffe ich mir mal mehr.

Gruss
Thorsten
 
Hallo,

neuester Stand:

Neue Version mit anderer CPU von Wago bekommen, soweit ok, aber ich kann die Bausteine nicht übertragen. Fehlermeldung von wegen Falsche Komandos die zu CPU300 übersetzt werden.

Halte euch aber weiterhin auf den laufenden.

Auf den PC wo die S7 Version 5.5 drauf ist, geht natürlich auch die 1. Version von Wago, update jetzt noch meinen Programmier Laptop auf 5.5 und dann schau ich mal weiter. Nehme aber solangsam an, das das Hauptproblem einfach die CPU315/2 DP ist.

Morgen gehts weiter.

Gruß
Thorsten
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Schönen Guten Morgen zusammen,

ich komme hier von Problem zum Problem ...

Ich habe nun das Problem das die Bausteine FB191 und mehr nicht auf die CPU übertragen werden können.
Folgende Fehlermeldung kommt:
Fehler.jpg

Der FB190 kann übertragen werden ...

Mit SCL kenn ich mich ja mal gar nicht aus und ich denke das ich hier wohl meine Segel streichen muss -.-

Gruß
Thorsten
 
315-2dp gibts so ungefähr 7 Generationen,
welche MLFB bzw. Firmware hat deine CPU?

Baustein den du übertragen willst?
Screenshot, Ausdruck, dein Projekt?

Deine Beiträge sind zwar ewig lang, aber technisch eigentlich nur blabla.
Kurzum, du machst es echt schwer dir zu helfen.

Mfg
Manuel
 
Hallo Manuel,

ich werde dann mal versuchen das etwas detailreicher zu machen. Ist halt etwas schwer ordentliche Screenshots zu machen weil ich mit meinem Programmierlaptop nicht ans Netz komme.

Hardware:
CPU: 315-2DP 6ES7 315-2AF03-0AB0 Version 1.0 FW: V1.2.1
Wago Buskoppler 750-833
Wago Leistungsmessungklemme 750-495
Wago Endklemme 750-600

Nun die Bausteine die nicht zu übertragen gehen und die obrige Fehlermeldung rausgeben:
FB191, FB192, FB193, FB194 und FB195

Hoffe die PDF,s werden mit angehangen.

Gruß
Thorsten

Edit: Nicht wundern das dort noch die CPU319 steht, die Bausteine sind eine Kopie von der ersten Version die mir Wago geschickt hat, wo noch die 319er drin war.
 

Anhänge

  • FB191.pdf
    165,2 KB · Aufrufe: 17
  • FB192.pdf
    42,5 KB · Aufrufe: 5
  • FB193.pdf
    76 KB · Aufrufe: 4
  • FB194.pdf
    36,5 KB · Aufrufe: 3
  • FB195.pdf
    55,2 KB · Aufrufe: 6
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Also, die 315er von dir kann laut Technischen Daten nur 192 FBs, müsste dann von FB0-FB191 sein, FB192 ff. ist damit nummerntechnisch definitiv Passe:
http://support.automation.siemens.com/WW/view/de/4067858/td

Ergo musst du die FBs definitiv auf ein kleineres Nummernband bringen, heißt hier die FBs in der Symboltabelle neue freie Nummern geben, die FBs im Bausteinordner löschen, die SCL-Quelle neu übersetzen.
Zweckmäßig wäre es noch, die Operandenvorrang des Bausteinordner aus "Symbolisch" zu stellen. (Rechte Maustaste auf Bausteinordner, Eigenschaften, Reiter Operandenvorrang auf unten Rechts)

Mfg
Manuel
 
Hallo Manuel,

erst einmal Vielen Dank, das Datenblatt hatte ich auch schon gesucht, sowas in der Art hatte ich mir auch schon gedacht aber dank dir bin ich mir nun sicher das es daran liegt. Ich hatte nur etwas gefunden wo die Anzahl von 1024 stand.

Dann Versuch ich mal mein Glück!

Gruß
Thorsten
 
Sooo mal ein kleines Review.

Ich habe die Daten nur einwandfrei übertragen können, die Busklemme gibt aber über SFC14 (was teil des Programms von Wago ist) ein Feedback, was ich noch nicht auswerten kann.

Anbei 2 Fotos der Recorddaten vom SFC14:
IMG_1826.JPGIMG_1827.jpg

Ich werd jetzt erst einmal Wago kontaktieren, weil eigentlich habe ich das selbe Problem immer noch wie am Anfang. Das ich von den Ein- bzw. Ausgangswerten der Klemme kein Feedback erhalte.

Gruß
Thorsten
 
Zurück
Oben