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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: Formal- und Aktualparameter in CoDeSys

  1. #1
    Registriert seit
    07.09.2011
    Beiträge
    100
    Danke
    9
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo.
    Ich hab in meinem CoDeSys-Programm FBs die ich in PLC_PRG aufrufe.
    Jetzt nur folgendes Problem. Ich habe einen Integer-Aktualparameter auf den Formalparameter (auch integer) des FBs gelegt.
    Nehmen wir mal an der Aktualparameter hat eine 4 in seinem Integer stehen, zeigt mir der zugehörige Formalparameter eine 0 an. Und das immer mal, völlig unabhängig welche Zahl im Aktualparameter auftaucht. Der Formalparameter bleibt immer auf 0.
    Es ist zwischen den zwei Paramtern nichts programmiert oder verknüpft, sie sind direkt miteinander verschalten. Wie kann es dann sein, dass der eine Parameter was anderes anzeigt, als der andere???
    Zitieren Zitieren Formal- und Aktualparameter in CoDeSys  

  2. #2
    Registriert seit
    13.09.2005
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hast du den Formalparameter im FB als Var_Input oder Var_IN_Out deklariert und
    im PLC_PRG deinen FB auch aufgerufen und den Aktualparameter übergeben

  3. #3
    visu90 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    07.09.2011
    Beiträge
    100
    Danke
    9
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Ja es ist als Var_Input deklariert und der Aktualparameter ist übergeben

  4. #4
    Registriert seit
    13.09.2005
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Wie wird die Instanz aufgerufen ?
    So
    fb_Test; (* Aufruf FB*)
    fb_Test.Val := varMain; (* Übergabe Wert *)
    oder
    fb_Test(Val := varMain); (* Aufruf FB und Übergabe Wert *)


    habe beides getestet
    bei mir wird der Wert übergeben

  5. #5
    visu90 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    07.09.2011
    Beiträge
    100
    Danke
    9
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Zitat Zitat von teftulli Beitrag anzeigen
    Wie wird die Instanz aufgerufen ?
    So: Out_Inst: Befehlsausgabe_auto;

  6. #6
    Registriert seit
    13.09.2005
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Das schaut so aus als stünde das im Deklarationsteil
    Out_Inst: Befehlsausgabe_auto;

    Out_Inst und die Übergabe des der Variabeln soll dann im Anweisungteil erfolgen

  7. #7
    visu90 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    07.09.2011
    Beiträge
    100
    Danke
    9
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Freilich ist das aus dem Deklarationsteil.
    Schau mal, hier ist ein Screen-Shot von meinem PLC_PRG, dann siehst du gleich was sache ist
    Das eingekreiste ist das worüber wir hier SchreibenForum Instanz codesys.JPG

  8. #8
    Registriert seit
    08.10.2010
    Beiträge
    107
    Danke
    6
    Erhielt 15 Danke für 15 Beiträge

    Standard

    Hi,

    Problem gelöst?

    Am häufigsten bekommt man das, wenn das SPS Programm noch nicht gestartet ist ; )

    Oder wenn eine der beiden Variablen im Programm überschrieben wird.
    Dabei ist die Reihenfolge der Aufrufe entscheidend ...

  9. #9
    Registriert seit
    30.08.2005
    Beiträge
    280
    Danke
    41
    Erhielt 96 Danke für 66 Beiträge

    Standard

    Noch nicht gestartet ist natürlich die einfachste Möglichkeit.
    Grundsätzlich zeigen die dargestellten Werte immer den Zustand nach einem ganzen Zyklus an.
    Also kann es schon sein, dass der Formalparameter oder der Aktualparameter nach der Zuweisung verändert werden.
    Wenn du dir nicht erklären kannst was da passiert, dann geh mal mit Einzelschritten durch und schau dir an wann welcher
    Wert verändert wird.

  10. #10
    visu90 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    07.09.2011
    Beiträge
    100
    Danke
    9
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Also danke für eure Hilfe.
    Ich glaube herausgefunden zu haben woran das liegt. Und zwar ist das eine Übung aus der Berufsschule und diese Datei habe ich schon vorgefertigt bekommen und habe nur den Befehlsausgabebaustein selber schreiben müssen, der schon leer in der Datei erstellt war.
    Jetzt habe ich diesen leeren Baustein gelöscht wieder neu erstellt. Und siehe da, jetzt funktioniert es!
    Die Datei muss irgendwie beschädigt worden sein (vermute ich).
    Aber meiner Meinung nach darf das einfach nicht Passieren, weil das Industriesoftware ist. Die muss doch einfach zuverlässig sein, damit man damit vernünftig arbeiten kann.
    Was meint ihr?

Ähnliche Themen

  1. Codesys 2.3.9 und LREAL
    Von bAsKeT im Forum CODESYS und IEC61131
    Antworten: 5
    Letzter Beitrag: 13.01.2012, 14:33
  2. CodeSys und S7
    Von Tommi im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 19.12.2010, 20:32
  3. Hilfe zu COdesys und ST
    Von Jumpinjack im Forum CODESYS und IEC61131
    Antworten: 9
    Letzter Beitrag: 20.08.2010, 09:10
  4. KL3102 und Codesys
    Von Jeff im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 05.03.2010, 16:59
  5. Aktualparameter anzeigen bei FC Aufruf
    Von Küffel im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 09.10.2004, 18:51

Stichworte

Lesezeichen

Berechtigungen

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