FUNCTION FC40 : VOID

VAR_INPUT
    chariotNumero: INT;
    section: INT;
    capteurRack: BOOL;
END_VAR
//vérifie et corrige si un Chariot X est bien en section Y et en position 0 de cette dernière
IF chariotNumero < 10 AND chariotNumero > 0 THEN
    IF "GestionChariotDB".chariot[chariotNumero,0]= section AND "GestionChariotDB".chariot[chariotNumero,2]= 0 THEN // gestion conflit de position 
        GestionConflitPosition(chariotNumero:= chariotNumero, section:=section);
    ELSE // changement de la position dans la file et section si erreur
        CorrectionChariot(section:=section ,chariot:= chariotNumero);
    END_IF;
    IF capteurRack AND "GestionChariotDB".chariot[chariotNumero,1]< 1 THEN // correction presence rack
        "GestionChariotDB".chariot[chariotNumero,1]:= 1;
    END_IF;
    IF NOT capteurRack AND ("GestionChariotDB".chariot[chariotNumero,1]= 1 OR "GestionChariotDB".chariot[chariotNumero,1]= 2) THEN
        "GestionChariotDB".chariot[chariotNumero,1]:= 0;
    END_IF;
END_IF;

END_FUNCTION
