Ventilkennlinie via PLC identifizieren

PLC-Bibliothek Tc3_Mc3FluidPower einfügen

Eine MC3-FluidPower-Achse wurde im Handbetrieb verfahren,
siehe Achse im Handbetrieb mittels Motion UI verfahren
1. Rechtsklick auf den References-Knoten > Add library…
Ventilkennlinie via PLC identifizieren 1:
2. Im Dialog Bibliothek hinzufügen unter Motion→MC3 die Bibliothek Tc3_Mc3FluidPower und Tc3_Mc3Ptp auswählen und mit OK bestätigen.
Ventilkennlinie via PLC identifizieren 2:

PLC-Implementierung

  1. Anlegen je einer Instanz von
    Tc3_Mc3FluidPower.MC_ValveCharacteristicCurve (siehe MC_ValveCharacteristicCurve),
    Tc3_Mc3FluidPower.MC_ValveCharacterization (siehe MC_ValveCharacterization),
    Tc3_Mc3FluidPower.ValveCharacterizationOptions (siehe ValveCharacterizationOptions)
    und der gewünschten Zahl der Kennliniepunkte numberOfValveCharacteristicCurvePoints.
  2. Verbinden der Referenz Tc3_Mc3FluidPower.MC_ValveCharacteristicCurve mit dem Valve Characteristic Curve Objekt der FluidPower-Achse
  3. Bestromen der FluidPower-Achse
  4. Setzen der Optionen und Start der Charakterisierung der Ventilkennlinie
  5. Nach erfolgreicher Kennlinien-Identifikation, Aktivierung der Kennlinie
    Ventilkennlinie via PLC identifizieren 3:
VAR
    FluidPowerAxis                            : AXIS_REF;
                 
    fbPower                                   : MC_Power;
                 
    fbValveCharacteristicCurve                : MC_ValveCharacteristicCurve;    // reference to valve characteristic curve object
    fbValveCharacterization                   : MC_ValveCharacterization;       // handling of valve curve characterization
    stValveCharacterizationOptions            : ValveCharacterizationOptions;   // options for valve curve characterization
    
    numberOfValveCharacteristicCurvePoints    : UDINT := 41;                    // number of curve points, must be an odd number
    nErrorId                                  : UDINT;
    
    bInit                                     : BOOL;
    bStart                                    : BOOL;
    nState                                    : UINT;
END_VAR
IF NOT bInit THEN
    //connect valve characteristic curve object of MC3 axis
    nErrorId := fbValveCharacteristicCurve.Connect();
    bInit:= fbValveCharacteristicCurve.IsConnected;
END_IF


CASE nState OF
    0:  //enable
        IF bStart AND fbValveCharacteristicCurve.IsConnected THEN
            IF NOT fbPower.Status THEN
                fbPower.Enable := TRUE;
                fbPower.EnableNegative := TRUE;
                fbPower.EnablePositive := TRUE;
            ELSE
                bStart := FALSE;
                nState := nState + 1;
            END_IF
        END_IF

    1:  //set valve characterization options
        stValveCharacterizationOptions.MinimumTravelPerMeasurement := 1.0;
        stValveCharacterizationOptions.WaitTimeAfterVelocityStep := 0.1;
        stValveCharacterizationOptions.WaitTimeAtPositionLimit := 0.2;
        stValveCharacterizationOptions.OutputLimit := 1.0;
        
        //start characterization
        fbValveCharacterization.Execute := TRUE;
        nState := nState + 1;
    
    2:  //enable valve characteristic curve
        IF NOT fbValveCharacterization.Busy THEN
            IF fbValveCharacterization.Done THEN
                fbValveCharacterization.Execute := FALSE;
                fbValveCharacteristicCurve.Enable();
                nState := nState + 1;
            END_IF
        END_IF

    3:  //done
        nState := 0;
END_CASE


//call FBs
fbValveCharacterization(
    Axis                    := FluidPowerAxis,
    OutputStepsize          := 2.0 / TO_LREAL(numberOfValveCharacteristicCurvePoints - 1),
    PositionLimitMinimum    := 50.0,
    PositionLimitMaximum    := 450.0,
    Options                 := stValveCharacterizationOptions);

fbPower(Axis:= FluidPowerAxis);

Verknüpfung MC3-Axis/PLC

3. Erstellen Sie das PLC-Projekt
→ Die Instanz des Tc3_Mc3FluidPower.MC_ValveCharacteristicCurve wird unter den PLC-Instanzen im Solution Explorer angezeigt.
Ventilkennlinie via PLC identifizieren 4:
4. Verknüpfen Sie die PLC-Instanz mit der Valve Characteristic Curve-Instanz der MC3.
Ventilkennlinie via PLC identifizieren 5:
5. Aktivieren Sie das TwinCAT-Projekt.