Programme carte strategie (disco)

Dependencies:   mbed SerialHalfDuplex SDFileSystem DISCO-F469NI_portrait liaison_Bluetooth ident_crac

Revision:
30:a1e37af4bbde
Parent:
29:41e02746041d
Child:
31:833fc481b002
diff -r 41e02746041d -r a1e37af4bbde Globals/ident_crac.h
--- a/Globals/ident_crac.h	Fri Apr 06 13:47:19 2018 +0000
+++ b/Globals/ident_crac.h	Fri Apr 20 09:16:13 2018 +0000
@@ -24,63 +24,66 @@
 #define ASSERVISSEMENT_CONFIG 0x022  // Asservissement paramètre  (définir les valeurs de vitesse max et d'eccélération max)
 #define ASSERVISSEMENT_ROTATION 0x023  // Asservissement rotation
 #define ASSERVISSEMENT_RECALAGE 0x024  // Moteur tout droit  (recalage : 0 mouvement seul, 1 x, 2y valeur : coordonnée à laquelle est recalé x/y; enchainement => 1 oui, 0 => non)
-
+#define ACTION_BIG_DEMARRAGE 0x025  // Action de départ du GR  (Lancement de la trajectoire de départ du GR)
 #define ODOMETRIE_BIG_POSITION 0x026  // Odométrie position robot  (Position actuel du robot)
 #define ODOMETRIE_BIG_VITESSE 0x027  // Odométrie vitesse  (Indication sur l'état actuel)
 #define ODOMETRIE_SMALL_POSITION 0x028  // Odométrie position robot  (Position actuel du robot)
 #define ODOMETRIE_SMALL_VITESSE 0x029  // Odométrie vitesse  (Indication sur l'état actuel)
-#define ACTION_BIG_DEMARRAGE 0x025  // Action de départ du GR  (Lancement de la trajectoire de départ du GR)
+
 
-#define ASSERVISSEMENT_INFO_CONSIGNE 0x1F0  // Info Consigne et Commande moteur
-#define ASSERVISSEMENT_CONFIG_KPP_DROITE 0x1F1  // Config coef KPP_Droit
-#define ASSERVISSEMENT_CONFIG_KPI_DROITE 0x1F2  // Config coef KPI_Droit
-#define ASSERVISSEMENT_CONFIG_KPD_DROITE 0x1F3  // Config coef KPD_Droit
-#define ASSERVISSEMENT_CONFIG_KPP_GAUCHE 0x1F4  // Config coef KPP_Gauche
-#define ASSERVISSEMENT_CONFIG_KPI_GAUCHE 0x1F5  // Config coef KPI_Gauche
-#define ASSERVISSEMENT_CONFIG_KPD_GAUCHE 0x1F6  // Config coef KPD_Gauche
-#define ASSERVISSEMENT_ENABLE 0x1F7  // Activation asservissement  (0 : désactivation, 1 : activation)
+
 #define ASSERVISSEMENT_CONFIG_DECEL 0x019 // Asservissement paramètre  (définir les valeurs de vitesse max et de decélération max)
 
+
+//////////////////////////////////////////////////////////RESETS///////////////////////////////////////////////////
 #define RESET_BALISE 0x030  // Reset balise
 #define RESET_MOTEUR 0x031  // Reset moteur
 #define RESET_IHM 0x032  // Reset écran tactile
 #define RESET_ACTIONNEURS 0x033  // Reset actionneurs
 #define RESET_POMPES 0x034  // Reset pompes
-#define RESET_AX12 0x035  // Reset AX12
+#define RESET_HERKULEX 0x035  // Reset HERKULEX
 #define RESET_TELEMETRE 0x036 // Reset telemetre
 
 
 
 #define RESET_STRAT 0x3A  // Reset stratégie
 
-
+//////////////////////////////////////////////////////////CHECK CARTES/////////////////////////////////////////////////
 #define CHECK_BALISE 0x060  // Check balise
 #define CHECK_MOTEUR 0x061  // Check moteur
 #define CHECK_IHM 0x062  // Check écran tactile
 #define CHECK_ACTIONNEURS_AVANT 0x063  // Check actionneurs
 #define CHECK_ACTIONNEURS_ARRIERE 0x064  // Check pompes
-#define CHECK_AX12 0x065  // Check AX12
+#define CHECK_HERKULEX 0x065  // Check HERKULEX
 #define CHECK_OK_TELEMETRE 0x066 // Check telemetre
 
-
+//////////////////////////////////////////////////////////ACK CARTES///////////////////////////////////////////////////
 #define ALIVE_BALISE 0x070  // Alive balise
 #define ALIVE_MOTEUR 0x071  // Alive moteur
 #define ALIVE_IHM 0x072  // Alive écran tactile
 #define ALIVE_ACTIONNEURS_AVANT 0x073  // Alive actionneurs
 #define ALIVE_ACTIONNEURS_ARRIERE 0x074  // Alive pompes
-#define ALIVE_AX12 0x075  // Alive AX12
+#define ALIVE_HERKULEX 0x075  // Alive HERKULEX
 #define ALIVE_TELEMETRE 0x076 // Alive telemetre
 
 
