Gibt es einen FB für einen frequenzumrichter?

Rossi

Member
Beiträge
21
Punkte Reaktionen
0
Zuviel Werbung?
->Hier kostenlos registrieren
Moin Moin....

Ich suche für einen Frequenzumrichter einen FB mit folgenden Funktionen

Eingänge:
Freigabe / bool
Anlauframpe / zeit 0-60s / int
Ablauframpe / zeit 0-60s / int
Max. Wert / int

Ausgänge :
Ausganswort zum Fu


Schönen Gruß der Rossi
 

borromeus

Well-known member
Beiträge
2.270
Punkte Reaktionen
329
Da wird man noch einen Notstop brauchen (Stop ohne Rampe).
Einen Sollwert?

Skalierung 0-100%?

Rampenzeit von 0-100% oder von 0-Sollwert.
Soll bei Sollwertänderungen auch die Rampe benutzt werden, oder ist das einmalig bei "Freigabe" und "keine Freigabe"?
 

bike

Well-known member
Beiträge
6.464
Punkte Reaktionen
794
Gibt es so nen FB? geht das bei allen FUs? Oder nur bestimmte?

Das geht für alle FU und noch dazu für alle anderen Motore und für den Kühlschrank. :ROFLMAO:

Das ist doch nicht ernst solch eine Frage.
jeder Hersteller hat in seinen Geräten andere Funktionen.
Dann kommt noch dazu ob das Teil an einem Bussystem hängt oder mit diskreten E/A gesteuert wird.

Der TE wird uns doch bestimmt noch verraten welcher FU und welche Ansteuerung verwendet wird.
Sonst kann wohl keiner so wirklich helfen


bike
 

vollmi

Well-known member
Beiträge
4.942
Punkte Reaktionen
1.101
Zuviel Werbung?
->Hier kostenlos registrieren
Er hat doch genau beschrieben was der FB können muss :)

An den TE. So einen FB kannst du dir doch selber programmieren, das ist doch kein aufwand von mehreren Tagen.

Tip: TON (SFB4) liefert dir auf ET die abgelaufene Zeit welche du für die Rampe verwenden kannst.

mfG René
 

bike

Well-known member
Beiträge
6.464
Punkte Reaktionen
794
Stimmt, doch wohin sollen die Signale und Werte?
Wenn es ein Busansteuerung ist, funktioniert die manchesmal nicht so zusätzliche Ansteuerungen.
Daher die Frage welcher FU und wie angschlossen.


bike
 

Perfektionist

