1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | -----------------------------------------------------------------------------------------------------*) Activation_BUS_CAN_HYDAC( xEnable:= Activation_CAN_HYDAC, xError=> Error_BUS_CAN, eDiagInfo=> Retour_Para_CAN_HYDAC, eChannel:= Channel_CAN_HYDAC, eBaudrate:= 250); Fonction: Consigne de braquage 1 => braquage gauche 2 => braquage droite IF (signe_consigne_angle_braquage = 1) THEN TAB_TRANSMIT_HYDAC[0].2 := 1; TAB_TRANSMIT_HYDAC[0].3 := 0; ELSIF (signe_consigne_angle_braquage = 2) THEN TAB_TRANSMIT_HYDAC[0].2 := 0; TAB_TRANSMIT_HYDAC[0].3 := 1; TAB_TRANSMIT_HYDAC[0].3 := 0; TAB_TRANSMIT_HYDAC[0].2 := 0; TAB_TRANSMIT_HYDAC[0].3 := 0; Fonction: Demande de calibration IF (demande_calibration = 1) THEN TAB_TRANSMIT_HYDAC[0].4 := 1; TAB_TRANSMIT_HYDAC[0].5 := 0; ELSIF (demande_calibration = 2) THEN TAB_TRANSMIT_HYDAC[0].4 := 0; TAB_TRANSMIT_HYDAC[0].5 := 1; TAB_TRANSMIT_HYDAC[0].4 := 0; TAB_TRANSMIT_HYDAC[0].5 := 0; Fonction: Validation point de calibration IF (demande_validation_calibration = 1) THEN TAB_TRANSMIT_HYDAC[0].6 := 1; TAB_TRANSMIT_HYDAC[0].7 := 0; ELSIF (demande_validation_calibration = 2) THEN TAB_TRANSMIT_HYDAC[0].6 := 0; TAB_TRANSMIT_HYDAC[0].7 := 1; ELSE END_IF TAB_TRANSMIT_HYDAC[1].0 := 1; TAB_TRANSMIT_HYDAC[1].1 := 0; TAB_TRANSMIT_HYDAC[1].0 := 0; TAB_TRANSMIT_HYDAC[1].1 := 1; END_IF Fonction: Ecriture de la consigne de braquage TAB_TRANSMIT_HYDAC[2] := WORD_TO_BYTE(consigne_braquage); TAB_TRANSMIT_HYDAC[5] := WORD_TO_BYTE(SHR(valeur_absolu_vitesse,8)); Fonction: Cadencement de la trame |