TIA FM350-2 meldet RET_VAL Fehler beim Auslesen

Aleks2000

Level-1
Beiträge
16
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo SPS-Gemeinde. Folgendes Problem beschäftigt mich:
Ich möchte insgesamt 10 Zählerkarten FM350-2, jede Karte bestückt mit 4 Inkrementalgebern als Endloszähler, auslesen.

Sobald ich mehr als eine Karte anparametriere und auslese, kommt es zu Lesefehlern bzw. zu negativen Werten im RETVAL RD.

Nur wenn ich eine Karte auslese habe ich keine Lesefehler.

In dem von Siemens bereitgestellten Beispielprojekt wird mit dem Aufruf von DB3 der RETVAL_rd in MW8 geschrieben. Dieser Wert wird auch negativ und erzeugt in der Lokalvariablen #"FAIL rd_err" eine "1".

Fragen: Darf ich den DB3 10 mal aufrufen zum Auslesen der 10 Karten?
Oder ist es nicht besser 10 unterschiedliche DBs zu nutzen um 10x Daten auszulesen.

Was bedeutet ein RetVal < -32000 ? Unter welchen Umständen wird dieser Wert erzeugt ?
 

Anhänge

  • RETVAL.JPG
    RETVAL.JPG
    216,3 KB · Aufrufe: 29
Hallo
Unter "normalen" Umständen, also wenn alle FM 350 gleichzeitig, funktionieren sollen, musst du natürlich für jede Karte einen eigenen DB nehmen.

Was der RetVal < -32000 bedeutet findest du in der Doku zur FM350-2

Achtung! FM350-1 und FM350-2 sind 2 unterschiedlicher als es der Name erwarten lässt.
Soll heißen du kannst nicht einen FB für die FM350-1 (also 1-kanalig) nehmen, den x mal aufrufen und für die FM350-2 nehmen
und auch bei der Doku nicht davon ausgehen, dass was für die x-1 gilt auch für die x-2 gilt.
 
Fragen: Darf ich den DB3 10 mal aufrufen zum Auslesen der 10 Karten?
Oder ist es nicht besser 10 unterschiedliche DBs zu nutzen um 10x Daten auszulesen.
Jedes FM350-2 Modul benötigt einen eigenen Zähler-DB.
Gerätehandbuch FM350-2 / Programmieren der FM350-2 / Zähler-DB schrieb:
Für jede FM 350-2 benötigen Sie einen Zähler-DB.

Harald
 
Das mit den unterschiedlichen DBs macht Sinn und ist bereits erledigt.

Der lesende Baustein heißt: CNT2RDPN (FB) liefert den Returnvalue -32573.
Die nicht verfügbaren Betriebsmittel machen Sinn, da der Fehler ab der Aktivierung der 4 Zählbaugruppe auftritt.

Wie finden wir jetzt raus welches Betriebsmittel fehlt?

Wie haben Sie den Fehlercode auf 80C3 übersetzt?
 
Konnte jetzt den Fehler nochmals reproduzieren.
Es zeigt sich, da der zyklische Mehrfachaufruf des Lesebausteins CNT2RDPN den Code wieder ausgibt.

Es stellt sich im Moment die Frage, ob der DP-Profibus nicht zu langsam ist.
 

Anhänge

  • Lesebefehle.JPG
    Lesebefehle.JPG
    115,6 KB · Aufrufe: 22
Zuviel Werbung?
-> Hier kostenlos registrieren
Wie haben Sie den Fehlercode auf 80C3 übersetzt?
Windows Taschenrechner Ansicht/Modus Programmierer: -32573 eingeben, dann auf hex umschalten
Man kann den RET_VAL auch in hexadezimal beobachten.


Es stellt sich im Moment die Frage, ob der DP-Profibus nicht zu langsam ist.
Ooh, Du willst die 10 FM350-2 Module in dezentraler Peripherie betreiben ... Das habe ich noch nicht gemacht, weiß aber daß das Probleme machen kann (möglicherweise brauchst Du taktsynchronen Profibus-Betrieb?)
Was machst Du mit den Zählerwerten? Einfach Positionen messen oder was komplizierteres? Womöglich Geschwindigkeit messen? Ist das zeitkritisch? Wie schnell/häufig brauchst Du die Zählwerte der Kanäle?

Eventuell interessant ist der Betrieb mit den "erweiterten Nutzdaten" (siehe Gerätehandbuch Kapitel 8.12, ich weiß nicht ob das auch in TIA geht), da braucht man CTR2RDPN nicht und es gibt den Betriebsmittel-Engpass wegen RD_REC nicht - die Zählerwerte aller 8 Kanäle kommen "frei Haus" mit den zyklischen DP-Eingangsdaten.

