Site ELEC344/ELEC381

Partie interactive du site pédagogique ELEC344/ELEC381 de Télécom ParisTech (occurrence 2010).

Catégories

Heliokter, jour 15 : En ermite dans la montagne

J’ai fini de placer/router ma carte de TP avec le STM32, rien de particulier. Comme méthode de routage j’ai utilisé la suivante :
router un maximum de composants sans faire de via, quitte à  faire de longs détours, puis router ce qui reste en faisant des via. Rerouter
les voies de la première phase qui semblent trop longues en faisant des via, réitérer le processus jusqu’à avoir quelque chose qui semble naturel.
Projet : Cette semaine je suis l’ermite dans la montagne. Ma tâche est de mettre au point l’asservissement de l’Heliokter, qui prend en entrée des capteurs débruités, une commande et qui en déduit les commandes à donner aux moteurs. Avec quelques minutes quotidiennes d’internet, j’ai adopté la démarche suivante : j’ai fait le plein d’articles traitant de l’asservissement des RUAV ( Rotorcraft Unmanned Aerial Vehicles ), j’ai récupéré le code source des cartes du site mikrokopter.de pour avoir également une idée de ce qui avait été implémenté en pratique, et je me suis au travail.
Jour  13 et 14 j’ai lu les articles que j’avais (voir la section liens/biblio du wiki pour la liste). Ma conclusion est la suivante : de nombreuses méthodes d’asservissement sont utilsées mais elles sont souvent très complexes.
Il y a grosso modo deux étapes dans les approches que j’ai vues :
  • une modélisation physique fine de l’engin
  • la détermination du modèle d’asservissement et des coefficients.
La détermination du modèle ou des coefficients se fait :
  • soit à partir de l’analyse de données de vol
  • soit à partir de l’utilisation d’algorithme de détermination d’asservissement qui utilisent de façon répétée la simulation du comportement du véhicule (pour aboutir par exemple à des filtres d’ordre 62)
A noter que certaines techniques raffinées utilisent des approches évolutives pour aboutir à des asservissements optimaux.
Un des articles qui présentait justement une approche évolutive disait également qu’un bon vieux filtre PID multiple faisait très bien l’affaire. C’est pourquoi j’ai choisi dans un premier temps d’implémenter un filtre PID pour l’asservissement des diverses variables. Le but est de voir ce qu’on arrive à obtenir avec une solution simple mais aussi de nous pousser à formaliser l’aspect logique du fonctionnement de l’appareil.
Mon choix n’est pas du tout définitif, mais pour l’instant j’asservis :
  • le roulis et le tangage en position ( ma variable est donc l’angle )
  • l’altitude en position ( ma variable est l’altitude )
  • pour la vitesse linéaire cela se ramène à l’asservissement du roulis et du tangage en position
  • pour le lacet je ne sais pas encore comment faire, il faudrait que j’étudie de plus près la physique de l’engin.
Les détails de mes choix sont présentés sur notre wiki, mais grosso modo, j’ai choisi d’asservir les variables sur le critère de la disponibilité des variables et de leurs dérivées grâce aux capteurs .(on peut par exemple obtenir dangle/dt à partir des accélérations linéaires, ce qui m’a permis au passage de revoir un peu mes formules de cinématique)

2 comments to Heliokter, jour 15 : En ermite dans la montagne

  • F-X

    Euh tu es sur d’asservir l’angle de tangage et de roulis ?
    Parce que les gyroscopes donnent une vitesse angulaire et non pas un angle …
    Et en plus la combinaison de mouvements élémentaires (au niveau moteurs) pour parvenir à un angle fixe est assez complexe non ?

  • Etienne

    Hmm du coup je vais réfléchir à ça, asservir en theta point c’est facile aussi. Pour l’angle fixe il me semblait pas. Je reprends un peu tout ça et on voit demain !