Un robot est une machine qui effectue des actions de manière automatique et autonome. Ces actions peuvent être dans le monde réel ou virtuel. Dans le monde réel, ce sont les robots industriels, les robots ménagers (l’électroménager en général) … Les voitures autonomes entrent aussi dans cette catégorie. Pour le monde virtuel, le plus connu est celui de Google qui indexe tous les sites disponibles à travers Internet.
Mais le monde virtuel n’est pas le plus simple à appréhender. Alors, restons dans le monde physique. Je généralise beaucoup mais la robotique se conçoit très bien en informatique. Toujours le même principe, des entrées, des traitements et des sorties. La différence est dans la nature des interactions. Comme tous les domaines d’ailleurs…
Pour les entrées, fini le clavier et place aux accéléromètres et autres capteurs de distances (caméras, radars, lidars, …). Se repérer et se déplacer en 3 dimensions est aussi un défi. Bien que naturel pour n’importe qui, sauf maladie cérébrale, décrire ce mécanisme pour l’automatiser se révèle très complexe. Mais là, on rentre dans le traitement de l’information.
Les sorties sont nombreuses. On pense à la réponse renvoyée par le robot. Les interfaces pour produire des sons ou des images sont nombreuses. Les japonais sont allés plus loin en créant un robot qui imite les réactions d’un visage. Il faudra travailler la gestuelle des mains pour leur androïdes d’accueil italiens.
On peut penser aussi au déplacement. Créer un mouvement c’est de la mécanique et c’est moins simple que ça n’y parait. Pour qu’un automate se déplace ou réalise des mouvements simple, il doit être articulé. Chaque élément de l’automate est relié à l’autre par une articulation. Le mouvement est produit par un servomoteur. ‘servo’ signifie que l’angle ou la vitesse de rotation du moteur est contrôlé par un système extérieur (la partie Traitement). ‘servo’ vient du latin ‘servus’ (esclave) par opposition au maître.
Pour connaître la position à appliquer à chaque éléments, il faut aussi placer des accéléromètres sur chaque axe. Un squelette électronique s’est longtemps révélé complexe et cher à concevoir. Heureusement que les Arduino et autres microcontrôleurs sont arrivés. Ils sont bon marché et simples à programmer. Pour le simple à programmer, c’est relatif mais les tutos, surtout en anglais, sont nombreux sur Internet.
Pour la partie Traitement, les microPc type Raspberry conviennent. Ils sont économes en énergie (ce qui limite l’apporte d’énergie principalement au mouvement) et suffisamment performants pour effectuer des calculs complexes. Réaliser son premier automate, même s’il s’agit d’un défi difficile, est désormais possible même pour un particulier.
La partie traitement reste la partie la moins évidente à mettre en oeuvre. On ne fait pas confiance dans une IA pour piloter une voiture. Alors un androïde ! Il semble que Terminator et Robocop aient laissé des traces. Et les articles sur Boston Dynamics ne sont pas des plus rassurants, limite inquiétants, lorsqu’on connaît l’orientation militaire de cette firme. Petite info, ils sont loin d’être les seuls à travailler pour concevoir des armes.
Par contre, le développement d’exosquelettes semble plus porteur. Il s’agit d’une armature destinée à amplifier les mouvements de son porteur. On conserve les parties entrées/sorties. Et le traitement se limite à donner des indications sur l’équilibre ou bloquer l’armure en position de sécurité en cas de difficulté. Les autres mouvements sont définis par le porteur.
Je reconnais que cet article est un peu décousu mais avant d’évoquer en détail des sujets comme les androïdes, les exosquelettes ou les fantasmes sur la robotique (il y a de la matière sur ce dernier point), je préfère donner quelques repères dans ce domaine pluridisciplinaire.