Well-known member
Beiträge
3.557
Punkte Reaktionen
517
Hier ein Beispiel eines Motor-FB:
Code:
FUNCTION_BLOCK "Antrieb"
{ S7_Optimized_Access := 'FALSE' }
AUTHOR : Co
VERSION : 2.1
   VAR_INPUT 
      "I_Sollgeschwindigkeit" : DInt;   // Einheit: 0,00001m/s
      "I_Servicesollwert" { S7_HMI_Visible := 'False' }  : DInt;   // Einheit: 0,00001m/s
      "I_Antriebsistwert" { S7_HMI_Visible := 'False' }  : Int;
      "I_Zykluszeit" { S7_HMI_Visible := 'False' }  : Byte;   // Einheit: Millisekunden
      "I_Anlauf" { S7_HMI_Visible := 'False' }  : Bool;
      "I_nicht_NOTAUS" { S7_HMI_Visible := 'False' }  : Bool;   // sollte erst gegeben werden, wenn der Umrichter bereit ist
      "I_Start_vorwaerts" { S7_HMI_Visible := 'False' }  : Bool;
      "I_Start_rueckwaerts" { S7_HMI_Visible := 'False' }  : Bool;   // dominant über Start vorwärts
      "I_Servicestart" { S7_HMI_Visible := 'False' }  : Bool;   // dominant über Start
      "I_Systemdrehrichtung" { S7_HMI_Visible := 'False' }  : Bool;   // zum Umschalten zwischen links- und rechtshändiger Maschine
   END_VAR
   VAR_OUTPUT 
      "Q_Istgeschwindigkeit" { S7_HMI_Visible := 'False' }  : DInt;   // Einheit: 0,00001m/s
      "Q_Profibussteuerwort" { S7_HMI_Visible := 'False' }  : Word;
      "Q_Antriebssollwert" { S7_HMI_Visible := 'False' }  : Int;   // dimensionslose, vorzeichenbehaftete Geschwindigkeitsgröße +-16384
      "Q_Stoerung" { S7_HMI_Visible := 'False' }  : Bool;
   END_VAR
   VAR 
      "P_Beschleunigung" : Int := 10;   // Einheit: 0,01m/ss
      "P_Verzoegerung" : Int := 100;   // Einheit: 0,01m/ss
      "P_min_Geschwindigkeit" : DInt;   // Einheit: 0,00001m/s
      "P_max_Geschwindigkeit" : DInt := L#100000;   // Einheit: 0,00001m/s
      "P_Umrechnung_Physik" : DInt := L#134;   // 4s/m bzw. 0,037252902984619140625Hz p. m/s, wenn 16384=100Hz) OP 2NK U2:3,72529
      "P_Fehlergrenze_Soll_Ist" : Int := 1000;
      "V_Resetzaehler" { S7_HMI_Visible := 'False' }  : Int;   // 2005041209Co
   END_VAR
   VAR_TEMP 
      "T_Sollgeschwindigkeit" : DInt;   // Einheit: 0,00001m/s
      "T_groesser200" : Bool;
   END_VAR

BEGIN
NETWORK
TITLE = 
      NOP 0                    ;//-------------------------------------
// Version          2002073010Co
// Version Antrieb1 2004030815Co
// Version Antrieb2 2004040109Co
// Version Antrieb2 2004041312Co Geschwindigkeitsgrenzen bei Sollwert
// Version Antrieb2 2005041209Co NOTAUS-Quittung über Profibus für FC302
// Version          2006100614Co Anpassung 20mtr-System
// ***************************
// ***** Antrieb steuern *****
// ***************************
// ist konzipiert zum Steuern von Profibus-
// antrieben gemäß Profidrive-Standard
// mit PPO-Typ3 in Wort-konsistenter Übertragung
// Antrieb2: Beschleunigungs- und Verzoegerungs-
// rampen separat einstellbar.
// -----------------------------------------------------
// FU-Parameter Danfoss-VLT:
// 5000 FC302 Wert (Motordaten nicht vergessen!)
// 801  ---   Auto Anpassung (nur alte VLT5000)
// 904  ---   PPO3 (ermittelt FC302 automatisch)
// 918  918   Busadresse
// 115  162   0% (für Positionieraufgaben)
// 128  190   ETR1 Abschaltung (zur Erinnerung)
// 203  300   -max bis +max
// 205  303   VLT5000: 100Hz  FC302: 3000U/min
// 207  341   0,05s
// 208  342   0,05s
// 200  410   VLT5000: +/-132Hz  FC302: beide Richtungen
// 200  419   VLT5000: +/-132Hz  FC302: 132Hz
//      804   bei Bustimeout Stopp und Alarm

      AN #I_Anlauf;// Reset
      JC m000;
      L 0;
      T #Q_Istgeschwindigkeit;
m000:      L 0;// Sollwert ermitteln
      AN #I_Servicestart;
      AN #I_Start_vorwaerts;
      AN #I_Start_rueckwaerts;
      ON #I_nicht_NOTAUS;
      JC m002;
      AN #I_Start_vorwaerts;
      AN #I_Start_rueckwaerts;
      JC m001;
      L #I_Sollgeschwindigkeit;
m001:      AN #I_Start_rueckwaerts;
      JC m004;
      NEGD;
