Verbindungen zwischen Bausteinen in CFC gehen verloren

esteban42

Level-1
Beiträge
10
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo!

Ich kämpfe seit längerem mit einem Problem im CFC Editor in Codesys.
Immer wenn ich die Definition eines im CFC Plan verwendeten Funktionsblocks verändere, werden alle Verbindungen zu diesem Block getrennt.
Dies geschieht unabhängig davon ob ich jetzt tatsächlich eine input oder output variable hinzufüge oder nur eine interne Variable ergänze.

Wenn der Block 100 mal im Projekt verwendet ist, muss man an 100 Stellen die Verbindungen neu setzen. Meiner Meinung nach schon ein riesen Bug.

Hat jemand dieses Problem mal gehabt oder weiss eine Idee wie man das abstellen kann?

Vielen Dank!


Grüße
 
Um Welche version von CoDeSys geht es denn? Ich nutze CFC nun nicht sonderlich exzessiv aber das beschriebene Verhalten ist mir unbekannt und ich habe es mit V2.3 nicht simulieren können.
 
Ich habe hier 2.3.9.7 denke aber nicht das es der Version lieget (ich dachte viel mehr an die V3). Ich habe das nun mit FB und FC versucht und beide male hat sich CFC erstaunlich gut verhalten. Egal der Ein- Ausgang am Anfang, Mitte oder Ende hinzu oder weg gemacht wurde.
 
Ich hab mal ein Mini Beispiel angehängt ohne spezifisches Target.
Nur ein PLC_PRG in CFC und einen TestBlock in ST.

Wenn ich jetzt einen Input0 : BOOL; vor den input1 in TestBlock einfüge verschwindet bei mir die verbindung in PLC_PRG.

Hab auch nochmal eine neue installation auf einem anderen Rechner durchgeführt und ist 1zu1 reproduzierbar.
 

Anhänge

  • CFC_Test.zip
    2,6 KB · Aufrufe: 8
OK war nun bei mir auch so wie beschrieben.
Nach folgender Änderung war dieses Phänomen aber wieder weg:

Code:
VAR_INPUT
    input0:BOOL;
    input1:BOOL;
    input2:BOOL;
END_VAR

VAR_INPUT CONSTANT
    ID:USINT;
END_VAR

VAR_OUTPUT
END_VAR
VAR
END_VAR


Darauf bin ich gekommen da ich in meinem vorhergehenden Test diese CONSTANT Geschicht auch hinten dran hatte. Für was benutzt Du die ID?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielen Dank fürs Testen!!
Tatsächlich scheint das einen Unterschied zu machen....

Die ID verwende ich als Identifikation des Bausteins im Kommunikationsprotokoll. Ich fand es eingängiger die im CFC parameter editor zu hinterlegen, anstatt die Konstante als Input an den Baustein zu führen.

Ein weiterer komischer Effekt der auftritt ist: wenn man den input0 wieder wegnimmt wird einer der Eingänge im CFC plötzlich negiert.

Also insgesamt denke ich, dass diese CFC Funktionalität ziemlich buggy implementiert ist.
Ich verwende das auch nur damit Nicht-Informatiker besser damit zurechtkommen. Sonst hätte ich das niemals angefasst ;-)
 
Zurück
Oben