+/////////////////////////////////////////////////////ACTIONS COMPLEXES/////////////////////////////////////////////////
+#define MONTER_IMMEUBLE 0x090  // Monte l'immeuble selon un code couleur
+#define SERVO_HERKULEX_PROCESS 0x091  // HERKULEX processChange  (Lancer le déplacement des HERKULEX)
+#define SERVO_HERKULEX_DONE 0x092  // HERKULEX done  (Indique q'un HERKULEX a terminé son déplacement)
+#define SERVO_XL320 0x093  // XL320
+#define ACK_ACTION 0x99 //autre action possible via les herkulex, ne peut pas passer en sendrawid
 
 
+
+/////////////////////////////////////////////////////////ACKS////////////////////////////////////////////////////////////
 #define ACKNOWLEDGE_BALISE 0x100  // Acknowledge balise
 #define ACKNOWLEDGE_MOTEUR 0x101  // Acknowledge moteur
 #define ACKNOWLEDGE_IHM 0x102  // Acknowledge ecran tactile
 #define ACKNOWLEDGE_ACTIONNEURS 0x103  // Acknowledge actionneurs
 #define ACKNOWLEDGE_POMPES 0x104  // Acknowledge pompes
 #define ACKNOWLEDGE_TELEMETRE 0x105 // Acknowledge telemetre
-#define ACKNOWLEDGE_AX12 0x106 // Ack ax12
+#define ACKNOWLEDGE_HERKULEX 0x106 // Ack HERKUlEX
 #define ACKNOWLEDGE_STRAT 0x10A  // Acknowledge pompes
 #define ACKNOWLEDGE_CAMERA 0x108 //Acknowledge couleur caméra
 
@@ -89,26 +92,11 @@
 #define INSTRUCTION_END_MOTEUR 0x111  // Fin instruction moteur  (Indique que l'instruction est terminée)
 #define INSTRUCTION_END_IHM 0x112  // Fin instruction ecran tactile  (Indique que l'instruction est terminée)
 #define INSTRUCTION_END_ACTIONNEURS 0x113  // Fin instruction actionneurs  (Indique que l'instruction est terminée)
-#define INSTRUCTION_END_AX12 0x116
+#define INSTRUCTION_END_HERKULEX 0x116
+
 
-#define ECRAN_CHOICE_STRAT 0x601  // Choix d'une stratégie  (n° strat (1-4))
-#define ECRAN_CHOICE_COLOR 0x602  // Couleur  (0->Blue;1->Yellow)
-#define ECRAN_START_MATCH 0x603  // Match  (Indique que l'on souhaite commencer le match)
-#define ECRAN_DEMO_BEGIN 0x604 // Demo (Indique que l'on souhaite faire une demo)
-#define ECRAN_ACK_STRAT 0x611  // Acknowledge stratégie  (si 0 erreur, sinon n°strat)
-#define ECRAN_ACK_COLOR 0x612  // Acknowledge couleur  (0->Blue;1->Yellow)
-#define ECRAN_ACK_START_MATCH 0x613  // Acknowledge Match  (Indique que l'on a bien reçu le debut du match)
-#define ECRAN_ACK_DEMO 0x614
-#define ECRAN_ALL_CHECK 0x620  // Carte all check  (Si provient de carte strat => toutes les cartes sont en ligne, Si provient IHM => forcer le lancement)
-#define ECRAN_TIME 0x621  // Time match  (Indication de moment cle du temps (10,30,60,70,80,85,90))
-#define ECRAN_PRINTF_1 0x6C0  // Tactile printf  (Afficher les 8 permier caractères)
-#define ECRAN_PRINTF_2 0x6C1  // Tactile printf  (Afficher les 8 second caractères)
-#define ECRAN_PRINTF_3 0x6C2  // Tactile printf  (Afficher les 8 troisième caractères)
-#define ECRAN_PRINTF_4 0x6C3  // Tactile printf  (Afficher les 8 quatrième caractères)
-#define ECRAN_PRINTF_CLEAR 0x6CF  // Tactile printf clear  (Permet d'effacer l'ecran)
-#define ECRAN_CHOICE_START_ACTION 0x604  // Tactile printf clear  (Choisir si il faut lancer le test actionneur)
-#define ECRAN_ACK_CHOICE_START_ACTION 0x605  // Tactile printf clear  (Ack du test actionneur)
 
+/////////////////////////////////////////////////////////ERREURS////////////////////////////////////////////////////////
 #define ERROR_OVERFLOW_BALISE 0x040  // Overflow odométrie
 #define ERROR_OVERFLOW_MOTEUR 0x041  // Overflow asservissement
 #define ERROR_OVERFLOW_IHM 0x042  // Overflow balise
@@ -119,24 +107,75 @@
 #define ERROR_TELEMETRIE 0x788  // Bug télémètre
 #define ERROR_STRATEGIE 0x789  // Bug stratégie
 