Kannst Du die 10 FM350-2 Module in das zentrale Rack einbauen? Die Zählwerte von bis zu 4 Kanälen (16 Bit) können direkt über PEW gelesen werden. Die anderen 4 Kanäle kann man mit CNT2RDPN einlesen.


Möglicherweise hilfreiche Infos findest Du mit der Forumssuche mit Suchbegriff: fm350-2, Benutzername: PN/DP
z.B.
Hilfe bei einer FM350-2
Problem FM350-2 in ET200M über Profibus
Programmbeispiel FM 350-2 zXX34_01_FM350-2.zip für TIA Portal
Wie nehmen Sie die Zählerbaugruppe FM 350-2 (6ES7350-2AH01-0AE0) in STEP 7 (TIA Portal) in Betrieb?
mit Beispielprojekt für TIA

Harald
 
Hallo Harald.
Das mit der Taktsynchronität haben wir eingestellt, jetzt kommen die Fehlercodes alle schön im Takt.

Mit einer (allen) FM350-2 wird endlos Vor- und Rückgezählt, jeweils mit 4 Inkrementalgebern um Positionen von Zangenschenkeln zu erfassen.
Die Signale der Geber kommen an und die Zähler werden beschrieben und ausgelesen, halt nur solange wie nur 4 Karten im DP-Netz ausgelesen werden.
Zeitlich interessant ist das Zählen nur solange die Motoren der Zangenschenkel laufen.

Leider ist eine Aufbau aller Karten auf einem Rack aufgrund der Größe der Maschinen nicht möglich.

Die erweiterten Nutzdaten können nur verwendet werden, wenn ich ein IM153-2 V5.0 oder höher verwende. Diese habe ich nicht im Einsatz.
Außerdem ist der Aktualisierungszyklus zwischen 0,1und 0,2Sek, was zu lang ist.

Wir konzentrieren auf den Fehlercode -32573.

Vielen Dank für deine Anregungen.

Alexia
 
Wenn Du je FM350-2 Baugruppe nur max 4 Kanäle verwendest (oder nur 4 Kanäle zeitkritisch sind): max 4 Kanäle können ohne CTR2RDPN als 16 Bit Wert direkt von den Baugruppen/Peripherie-Eingangsadressen EW... oder PEW... gelesen werden:
* PEW BG-Adresse + 8 : User_Type1 1.Word, z.B. Low-Word Kanal 0
* PEW BG-Adresse + 10: User_Type1 2.Word, z.B. Low-Word Kanal 1
* PEW BG-Adresse + 12: User_Type2 1.Word, z.B. Low-Word Kanal 2
* PEW BG-Adresse + 14: User_Type2 2.Word, z.B. Low-Word Kanal 3
(Parametrierung siehe Bild im Anhang)

Bei "Endlos Zählen" reicht es, wenn man nur die unteren 16 Bit des Zählwertes verarbeitet, z.B. so

Harald
 

Anhänge

  • FM350-2_User_Type.png
    FM350-2_User_Type.png
    99,9 KB · Aufrufe: 8
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Harald,
dein Vorschlag wäre die optimierte Vorgehensweise.;)
Leider sind 32 Achsen mit jeweils 2 Inkrementalgebern zeitkritisch zu überwachen,
deshalb scheidet diese Möglichkeit aus.

Alexia
 
Man könnte auch die FM350-2 nur mit 4 anstatt alle 8 Kanäle belegen und dafür mehr/doppelt so viele FM350-2 Baugruppen einbauen. Das wird u.U. günstiger (und maximal schnell) als tagelang Fehler suchen und testen, die CTR2RDPN-Aufrufe alle gegenseitig verriegeln bzw. zeitlich gestaffelt nacheinander aufrufen, und am Ende wird das ganze womöglich zu langsam.
Man könnte dann auch bei der Hälfte der Baugruppen die Kanäle 0-3 und bei den anderen Baugruppen die Kanäle 4-7 verwenden, dann hätte man quasi Ersatzteile für den Fall daß ein Zählkanal kaputt geht - dann einfach "auf die Schnelle" die FM350-2 mit einer Anderen tauschen, wo der Kanal nicht benutzt wird.

Benutzt Du eigentlich die 8 Digitaleingänge und 8 Digitalausgänge der FM350-2? Vielleicht kannst Du im Gegenzug einige E/A-Baugruppen einsparen.

