FM350 zählt, kann aber keine Ausgaänge setzen

RONIN

Level-3
Beiträge
2.518
Reaktionspunkte
765
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi Leute

Anwendung:
Es geht dabei um eine Bestehende Anlage die eine komplette Softwareüberarbeitung bekommt. Die verwendeten Zählermodule sind daher nicht die neuesten Versionen. Die zur Wegerfassung eines Antriebes wird die Zählerbaugruppe 6ES7350-1AH02-0AE0 verwendet. Der Starteingang des FU's der diesen Motor antreibt wird über den DO0 des Zählerbaugruppe angesteuert. Ich würde die Ausgänge gerne mit dem internen Komperator schalten, solange bis das Band seinen Sollweg erfüllt hat. Die Eingänge werden nicht verwendet.

Programmaufbau:
Ich verwende den FC2 CNT_CTL1 (hier umbenannt in FC3) aus der FMx50lib mitz zugehörigen Datenbaustein basierend auf UDT2 CNT_CHANTYPE1. Den Programmteil und die Hardwarekonfig könnt ihr im Anhang sehen.

Problem:
Wenn ich den Motor manuell mit einer Drahtbrücke am FU starte zählt der Zähler. Soweit arbeitet er einwandfrei. Ich kann auch den Zählerstand per L-Direct beschreiben.

Was nicht geht ist das setzen der Ausgänge etwa über SET_DO0 am FC2 mit M60.0 (Gilt für beide Ausgänge)(CTRL_DO0 ist auf 1). Dabei sollte es so ja immer gehen. Leider bekommen ich vom FC2 auch keine Fehler angezeigt.

Was ich noch nicht kann ist das laden neuer Ausgangsparameter mit C_DOPARA. Der Eingang C_DOPARA am FC2 ist ein IN/OUT-Eingang der nach erfolgen des Befehls zurückgesetzt wird. Wenn ich nun in meine LOAD_VAL mit der entsprechenden Ausgangskonfiguration übertragen will und ich dafür M60.3 setze bleibt dieser dauernd gesetzt. Ach ja noch was wenn ich das Verhalten der Ausgänge direkt in der Hardwarekonfiguration spezifiziere, also zum Beispiel auf "Aktiv von Vergleichswert bis Überlauf) schalten die Ausgänge auch.

Hoffe habe euch jetzt nicht zu sehr verwirrt.
 

Anhänge

  • Bild1.jpg
    Bild1.jpg
    69,6 KB · Aufrufe: 36
  • Bild2.jpg
    Bild2.jpg
    60,6 KB · Aufrufe: 33
  • Bild3.jpg
    Bild3.jpg
    83,6 KB · Aufrufe: 25
  • bild9.jpg
    bild9.jpg
    81,1 KB · Aufrufe: 39
Zuletzt bearbeitet:
Hallo,
das Verhalten der Ausgänge wird in der HW-Konfig der Zählerkarte festgelegt. Hast du da mal nachgeschaut ? Was ist da konfiguriert ?

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Siehe Bild 4

Sind aktuell daktiviert und können somit laut Handbuch mittels CTRL_DO0 und SET_DO0 als normale Ausgänge verwendet werden. (Was bei mir aber nicht hinhaut)

Man kann die Konfiguration der Ausgänge aber auch während der Laufzeit mit einer entsprechenden LOAD_VAL und C_DOPARA ändern. (Was bei mir auch nicht hinhaut)
 
Zuletzt bearbeitet:
Ich habe gerade versuchweise die Konfigurtation des Ausgangs DQ0 in der Hardwarekonfig geändert auf (Aktiv von Vergleichswert bis Unterlauf). Und siehe da wenn ich jetzt bei einem Aktuellen Zählstand von 1700 einen Vergleichswert von 2000 lade wird der Ausgang auch tatsächlich solange geschalten bis der Zähler 2000 erreicht hat.

Leider ändert das immer noch nichts daran das ich diese Einstellung immer noch nicht über C_DOPARA veränderen kann. Da der Bandantrieb sowohl über einen links als auch rechtslauf verfügt bräuchte ich sowohl "Aktiv von Unterlauf bis Vergleichswert" als auch "Aktiv von Überlauf bis Vergleichswert". Ganz zu schweigen davon das SET_DO0 auch nicht geht
 
Hallo,
ich muß dir gestehen, dass ich 1.) diese Funktion noch nie verwendet habe und 2.) den Siemens-FB nicht verwende.
Ich würde aber vermuten, dass das On-then-Fly-Umschalten auch funktionieren wird, wenn es richtig gemacht wird ... (die HW-Konfig bekommt es ja auch hin).

Gruß
LL
 
Naja ...
mein Problem ist, dass ich mir lieber einen Baustein selber schreibe bevor ich einen verwende, der es nicht ganz so tut, wie ich will ...

Nein, die direkten Ausgänge der FM benutze ich normalerweise nicht, da ich die Karte zum Messen (Höhen-Messung z.B.) verwende und dafür lese ich mir den Istwert ein.

Alle Funktionen der Karte liegen im Koppelbereich. Hier hast du im Steuerbereich den Ladewert für die Ist-Position (PAD +0), die beiden Vergleichswerte (PAD +4 und PAD +8) und die Steuerbits (32 ab PAD+12). Diese Bits verwende ich (und so macht es sicher auch der Siemens-FB) direkt.

Umgekehrt ist es mit den Istzuständen genauso. Du hast dort den aktuellen Setzwert (PED +0), den aktuellen Zählwert (PED +4), die Fehler-Meldungen(3 Bytes und 8Bits ab PED+8) und die Statusbits (32 ab PED+12).

Der präzise Aufbau steht im Handbuch.
Damit läßt sich eigentlich alles bewerkstelligen ... ;)

Gruß
LL
 
Ja das ist natürlich klar das man es so auch zu Fuß hinbekommt. Gibt im Manual sogar ein eigenes Kapitel darüber (Das Manual kenne ich mittlerweile ja schon fasssssst auswendig :rolleyes:).

Es hakt ja nur mehr an 2 grundlegenden Funktionen. 1. das direkte setzen der Ausgänge. 2. das um-parametrieren der Ausgänge während der Laufzeit. Der Rest mit Zählerwerte laden, Vergleichswerte laden usw. weiter haut auch hin.

Nachdem man eigentlich schon soweit ist noch mal von vorne zu beginnen...
Außerdem glaube ich ja das die Bausteine grundsätzlich funktionieren sollten. Werde ja schließlich tausendfach verwendet (glaube ich zumindest)

Langsam macht sich Verzweiflung breit. :oops::oops:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
... ich wollte nicht behaupten, dass der Siemens-FB vielleicht nicht korrekt funktioniert - vielleicht wendest du ihn einfach nur (unwissentlich) falsch an. Deswegen die von mir genannte Devise - ein Ding, das ich selbst programmiert habe, das wende ich auch bestimmt richtig an.

Gruß
LL
 
Zurück
Oben