+
+
+
+/////////////////////////////////////////////////ACTIONS SIMPLES DU ROBOT/////////////////////////////////////////////
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+#define BAISSER_ATTRAPE_BLOC 0x220
+#define RELEVER_ATTRAPE_BLOC 0x221
+
+#define BAISSER_ATTRAPE_BLOC_EXT_G 0x222
+#define RELEVER_ATTRAPE_BLOC_EXT_G 0x223
+
+#define BAISSER_ATTRAPE_BLOC_EXT_D 0x224
+#define RELEVER_ATTRAPE_BLOC_EXT_D 0x225
+
+#define BAISSER_ATTRAPE_BLOC_CENTRE_G 0x226
+#define RELEVER_ATTRAPE_BLOC_CENTRE_G 0x227
+
+#define BAISSER_ATTRAPE_BLOC_CENTRE_D 0x228
+#define RELEVER_ATTRAPE_BLOC_CENTRE_D 0x229
+
+#define BRAS_VENTOUSE_1 0x22A
+#define BRAS_VENTOUSE_2 0x22B
+
+#define BRAS_ABEILLE_UP 0x202
+#define BRAS_ABEILLE_DOWN 0x203
+#define INCLINAISON_CHATEAU 0x204
+#define INCLINAISON_EPURATION 0x205
+#define ALLUMER_PANNEAU_UP 0x206
+#define ALLUMER_PANNEAU_DOWN 0x207
+#define BLOCAGE_BALLE 0x208
+#define LANCEMENT_MOTEUR_TIR_ON 0x209
+#define LANCEMENT_MOTEUR_TIR_OFF 0x20A
+#define AIGUILLEUR_CENTRE 0x20B
+#define AIGUILLEUR_GAUCHE 0x20C
+#define AIGUILLEUR_DROITE 0x20D
+#define TRI_BALLE 0x20E
+
+///////////////////////////////////////////CAPTEURS///////////////////////////////////////////////////////////////////
+#define DATA_TELEMETRE 0x210        // Demande sa valeur à un télémètre parmis les 
+#define RECEPTION_DATA 0x211        // envoi de la valeur d'un des télémètres
+#define TELEMETRE_OBJET 0x212
+#define OBJET_SUR_TABLE 0x213
+#define RECEPTION_RECALAGE 0x215    //Valeur des télémètres 
+#define DATA_RECALAGE 0x216         //Demande de la valeur de tous les télémètres afin de procèder au récalage
+#define LIRE_PANNEAU 0x217
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+///////////////////////////////////////////////////ENVOI DE PARAMETRES//////////////////////////////////////////////////
+#define CHOICE_COLOR 0x602  // Couleur  (0->VERT;1->ORANGE)
+#define RECEPTION_COULEUR 0x603 //Code Couleur
+#define ECRAN_ALL_CHECK 0x620  // Carte all check  (Si provient de carte strat => toutes les cartes sont en ligne, Si provient IHM => forcer le lancement)
+
+///////////////////////////////////////////////////////////DEBUGS///////////////////////////////////////////////////////
 #define DEBUG_STRATEGIE_AUTOMATE 0x760  // Etat automate stratégie  (Permet de savoir l'etat de l'automate)
 #define DEBUG_FAKE_JAKE 0x761  // Fake jack  (Permet d'outre passerr le JACk du robot)
 #define DEBUG_ASSERV 0x762  // Info debug carte moteur
 
-#define SERVO_AX12_SETGOAL 0x090  // AX12 setGoal  (Indiquer la nouvelle position de l'AX12 !! Ne bouge pas)
-#define SERVO_AX12_PROCESS 0x091  // AX12 processChange  (Lancer le déplacement des AX12)
-#define SERVO_AX12_DONE 0x092  // AX12 done  (Indique q'un AX12 a terminé son déplacement)
-#define SERVO_XL320 0x093  // XL320
-#define SERVO_AX12_ACTION 0x96
 
 
-#define TELEMETRE_RECHERCHE_COIN 0x301
-#define TELEMETRE_OBJET 0x302
-#define OBJET_SUR_TABLE 0x304
-
 #define POMPE_PWM 0x9A  // pwm des pompes  (pwm entre 0 et 100)
 
 
-//////0x400 Plage de la caméra/////
-#define RECEPTION_COULEUR 0x401    
+#define ASSERVISSEMENT_INFO_CONSIGNE 0x1F0  // Info Consigne et Commande moteur
+#define ASSERVISSEMENT_CONFIG_KPP_DROITE 0x1F1  // Config coef KPP_Droit
+#define ASSERVISSEMENT_CONFIG_KPI_DROITE 0x1F2  // Config coef KPI_Droit
+#define ASSERVISSEMENT_CONFIG_KPD_DROITE 0x1F3  // Config coef KPD_Droit
+#define ASSERVISSEMENT_CONFIG_KPP_GAUCHE 0x1F4  // Config coef KPP_Gauche
+#define ASSERVISSEMENT_CONFIG_KPI_GAUCHE 0x1F5  // Config coef KPI_Gauche
+#define ASSERVISSEMENT_CONFIG_KPD_GAUCHE 0x1F6  // Config coef KPD_Gauche
+#define ASSERVISSEMENT_ENABLE 0x1F7  // Activation asservissement  (0 : désactivation, 1 : activation)
+    
 #endif