Robotique

Header picture

Bienvenu dans le monde des machines

Un peu d'histoire

Avant de se demander ce qu'est la robotique, commençons par un peu d'étymologie. Le terme robot a été inventé pour une pièce de théatre de science fiction écrite en 1920, dérivé du mot tchèque "Roboto" que l'on peut traduire par "travail, corvée". Quoi de plus normal que de donner ce nom aux machines capables aujourd'hui d'automatiser nos tâches ? Dans la pièce de Karel Čapek, les robots étaient des humains fabriqués par des propriétaires d'usine qui les exploitaient. Nulle précision sur la nature mécanique ou biologique de ces "robots", mais ces derniers finiront par se retourner contre leurs créateurs. C'est 22 ans plus tard en écrivant Runaround qu'Isaac Asimov créera le terme robotique et délaissa le syndrome de Frankenstein pour s'intéresser aux problèmes de société auxquels les humains se heurteront quand les robots seront omniprésents et auront automatisés la quasi-totalité de nos tâches.

Photo Robot

La robotisation

Les premiers robots

En 1954 Georges Devol crée le premier robot, Unimate, qui sera livré à General Motors pour accomplir des tâches dangereuses pour les employés de l'usine. Unimate est un bras de levage hydraulique à commande électronique capable de répéter des séquences arbitraires de mouvements. Pourquoi abitraires ? Parce que d'après Joseph Engelberger, créateur d'Unimation Inc et père de la robotique, une machine automatisée capable d'un seul mouvement répété n'est pas un robot, mais un simple automate.

Unimate

Unimate, le premier robot de l'histoire.

Les robots d'aujourd'hui

Mais où en est-on de la robotique à notre époque ? Cette dernière a bien évolué depuis Unimate (même si cette unité est encore utilisée dans bon nombre d'usines), mais nous sommes encore loin des androïdes doués de réflexion qu'imaginait Asimov dans les années 50 (le deep learning est une pratique encore très récente, mais pour ça je vous invite à lire notre super article sur l'intelligence artificielle), mais la robotique n'en est pas moins omniprésente ; Dans la médecine avec des robots capables d'opérer des patients, dans l'exploration spatiale avec Spirit et Opporunity (entre autres) qui sillonent le sol de Mars, dans le domaine militaire où l'on peut trouver des drônes et des chiens tout-terrain capables de porter de lourdes charges, et surtout dans nos maisons, où nous automatisons nos tâches ménagères grâce aux robots aspirateurs, tondeuses à gazons, nettoyeurs de piscines...

Rover

Life on Mars ? Rover nous le dira !

Les métiers

Le concepteur de robot : Un expert en robotique doit maîtriser un grand nombre de domaines d’expertise. Il doit à la fois travailler à la conception du robot et à sa programmation. Ce qui suppose des connaissances en mécanique, en électronique et en informatique embarquée. Le mécatronicien : A la croisée de la mécanique, de l'électronique et de l'informatique, le mécatronicien conçoit des systèmes embarqués toujours plus intelligents et miniaturisés. Intervenant dans les secteurs de l’automobile ou de la Défense, il maîtrise les logiciels de CAO et de DAO. L’opérateur de commande numérique : Il ne suffit pas de concevoir des robots industriels, il faut ensuite les paramétrer une fois à l’usine. L’opérateur va programmer le bras articulé en fonction de la production en cours sur la chaîne de fabrication. Le technicien de maintenance : Connaissant tout du fonctionnement des machines-outils et autres commandes numériques, le technicien de maintenance assure le suivi et l’entretien des robots industriels.

Les Métiers de la robotique

Murielle, tu sais comment ça marche ça ?

Les langages utilisés

Le C/C++ : Quoi de mieux que le C++ pour garantir de bonnes performance aux robots ? En plus d'être un langage puissant, le C++ possède un grand nombre d'outils, de bibliothèques et de fonctions utiles à la robotique. Le C quant à lui sera préféré pour les robots dont la mémoire est limité, ce langage étant plus précis dans la gestion de chaque octet. Le Python : Sûrement le plus populaire, et l'un des plus faciles d'utilisation. Comme le C/C++, il possède l'avantage d'être disponible sur ROS (un système d'exploitation dédié aux robots). Son petit plus ? Il possède une grande quantité de bibliothèques gratuites et on peut même le lier à du C/C++ ! Le LISP : Utilisé pour développer des fonctions de commande de robot dans une catégorie de micro-ordinateurs qui aide à la manipulation de diverses fonctions de robot. Java : La majorité d'institutions de l'enseignement supérieur offrant des cours de robotique et des certifications incluent Java comme un passage obligé au sein de leurs programmes d'études parce que ce langage fournit à ses utilisateurs de nombreuses fonctionnalités de haut niveau requises dans la programmation robotique. C# : Contrairement au C++, le C# est facile à apprendre. Le C# est facile car il gère automatiquement la gestion de la mémoire. Les points forts du C# pour la programmation de robots sont les suivants : facile à apprendre et à intégrer dans de grands projets, muni d’une grande variété de bibliothèques, dispose d'un excellent environnement de développement gratuit (Microsoft Visual C# Express), fonctionne sur le Framework .NET et est très interopérable. Les faiblesses de C# pour la programmation de robots sont les suivantes : le développement de logiciels est limité à Windows. De nombreuses interfaces homme-machine (IHM) sont développées en C#. Une IHM fait souvent partie des systèmes dits de supervision, contrôle et acquisition des données (SCADA).

C++

Le C++, un language qui envoie du pâté