![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
l
deplacement.h@8:f2425e4302fc, 2019-05-29 (annotated)
- Committer:
- GuillaumeCH
- Date:
- Wed May 29 06:34:17 2019 +0000
- Revision:
- 8:f2425e4302fc
- Parent:
- 7:6b15a1feed2d
mlmlml
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
GuillaumeCH | 2:3066e614372f | 1 | #ifndef DEPLACEMENT_H |
GuillaumeCH | 2:3066e614372f | 2 | #define DEPLACEMENT_H |
GuillaumeCH | 2:3066e614372f | 3 | |
JimmyAREM | 6:e1585b8bd07d | 4 | /** |
JimmyAREM | 6:e1585b8bd07d | 5 | **************************************************************************** |
JimmyAREM | 6:e1585b8bd07d | 6 | * @file deplacement.h |
JimmyAREM | 6:e1585b8bd07d | 7 | * @author Guillaume Chauvon && Corentin Courtot #l'assert |
JimmyAREM | 6:e1585b8bd07d | 8 | * @version V0.2.3 |
JimmyAREM | 6:e1585b8bd07d | 9 | * @date 22/05/2019 |
JimmyAREM | 6:e1585b8bd07d | 10 | * @brief Implementation file for the deplacement of the robot |
JimmyAREM | 6:e1585b8bd07d | 11 | **************************************************************************** |
JimmyAREM | 6:e1585b8bd07d | 12 | *This software has been developed to be used in AREM's robot for the cdfr 2019 |
JimmyAREM | 6:e1585b8bd07d | 13 | **/ |
JimmyAREM | 6:e1585b8bd07d | 14 | |
JimmyAREM | 6:e1585b8bd07d | 15 | /* Includes ------------------------------------------------------------------*/ |
JimmyAREM | 6:e1585b8bd07d | 16 | |
JimmyAREM | 6:e1585b8bd07d | 17 | |
JimmyAREM | 6:e1585b8bd07d | 18 | #include "BrasPousser.h" |
JimmyAREM | 7:6b15a1feed2d | 19 | #include "Pompe.h" |
JimmyAREM | 6:e1585b8bd07d | 20 | |
JimmyAREM | 6:e1585b8bd07d | 21 | /* Constants -------------------------------------------------------------------*/ |
JimmyAREM | 6:e1585b8bd07d | 22 | |
JimmyAREM | 6:e1585b8bd07d | 23 | #define A_GAUCHE 1 |
JimmyAREM | 6:e1585b8bd07d | 24 | #define A_DROITE 0 |
GuillaumeCH | 2:3066e614372f | 25 | #define TAILLE_TAB 250 |
JimmyAREM | 6:e1585b8bd07d | 26 | |
JimmyAREM | 6:e1585b8bd07d | 27 | /* structures-----------------------------------------------------------------------*/ |
JimmyAREM | 6:e1585b8bd07d | 28 | |
GuillaumeCH | 4:eac6746544fb | 29 | struct Coordonnees |
GuillaumeCH | 4:eac6746544fb | 30 | { |
GuillaumeCH | 4:eac6746544fb | 31 | double x; |
GuillaumeCH | 4:eac6746544fb | 32 | double y; |
GuillaumeCH | 4:eac6746544fb | 33 | }; |
JimmyAREM | 6:e1585b8bd07d | 34 | |
JimmyAREM | 6:e1585b8bd07d | 35 | |
JimmyAREM | 6:e1585b8bd07d | 36 | |
JimmyAREM | 6:e1585b8bd07d | 37 | /* Class BrasPousser ------------------------------------------------------------------*/ |
JimmyAREM | 6:e1585b8bd07d | 38 | |
GuillaumeCH | 2:3066e614372f | 39 | class deplacement{ |
GuillaumeCH | 2:3066e614372f | 40 | public: |
GuillaumeCH | 2:3066e614372f | 41 | deplacement(); |
GuillaumeCH | 3:d38aa400d5e7 | 42 | void initialisation(void);//init |
GuillaumeCH | 3:d38aa400d5e7 | 43 | |
GuillaumeCH | 3:d38aa400d5e7 | 44 | void rotation_rel(double angle_vise); // rotation relative angle positif pour tourner vers la gauche |
GuillaumeCH | 3:d38aa400d5e7 | 45 | void rotation_abs(double angle_vise); //rotation absolue du robot |
JimmyAREM | 6:e1585b8bd07d | 46 | void rotation_rel_pente(double angle_vise); |
JimmyAREM | 6:e1585b8bd07d | 47 | void rotation_abs_pente(double angle_vise); |
GuillaumeCH | 3:d38aa400d5e7 | 48 | |
GuillaumeCH | 3:d38aa400d5e7 | 49 | void commande_vitesse(float vitesse_G, float vitesse_D); //set_PWM avec des vitesses flottantes. |
GuillaumeCH | 3:d38aa400d5e7 | 50 | |
GuillaumeCH | 3:d38aa400d5e7 | 51 | void vitesse_nulle_D(int zero); //coupe moteur droit |
GuillaumeCH | 3:d38aa400d5e7 | 52 | void vitesse_nulle_G(int zero); //coupe moteur gauche |
JimmyAREM | 6:e1585b8bd07d | 53 | void arreterRobot(); |
GuillaumeCH | 3:d38aa400d5e7 | 54 | void marche_arriere(int distance); // ligne droite en marche arriere, argument entier NEGATIF |
JimmyAREM | 6:e1585b8bd07d | 55 | void ligne_droite_basique(long int distance); // ligne droite en marche avant, argument entier POSITIF |
JimmyAREM | 6:e1585b8bd07d | 56 | |
JimmyAREM | 6:e1585b8bd07d | 57 | void ligne_droite(long int distance, double x, double y, double cap); |
GuillaumeCH | 3:d38aa400d5e7 | 58 | |
GuillaumeCH | 8:f2425e4302fc | 59 | |
JimmyAREM | 5:3638d7e7c5c1 | 60 | |
JimmyAREM | 5:3638d7e7c5c1 | 61 | void poussette(float temps); // set PWM 150 pendant 1.5s |
JimmyAREM | 6:e1585b8bd07d | 62 | void arc(Coordonnees p1, Coordonnees p2, int sens);//p2 point final p1 point intermediaire |
GuillaumeCH | 4:eac6746544fb | 63 | int cercle(Coordonnees a,Coordonnees b, Coordonnees c); |
GuillaumeCH | 4:eac6746544fb | 64 | double int_ext_cercle(double x, double y); |
GuillaumeCH | 4:eac6746544fb | 65 | void va_au_point(double x,double y, double cap); |
GuillaumeCH | 4:eac6746544fb | 66 | double recup_angle_entre_trois_points_213(double x1,double y1,double x2,double y2,double x3,double y3); |
JimmyAREM | 6:e1585b8bd07d | 67 | void pente(long int distance, float vitesse, double angle_a_tourner); |
GuillaumeCH | 8:f2425e4302fc | 68 | void pente_combo(double angle_pente, BrasPousser brasPousserGauche, BrasPousser brasPousserDroit, Pompe pompe); |
JimmyAREM | 6:e1585b8bd07d | 69 | |
JimmyAREM | 6:e1585b8bd07d | 70 | void evitement(double x, double y, double cap); |
GuillaumeCH | 2:3066e614372f | 71 | |
GuillaumeCH | 2:3066e614372f | 72 | private: |
GuillaumeCH | 4:eac6746544fb | 73 | double point[3]; |
GuillaumeCH | 2:3066e614372f | 74 | }; |
GuillaumeCH | 2:3066e614372f | 75 | |
JimmyAREM | 5:3638d7e7c5c1 | 76 | Coordonnees pointIntermediaire(); |
JimmyAREM | 5:3638d7e7c5c1 | 77 | Coordonnees pointFinale(); |
GuillaumeCH | 2:3066e614372f | 78 | #endif |