Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 9 von 9

Thema: Bereichsüberschneidung zwischen Outbereich und Ret_Val eines FC's

  1. #1
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.356
    Danke
    455
    Erhielt 695 Danke für 520 Beiträge

    Frage


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute

    Ich bin gerade dabei einen FC-für eine Messung zu schreiben und bin auf ein interessantes Problem mit der Return-Value gestoßen. Ist eigentlich nicht der erste FC den ich in meinem leben schreibe, habe das Problem aber noch nie gehabt.

    Ich habe mal den Mess-FC (Siehe Anhang) bis auf das grundlegende Problem gestript, alles andere wäre zu lang, so ist das Problem auf besser sichtbar.

    Er besteht aus:
    1.) einem Eingang für ein Peripherie-Eingangswort (Wird in diesem Fall testweise über einen einfachen Zähler zwischen 0 und 27648 vorgeben)
    2.) einem FC105-Scale Baustein zum umwandeln des Messwertes
    3.) einem Ausgang zur Ausgabe des Messwertes
    4.) einem Ret_Val-Wert vom Typ Int zum Ausgeben ob beim FC105 irgendein Fehler war.

    Das Problem:

    Der Zähler, der in diesem Versuch das PEW ersetzt, gibt einen Wert vor, der vom FC105 ohne Fehler umgesetzt und in einem temporären Wert geschrieben wird. Dieser temporäre Wert wird dann einfach auf den Ausgangswert geschrieben. Das Problem befindet sich jetzt in Netzwerk 4: In der ersten Zeile lade ich noch einmal die aktuelle Ret_Val (zum Vergleich), danach übergebe ich den temporären Messwert an den Messwertausgang. Wenn ich dann dahinter noch einmal die Ret_Val lade sehe ich aber das die Ret_Val von der vorangegangenen Transfer-Operation beinflusst wird. Als würde sich der Out-Bereich mit der Ret-Val überschneiden.

    Woran kann das liegen???

    @EDIT@: Achja ist übrigens eine S7313C-2DP. Ist in dem Fall aber kaum relevant.
    mfg RONIN
    Angehängte Grafiken Angehängte Grafiken
    Geändert von RONIN (14.12.2009 um 23:42 Uhr)
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!
    Zitieren Zitieren Bereichsüberschneidung zwischen Outbereich und Ret_Val eines FC's  

  2. #2
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    funktionalitätsbeeinträchtigend oder einfach nur eine beobachtung, also ein "online-modus" prob? das konnte ich nicht so recht raus lesen ... letzteres ist quasi normal, da die aktualisieungsrate und die tatsächliche abarbeitung einfach mal welten auseinander liegen
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  3. #3
    Avatar von RONIN
    RONIN ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.356
    Danke
    455
    Erhielt 695 Danke für 520 Beiträge

    Standard

    Leider auch funktionsbeinträchtigend

    Ich hatt nähmlich auch schon den umgekehrten Fall wobei der Zugriff auf die Ret_Val ein Bit im Outbereich beeinflusste. (Dieses Bit habe ich vorher beim gekürzten Versuchs-FC weggelassen. Im Original wäre es im Outbereich hinter dem Messwertausgang)

    Das sah so aus (Erstes Netzwerk im FC):

    Code:
    SET
    = {Bit im Outbereich}
    
    L 0
    T Ret_Val
    
    ...
    
    U {Bit im Outbereich} //<-- hier war in dem Fall das Bit schon Null
    {tuhe dies und das}
    wenn ich aber dann den Code so geschrieben habe...

    Code:
    L 0
    T Ret_Val
    
    SET
    = {Bit im Outbereich}
    
    ...
    
    U {Bit im Outbereich} //<-- hier war das Bit jetz wie gewünscht TRUE
    {tuhe dies und das}
    Also irgendwo muss da ein Zusammenhang bestehen.
    Geändert von RONIN (14.12.2009 um 23:32 Uhr)
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  4. #4
    Registriert seit
    05.06.2006
    Ort
    PLZ 97xxx
    Beiträge
    274
    Danke
    31
    Erhielt 44 Danke für 36 Beiträge

    Standard

    Hast Du den/die Aufrufe des FCs nach Deiner letzten Änderung des FCs
    aktualisiert?

  5. #5
    Avatar von RONIN
    RONIN ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.356
    Danke
    455
    Erhielt 695 Danke für 520 Beiträge

    Standard

    Es gibt in diesem Fall keine letze Änderungen, da ich zum testen ein komplett neues Projekt erstellt habe, und darin den Test-FC ebenfalls neu eingetippt habe.

    Um Probleme mit Instanzdaten oder ähnlichem auszuschließen, rufe ich den Test-FC auch direkt in OB1 auf.
    Geändert von RONIN (14.12.2009 um 23:57 Uhr)
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  6. #6
    Registriert seit
    05.06.2006
    Ort
    PLZ 97xxx
    Beiträge
    274
    Danke
    31
    Erhielt 44 Danke für 36 Beiträge

    Standard

    afaik liegen RETVAL + IN + OUT + TEMP eines FC auf dem
    L-Stack.
    Im Aufruf des FC wird der L-Stack mit IN-Variablen belegt...
    Nach Beendigung werden die OUT + RETVAL vom L-Stack gelesen und
    an die von aussen "angeflanschten" Parameter übergeben
    (dies geschieht alles im Aufrufenden Baustein)

    Wenn Du nun z.B. zusätzliche Temp-Variablen in Deinem FC einfügst und
    den Aufruf nicht aktualisiert dann kann genau das passieren was Du beobachtest.

    Ich hoffe das ich mich einigermaßen verständlich ausgedrückt habe. (ist schon spät)

  7. Folgender Benutzer sagt Danke zu Sarek für den nützlichen Beitrag:

    RONIN (15.12.2009)

  8. #7
    Registriert seit
    05.06.2006
    Ort
    PLZ 97xxx
    Beiträge
    274
    Danke
    31
    Erhielt 44 Danke für 36 Beiträge

    Standard

    Stell mal den Status in HEX-Anzeige um dann wirst Du sehen
    das im NW4 der RETVAL das gleiche ist wie das Highword von #WERT

  9. #8
    Avatar von RONIN
    RONIN ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.356
    Danke
    455
    Erhielt 695 Danke für 520 Beiträge

    Standard

    Ja, das ist soweit schon verständlich. Leider weiß ich nicht was ich bei einem völlig neu eingetippten FC noch aktualisieren könnte.

    Zitat Zitat von Sarek Beitrag anzeigen
    Stell mal den Status in HEX-Anzeige um dann wirst Du sehen
    das im NW4 der RETVAL das gleiche ist wie das Highword von #WERT
    Leider habe ich jetzt kein Versuchssystem mehr zur Hand, erst morgen ähhh verdammt heute wieder. Ich seh mir das dann morgen ähh heute mal an.

    Na dann guten Morgen.
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  10. #9
    Registriert seit
    05.06.2006
    Ort
    PLZ 97xxx
    Beiträge
    274
    Danke
    31
    Erhielt 44 Danke für 36 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Entscheidend ist der Aufruf im OB1.
    Vielleicht hast Du nachdem Du den Aufruf im OB1 geschrieben hast noch was geändert in den TEMPs des FC.
    dann den FC überspielt aber vorher den Aufruf im OB1 nicht aktualisiert
    oder nicht rübegespielt ...

Ähnliche Themen

  1. FC105 - Ret_Val 8
    Von Roos im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 03.05.2011, 09:05
  2. SFC84 - trotz REQ - FLANKE 7002 als RET_VAL
    Von Gerri im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 01.11.2010, 09:06
  3. Aufruf eines Date_and_Time eines DB's
    Von hank12 im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 08.07.2009, 10:33
  4. Ret_val nach BLKMOV
    Von Kodan im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 28.05.2008, 09:11
  5. Datenkommunikation zwischen S5 und S7
    Von delacasa im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 12.11.2007, 19:34

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •