public void Update_Infos(Structures_Echange.Infos_Carte.Com_Reponse_Info infos) { try { //Maj position des servos Cartes_MultiFCt[infos.Numero_Carte - 1].GetComponentInChildren <servos>().Update_Servos_Position(infos.Position_Servos); //Maj position des AX12 Cartes_MultiFCt[infos.Numero_Carte - 1].GetComponentInChildren <AX12>().Update_AX12_Position(infos.Position_AX12); //Maj valeurs analogiques Cartes_MultiFCt[infos.Numero_Carte - 1].GetComponentInChildren <ADC>().Update_Mesures_Analogiques(infos.Mesures_Analogiques); //Tension Batterie Cartes_MultiFCt[infos.Numero_Carte - 1].GetComponentInChildren <ADC>().Update_VBat(((float)(infos.Tension_Batterie) / 100).ToString() + "V"); } catch { } }
private void Decodage_Infos_Cartes(Communication_Trame input_trame) { Structures_Echange.Infos_Carte info_carte = new Structures_Echange.Infos_Carte(); //Transforme la trame en Message utile Structures_Echange.Infos_Carte.Com_Reponse_Info received_message = info_carte.Trame_To_Data(input_trame); //La mise à jour de la position du Robot, est faite, uniquement par la carte numéro 1 if (received_message.Numero_Carte == 1) { //Mise à jour de la position du Robot switch (received_message.PositionRobot.Numero_Robot) { case Com_Position_Robot_Identification.Gros_Robot: if (Gros_Robot != null) { Gros_Robot.GetComponent <Robot_Position>().Real_Position.x = (float)(received_message.PositionRobot.Position_X) / 10 / 1000; Gros_Robot.GetComponent <Robot_Position>().Real_Position.y = (float)(received_message.PositionRobot.Position_Y) / 10 / 1000; Gros_Robot.GetComponent <Robot_Position>().Orientation = (float)(received_message.PositionRobot.Angle) / 100; } //Mise à jour des infos de la carte Carte_MultiFct_Tabs_Conteneur_GR.GetComponent <Cartes_MultiFct_Panel>().Update_Infos(received_message); break; case Com_Position_Robot_Identification.Petit_Robot: if (Petit_Robot != null) { Petit_Robot.GetComponent <Robot_Position>().Real_Position.x = (float)(received_message.PositionRobot.Position_X) / 10 / 1000; Petit_Robot.GetComponent <Robot_Position>().Real_Position.y = (float)(received_message.PositionRobot.Position_Y) / 10 / 1000; Petit_Robot.GetComponent <Robot_Position>().Orientation = (float)(received_message.PositionRobot.Angle) / 100; } //Mise à jour des infos de la carte Carte_MultiFct_Tabs_Conteneur_PR.GetComponent <Cartes_MultiFct_Panel>().Update_Infos(received_message); break; default: break; } } }