DOF6 - ArduIMU - Gyroscopes, Accéléromètres, GPS...

Bonjour,

Je cherche des capteurs d'orientation/positionnement pour mener à bien mon projet d'Autopilot pour avion RC.
A savoir que j'ai déjà prototypé la partie RC, qui fonctionnera a terme, sur Arduino Pro Mini ou Nano.

Au niveau des capteurs, je suis partagé entre 2 orientations :

1) Des capteurs indépendants

  • L'équivalent d'un niveau à bulle (qui ne serait pas gêné par la vitesse) servirait à maintenir l'avion à plat
  • Quelque chose de plus complexe pour garder l'altitude (basé sur un variomètre ou un capteur ultra-son)
  • Je ne suis pas dépendant d'un système complexe et le coût sera limité
  • Interfacer plusieurs capteurs va consommer des ressources de l'Arduino

2) Un véritable IMU

Pour l'instant je m'oriente plutôt vers un ArduIMU, c'est à base de ATMega 328P donc on reste dans le bain... mais c'est un peu chère et il faut rajouter un GPS (ou magnétomètre) pour que ça fonctionne...
Je peux imaginer essayer d'ajouter mon code RC dans le 328P de l'ArduIMU ou faire communiquer les 2 ATMega par I2C, c'est prévu pour.

  • C'est précis et déjà "filtré" (Kalman, Fusion...)
  • J'ai plus d'info que nécessaire, c'est évolutif (position GPS, possibilité de capteur barométrique...)
  • C'est chère !!
  • Il faudra peut-être calibrer avant chaque vol

Je peux aussi patir sur une solution de type 6DOF qui pourrait être plus économique, mais il me faudra filtrer les données (Kalman, Fusion...)

Tout retour d'experience sur ce genre de capteur est évidamment le bienvenu ! :wink:

Sev

Ou un Nunchuck+Wii Motion Plus :roll_eyes:

Toute expérience Gyro/Accéléro avec Arduino est la bienvenue sur ce post :smiley:

Sev

UniseV:
Tout retour d'experience sur ce genre de capteur est évidamment le bienvenu ! :wink:

Sev

Bonjour
lu
reflexions en vrac
pour faire du contrôle automatisé d'attitude de vol, il faut déjà à minima passer par un IRU (accelero/gyro), ou mieux par un ADIRU.
mais déjà quelque soit la solution envisagée , cela passe toujours avant take off par une phase de calage et stabilisation.

en aéronautique réelle cela prend du temps entre la mise ON des équipements et le take off, c'est la phase incontournable qui cale le zero d'attitude, c'est pour ça aussi que les PNT arrivent les premiers au poste :grin:

pour l'altitude du vol, ça passe aujourd'hui par un alti-baro et lui aussi doit être calé avant évolution.

je ne vois pas l'utilité d'un capteur US d'altitude sauf eventuellement pour faire de l’évolution proche du sol et à la condition que le milieu de réflexion ne soit pas "transparent/absorbant" aux US.
pour la détection sol en réel cela passe par un radioaltimètre (c'est lui la la référence zéro)

bref , c'est comme pour tout : il faut définir ton domaine de vol avant de pouvoir appréhender les capteurs et le traitement à suivre
(dimensions du volume d'evolution, vitesse max de l'aeronef, durée max du vol)

J'ai mis à jour le post principal de l'autopilot avec des infos sur l'avion :

  • Modèle : EPPIM (EPP)
  • Type : 3D
  • Envergure : 80cm
  • Poids : 450gr-600gr
  • Durée de vol : 10 minutes par batterie

En revanche, je ne connais pas la vitesse max, je sais juste qu'il supporte les énormes piqués que je lui fais subir :D, contrairement à certains de ces prédécesseurs :zipper_mouth_face:

L'idée des US, c'est bien de faire du radada contrôlé, mais c'est plutôt dans un second temps.

L'idée de ce post c'est de choisir un système d'IRU/IMU, en fonction de l'experience des membres du forum en la matière...

Sev

UniseV:
L'idée de ce post c'est de choisir un système d'IRU/IMU, en fonction de l'experience des membres du forum en la matière...

Personne n'utilise (ou n'a utilisé) de DOF6, DOF9, ArduIMU ?

Sev

voici un petit lien qui pourrais t'interessé, avec cela, tu a des exemple et t'inspirer.
http://code.google.com/p/ardu-imu/

Il y a plein d'exemple sur internet si tu cherche bien, si tu a le type de ton gyro/acc..
suivant la boutique ou tu a acheter ton capteur, il doit y avoir des exemples aussi.

Bonjour,

UniseV:
Personne n'utilise (ou n'a utilisé) de DOF6, DOF9, ArduIMU ?

Moi j'utilise une carte 9DOF de sparkfun (la 1er version avec les capteurs séparé) :

Merci skywodd, je me sens moins seul :slight_smile:

Ta vidéo est très simple et concise, dans ton exemple, les données sont-elle filtrées (Kalman, Fusion...) ? l'IMU semble branché directement sur le PC ?
L'as-tu utilisé avec un Arduino ?

D'autre part : la gravité ne permet-elle pas de connaitre la verticalité instantanément ?
Ne peut-on pas déduire la vitesse apporximative (ou du moins le sens d'avancement) à partir des données des accéléromètres ?

hazerty565:
voici un petit lien qui pourrais t'interessé, avec cela, tu a des exemple et t'inspirer.
Google Code Archive - Long-term storage for Google Code Project Hosting.

Il y a plein d'exemple sur internet si tu cherche bien, si tu a le type de ton gyro/acc..
suivant la boutique ou tu a acheter ton capteur, il doit y avoir des exemples aussi.

Merci, j'ai parcouru pas mal ses pages, maintenant je cherche un truc qui colle au mieux avec mon projet, l'ArduIMU est pas mal, surtout qu'il y a un 328P embarqué.
Je regarde aussi du côté des controleur de vol Dotrek qui serve à la base pour les multi-rotor, certaines comporte aussi un 328P et parfois même un altimètre (10DOF) !

Sev

UniseV:
Ta vidéo est très simple et concise, dans ton exemple, les données sont-elle filtrées (Kalman, Fusion...) ? l'IMU semble branché directement sur le PC ?
L'as-tu utilisé avec un Arduino ?

D'aprés le google code du projet :
http://code.google.com/p/sf9domahrs/

I have implemented the "fusion" between the 3 axis magnetometer info with our actual 6 DOF IMU code.

Donc pas de kalman mais bien un algo "fusion" sur le compas magnétique, avec compensation de l'inclinaison (tilt).

Je ne l'ai pas utiliser avec une carte arduino, juste avec un module bluetooth relié à un programme sur le PC.

J'ai fini par commander ceci :
http://www.drotek.fr/shop/fr/72-multiwii-mpu6050-hmc5883-ms5611.html

Ya même le 328P dessus !

Au menu :

  • Un couple gyro/accelero
  • Un magnetomètre
  • Un altimètre (précision 10cm)

Le seul hic c'est que le pin8 de l'arduino que j'utilise dans mon projet (InputCapturePin) est prévu pour un buzzer sur cette carte.

En revanche, je pourrais aussi tester le code MultiWII en mode Airplane.

UniseV