Home

 

Erfahrung

 

Referenzen

 

Sondermaschinen

 

MSR-Maschinen

 

SPS-Programmierung

 

Visualisierung HMI

 

Elektro CAD

 

Leistungsprofil

 

Personalia

 

SW-Development

 

Dokumentation

 

 

 

Impressum & DSGVO

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

FB38 MAM P01 : P01 Manual operation mode

 

 

 

Network 1: Winder_Control - enable

IF #ST_MANU AND NOT #SUPPORT_SEQ THEN

    IF "DI OUT P01".Winder_Control.Speeding_Up_Done THEN

        IF "DI OUT P01".Winder_Control.Web.Master_Work_Velocity < 200.0 AND "HMI KEY".P01.Winder_Control.F2_WP AND "M00_Imp_1Hz" THEN

            "DI OUT P01".Winder_Control.Web.Master_Work_Velocity += 1.0;

        ELSIF "DI OUT P01".Winder_Control.Web.Master_Work_Velocity > 0.0 AND "HMI KEY".P01.Winder_Control.F1_HP AND "M00_Imp_1Hz" THEN

            "DI OUT P01".Winder_Control.Web.Master_Work_Velocity -= 1.0;

        END_IF;

    END_IF;

    IF "HMI KEY".P01.Winder_Control.F3_Jog_slow_WP AND NOT #Winder_Control.CmdExe_SSM_Mode THEN

        #Winder_Control.CmdExe_SSM_Mode := "HMI KEY".P01.Winder_Control.F12_Enable_WP;

    END_IF;

END_IF;

"HMI KEY".P01.Winder_Control.F12_Enable_WP :=

"DI MAIN GLB".M00.HomPosSR AND NOT ("DI MAIN P01".M00.FLT_ModuleStpSR OR "DI OUT P01".Winder_Control.Web.Master_Work_Velocity = 0.0)

AND "DI MAIN P01".M00.SEQ1_Busy;

IF NOT "HMI KEY".P01.Winder_Control.F12_Enable_WP OR "HMI KEY".P01.Winder_Control.F4_Jog_slow_HP OR "DI MAIN GLB".M00.TOF_CmpltMaOFF_Pulse.Q THEN

    #Winder_Control.CmdExe_SSM_Mode := FALSE;

END_IF;

 

 

 

Network 2: S120M Master line - enable

IF #ST_MANU AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.CmpltMaRun_Imp THEN

        #S120M.ManualVelocity_1 := "DI OUT P01".S120M.DRV.Support.SetVelo; // m/min

    ELSIF NOT #Winder_Control.CmdExe_SSM_Mode THEN

        // Assign velocity manual mode

        "DI OUT P01".S120M.DRV.Support.SetVelo := #S120M.ManualVelocity_1;

        // Jog fast WP (toggle function)

        IF "HMI KEY".P01.S120M.F19_Jog_fast_WP AND NOT #S120M.Jog_fast_WP_REg THEN

            #S120M.CmdExe_slow_fast_WP := NOT #S120M.CmdExe_slow_fast_WP AND "HMI KEY".P01.S120M.F12_Enable_WP;

            #S120M.CmdExe_slow_fast_HP := FALSE;

            // Jog fast HP (toggle function)

        ELSIF "HMI KEY".P01.S120M.F20_Jog_fast_HP AND NOT #S120M.Jog_fast_HP_REg THEN

            #S120M.CmdExe_slow_fast_HP := NOT #S120M.CmdExe_slow_fast_HP AND "HMI KEY".P01.S120M.F11_Enable_HP;

            #S120M.CmdExe_slow_fast_WP := FALSE;

        END_IF;

        // Jog fast WP/HP (Assigning rising edge)

        #S120M.Jog_fast_WP_REg := "HMI KEY".P01.S120M.F19_Jog_fast_WP;

        #S120M.Jog_fast_HP_REg := "HMI KEY".P01.S120M.F20_Jog_fast_HP;

    END_IF;

END_IF;

// Enable disable modulo operation towards HP

"HMI KEY".P01.S120M.F11_Enable_HP := "DI OUT P01".S120M.DRV.Support.InOperation AND NOT "DI OUT P01".S120M.Com_FLT;

// Enable disable modulo operation towards WP

"HMI KEY".P01.S120M.F12_Enable_WP := "DI OUT P01".S120M.DRV.Support.InOperation AND NOT "DI OUT P01".S120M.Com_FLT;

// HALT moving towards WP/HP

IF "DI OUT P01".S120M.HALT_01 OR #S120M.ManualVelocity_1 = 0.0 THEN

    #S120M.CmdExe_slow_fast_HP := #S120M.CmdExe_slow_fast_WP := FALSE;

END_IF;

 

 

 

Network 3: S120ReW ReWinder - enable

IF #ST_MANU AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.CmpltMaRun_Imp THEN

        #S120ReW.ManualVelocity_1 := "DI OUT P01".S120ReW.DRV.Support.SetVelo; // m/min

    ELSIF NOT #Winder_Control.CmdExe_SSM_Mode THEN

        "DI OUT P01".S120ReW.DRV.Support.SetVelo := #S120ReW.ManualVelocity_1;

        #S120ReW.CmdExe_slow_fast_WP := "HMI KEY".P01.S120ReW.F3_Jog_slow_WP AND "HMI KEY".P01.S120ReW.F12_Enable_WP AND NOT"HMI KEY".P01.S120ReW.F21_HALT;

        #S120ReW.CmdExe_slow_fast_HP := "HMI KEY".P01.S120ReW.F4_Jog_slow_HP AND "HMI KEY".P01.S120ReW."F11_Enable_HP" AND NOT"HMI KEY".P01.S120ReW.F21_HALT;

    END_IF;