PS:
Ich möchte insgesamt 10 Zählerkarten FM350-2, jede Karte bestückt mit 4 Inkrementalgebern als Endloszähler, auslesen.
Das wolltest Du am Anfang sogar genau so - jede Karte mit nur 4 Kanälen bestücken. Vielleicht hat der Hardware-Planer das sogar genau so gewollt, weil das die schnellste/performanteste Lösung ist?

Harald
 
Zuletzt bearbeitet:
Leider sind 32 Achsen mit jeweils 2 Inkrementalgebern zeitkritisch zu überwachen, ...
Das sind also 64 InkrementalGeber. Angefangen hatte wir bei ...

Ich möchte insgesamt 10 Zählerkarten FM350-2, jede Karte bestückt mit 4 Inkrementalgebern als Endloszähler, auslesen.
... 40 InkrementalGebern. Aller spätestens, wenn sich das in diesem Tempo weiterentwickelt, sollte man vielleicht(?) über den Ansatz nachdenken!?

2 Geber pro Achse? Sind da die MotorGeber schon dabei, oder kommen die noch hinzu? Was heisst 2 Geber pro Achse? Was, wenn die 2 Geber pro Achse "MeinungsVerschiedenheiten" entwickeln?
Ist das wirklich eine Aufgabe, die eine (in Worten: 1) PLC lösen soll? Kann man da nicht die Positioniererei in die Antriebe auslagern? Oder geschieht das sowieso schon und die Geber sind wirklich "nur" noch zur Überwachung draufgesetzt?
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Harald.
die 50% Nutzung sehe ich sehr kritisch, da ich die Schaltschränke bereits schon einmal umgebaut habe von einfachen Digitaleingängen zu FM350-2.
(Nochmehr Karten bedeutet nochmal ca 6t Euro zu investieren ohne Umbaukosten.)

Die digitalen Ein- und Ausgänge der FM350-2 benutze ich derzeit noch nicht,
aber es zeichnet sich immer mehr ab die Motorrelais direkt von der Zählerkarte zu steuern um schneller zu werden.
Durch die Nutzung der digitalen Ein- Ausgänge der FM350-2 würde ich keine Karten einsparen.

Ich finde es schon ziemlich merkwürdig, das bei 3 FM350-2 Karten mit 24 genutzten Kanälen das Bussystem kollabiert bzw. ständig Lesefehler auftreten.
Und das bei 6MBit/s ! Arbeitetst Du mit TIA?

Gruß Alexia
 
Es kollabiert nicht das Bussystem, sondern die CPU, die nur eine begrenzte Anzahl RD_REC-Aufträge gleichzeitig ausführen kann.
Wenn es schon mit TIA sein soll: Warum nimmst Du keine S7-1500?

Harald
 
Hallo Harald,

vielen Dank für den Einwurf.
Leider hatte ich keine andere SPS zur Hand, sondern nur die 315-2PN/DP.
Aber das ist ein Ansatz, denn ich könnte diese auch in einem anderen Projekt einbauen.

Gruß Alexia
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Harald,
..."Es kollabiert nicht das Bussystem, sondern die CPU, die nur eine begrenzte Anzahl RD_REC-Aufträge gleichzeitig ausführen kann.
Wenn es schon mit TIA sein soll: Warum nimmst Du keine S7-1500?"...

Kann man die Überladung mit RD_REC im Fehlerspeicher der genutzen CPU ablesen?

Alexia
 
Kann man die Überladung mit RD_REC im Fehlerspeicher der genutzen CPU ablesen?
Meinst Du im Diagnosepuffer der CPU?
Ich glaube nicht, RD_REC bzw. CTR2RDPN gibt ja schon vorher einen Fehler-Status-Code zurück.

Gibt es die CTR2-Control- und -RD-Bausteine eigentlich auch für S7-1500?
Eine S7-1500 als Profibus-Master für ET200M mit FM350-2 sollte theoretisch möglich sein, habe ich aber noch nie gemacht.

Harald
 
Hallo Harald,

der 1500er traue ich nicht über den Weg, da mir heute ein Händler erzählt hat, daß ggffls. Firmwareupdates gefahren werden
müssen, wenn man sich eine gebrauchte CPU dieser Serie kauft.

Deshalb habe ich jetzt die 315-2PN/DP ausgebaut und eine CPU 318-3EL00-0AB0 ausgepackt und eingeschaltet.
Und siehe da...es läuft. :rolleyes:
Also hatte der Baustein die ganze Zeit Recht zu sagen, daß ... 16#80C4 = Benötigte Betriebsmittel (Speicher etc.) sind momentan belegt...

Jetzt können wir hier die nächsten Schritte angehen.

Vielen Dank nochmal mit dem Hardware-Tipp. :D

Gruß Alexia
 
Zurück
Oben