max-0018-image-vedette.png
Accueil » Actualités » Création d’une tête de robot animatronique (Partie 1)

Création d’une tête de robot animatronique (Partie 1)



Une fois que vous avez créé une tête de robot entièrement articulée, l’étape suivante consiste à la contrôler.

Dans ma chronique précédente, j’ai décrit comment mon pote Steve Manley, qui est basé au Royaume-Uni, et votre humble narrateur (je suis fier de mon humilité), qui est basé aux États-Unis, ont décidé de construire des petits (80 x 80 mm ) circuits imprimés que nous avons modestement surnommés Steve et Max’s Awesome Displays (SMAD).

Ces petits coquins embarquent chacun 45 LED tricolores de la variété WS2812 (communément appelée sous la nomenclature NeoPixel d’Adafruit). Ce qui rend les SMAD vraiment fiers dans la foule, c’est le fait que nous les avons augmentés avec des coques et des plaques frontales imprimées en 3D (aka facias). Vous pouvez les voir dans l’image en vedette accompagnant cette colonne.

Les coques, qui sont utilisées pour compartimenter la lumière des LED, ont une épaisseur de 10 mm, ce qui permet d’éviter que la lumière ne semble provenir de sources ponctuelles. Il y a aussi une fine couche de diffuseur montée entre la coque et le facia. Pour cela, nous avons utilisé des morceaux de feuilles intercalaires en plastique blanc que vous pouvez acheter pour les classeurs à anneaux.

Comme je l’ai mentionné dans la colonne susmentionnée, l’une des choses que j’ai décidé de faire avec mes SMAD a été de les utiliser pour former les yeux d’une simple pseudo tête de robot. La raison pour laquelle j’utilise le qualificatif « pseudo » est qu’il ne s’agit d’un robot que de nom.

La base et la colonne de support sont en bois que j’ai tournées sur un tour et peintes à la bombe pour ressembler à du métal, tandis que la tête principale est un mélange de bois peint à la bombe et de carton coloré (les vis à métaux sont juste pour le spectacle car tout a été assemblés avec mon fidèle pistolet à colle chaude).

Max Maxfieldmax-0018-01-pseudo-robot-head.jpg

Rencontrez ma pseudo tête de robot.

Je dois admettre que j’étais plutôt satisfait de la façon dont cela s’est passé. J’aurais été très heureux d’expérimenter différentes combinaisons de couleurs et d’effets avec mes yeux SMAD. Mais ensuite, un ami a dit que les choses seraient plus intéressantes si j’ajoutais du mouvement dans le mélange.

La suggestion originale était que chacun des yeux puisse faire un panoramique (se balancer d’un côté à l’autre) et s’incliner (se pencher en avant et en arrière) sur une base individuelle. Bien sûr, il n’a pas fallu longtemps pour que ce concept soit étendu à l’ensemble de la tête.

Vous savez ce que c’est. Si vous n’avez pas d’idée dans la tête (ce qui est ma façon habituelle d’être), vous pouvez être très heureux, mais il est difficile d’arrêter de penser une fois que vous avez une idée en tête. Dans mon cas, il n’a pas fallu longtemps avant que je canalise le garçon dans Le sixième sens film (« Je vois des servos partout »).

Max Maxfieldmax-0018-02-servo-quatre-axes.jpg

Joystick 4 axes JH-D400X-R4

J’ai discuté de tout cela avec mon co-conspirateur Steve, à quel point nous avons décidé de partir sur des chemins légèrement différents. J’ai décidé de commencer à jouer avec des servo-assemblages préfabriqués de panoramique et d’inclinaison, tandis que Steve s’est tourné vers son fidèle outil de modélisation CAO 3D – il est devenu un gourou dans l’utilisation de Fusion 360 d’Autodesk – et a commencé à expérimenter dans le monde virtuel.

Je vais vous régaler avec les solutions super-époustouflantes liées aux servos associées à tout cela dans une future colonne. Pour l’instant, concentrons-nous sur le sujet du contrôle. A plus long terme, je souhaite équiper ma tête (j’entends par là ma tête de robot animatronique, pas ma pauvre vieille caboche bien sûr) d’une sélection de capteurs sophistiqués. Par exemple, je pense à un capteur de mouvement pour que la tête et ses yeux SMAD puissent se tourner pour suivre les gens lorsqu’ils se déplacent dans la pièce, un capteur de reconnaissance faciale qui peut détecter les expressions émotives et répondre (en changeant la couleur des SMAD ) aux visages heureux, tristes ou en colère, et une capacité de détection audio qui peut faire réagir la tête aux sons.

Mais tout cela est pour l’avenir. À plus court terme, je veux avoir quelques joysticks que je peux utiliser pour contrôler ma tête à la main (si vous voyez ce que je veux dire). Steve a eu la même idée. Finalement, nous avons tous les deux opté pour les mêmes appareils JH-D400X-R4, qui sont facturés comme des produits 4 axes (j’ai trouvé le mien sur eBay pour environ 16 $ chacun).

En réalité, le surnom à 4 axes est un peu impropre, car ces joysticks ne disposent que de trois potentiomètres de 10 kΩ (pots). L’un répond à un mouvement avant-arrière, un autre à un mouvement gauche-droite et un troisième (caché à l’intérieur) à un mouvement de rotation dans le sens inverse des aiguilles d’une montre. Le « quatrième axe » de contrôle est un interrupteur à bouton-poussoir monté sur le dessus du joystick.

Ceux-ci sont parfaits pour ce que nous voulons qu’ils fassent, et pour ma part, je pense qu’ils sont une bonne affaire au prix. Dans mon cas, j’utilise un microcontrôleur Teensy 3.6. Cette petite beauté est dotée d’un processeur Arm Cortex-M4F 32 bits 180 MHz avec 58 broches d’entrée/sortie (E/S) (dont 25 peuvent servir d’entrées analogiques si nécessaire), 1 Mo de mémoire Flash et 256 Ko de RAM . Cela signifie que j’ai plus qu’assez de broches d’entrée analogiques disponibles pour alimenter les signaux de mes six pots directement dans le MCU.

En comparaison, Steve privilégie un Teensy LC à faible coût pour bon nombre de ses projets. Le LC dispose d’un processeur Arm Cortex-M0 + 32 bits fonctionnant à 48 MHz avec 62 Ko de mémoire Flash et 8 Ko de RAM. Plus important encore, le LC n’a que 27 broches d’E/S disponibles, et Steve en utilise beaucoup pour d’autres choses. En conséquence, il a choisi d’alimenter les signaux de ses pots dans deux cartes de dérivation (BOB) de convertisseur analogique-numérique (CAN) ADS1015 à 4 canaux et 12 bits d’Adafruit. Ceux-ci communiquent avec le Teensy LC de Steve via un bus I2C à 2 fils, qu’ils partagent avec une carte de commande de servomoteur.

Adafruitmax-0018-03-adafruit-adc-bob.jpg

CAN BOB ADS1015 4 canaux, 120 bits

Je parlerai de tout cela plus en détail (certains diront atroce) dans une prochaine colonne. En attendant, j’aimerais entendre ce que vous pensez de la façon dont les choses se passent jusqu’à présent.

Publications similaires