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 Apr 17 10:10:51 2013 +0000
Revision:
29:f8bda24002f6
Parent:
15:793cf784dc7a
Child:
30:8374d1017296
test motor

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 29:f8bda24002f6 24 #include "Service.h"
arnaudsuire 29:f8bda24002f6 25 #include "Motor.h"
NicolasH 14:ca1bcc05e423 26
NicolasH 14:ca1bcc05e423 27 class ModuleMouvement
NicolasH 14:ca1bcc05e423 28 {
NicolasH 14:ca1bcc05e423 29 private :
NicolasH 14:ca1bcc05e423 30 /* ATTRIBUTS */
arnaudsuire 29:f8bda24002f6 31 Motor * m_motor1;
arnaudsuire 29:f8bda24002f6 32 Motor * m_motor2;
arnaudsuire 29:f8bda24002f6 33 Motor * m_motor3;
arnaudsuire 29:f8bda24002f6 34 Motor * m_motor4;
arnaudsuire 29:f8bda24002f6 35
arnaudsuire 29:f8bda24002f6 36 /*Parametres*/
arnaudsuire 29:f8bda24002f6 37 int pVitesseFonctionnement;
arnaudsuire 29:f8bda24002f6 38 /*commande*/
arnaudsuire 29:f8bda24002f6 39 int m_uiCommand;
arnaudsuire 29:f8bda24002f6 40 int m_uiDistance;
arnaudsuire 29:f8bda24002f6 41
NicolasH 14:ca1bcc05e423 42
NicolasH 14:ca1bcc05e423 43 public :
arnaudsuire 29:f8bda24002f6 44
arnaudsuire 29:f8bda24002f6 45 /* Get param*/
arnaudsuire 29:f8bda24002f6 46 int GetpVitesseFonctionnement();
arnaudsuire 29:f8bda24002f6 47 int GetuiCommand();
arnaudsuire 29:f8bda24002f6 48 int GetuiDistance();
arnaudsuire 29:f8bda24002f6 49
arnaudsuire 29:f8bda24002f6 50 /*Set param*/
arnaudsuire 29:f8bda24002f6 51 void SetpVitesseFonctionnement(int);
arnaudsuire 29:f8bda24002f6 52 void SetuiCommand(int);
arnaudsuire 29:f8bda24002f6 53 void SetuiDistance(int);
arnaudsuire 29:f8bda24002f6 54
NicolasH 14:ca1bcc05e423 55 /* CONSTRUCTEUR(S) */
NicolasH 14:ca1bcc05e423 56 ModuleMouvement();
arnaudsuire 29:f8bda24002f6 57 //faut-il un constructeur pour initialiser les moteur (vol stationnaire à l'allumage de 20cm)?
NicolasH 14:ca1bcc05e423 58
NicolasH 14:ca1bcc05e423 59 /* DESTRUCTEUR */
NicolasH 14:ca1bcc05e423 60 ~ModuleMouvement();
NicolasH 14:ca1bcc05e423 61
NicolasH 14:ca1bcc05e423 62 /* METHODES */
NicolasH 14:ca1bcc05e423 63 /* Point d'entrée de la tache du Module Mouvement */
NicolasH 14:ca1bcc05e423 64 void ModuleMouvement_Task(void);
arnaudsuire 29:f8bda24002f6 65 void GestionVitesseMotors(int m_uiCommand, int m_uiDistance);
arnaudsuire 29:f8bda24002f6 66 void GestionStabilisation(void);
arnaudsuire 29:f8bda24002f6 67 void VolStationnaire(void);
arnaudsuire 29:f8bda24002f6 68 void TestMotor(void);
NicolasH 14:ca1bcc05e423 69
NicolasH 14:ca1bcc05e423 70 /* FONCTIONS */
NicolasH 14:ca1bcc05e423 71
NicolasH 14:ca1bcc05e423 72 };
NicolasH 14:ca1bcc05e423 73
NicolasH 14:ca1bcc05e423 74 #endif