Projets

Projets mécaniques


Impression 3D

S.O.N.I.A. utilise l'impression 3D afin de fabriquer les supports internes pour tenir les composantes électroniques. L'impression 3D nous sert aussi à imprimer quelques pièces pour concevoir nos accessoires sur les sous-marins. (Outils: Simplify3D)

Simulation des fluides par éléments finis

Une étude hydrodynamique du sous-marin peut nous permettre de trouver de l'information très pertinente pour concevoir des sous-marins de qualité. L'information recueillie peut aussi être utiliser pour obtenir un modèle le plus réaliste possible pour notre simulateur. (Outils: ANSYS)

Usinage

Afin de concevoir des sous-marins de qualité, l'équipe mécanique joint ses efforts pour fabriquer différentes pièces précises pour nos prototypes. L'usinage permet à notre équipe de matérialiser ses idées. (Outils: CATIA)

Design Mécanique

Que ce soit pour concevoir un nouveau sous-marin, concevoir des supports de composantes électroniques ou concevoir des accessoires sur les sous-marins. L'équipe mécanique a besoin d'idées créatives pour développer des nouveaux concepts. (Outils: SolidWorks)

Projets électriques


Entrées et sorties

Des accessoires tels que des lance torpilles, un bras robotique et des «droppers» son positionnés sur le sous-marin. Pour assurer le bon fonctionnement de ces derniers, un bon fonctionnement du côté électrique est de mise.

Power

Les systèmes électroniques modernes nécessitent souvent une régulation de tension pour fonctionner correctement. Dans le cas des sous-marins de S.O.N.I.A., la tension des batteries lithium-polymère doit être réduite à un niveau adapté aux composants électroniques à faible puissance. Le système d'alimentation doit également gérer la distribution de puissance vers les huit moteurs.

Conception de PCB

L'équipe électrique conçoit plusieurs PCB pour différents systèmes sur le sous-marin. Ils passent par les étapes de conception du schéma électrique, la conception du PCB, la commande, la soudure ainsi que les tests. (Outils : Altium)

Embedded systems

All embedded systems on the submarine run Mbed OS on STM32F4 microcontrollers. The programs for these microcontrollers are developed and tested by members of the team.

Hydrophones

En général, les hydrophones permettent de calculer le délai entre la réception d'un ping de la référence aux 3 autres hydrophones. Avec la différence de phase, nous pouvons obtenir l'angle (cap) pour la référence X sur le sous-marin et l'angle entre le plan X et Y et le pinger. Ces 2 angles permettent de naviguer à 2 positions. Seul le cap serait nécessaire pour la compétition, mais le système est plus fiable avec les 2 angles et il est plus facile de confirmer le mouvement du sous-marin.

Projets logiciels


BehaviorTree (missions)

BehaviorTree is a tool that helps S.O.N.I.A. to creates complex missions for the submarines without manually coding everyone of them. BehaviorTree is used to create the behavior trees, execute and monitor them. During the tests, it's also possible to collaborate with the submarine during the mission execution. (Tools and/or languages used: ROS, C++, Groot2)

Contrôle

Le sous-marin autonome doit être capable d'exécuter des trajectoires de suivi, d'alignement de vision, d'alignement acoustique et plus encore. Tout cela est possible grâce à une chose... un bon contrôle ! Notre équipe travaille sur un algorithme de contrôle modulaire pour contrôler leurs prototypes. Nous utilisons également le contrôle pour déplacer manuellement le sous-marin dans son environnement. (Outils et/ou langages utilisés : Matlab, Simulink, ROS)

Providers et Procs

Les «providers» sont les pilotes qui communiquent avec les modules S.O.N.I.A. bas niveaux, les capteurs et actionneurs sur les sous-marins en utilisant différents protocoles. Les données sont transmises vers les «procs» via ROS pour traiter les informations. Ces informations seront interprétées et utilisées par la télémétrie, les autres nœuds «procs» ou les missions. (Outils et/ou langages utilisés : ROS, C++, Python, TCP/IP, Communication série)

Simulation

L'équipe développe son propre environnement de simulation pour tester différentes tâches à l'intérieur d'un environnement virtuel. Cette simulation doit être la plus précise possible car nous voulons tester la majorité de nos missions à l'intérieur. (Outils et/ou langages utilisés : Unity, ROS, C#)

Télémétrie

La télémétrie est un cadre rqt basé sur Qt pour contrôler et surveiller les sous-marins pendant nos tests. Il est portable et permet à l'équipe de se connecter à partir de n'importe quel appareil de son choix. Il comprend un tas de modules dont nous avons besoin pour surveiller les sous-marins comme le module de propulseur, le module d'actionneurs, la visionneuse de caméra, etc. (Outils et/ou langages utilisés : python, ROS)

Vision

La vision est une capacité indispensable pour un véhicule autonome afin de détecter et reconnaître les objets qui l’entourent ce qui lui permet ensuite d’interagir avec son environnement. Pour effectuer cette tâche dans nos sous-marins, nous utilisons un modèle de type réseau neuronaux (YOLOv8n ou YOLOv10n). Ce modèle doit être à la fois très fiable, très léger et utiliser peu de données d'entraînement. C’est pourquoi nous faisons le choix d’entraîner un modèle très spécialisé pour l'environnement de la compétition RoboSub. Par ailleurs, toutes nos images sont étiquetées à la main à l’aide de Labelbox, ce qui nous permet d'avoir des étiquettes plus précises. Ces données nous permettent ensuite d'entraîner puis de tester de manière fiable notre modèle. (Outils et/ou langages utilisés : CUDA, Labelbox, OpenCV, Python, Pytorch, ROS, Ultralytics)