{"id":17984,"date":"2024-05-04T17:57:51","date_gmt":"2024-05-04T17:57:51","guid":{"rendered":"https:\/\/sonia.etsmtl.ca\/?page_id=17984"},"modified":"2024-07-01T14:47:29","modified_gmt":"2024-07-01T14:47:29","slug":"software-team","status":"publish","type":"page","link":"https:\/\/sonia.etsmtl.ca\/fr\/software-team\/","title":{"rendered":"\u00c9quipe Logiciel"},"content":{"rendered":"<div class=\"wp-block-media-text is-stacked-on-mobile\" style=\"grid-template-columns:38% auto\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2024\/06\/teamLog-2024-1024x683.jpg\" alt=\"\" class=\"wp-image-18039 size-full\" srcset=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2024\/06\/teamLog-2024-1024x683.jpg 1024w, https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2024\/06\/teamLog-2024-300x200.jpg 300w, https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2024\/06\/teamLog-2024-2000x1333.jpg 2000w, https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2024\/06\/teamLog-2024-scaled-18x12.jpg 18w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p class=\"ticss-da155e39 has-medium-font-size translation-block\">L\u2019\u00e9quipe logiciel est responsable du d\u00e9veloppement de tous les programmes sur les ordinateurs des AUVs, des pilotes qui collectent les donn\u00e9es des capteurs jusqu\u2019au syst\u00e8me de mission qui contr\u00f4le le sous-marin.<\/p>\n\n\n\n<p class=\"ticss-da155e39 has-medium-font-size translation-block\">L\u2019\u00e9quipe d\u00e9veloppe aussi le r\u00e9seau neuronal qui s\u2019occupe de la d\u00e9tection d\u2019obstacle ainsi que la commande pr\u00e9dictive \u00e0 base de mod\u00e8le (MPC) et le planificateur qui contr\u00f4le les mouvements des AUVs. Tous ces syst\u00e8mes sont essentiels pour obtenir des interactions fluides entre le sous-marin et son environnement.<\/p>\n<\/div><\/div>\n\n\n\n<p class=\"ticss-da155e39 has-medium-font-size\">L\u2019\u00e9cosyst\u00e8me logiciel est construit autour de ROS2 (Robot Operating System), qui est notre r\u00e9seau de communication. La flexibilit\u00e9 de celui-ci permet \u00e0 l\u2019\u00e9quipe de d\u00e9velopper des programmes individuels pour chaque partie du syst\u00e8me et de les int\u00e9grer afin d\u2019obtenir un seul syst\u00e8me fonctionnel.<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h1 class=\"wp-block-heading has-text-align-center\">Projets logiciels<\/h1>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"rt-container-fluid tlp-portfolio tlp-portfolio-container software\" id=\"tlp-portfolio-container-17090\" data-layout=\"layout1\"><div class=\"rt-row layout1\" data-title='Loading ...'>\r\n<div class=\"tlp-col-md-4 tlp-col-sm-6 tlp-col-xs-12 tlp-single-item tlp-grid-item tlp-equal-height\">\r\n\t<div class=\"tlp-portfolio-item\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"tlp-portfolio-thum tlp-item\">\r\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"396\" height=\"269\" src=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/05\/flexbe-1-396x269.png\" class=\"img-responsive\" alt=\"\" \/>\r\n\t\t\t<div class=\"tlp-overlay\">\r\n\t\t\t\t<p class=\"link-icon\">\r\n\t\t\t\t\t<a class=\"tlp-zoom\" href=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/05\/flexbe-1.png\" aria-label=\"BehaviorTree (missions)\"><i class=\"demo-icon icon-zoom-in\"><\/i><\/a>\r\n\t\t\t\t\t\r\n\t\t\t\t<\/p>\r\n\t\t\t<\/div>\r\n\t\t<\/div><div class=\"tlp-content\">\r\n                        <div class=\"tlp-content-holder\">\r\n                            <h3>BehaviorTree (missions)<\/h3>\r\n                            <div class=\"extra-features\"> <div class=\"tlp-portfolio-sd\">BehaviorTree est un outil qui aide S.O.N.I.A. \u00e0 cr\u00e9er des missions complexes pour les sous-marins sans programmer manuellement chacune d\u2019elles. BehaviorTree est utilis\u00e9 pour cr\u00e9er les arbres de comportement, les ex\u00e9cuter et les surveiller. Lors des tests, il est \u00e9galement possible de collaborer avec le sous-marin lors de l\u2019ex\u00e9cution de la mission. (Outils et\/ou langages utilis\u00e9s\u00a0: ROS, C++, Groot2)<\/div> <\/div>\r\n                        <\/div>\r\n                    <\/div>\t<\/div>\r\n<\/div>\r\n\r\n\r\n<div class=\"tlp-col-md-4 tlp-col-sm-6 tlp-col-xs-12 tlp-single-item tlp-grid-item tlp-equal-height\">\r\n\t<div class=\"tlp-portfolio-item\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"tlp-portfolio-thum tlp-item\">\r\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"400\" height=\"269\" src=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/06\/control-400x269.png\" class=\"img-responsive\" alt=\"\" \/>\r\n\t\t\t<div class=\"tlp-overlay\">\r\n\t\t\t\t<p class=\"link-icon\">\r\n\t\t\t\t\t<a class=\"tlp-zoom\" href=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/06\/control.png\" aria-label=\"Contr\u00f4le\"><i class=\"demo-icon icon-zoom-in\"><\/i><\/a>\r\n\t\t\t\t\t\r\n\t\t\t\t<\/p>\r\n\t\t\t<\/div>\r\n\t\t<\/div><div class=\"tlp-content\">\r\n                        <div class=\"tlp-content-holder\">\r\n                            <h3>Contr\u00f4le<\/h3>\r\n                            <div class=\"extra-features\"> <div class=\"tlp-portfolio-sd\">Le sous-marin autonome doit \u00eatre capable d'ex\u00e9cuter des trajectoires de suivi, d'alignement de vision, d'alignement acoustique et plus encore. Tout cela est possible gr\u00e2ce \u00e0 une chose... un bon contr\u00f4le ! Notre \u00e9quipe travaille sur un algorithme de contr\u00f4le modulaire pour contr\u00f4ler leurs prototypes. Nous utilisons \u00e9galement le contr\u00f4le pour d\u00e9placer manuellement le sous-marin dans son environnement. (Outils et\/ou langages utilis\u00e9s : Matlab, Simulink, ROS)<\/div> <\/div>\r\n                        <\/div>\r\n                    <\/div>\t<\/div>\r\n<\/div>\r\n\r\n\r\n<div class=\"tlp-col-md-4 tlp-col-sm-6 tlp-col-xs-12 tlp-single-item tlp-grid-item tlp-equal-height\">\r\n\t<div class=\"tlp-portfolio-item\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"tlp-portfolio-thum tlp-item\">\r\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"400\" height=\"269\" src=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/06\/architecture-400x269.png\" class=\"img-responsive\" alt=\"\" \/>\r\n\t\t\t<div class=\"tlp-overlay\">\r\n\t\t\t\t<p class=\"link-icon\">\r\n\t\t\t\t\t<a class=\"tlp-zoom\" href=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/06\/architecture.png\" aria-label=\"Providers et Procs\"><i class=\"demo-icon icon-zoom-in\"><\/i><\/a>\r\n\t\t\t\t\t\r\n\t\t\t\t<\/p>\r\n\t\t\t<\/div>\r\n\t\t<\/div><div class=\"tlp-content\">\r\n                        <div class=\"tlp-content-holder\">\r\n                            <h3>Providers et Procs<\/h3>\r\n                            <div class=\"extra-features\"> <div class=\"tlp-portfolio-sd\">Les \u00abproviders\u00bb 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\u00e9rents protocoles. Les donn\u00e9es sont transmises vers les \u00abprocs\u00bb via ROS pour traiter les informations. Ces informations seront interpr\u00e9t\u00e9es et utilis\u00e9es par la t\u00e9l\u00e9m\u00e9trie, les autres n\u0153uds \u00abprocs\u00bb ou les missions. (Outils et\/ou langages utilis\u00e9s : ROS, C++, Python, TCP\/IP, Communication s\u00e9rie)<\/div> <\/div>\r\n                        <\/div>\r\n                    <\/div>\t<\/div>\r\n<\/div>\r\n\r\n\r\n<div class=\"tlp-col-md-4 tlp-col-sm-6 tlp-col-xs-12 tlp-single-item tlp-grid-item tlp-equal-height\">\r\n\t<div class=\"tlp-portfolio-item\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"tlp-portfolio-thum tlp-item\">\r\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"400\" height=\"269\" src=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/06\/simulation-400x269.png\" class=\"img-responsive\" alt=\"\" \/>\r\n\t\t\t<div class=\"tlp-overlay\">\r\n\t\t\t\t<p class=\"link-icon\">\r\n\t\t\t\t\t<a class=\"tlp-zoom\" href=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/06\/simulation.png\" aria-label=\"Simulation\"><i class=\"demo-icon icon-zoom-in\"><\/i><\/a>\r\n\t\t\t\t\t\r\n\t\t\t\t<\/p>\r\n\t\t\t<\/div>\r\n\t\t<\/div><div class=\"tlp-content\">\r\n                        <div class=\"tlp-content-holder\">\r\n                            <h3>Simulation<\/h3>\r\n                            <div class=\"extra-features\"> <div class=\"tlp-portfolio-sd\">L'\u00e9quipe d\u00e9veloppe son propre environnement de simulation pour tester diff\u00e9rentes t\u00e2ches \u00e0 l'int\u00e9rieur d'un environnement virtuel. Cette simulation doit \u00eatre la plus pr\u00e9cise possible car nous voulons tester la majorit\u00e9 de nos missions \u00e0 l'int\u00e9rieur. (Outils et\/ou langages utilis\u00e9s : Unity, ROS, C#)<\/div> <\/div>\r\n                        <\/div>\r\n                    <\/div>\t<\/div>\r\n<\/div>\r\n\r\n\r\n<div class=\"tlp-col-md-4 tlp-col-sm-6 tlp-col-xs-12 tlp-single-item tlp-grid-item tlp-equal-height\">\r\n\t<div class=\"tlp-portfolio-item\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"tlp-portfolio-thum tlp-item\">\r\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1255\" height=\"709\" src=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/06\/telemetrieRQT.png\" class=\"img-responsive\" alt=\"\" \/>\r\n\t\t\t<div class=\"tlp-overlay\">\r\n\t\t\t\t<p class=\"link-icon\">\r\n\t\t\t\t\t<a class=\"tlp-zoom\" href=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/06\/telemetrieRQT.png\" aria-label=\"T\u00e9l\u00e9m\u00e9trie\"><i class=\"demo-icon icon-zoom-in\"><\/i><\/a>\r\n\t\t\t\t\t\r\n\t\t\t\t<\/p>\r\n\t\t\t<\/div>\r\n\t\t<\/div><div class=\"tlp-content\">\r\n                        <div class=\"tlp-content-holder\">\r\n                            <h3>T\u00e9l\u00e9m\u00e9trie<\/h3>\r\n                            <div class=\"extra-features\"> <div class=\"tlp-portfolio-sd\">La t\u00e9l\u00e9m\u00e9trie est un cadre rqt bas\u00e9 sur Qt pour contr\u00f4ler et surveiller les sous-marins pendant nos tests. Il est portable et permet \u00e0 l'\u00e9quipe de se connecter \u00e0 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\u00e9ra, etc. (Outils et\/ou langages utilis\u00e9s : python, ROS)<\/div> <\/div>\r\n                        <\/div>\r\n                    <\/div>\t<\/div>\r\n<\/div>\r\n\r\n\r\n<div class=\"tlp-col-md-4 tlp-col-sm-6 tlp-col-xs-12 tlp-single-item tlp-grid-item tlp-equal-height\">\r\n\t<div class=\"tlp-portfolio-item\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"tlp-portfolio-thum tlp-item\">\r\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"517\" height=\"291\" src=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/06\/Vision-e1686597979484.jpg\" class=\"img-responsive\" alt=\"\" \/>\r\n\t\t\t<div class=\"tlp-overlay\">\r\n\t\t\t\t<p class=\"link-icon\">\r\n\t\t\t\t\t<a class=\"tlp-zoom\" href=\"https:\/\/sonia.etsmtl.ca\/wp-content\/uploads\/2021\/06\/Vision-e1686597979484.jpg\" aria-label=\"Vision\"><i class=\"demo-icon icon-zoom-in\"><\/i><\/a>\r\n\t\t\t\t\t\r\n\t\t\t\t<\/p>\r\n\t\t\t<\/div>\r\n\t\t<\/div><div class=\"tlp-content\">\r\n                        <div class=\"tlp-content-holder\">\r\n                            <h3>Vision<\/h3>\r\n                            <div class=\"extra-features\"> <div class=\"tlp-portfolio-sd\">La vision est une capacit\u00e9 indispensable pour un v\u00e9hicule autonome afin de d\u00e9tecter et reconna\u00eetre les objets qui l\u2019entourent ce qui lui permet ensuite d\u2019interagir avec son environnement. Pour effectuer cette t\u00e2che dans nos sous-marins, nous utilisons un mod\u00e8le de type r\u00e9seau neuronaux (YOLOv8n ou YOLOv10n). Ce mod\u00e8le doit \u00eatre \u00e0 la fois tr\u00e8s fiable, tr\u00e8s l\u00e9ger et utiliser peu de donn\u00e9es d'entra\u00eenement. C\u2019est pourquoi nous faisons le choix d\u2019entra\u00eener un mod\u00e8le tr\u00e8s sp\u00e9cialis\u00e9 pour l'environnement de la comp\u00e9tition RoboSub. Par ailleurs, toutes nos images sont \u00e9tiquet\u00e9es \u00e0 la main \u00e0 l\u2019aide de Labelbox, ce qui nous permet d'avoir des \u00e9tiquettes plus pr\u00e9cises. Ces donn\u00e9es nous permettent ensuite d'entra\u00eener puis de tester de mani\u00e8re fiable notre mod\u00e8le. (Outils et\/ou langages utilis\u00e9s : CUDA, Labelbox, OpenCV, Python, Pytorch, ROS, Ultralytics)<\/div> <\/div>\r\n                        <\/div>\r\n                    <\/div>\t<\/div>\r\n<\/div>\r\n\r\n<\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Meet our software team, we are responsible for developing all the systems on the computers of the AUVs. This includes the drivers&nbsp;responsible for collecting data from the sensors and mission system that control the submarine. Another interesting project is our neural network, trained to recognize objects, but can also serve as a Predictive Controller Model, &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/sonia.etsmtl.ca\/fr\/portfolio\/vision\/\" class=\"more-link\">Read more<span class=\"screen-reader-text\"> &#8220;Vision&#8221;<\/span><\/a><\/p>","protected":false},"author":5,"featured_media":17985,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_themeisle_gutenberg_block_has_review":false,"footnotes":""},"class_list":["post-17984","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/sonia.etsmtl.ca\/fr\/wp-json\/wp\/v2\/pages\/17984","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sonia.etsmtl.ca\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sonia.etsmtl.ca\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sonia.etsmtl.ca\/fr\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/sonia.etsmtl.ca\/fr\/wp-json\/wp\/v2\/comments?post=17984"}],"version-history":[{"count":0,"href":"https:\/\/sonia.etsmtl.ca\/fr\/wp-json\/wp\/v2\/pages\/17984\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sonia.etsmtl.ca\/fr\/wp-json\/wp\/v2\/media\/17985"}],"wp:attachment":[{"href":"https:\/\/sonia.etsmtl.ca\/fr\/wp-json\/wp\/v2\/media?parent=17984"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}