END_IF;

// Enable disable modulo operation towards HP

"HMI KEY".P01.S120ReW.F11_Enable_HP := "DI OUT P01".S120ReW.DRV.Support.InOperation AND NOT "DI OUT P01".S120ReW.Com_FLT;

// Enable disable modulo operation towards WP

"HMI KEY".P01.S120ReW.F12_Enable_WP := "DI OUT P01".S120ReW.DRV.Support.InOperation AND NOT "DI OUT P01".S120ReW.Com_FLT;

// Reset MC_TorqueAdditive.Enable

IF "DI OUT P01".S120ReW.HALT_01 THEN

    "DI OUT P01".S120ReW.DRV.MC_TorqueAdditive.Enable := FALSE;

END_IF;

 

 

 

Network 4: S120UnW UnWinder - enable

IF #ST_MANU AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.CmpltMaRun_Imp THEN

        #S120ReW.ManualVelocity_1 := "DI OUT P01".S120ReW.DRV.Support.SetVelo; // m/min

    ELSIF NOT #Winder_Control.CmdExe_SSM_Mode THEN

        "DI OUT P01".S120ReW.DRV.Support.SetVelo := #S120ReW.ManualVelocity_1;

        #S120ReW.CmdExe_slow_fast_WP := "HMI KEY".P01.S120ReW.F3_Jog_slow_WP AND "HMI KEY".P01.S120ReW.F12_Enable_WP AND NOT"HMI KEY".P01.S120ReW.F21_HALT;

        #S120ReW.CmdExe_slow_fast_HP := "HMI KEY".P01.S120ReW.F4_Jog_slow_HP AND "HMI KEY".P01.S120ReW."F11_Enable_HP" AND NOT"HMI KEY".P01.S120ReW.F21_HALT;

    END_IF;

END_IF;

// Enable disable modulo operation towards HP

"HMI KEY".P01.S120ReW.F11_Enable_HP := "DI OUT P01".S120ReW.DRV.Support.InOperation AND NOT "DI OUT P01".S120ReW.Com_FLT;

// Enable disable modulo operation towards WP

"HMI KEY".P01.S120ReW.F12_Enable_WP := "DI OUT P01".S120ReW.DRV.Support.InOperation AND NOT "DI OUT P01".S120ReW.Com_FLT;

// Reset MC_TorqueAdditive.Enable

IF "DI OUT P01".S120ReW.HALT_01 THEN

    "DI OUT P01".S120ReW.DRV.MC_TorqueAdditive.Enable := FALSE;

END_IF;

 

 

 

Network 5: M100 Winder Turret Motor - enable

; // NOP;

 

 

 

Network 6: SpeedCntrl_PID - enable

"HMI KEY".P01.SpeedCntrl_PID.F12_Enable_WP := "DI MAIN GLB".M00.GLB_Estop AND NOT "DI OUT P01".SpeedCntrl_PID.Error;

IF NOT "HMI KEY".P01.SpeedCntrl_PID.F12_Enable_WP OR "DI MAIN GLB".M00.CmpltMaOFF_Imp THEN

    "DI OUT P01".SpeedCntrl_PID.ManualEnable := "DI OUT P01".SpeedCntrl_PID.ModeActivate := FALSE;

END_IF;

 

 

 

Network 7: Monitoring manual operation ***

IF NOT #ST_MANU THEN

    RETURN;

ELSIF #MODULE_HP AND NOT #Support.HomPos_REg THEN

    "DI MAIN P01".M00.Init := TRUE;

END_IF;

#Support.HomPos_REg := #MODULE_HP;

"DI MAIN P01".M00.TOF_ModuleOFF_Pulse(IN := NOT #SUPPORT_SEQ AND #Support.HomPos_FEg,

                                      PT := t#500ms);

#Support.HomPos_FEg := #SUPPORT_SEQ;

IF #SUPPORT_SEQ THEN

    RETURN;

END_IF;

 

 

 

Network 8: SpeedCntrl_PID - execute

IF "DI OUT P01".SpeedCntrl_PID.ManualEnable THEN

    "DI OUT P01".SpeedCntrl_PID.ManualValue := "DI OUT P01".SpeedCntrl_PID.Support.ManualValue;

    "DI OUT P01".SpeedCntrl_PID.Mode := 4;

END_IF;

IF "DI OUT P01".SpeedCntrl_PID.Reset THEN

    "DI OUT P01".SpeedCntrl_PID.ManualValue := 0;

ELSIF NOT "DI OUT P01".SpeedCntrl_PID.ManualEnable THEN

    ; // NOP

ELSIF "HMI KEY".P01.SpeedCntrl_PID.F2_WP AND "DI OUT P01".SpeedCntrl_PID.ManualValue < 100.0 AND "M00_Imp_10Hz" THEN

    "DI OUT P01".SpeedCntrl_PID.Support.ManualValue += 1;

ELSIF "HMI KEY".P01.SpeedCntrl_PID.F1_HP AND "DI OUT P01".SpeedCntrl_PID.ManualValue > 0.0 AND "M00_Imp_10Hz" THEN

    "DI OUT P01".SpeedCntrl_PID.Support.ManualValue -= 1;

END_IF;