SHEPHERD



Description du projet

Une version provisoire est donnée ici pdf.

Consignes

Tous les documents (et vidéos) devront, si possible, être rédigés en anglais.
Chaque étudiant devra faire un mini-cours devant ses camarades. Ce cours devra lié au projet et sera noté.
L'outil de gestion de version pour les logiciels développés sera Github : https://github.com/orgs/ENSTA-Bretagne-Shepherd
L'outil de gestion de projet est Taiga : Shepherd sur taiga.io.
Le rapport final sera à faire sous Lyx, en Anglais.
Une vidéo finale présentant le projet devra être faite. Elle pourra être influencée de celle ci-dessous





Journal

Le 18 novembre. Présentation du projet. Il s'agit d'effectuer la surveillance d'un groupe de bouées sous-marines dérivantes par 4 voiliers robotisés de type VAIMOS. L'objectif est de mesurer les courants sous-marins à différentes profondeurs. Cette étude se fera avec IFREMER Brest.
Les exemples 1 et 2 de easibex.html ont été traités.
Nous avons commencé à regarder Unity3d.
Nous avons convenu que les quatre voiliers suivaient chacun un petite triangle et qu'ils formaient un grand carré. Le centre de ce carré est régulé sur le centre de gravité des bouées auquel on additionne un (petit) vecteur qui indique une volonté de se diriger dans une direction privilégiée. Les bouées suivent deux des lois de Reynolds : (1) elles sont attirées vers le centre du grand carré mais (2) se repoussent entre elles.

Le 9 décembre. Nous avons convenu que (1) chaque bouée émets 1 ping toutes les minutes. (2) Toute les 4 secondes, chaque voilier émets sa position. (3) Les bouées se déplacent sur une colonne de 1km avec une vitesse inférieure à 1m/sec. Elles font surface toutes les 5 heures. (4) La localisation se fait par mesures de distance. En effet, les horloges des bouées sont très précises car elles se resynchronisent avec le GPS lorsque la bouée refait surface.

Le 16 décembre. La communication entre le simulateur C++ (encore provisoire) et Unity fonctionne. Pour la partie graphisme, trois solutions sont à l'étude : MORSE, Unity et GAZEBO. Les articulations graphique de la voile et du gouvernail fonctionnent.

Le 20 janvier. Nous avons convenu d'utiliser l'outil de génie logiciel SCRUM (méthode AGILE) pour suivre l'ensemble du projet. Pour cela nous avons créé un projet Shepherd sur taiga.io. Le responsable sera Yoann Sola. Nous avons préparé brièvement la présentation à faire devant Ifremer dont le responsable est Camille Finand. Les binômes commencent à collaborer avec leurs voisins thématiques en vue de l'intégration.

Le 3 février. Aurélien Ponte (Océanographe physicien à Ifremer à l'initiative du projet) a présenté le projet côté Ifremer. Camille Finand présente l'avancée du projet côté ENSTA.

Le 10 février. Finalisation de l'intégration. Grâce à ROS, l'intégration a été relativement aisé. On peut désormais voir les voiliers s'asservir sur leur triangles et les bouées dériver. Il reste à rajouter le module de localisation.

Le 15 février. Nous n'avons eu que 2H et nous avons continué dans l'intégration finale du projet. Il y a eu une répartition des tâches pour la soutenance et pour la réalisation de la vidéo.

Le 23 février . Soutenance finale.




Premiers tests en surface

Les premiers tests de faisabilité en surface, avec des bouées dérivantes, avaient été faits en 2015 lors du post-doc de Clément Aubry. La partie théorique est reprise par Thomas Le Mézo pour sa thèse.



Soutenance, rapport et vidéo

Soutenance
La soutenance finale s'est tenue le 23 février à 9:30. Etaient présents dans le jury : A. Ponte, B. Zerr, T. Le Mézo, et K. Vencatasamy. Tout le monde s'est exprimé en expliquant sa propre contribution dans le projet. Il fallait montrer un tout cohérent avec un véritable travail de groupe en évitant une présentation trop technique avec des explications sur logiciels, ROS, etc. Il était apprécié qu'une composante académique soit donnée avec une discussion sur la localisation des bouées, de la régulation des voiliers, avec quelques équations.

Rapport et vidéo
Le rapport a écrit en Lyx (qui est un éditeur Latex) à partir du modèle qui se trouve dans rapport_lyx.zip. Pour Lyx, une petite vidéo d'explication est disponible sur https://youtu.be/NacWGTrKIx0
Lyx peut être téléchargé gratuitement sur https://www.lyx.org/
Pour les vidéos, la capture peut se faire avec 'SimpleScreenRecorder' sous Linux. Pour le montage, il est possible d'utiliser 'Pitivi' sous Linux ou 'Video Movie Maker' sous Windows.

Vous pouvez télécharger les sources du rapport et le rapport en pdf.
La vidéo finale est sur https://youtu.be/B9EjXvwZ_9U.

Notation
Il y a trois notes :
  • Note minicours : Vous avez une note pour votre présentation orale et qui consistait à apporter la connaissance nécessaire au groupe pour l'élaboration du projet.
  • Note soutenance. Il s'agit d'une note pour la présentation finale. Vous deviez donc défendre à la fois votre travail, mais surtout le lien avec le projet. Le jury souhaite avant tout comprendre comment fonctionne le système Shepherd (localisation, commande, communication, récupération des données du courant, etc) et il note dans ce sens.
  • Note rapport. Le rapport devait être rendu le jeudi 2 mars 2017 en pdf (avec les sources Latex, Lyx, images). Un seul document doit exister avec une partie identifiée pour chacun. Le rapport doit être rédigé en anglais.



  • Mini cours

    18 novembre. Simon Chanu a fait un cours puis un TP de Github.

    9 décembre. Alaa El Jawad fait un cours sur MORSE.

    16 décembre. Antony Welte a fait un cours sur Unity.

    20 janvier
    8:10. Yoann Sola a présenté la méthode agile et l'outil SCRUM.
    13:30. Pierre Benet a présenté OpenGL V2.

    3 février
    Aurélien Ponte (Océanographe physicien à Ifremer à l'initiative du projet) explique le projet. O. Ménage était également présent.
    Camille Finand présente l'avancée du projet côté ENSTA.

    10 février
    8:10. Camille Soulie : OpenGL V3 et carte graphique.
    8:40. Romain Baronnier : Gazebo.
    13:30. Nima Mehdi : Python et Jupyter Notebook.
    14:00. M'Hamed Fadil Ennouhi. Point Cloud Library.

    14 février, pm
    13:50. Lei Zhu : Décodage et des travaux et programmes Python d'Aurélien.
    14:10. Pierre Martin : 3D Blender.
    14:30. Florian Tanguy : Méthodes de localisation sous-marine sur étagère.

    23 février
    8:10. Sergio Pertierre : ROS dans le cadre du projet Shepherd
    8:35. Alexandre Galland : Calcul distribué
    9:00. Evandro Bernardes : Lyx
    9:30. Soutenance finale.





    Liste des étudiants concernés par Shepherd

    Romain Baronnier
    Pierre Benet
    Evandro Bernardes
    Simon Chanu
    Zacharie El Abdalaoui
    Alaa El Jawad
    Mhamed Ennouhi
    Camille Finand
    Alexandre Galland
    Pierre Martin
    Nima Mehdi
    Sergio Pertierre
    Yoann Sola
    Camille Soulié
    Florian Tanguy
    Anthony Welte
    Lei Zhu