Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagecpp
 q_eStopIndicatorLightOut:= NOT q_eStopOutMachineRunAllowed;
g_ResetToSafety:=restartInButton;
g_AckToSafety:=restartInButton;
g_saveForceCalibrU:=restartInButton;
g_saveForceCalibrD:=restartInButton;
g_saveFinestrainCalibr:=restartInButton;
g_savePositionCalibr:=restartInButton;
    
IF restartInButton=TRUE AND q_eStopOutMachineRunAllowed=TRUE THEN
    g_AxleOnOut:=TRUE;
    MachineActive:=TRUE;
    MachineNotActive:=FALSE;    
END_IF
IF StopInButton=TRUE OR q_eStopOutMachineRunAllowed =FALSE THEN
    g_AxleOnOut:=FALSE;
    MachineActive:=FALSE;
    MachineNotActive:=TRUE;    
END_IF
IF q_eStopOutMachineRunAllowed=FALSE THEN
    MachineActive:=FALSE;
    MachineNotActive:=TRUE;    
END_IF
motorPowerOnOut:=g_AxleOnOut;//48V moottorille jännite
mcAxisEnable(
    Enable:=g_AxleOnOut,
    Enable_Positive:= TRUE,
    Enable_Negative:= TRUE,
    Override:= 100,
    Axis:= Axis);
(*nollataan akselin virhetila servon aktivoinnin nousevalla reunalla*)
fbReadErrorAxis(
    Reset:=restartInButton,
    Ax:=Axis,
    NC_Error=> ,
    NC_ErrorID=> ,
    Drive_Error=> ,
    Drive_ErrorID=>ErrorIdReadErrorAxis,
    Drive_ErrorText=> );
(*jos ollaan logiikan lukemalla rajalla ja halutaan pois, niin painetaan servon aktivointipainiketta ja
samanaikaisesti ajetaan käsiajolla pois rajalta*)
Axis.PlcToNc.ControlDWord:=AxisSetAcceptBlockedDriveSignal(Axis.PlcToNc.ControlDWord, restartInButton);