FRAGE: Wer nutzt CFC OHNE PCS7

IBFS

Level-1
Beiträge
4.068
Reaktionspunkte
893
Zuviel Werbung?
-> Hier kostenlos registrieren
FRAGE: Wer nutzt CFC OHNE PCS7,

d.h wer hat CFC separat - einzeln gekauft - im Einsatz zusammen natürlich mit SCL (Ohne SCL gahts ja nicht wirklich).


Würde mich interessieren obs hier jemanden gibt!

Gruß
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo

Ich nutze das Paket "D7-SYS" für eine Simadyn. Da ist alles in CFC gemacht.

Gruß Andreas

...das ist mir nunwieder zu speziell - bzw. ich weiß das es D7-SYS gibt - mehr nicht.


Abgesehen von der Codegröße und dem teilweise "nicht möglichen" DELTA-laden finde ich interessant, dass man BOOL oder BYTE-Variablen als "TEXT"-Anzeige an den Ein- und Ausgänge parametrieren kann.

Wo es paßt und man das ganze Projekt geschlossen in CFC "durchziehen" kann ist S7-CFC wirklich eine Alternative wo man sonst ganze FUP-Gräber über mehrere Netzwerke verteilt hat.


Gruß
 
Gegenfrage: Ist CFC ohne PCS7 brauchbar?

Hallo!

Habe CFC noch nie eingesetzt bzw gesehen deshalb meine Gegenfrage:
Ist CFC ohne PCS7 brauchbar?
Damit meine ich sollte man sich das aneignen für die normale Programmierung ohne PCS7, weil es gegenüber andere Sparachen (FUP/KOP/AWL) Vorteile bringt, oder ist das unnötig?

godi
 
@godi

Also für PIFF-PAFF Maschinen, Sondermaschinenbau, mit vielen Änderungen zur Laufzeit, wo man instinktiv viel AWL machen würde ist es eher nicht geeignet.

Aber in der Verfahrenstechnik wo man aus Preisgründen noch kein PCS7 nehmen kann ist es von Vorteil.
Mit CFC kann man in den CFC-Plänen immer ein Funktionsgruppe unterbringen und als Ganzes beobachten (Auflösung ab 1400 * 1050 besser 1920 * 1200). Bedingung - fast alle FC/FB sollte man in SCL schreiben!!!

Und ein SCREEN-SHOT ist dann schon fast die DOKU

Gruß
 
HUI sieht ja fast so aus wie bei einer LOGO! *gg* :ROFLMAO: ;)

Also ist das eher nur für Bausteinaufrufe um die Eingänge und Ausgänge der Bausteine miteinander zu verbinden.
Warum sollen die Bausteine dann in SCL programmiert werden?
 
HUI sieht ja fast so aus wie bei einer LOGO! *gg* :ROFLMAO: ;)

Also ist das eher nur für Bausteinaufrufe um die Eingänge und Ausgänge der Bausteine miteinander zu verbinden.
Warum sollen die Bausteine dann in SCL programmiert werden?


1. Weil S7 aus allem sowie EINE SCL-Quelle erzeugt und es daher von SIMENS empfohlen wird UND

2. Der SCL-Kopf-Deklaration wegen

siehe Code

Code:
FUNCTION_BLOCK "STATE"
TITLE   ='STATE' 
NAME    : STATE
AUTHOR  : none 
FAMILY  : CTRL 
VERSION : '0.3'
//KNOW_HOW_PROTECT 
// Typical-Attribute
{
  S7_m_c       :='false';
  S7_blockview :='big'
}
VAR_INPUT   
    TAKT_3       {S7_dynamic := 'true'; S7_visible  :='true'                                                        } : BOOL :=   FALSE; //Takt      
    TAKT_5       {S7_dynamic := 'true'; S7_visible  :='true'                                                        } : BOOL :=   FALSE; //Takt  
    DRUCKNIO     {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'DRUCK_OK' ; S7_string_1 := 'DRUCKNIO' } : BOOL :=   FALSE; //interne Überwachung
    Start_FL     {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'START'    } : BOOL :=   FALSE; //Status von Eingängen
    Stop         {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'STOP'     } : BOOL :=   FALSE; //Status von Eingängen
    REMOTE       {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'REMOTE'   } : BOOL :=   FALSE; //Status von Eingängen 
    KL_AUTO      {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'KL_HAND'  ; S7_string_1 := 'OK'       } : BOOL :=   FALSE; //Klappen im Automatikbetrieb 
 
    SI_RELEASE   {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OK'       ; S7_string_1 := 'RELEASE'  } : BOOL :=   FALSE; //Status Sicherheits-SPS  [S7-300]
    SI_SPS_RUN   {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'RUN_FLT'  ; S7_string_1 := 'OK'       } : BOOL :=   FALSE; //Status Sicherheits-SPS  [S7-300] 
    SI_LIVE_BIT  {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'LIVE_FLT' ; S7_string_1 := 'OK'       } : BOOL :=   FALSE; //Status Sicherheits-SPS  [S7-300]    
END_VAR
 
VAR_OUTPUT    
    LM_EIN       {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'LM_EIN'   }  : BOOL       :=   FALSE; //Leuchtmelder EIN
    CTRL_OK      {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'CTRL_OK'  }  : BOOL       :=   FALSE; //CTRL_OK      an Sicherheits-SPS [S7-300]
    QUIT         {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'QUIT'     }  : BOOL       :=   FALSE; //QUIT_SIGNAL  an Sicherheits-SPS [S7-300]
 
    STATE_TEXT   {S7_dynamic := 'true'; S7_visible  :='true'                                                        }  : STRING[18] :=   'FILLTEXT0123456789'; //Zustand als Text        
 
    STATE_Z00    {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'AUSGESCH' }  : BOOL       :=   FALSE; //AUSGESCH
    STATE_Z01    {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'HOCHLAUF' }  : BOOL       :=   FALSE; //HOCHLAUF
    STATE_Z02    {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'HANDBETR' }  : BOOL       :=   FALSE; //HANDBETR
    STATE_Z03    {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'GESTOERT' }  : BOOL       :=   FALSE; //GESTOERT
    STATE_Z04    {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'BEREIT'   }  : BOOL       :=   FALSE; //BEREIT
    STATE_Z05    {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'QUIT_EIN' }  : BOOL       :=   FALSE; //QUIT_EIN
    STATE_Z06    {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'QUIT_AUS' }  : BOOL       :=   FALSE; //QUIT_AUS
    STATE_Z07    {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'NORMBETR' }  : BOOL       :=   FALSE; //DRUCKSTEUERUNG EIN
 
    STATE_ERR    {S7_dynamic := 'true'; S7_visible  :='true'; S7_string_0 := 'OFF'      ; S7_string_1 := 'PROG_FLT' }  : BOOL       :=   FALSE; //PROGRAMMFEHLER                      
END_VAR
 
VAR_IN_OUT
    ZUSTAND      {S7_dynamic := 'true'; S7_visible  :='true' }  : INT  :=       0; //Zustand aktuell          
    ZUSTAND_OLD  {S7_dynamic := 'true'; S7_visible  :='true' }  : INT  :=       0; //Zustand (N-1)  
END_VAR
 
VAR
    NEXT_S06 :   TON;                                    // interner Timer 
    NEXT_S05 :   TON;                                    // interner Timer     
END_VAR
 
VAR_TEMP
    //
END_VAR


mit diesen SCL-Vereinbarungen wird dann die Anzeige und Funktionalität des SCL-Bausteins in CFC gesteuert.


..
 
Zurück
Oben