m004:      AN #I_Servicestart;
      JC m003;
      L #I_Servicesollwert;
m003:      L #P_min_Geschwindigkeit;// begrenzen
      <D;
      JC m006;
      POP;
m006:      L #P_max_Geschwindigkeit;
      >D;
      JC m002;
      POP;
m002:      T #T_Sollgeschwindigkeit;

// ***** Rampfunktion
      L #Q_Istgeschwindigkeit;// Vorzeichen Istwert?
      L 0;
      <D;
      JC ineg;
      L #T_Sollgeschwindigkeit;
      L #Q_Istgeschwindigkeit;
      >D;
      JC pbes;// positiv-beschleunigen
      <D;
      JC pvrz;// positiv-verzoegern
      JU exit;
pbes:      L #I_Zykluszeit;// positiv-beschleunigen
      L #P_Beschleunigung;
      *I;
      L #Q_Istgeschwindigkeit;
      +D;
      L #T_Sollgeschwindigkeit;
      >D;
      JC m020;
      POP;
m020:      T #Q_Istgeschwindigkeit;
      JU exit;
pvrz:      L #I_Zykluszeit;// positiv-verzoegern
      L #P_Verzoegerung;
      *I;
      NEGD;
      L #Q_Istgeschwindigkeit;
      +D;
      L #T_Sollgeschwindigkeit;
      <D;
      JC m021;
      POP;
m021:      T #Q_Istgeschwindigkeit;
      JU exit;
ineg:      L #T_Sollgeschwindigkeit;
      L #Q_Istgeschwindigkeit;
      <D;
      JC nbes;// negativ-beschleunigen
      >D;
      JC nvrz;// negativ-verzoegern
      JU exit;
nbes:      L #I_Zykluszeit;// negativ-beschleunigen
      L #P_Beschleunigung;
      *I;
      NEGD;
      L #Q_Istgeschwindigkeit;
      +D;
      L #T_Sollgeschwindigkeit;
      <D;
      JC m022;
      POP;
m022:      T #Q_Istgeschwindigkeit;
      JU exit;
nvrz:      L #I_Zykluszeit;// negativ-verzoegern
      L #P_Verzoegerung;
      *I;
      L #Q_Istgeschwindigkeit;
      +D;
      L #T_Sollgeschwindigkeit;
      >D;
      JC m023;
      POP;
m023:      T #Q_Istgeschwindigkeit;
      JU exit;

// ***** Ausgabe
exit:      L #Q_Istgeschwindigkeit;// umrechnen
      L #P_Umrechnung_Physik;
      *D;
      SRD 14;
      AN #I_Systemdrehrichtung;
      JC m008;
      NEGI;
m008:      T #Q_Antriebssollwert;
      L 0;// Bussteuerwort
      <>I;
      JC m009;
      L W#16#047E;
      JU m010;
m009:      L W#16#047F;
m010:      T #Q_Profibussteuerwort;
      L #I_Zykluszeit;// Reset          2005041209Co
      L #V_Resetzaehler;
      +I;
      JO m013;
      T #V_Resetzaehler;
m013:      A #I_nicht_NOTAUS;
      AN #I_Anlauf;
      JC m014;
      L 0;
      T #V_Resetzaehler;
m014:      L 200;
      L #V_Resetzaehler;
      <I;
      = #T_groesser200;
      L 250;
      >I;
      ON #T_groesser200;
      ON #I_nicht_NOTAUS;
      JC m012;
      L #Q_Profibussteuerwort;
      OW W#16#0080;
      T #Q_Profibussteuerwort;
m012:      L #Q_Antriebssollwert;// Rückmeldung prüfen
      L #I_Antriebsistwert;
      -I;
      JP m011;
      NEGI;
m011:      L #P_Fehlergrenze_Soll_Ist;
      >I;
      A #I_nicht_NOTAUS;
      = #Q_Stoerung;

END_FUNCTION_BLOCK
 
Oben