code de start qui marche a la fin du premier match, base pour la suite

Fork of CRAC-Strat_2017_homologation_petit_rob by CRAC Team

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Asservissement.h Source File

Asservissement.h

00001 #ifndef CRAC_ASSERVISSEMENT
00002 #define CRAC_ASSERVISSEMENT
00003 
00004 #include "global.h"
00005 
00006 /*********************************************************************************************************/
00007 /* FUNCTION NAME: SendRawId                                                                              */
00008 /* DESCRIPTION  : Envoie un message sans donnée, c'est-à-dire contenant uniquement un ID, sur le bus CAN */
00009 /*********************************************************************************************************/
00010 void SendRawId (unsigned short id);
00011 
00012 /*********************************************************************************************/
00013 /* FUNCTION NAME: SendAck                                                                    */
00014 /* DESCRIPTION  : Envoyer un acknowledge                                                     */
00015 /*********************************************************************************************/
00016 void SendAck(unsigned short id, unsigned short from);
00017 
00018 /*********************************************************************************************/
00019 /* FUNCTION NAME: GoToPosition                                                               */
00020 /* DESCRIPTION  : Transmission CAN correspondant à un asservissement en position (x,y,theta) */
00021 /*********************************************************************************************/
00022 
00023 void GoToPosition (unsigned short x,unsigned short y,signed short theta,signed char sens);
00024 
00025 /****************************************************************************************/
00026 /* FUNCTION NAME: Rotate                                                                */
00027 /* DESCRIPTION  : Transmission CAN correspondant à une rotation                         */
00028 /****************************************************************************************/
00029 
00030 void Rotate (signed short angle);
00031 
00032 /*********************************************************************************************/
00033 /* FUNCTION NAME: GoStraight                                                                 */
00034 /* DESCRIPTION  : Transmission CAN correspondant à une ligne droite, avec ou sans recalage   */
00035 /*  recalage : 0 => pas de recalage                                                          */
00036 /*             1 => recalage en X                                                            */
00037 /*             2 => Recalage en Y                                                            */
00038 /*  newValue : Uniquement en cas de recalage, indique la nouvelle valeur de l'odo            */
00039 /*  isEnchainement : Indique si il faut executer l'instruction en enchainement               */
00040 /*                   0 => non                                                                */
00041 /*                   1 => oui                                                                */
00042 /*                   2 => dernière instruction de l'enchainement                             */
00043 /*********************************************************************************************/
00044 void GoStraight (signed short distance,unsigned char recalage, unsigned short newValue, unsigned char isEnchainement);
00045 
00046 /********************************************************************************************/
00047 /* FUNCTION NAME: BendRadius                                                                */
00048 /* DESCRIPTION  : Transmission CAN correspondant à un rayon de courbure                     */
00049 /********************************************************************************************/
00050 void BendRadius (unsigned short rayon,signed short angle,signed char sens, unsigned char enchainement);
00051 
00052 void SetOdometrie (unsigned short canId, unsigned short x,unsigned short y,signed short theta);
00053 
00054 /****************************************************************************************/
00055 /* FUNCTION NAME: setAsservissementEtat                                                 */
00056 /* DESCRIPTION  : Activer ou désactiver l'asservissement                                */
00057 /****************************************************************************************/
00058 void setAsservissementEtat(unsigned char enable);
00059 
00060 /****************************************************************************************/
00061 /* FUNCTION NAME: SendSpeed                                                             */
00062 /* DESCRIPTION  : Envoie un asservissement paramètre retournant à une vitesse           */
00063 /****************************************************************************************/
00064 void SendSpeed (unsigned short vitesse, unsigned short acceleration);
00065 #endif