Step 7 PID Control findet in Multiinstanz-DB keine Instanzen

Aerosail

Level-1
Beiträge
21
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Kollegen.

Ich habe für ein Projekt in einem FB zwei FB41 CONT_C als Multiinstanzaufrufe programmiert.

Leider findet PID Control keine Instanzen wenn ich den DB öffne.
Es erscheint die Meldung, dass der DB kein Instanz-DB ist und ich im Falle eines Multiinstanz-DBs die entsprechende Instanz auswählen soll. Das Dropdown-Menü ist leider leer.
Dazu muss ich vielleicht erwähnen, dass der DB noch IN-Vars und auch eine static-var enthält. Aufgerufen wird der FB natürlich in einem zyklischen OB.

Kennt jemand das Verhalten?

Version ist V5.4 + SP5
Ausgabestand ist K5.4.5.0

Gruß
 
Hallo,
ich kenne das Verhalten nicht ... um aber sinnvoll mitreden zu können fände ich es schon sinnig, wenn du mal ein paar relevante Code-Passagen postest ...

Gruß
Larry
 
Hallo,
ich kenne das Verhalten nicht ... um aber sinnvoll mitreden zu können fände ich es schon sinnig, wenn du mal ein paar relevante Code-Passagen postest ...

Gruß
Larry

Naja gibt dazu eigentlich nix zu sagen... Zwei Netzwerke mit je einem CONT_C-Aufruf.

Code:
 U     "Dummy".EN_FB20
      =     L      0.1
      BLD   103
      U(    
      O     #P1_stroke_vol.QLMN_HLM
      O     #P1_stroke_vol.QLMN_LLM
      )     
      =     L      0.5
      BLD   103
      U     #Enable_AutoControl
      FP    #FP_Control_Startup
      =     L      0.6
      BLD   103
      U     "True_Fix"
      =     L      0.7
      BLD   103
      CALL  #P1_stroke_vol
       COM_RST :=
       MAN_ON  :=L0.1
       PVPER_ON:=
       P_SEL   :=
       I_SEL   :=
       INT_HOLD:=L0.5
       I_ITL_ON:=L0.6
       D_SEL   :=L0.7
       CYCLE   :=T#25MS
       SP_INT  :=#v_set_value
       PV_IN   :=#v_act_value
       PV_PER  :=
       MAN     :="IDB_FB20".STWratedValue
       GAIN    :=2.000000e+000
       TI      :=T#5S
       TD      :=T#1S
       TM_LAG  :=
       DEADB_W :=2.000000e+000
       LMN_HLM :=
       LMN_LLM :=
       PV_FAC  :=
       PV_OFF  :=
       LMN_FAC :=
       LMN_OFF :=
       I_ITLVAL:=0.000000e+000
       DISV    :=
       LMN     :="IDB_FB30".P1.SetPointSweptVol
       LMN_PER :=
       QLMN_HLM:=
       QLMN_LLM:=
       LMN_P   :=
       LMN_I   :=
       LMN_D   :=
       PV      :=
       ER      :=
      NOP   0

Das ganze dann nochmal für einen zweiten Regler.
Sind nur grundsätzliche Sachen dran wie I-Anteil anhalten (Anti-windup) und Neuinitialisierung des I-Anteils wenn die Regelung gestartet wird (ob das zum Tragen kommt muss ich mal schauen).

Mir ist gestern noch was eingefallen...
Ich musste den FB41 umbenennen weil mein Kollege den Objektnamen schon belegt. Heißt jetzt FB2010. Könnte das ne Ursache sein? Ich will das mal ausprobieren.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
... Ich musste den FB41 umbenennen weil mein Kollege den Objektnamen schon belegt. Heißt jetzt FB2010. Könnte das ne Ursache sein? Ich will das mal ausprobieren.

Wenn der in der STAT-Deklaration des aufrufenden FB's Typ für "P1_stroke_vol" richtig angegeben ist (also hier dann auch FB2010) ... dann nicht.

Akzeptiert die Ziel-SPS Baustein-Namen bis zu der Nummer ? Hast du das überprüft ?

Gruß
Larry
 
Wenn der in der STAT-Deklaration des aufrufenden FB's Typ für "P1_stroke_vol" richtig angegeben ist (also hier dann auch FB2010) ... dann nicht.

Akzeptiert die Ziel-SPS Baustein-Namen bis zu der Nummer ? Hast du das überprüft ?

Gruß
Larry

Im STAT-Bereich ist "P1_stroke_vol" als FB2010 deklariert, da ist alles in Ordnung.
Die Ziel SPS ist eine 315 2PN/DP (6ES7-2EH14-0AB0). Laut Spec ist das Nummernband bis 0-7999 für FB´s.

Ich habe den FB41 meines Kollegen mal verschoben und noch einen CONT_C ins Projekt gezogen. Diesmal mit der original Nummerierung FB41.
Den hab ich genau wie die anderen im FB61 als Multiinstanz aufgerufen und siehe da PID Control findet die Instanz.

Es ist scheinbar nicht richtig ausprogrammiert in PID Control oder ein Bug. Offensichtlich sucht PID Control nur nach FB41, FB42 und FB58, FB59.
 
Zurück
Oben