ajout module_mouvement

Dependencies:   mbed xbee_lib ADXL345_I2C IMUfilter ITG3200 Motor RangeFinder Servo mbos PID

Fork of Labo_TRSE_Drone by HERBERT Nicolas

Committer:
arnaudsuire
Date:
Wed Feb 26 08:47:14 2014 +0000
Revision:
38:7ab036d94678
Parent:
34:acc8ea8694b4
arnaud

Who changed what in which revision?

UserRevisionLine numberNew contents of line
NicolasH 14:ca1bcc05e423 1 /* Copyright (c) 2012 - 2013 AUTHEUR
NicolasH 14:ca1bcc05e423 2 *
NicolasH 14:ca1bcc05e423 3 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
NicolasH 14:ca1bcc05e423 4 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
NicolasH 14:ca1bcc05e423 5 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
NicolasH 14:ca1bcc05e423 6 * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
NicolasH 14:ca1bcc05e423 7 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
NicolasH 14:ca1bcc05e423 8 * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
NicolasH 14:ca1bcc05e423 9 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
NicolasH 14:ca1bcc05e423 10 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
NicolasH 14:ca1bcc05e423 11 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
NicolasH 14:ca1bcc05e423 12 */
NicolasH 14:ca1bcc05e423 13
NicolasH 14:ca1bcc05e423 14 /*
NicolasH 14:ca1bcc05e423 15 * Description
NicolasH 14:ca1bcc05e423 16 * Input
NicolasH 14:ca1bcc05e423 17 * Output
NicolasH 14:ca1bcc05e423 18 */
NicolasH 14:ca1bcc05e423 19
NicolasH 14:ca1bcc05e423 20 #ifndef MODULE_MOUVEMENT_H
NicolasH 14:ca1bcc05e423 21 #define MODULE_MOUVEMENT_H
NicolasH 14:ca1bcc05e423 22
NicolasH 14:ca1bcc05e423 23 #include "mbos.h"
arnaudsuire 34:acc8ea8694b4 24 #include "Service.h"
arnaudsuire 34:acc8ea8694b4 25 #include "mbed.h"
arnaudsuire 34:acc8ea8694b4 26
arnaudsuire 34:acc8ea8694b4 27
NicolasH 14:ca1bcc05e423 28
NicolasH 14:ca1bcc05e423 29 class ModuleMouvement
NicolasH 14:ca1bcc05e423 30 {
NicolasH 14:ca1bcc05e423 31 private :
NicolasH 14:ca1bcc05e423 32 /* ATTRIBUTS */
arnaudsuire 34:acc8ea8694b4 33 PwmOut * m_motor1;
arnaudsuire 34:acc8ea8694b4 34 PwmOut * m_motor2;
arnaudsuire 34:acc8ea8694b4 35 PwmOut * m_motor3;
arnaudsuire 34:acc8ea8694b4 36 PwmOut * m_motor4;
arnaudsuire 34:acc8ea8694b4 37
arnaudsuire 34:acc8ea8694b4 38
arnaudsuire 34:acc8ea8694b4 39 /*Parametres*/
arnaudsuire 34:acc8ea8694b4 40 int pVitesseFonctionnement;
arnaudsuire 34:acc8ea8694b4 41 /*commande*/
arnaudsuire 34:acc8ea8694b4 42 int m_uiCommand;
arnaudsuire 34:acc8ea8694b4 43 float m_uiDistance;
arnaudsuire 34:acc8ea8694b4 44
NicolasH 14:ca1bcc05e423 45
NicolasH 14:ca1bcc05e423 46 public :
arnaudsuire 34:acc8ea8694b4 47
arnaudsuire 34:acc8ea8694b4 48 /* Get param*/
arnaudsuire 34:acc8ea8694b4 49 int GetpVitesseFonctionnement();
arnaudsuire 34:acc8ea8694b4 50 int GetuiCommand();
arnaudsuire 34:acc8ea8694b4 51 float GetuiDistance();
arnaudsuire 34:acc8ea8694b4 52
arnaudsuire 34:acc8ea8694b4 53
arnaudsuire 34:acc8ea8694b4 54
arnaudsuire 34:acc8ea8694b4 55 /*Set param*/
arnaudsuire 34:acc8ea8694b4 56 void SetpVitesseFonctionnement(int);
arnaudsuire 34:acc8ea8694b4 57 void SetuiCommand(int);
arnaudsuire 34:acc8ea8694b4 58 void SetuiDistance(float);
arnaudsuire 34:acc8ea8694b4 59
NicolasH 14:ca1bcc05e423 60 /* CONSTRUCTEUR(S) */
NicolasH 14:ca1bcc05e423 61 ModuleMouvement();
arnaudsuire 34:acc8ea8694b4 62 //faut-il un constructeur pour initialiser les moteur (vol stationnaire à l'allumage de 20cm)?
NicolasH 14:ca1bcc05e423 63
NicolasH 14:ca1bcc05e423 64 /* DESTRUCTEUR */
NicolasH 14:ca1bcc05e423 65 ~ModuleMouvement();
NicolasH 14:ca1bcc05e423 66
NicolasH 14:ca1bcc05e423 67 /* METHODES */
NicolasH 14:ca1bcc05e423 68 /* Point d'entrée de la tache du Module Mouvement */
NicolasH 14:ca1bcc05e423 69 void ModuleMouvement_Task(void);
arnaudsuire 34:acc8ea8694b4 70 void GestionVitesseMotors(int m_uiCommand, float m_uiDistance);
arnaudsuire 34:acc8ea8694b4 71 void GestionStabilisation(void);
arnaudsuire 34:acc8ea8694b4 72 void VolStationnaire(void);
arnaudsuire 34:acc8ea8694b4 73 void TestMotor(void);
arnaudsuire 34:acc8ea8694b4 74 void InitMotor(void);
arnaudsuire 34:acc8ea8694b4 75 void DeconnexionMotor(void);
NicolasH 14:ca1bcc05e423 76
NicolasH 14:ca1bcc05e423 77 /* FONCTIONS */
NicolasH 14:ca1bcc05e423 78
NicolasH 14:ca1bcc05e423 79 };
NicolasH 14:ca1bcc05e423 80
NicolasH 14:ca1bcc05e423 81 #endif