homologation gros robot et test avec les ack de la carte a tout faire

Fork of CRAC-Strat_2017_HOMOLOGATION_PETIT_ROBOT by CRAC Team

Committer:
ClementBreteau
Date:
Thu May 25 06:36:48 2017 +0000
Revision:
21:7c60d6dfcab5
Parent:
18:cc5fec34ed9c
homologation gros robot avec test au niveau des ack

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ClementBreteau 16:7321fb3bb396 1 #ifndef CRAC_PERIPHERIQUES
ClementBreteau 16:7321fb3bb396 2 #define CRAC_PERIPHERIQUES
ClementBreteau 16:7321fb3bb396 3
ClementBreteau 16:7321fb3bb396 4 #include "global.h"
ClementBreteau 16:7321fb3bb396 5
ClementBreteau 16:7321fb3bb396 6 #define VITESSE 700
ClementBreteau 18:cc5fec34ed9c 7 #define TIME 0.01
ClementBreteau 18:cc5fec34ed9c 8 #define T_MOT 0.00005
ClementBreteau 16:7321fb3bb396 9
ClementBreteau 18:cc5fec34ed9c 10
ClementBreteau 18:cc5fec34ed9c 11 #define AX12_PINCE_CENTRALE_POSITION_INITIALE 1
ClementBreteau 18:cc5fec34ed9c 12 #define AX12_PINCE_CENTRALE_PREPARATION_PRISE 2
ClementBreteau 18:cc5fec34ed9c 13 #define AX12_PINCE_CENTRALE_PRISE_MODULE 3
ClementBreteau 18:cc5fec34ed9c 14 #define AX12_PINCE_CENTRALE_STOCKAGE_HAUT 4
ClementBreteau 18:cc5fec34ed9c 15 #define AX12_PINCE_CENTRALE_STOCKAGE_BAS 5
ClementBreteau 18:cc5fec34ed9c 16 #define AX12_PINCE_CENTRALE_PREPARATION_DEPOT 6
ClementBreteau 18:cc5fec34ed9c 17 #define AX12_PINCE_CENTRALE_DEPOSER 7
ClementBreteau 18:cc5fec34ed9c 18 #define AX12_PINCE_CENTRALE_DEPOT_HAUT 8
ClementBreteau 18:cc5fec34ed9c 19
ClementBreteau 18:cc5fec34ed9c 20 #define AX12_GAUCHE_CROC_OUVERT 11
ClementBreteau 18:cc5fec34ed9c 21 #define AX12_GAUCHE_CROC_FERME 12
ClementBreteau 18:cc5fec34ed9c 22 #define AX12_DROIT_CROC_INITIALE 13
ClementBreteau 18:cc5fec34ed9c 23
ClementBreteau 18:cc5fec34ed9c 24
ClementBreteau 18:cc5fec34ed9c 25 #define AX12_DROIT_CROC_OUVERT 14
ClementBreteau 18:cc5fec34ed9c 26 #define AX12_DROIT_CROC_FERME 15
ClementBreteau 18:cc5fec34ed9c 27 #define AX12_GAUCHE_CROC_INITIALE 16
ClementBreteau 18:cc5fec34ed9c 28
ClementBreteau 18:cc5fec34ed9c 29 #define AX12_TOURNANTE_GAUCHE_POSITION_INITIALE 21
ClementBreteau 18:cc5fec34ed9c 30 #define AX12_TOURNANTE_GAUCHE_PREPARATION 22
ClementBreteau 18:cc5fec34ed9c 31 #define AX12_TOURNANTE_GAUCHE_MODULE 23
ClementBreteau 18:cc5fec34ed9c 32
ClementBreteau 18:cc5fec34ed9c 33 #define AX12_TOURNANTE_DROIT_POSITION_INITIALE 24
ClementBreteau 18:cc5fec34ed9c 34 #define AX12_TOURNANTE_DROIT_PREPARATION 25
ClementBreteau 18:cc5fec34ed9c 35 #define AX12_TOURNANTE_DROIT_MODULE 26
ClementBreteau 18:cc5fec34ed9c 36
ClementBreteau 18:cc5fec34ed9c 37 #define AX12_POSITION 100
ClementBreteau 18:cc5fec34ed9c 38 #define AX12_DEFAUT 0
ClementBreteau 16:7321fb3bb396 39
ClementBreteau 18:cc5fec34ed9c 40 #define AX12_DOIGT 4
ClementBreteau 18:cc5fec34ed9c 41 #define AX12_BASE 5
ClementBreteau 18:cc5fec34ed9c 42 #define AX12_COUDE 6
ClementBreteau 18:cc5fec34ed9c 43 #define AX12_PINCEG 7
ClementBreteau 18:cc5fec34ed9c 44 #define AX12_PINCED 8
ClementBreteau 18:cc5fec34ed9c 45 #define AX12_GAUCHE_EPAULE 1
ClementBreteau 18:cc5fec34ed9c 46 #define AX12_GAUCHE_COUDE 2
ClementBreteau 18:cc5fec34ed9c 47 #define AX12_DROIT_EPAULE 9
ClementBreteau 18:cc5fec34ed9c 48 #define AX12_DROIT_COUDE 10
ClementBreteau 18:cc5fec34ed9c 49
ClementBreteau 18:cc5fec34ed9c 50 #define TOLERANCE_AX12 50
ClementBreteau 18:cc5fec34ed9c 51
ClementBreteau 18:cc5fec34ed9c 52 /* PROTOTYPES DE FONCTIONS ET POINTEURS */
ClementBreteau 18:cc5fec34ed9c 53
ClementBreteau 18:cc5fec34ed9c 54
ClementBreteau 18:cc5fec34ed9c 55
ClementBreteau 18:cc5fec34ed9c 56 /****************************************************************************************/
ClementBreteau 18:cc5fec34ed9c 57 /* FUNCTION NAME: Fin_action */
ClementBreteau 18:cc5fec34ed9c 58 /* DESCRIPTION : Fonction qui confirme la fin de mouvement des AX12 */
ClementBreteau 18:cc5fec34ed9c 59 /****************************************************************************************/
ClementBreteau 18:cc5fec34ed9c 60 void Fin_action(void);
ClementBreteau 16:7321fb3bb396 61
ClementBreteau 18:cc5fec34ed9c 62
ClementBreteau 18:cc5fec34ed9c 63 /****************************************************************************************/
ClementBreteau 18:cc5fec34ed9c 64 /* FUNCTION NAME: Initialisation_position */
ClementBreteau 18:cc5fec34ed9c 65 /* DESCRIPTION : Fonction qui place les bras en position verticale */
ClementBreteau 18:cc5fec34ed9c 66 /****************************************************************************************/
ClementBreteau 18:cc5fec34ed9c 67 void Initialisation_position(unsigned char choix);
ClementBreteau 16:7321fb3bb396 68
ClementBreteau 18:cc5fec34ed9c 69 void mvtBrasCentralPR(unsigned char ID1, unsigned short GSpeed1, unsigned short GPosition1,
ClementBreteau 18:cc5fec34ed9c 70 unsigned char ID2, unsigned short GSpeed2, unsigned short GPosition2,
ClementBreteau 18:cc5fec34ed9c 71 unsigned char ID3, unsigned short GSpeed3, unsigned short GPosition3,
ClementBreteau 18:cc5fec34ed9c 72 unsigned char ID4, unsigned short GSpeed4, unsigned short GPosition4,
ClementBreteau 18:cc5fec34ed9c 73 unsigned char ID5, unsigned short GSpeed5, unsigned short GPosition5);
ClementBreteau 18:cc5fec34ed9c 74
ClementBreteau 18:cc5fec34ed9c 75 void mvtBrasGauchePR(unsigned char ID1, unsigned short GSpeed1, unsigned short GPosition1,
ClementBreteau 18:cc5fec34ed9c 76 unsigned char ID2, unsigned short GSpeed2, unsigned short GPosition2);
ClementBreteau 18:cc5fec34ed9c 77
ClementBreteau 18:cc5fec34ed9c 78 void mvtBrasDroitPR(unsigned char ID1, unsigned short GSpeed1, unsigned short GPosition1,
ClementBreteau 18:cc5fec34ed9c 79 unsigned char ID2, unsigned short GSpeed2, unsigned short GPosition2);
ClementBreteau 18:cc5fec34ed9c 80
ClementBreteau 18:cc5fec34ed9c 81 void initialisation_AX12(void);
ClementBreteau 18:cc5fec34ed9c 82
ClementBreteau 18:cc5fec34ed9c 83 void AX12_automate(unsigned char etat_ax12);
ClementBreteau 16:7321fb3bb396 84
ClementBreteau 16:7321fb3bb396 85 /*********************************************************************************************************/
ClementBreteau 16:7321fb3bb396 86 /* FUNCTION NAME: moteurGauchePWM */
ClementBreteau 16:7321fb3bb396 87 /* DESCRIPTION : bouge le moteur gauche */
ClementBreteau 16:7321fb3bb396 88 /*********************************************************************************************************/
ClementBreteau 16:7321fb3bb396 89 void moteurGauchePWM(float pwm);
ClementBreteau 16:7321fb3bb396 90
ClementBreteau 16:7321fb3bb396 91 /*********************************************************************************************************/
ClementBreteau 16:7321fb3bb396 92 /* FUNCTION NAME: moteurDroitPWM */
ClementBreteau 16:7321fb3bb396 93 /* DESCRIPTION : bouge le moteur gauche */
ClementBreteau 16:7321fb3bb396 94 /*********************************************************************************************************/
ClementBreteau 16:7321fb3bb396 95 void moteurDroitPWM(float pwm);
ClementBreteau 16:7321fb3bb396 96
ClementBreteau 16:7321fb3bb396 97 /*********************************************************************************************************/
ClementBreteau 16:7321fb3bb396 98 /* FUNCTION NAME: initMoteurs */
ClementBreteau 16:7321fb3bb396 99 /* DESCRIPTION : init les moteurs des mains du petit robot */
ClementBreteau 16:7321fb3bb396 100 /*********************************************************************************************************/
ClementBreteau 16:7321fb3bb396 101 void initMoteurs(void);
ClementBreteau 16:7321fb3bb396 102
ClementBreteau 16:7321fb3bb396 103 /* PROTOTYPES DE FONCTIONS ET POINTEURS */
ClementBreteau 16:7321fb3bb396 104
ClementBreteau 16:7321fb3bb396 105 /****************************************************************************************/
ClementBreteau 16:7321fb3bb396 106 /* FUNCTION NAME: Tourner_module_gauche */
ClementBreteau 16:7321fb3bb396 107 /* DESCRIPTION : Fonction qui permet de tourner les modules a gauche */
ClementBreteau 16:7321fb3bb396 108 /****************************************************************************************/
ClementBreteau 16:7321fb3bb396 109 void Tourner_module_gauche(void);
ClementBreteau 16:7321fb3bb396 110
ClementBreteau 16:7321fb3bb396 111 /****************************************************************************************/
ClementBreteau 18:cc5fec34ed9c 112 /* FUNCTION NAME: Tourner_module_droit */
ClementBreteau 18:cc5fec34ed9c 113 /* DESCRIPTION : Fonction qui permet de tourner les modules a gauche */
ClementBreteau 16:7321fb3bb396 114 /****************************************************************************************/
ClementBreteau 18:cc5fec34ed9c 115 void Tourner_module_droit(void);
ClementBreteau 16:7321fb3bb396 116
ClementBreteau 16:7321fb3bb396 117
ClementBreteau 16:7321fb3bb396 118 bool dataCouleurGauche(void);
ClementBreteau 16:7321fb3bb396 119 bool dataCouleurDroit(void);
ClementBreteau 18:cc5fec34ed9c 120 unsigned short dataTelemetre(void);
ClementBreteau 16:7321fb3bb396 121 bool dataPressionGauche(void);
ClementBreteau 16:7321fb3bb396 122 bool dataPressionDroit(void);
ClementBreteau 16:7321fb3bb396 123
ClementBreteau 18:cc5fec34ed9c 124 #endif