Logo de Flowbotics Studio

Kit de montage de servo Lynxmotion V1.1 FlowBotics Studio et le kit de montage de servo Lynxmotion V1.1

Avec le lancement de la nouvelle plate-forme de programmation robotique FlowBotics Studio, RobotShop a décidé de lancer également le kit de montage de servo Lynxmotion V1.1. Il s’agit d’un kit de plus de 500 pièces vous permettant de construire cinq robots différents et de les contrôler via des applications préprogrammées à l’intérieur de FlowBotics Studio, qui est également inclus.

Les cinq robots sont les suivants :

  • Rover à 2 roues motrices
  • Bras robotique AL5
  • Bipède BRAT
  • Hexapode MH2
  • Quadrupède SQ3

Matériel

Le kit de matériel est livré avec des instructions détaillées sur la façon de construire chaque robot, la plupart des pièces sont communes aux différents robots, vous devez donc décider de celui que vous voulez construire. C’est très pratique car vous pouvez commencer simplement puis fabriquer des modèles plus complexes. Nous vous suggérons de commencer par le Rover, de continuer avec le bras, pui l’hexapode, le bipède, et enfin, le quadrupède. Un contrôleur PS2 Lynxmotion sans fil est aussi inclus, il vous permettra de contrôler votre robot. Le kit de montage de servo est livré avec tout ce dont vous avez besoin, y compris une puissante batterie rechargeable et un chargeur, et plus de 500 autres composants.

Contenu du kit de montage de servo Lynxmotion V1.1

Contenu du kit de montage de servo Lynxmotion V1.1

Logiciel

Dans cette section, nous allons nous concentrer sur le logiciel et sur l’utilisation de FlowStone dans FlowBotics Studio pour contrôler ces petits robots impressionnants, mais il y a aussi une carte de contrôle Arduino incluse dans le kit si vous préférez une approche de bas niveau.

Connectivité

Chaque robot est contrôlé par une carte contrôleur de servomoteur SSC-32, qui permet à 32 servos d’être contrôlés à partir d’une seule carte. En plus de cela, il y a une carte fille Bluetooth qui vous permet de contrôler vos créations à distance.

Tout le traitement est fait par l’intermédiaire du PC et de FlowBotics Studio, vous avez donc une puissance de traitement phénoménale à votre disposition pour faire des choses incroyables comme de la cinématique inverse, etc. Cette approche de la télémétrie sans fil est vraiment intelligente et, plus important encore, elle vous offre beaucoup de possibilités pour améliorer votre robot.

Ainsi, le système ressemble à : Contrôleur PS2 sans fil – PC – Bluetooth – SSC-32 – Robot

La Bee Bluetooth et son adaptateur de carte fille

La Bee Bluetooth et son adaptateur de carte fille

FlowBotics Studio

À ce stade, votre robot est construit et câblé, et il est maintenant temps de le commander à l’aide du logiciel FlowBotics Studio. En ouvrant FlowBotics Studio, vous pouvez aller dans le dossier Lynxmotion où vous verrez cinq projets de commande pré-établis. Double-cliquez pour en ouvrir un. La fenêtre de l’application de ce projet s’affichera comme pour une application autonome. Cette application lance une simulation de votre robot à l’écran et vous pouvez utiliser la souris pour faire glisser les membres de votre robot autour de l’écran, le robot connecté se déplacera simultanément.

Un des projets en démo dans FlowBotics Studio

Un des projets en démo dans FlowBotics Studio

Pour vous connecter au robot réel, cliquez sur le bouton « Port » et attendez que votre robot se connecte via Bluetooth — notez que la carte fille Bluetooth et le récepteur Bluetooth USB doivent déjà être jumelés dans Windows. Le bouton Port va scanner les différents ports série sur votre PC jusqu’à ce qu’il trouve la carte contrôleur de servomoteur SSC-32. Une fois connecté, tous les mouvements que vous faites sur l’écran vont être directement transmis au robot réel. Maintenant que vous avez le contrôle, il est temps de découvrir le nouveau séquenceur de modèles. Si à tout moment vous avez besoin d’aide, en plus des manuels d’utilisation complets, il existe un système simple d’informations à l’écran qui s’affichera en appuyant sur le bouton « I ».

Séquenceur de modèles

Un séquenceur de modèles très puissant est inclus dans chacune des applications. C’est là que vous pourrez créer des modèles de mouvement. Comme de nombreux robots peuvent marcher ou se déplacer de façons aussi diverses que variées, il devient vraiment utile de se constituer une bibliothèque de modèles de mouvement. Par exemple, marche avant, marche sur le côté, tourner, etc.

Le séquenceur de modèles dans FlowBotics Studio

Le séquenceur de modèles dans FlowBotics Studio

Des modèles et des séquences de démonstration sont également inclus pour chaque robot : pour les charger, utilisez le bouton d’importation de modèles et sélectionnez le fichier approprié pour votre robot. Cela chargera divers exemples de modèles que vous pouvez utiliser ou modifier pour prendre le contrôle de votre robot. Pour chaque robot, il y a aussi un certain système de contrôle pré-programmé qui utilise le contrôleur PS2 sans fil : une fois les modèles de démonstration chargés, vous pouvez littéralement faire sortir votre robot de sa boite en marchant.

Création de modèles

Une fois que vous avez exploré les modèles et séquences de démonstration, vous pouvez commencer à vraiment vous amuser : en créant votre propre modèle !

Pour ce faire, vous devez d’abord comprendre comment les modèles sont construits. Chaque modèle contient une série de « cadres » — chaque cadre représente une position particulière de votre robot — et en mettant en place des cadres de mouvement, un peu comme dans un film, vous pouvez animer votre robot. Les cadres peuvent être modifiés et peaufinés à l’infini pour atteindre le mouvement parfait, et la longueur du cadre peut être ajustée pour vous permettre de contrôler la vitesse de déplacement. Vous pouvez également sauvegarder et charger votre travail sur le disque à tout moment.

Création de séquences

Une fois que vous êtes satisfait(e) de vos modèles, vous pouvez les ajouter à la chronologie dans l’ordre que vous voulez, y compris en groupe, pour créer une séquence de mouvements. Ces séquences peuvent ensuite être lues, mises en pause, répétées en boucle (etc.) en utilisant les commandes de transport, et accélérées ou ralenties en utilisant les options de vitesse de lecture.

Si vous repérez des erreurs dans votre travail, pas d’inquiétude, vous pouvez modifier une séquence, un modèle ou un cadre à tout moment.

Les robots en détail

Le Rover à 2 roues motrices

Le Rover à 2 roues motrices Lynxmotion

Le Rover à 2 roues motrices Lynxmotion

Le rover 2 roues motrices comprend 2 servos à rotation continue connectés au contrôleur SSC-32 et une connexion sans fil Bluetooth vers FlowBotics Studio en cours d’exécution sur le PC. Dans le logiciel, vous pouvez contrôler la vitesse de rotation de chaque roue pour orienter la course du robot. Si vous utilisez le contrôleur PS2 inclus, vous pouvez contrôler le rover comme une voiture télécommandée, mais puisque FlowBotics Studio a tout prévu en matière de programmation robotique, il y a aussi un mode autonome qui utilise le capteur de distance Sharp permettant au rover de naviguer de manière autonome dans la pièce. Tout le code source est disponible sur simple pression d’un bouton dans la vue de programmation de FlowStone dans FlowBotics Studio (Maj + Echap) : la majorité du code source qui crée le mode autonome est contenue dans la zone de programmation de l’utilisateur, décrite plus loin dans cet article.

Le bras robotique AL5

Le bras robotique AL5D Lynxmotion

Le bras robotique AL5D Lynxmotion

Le bras robotique AL5D Lynxmotion est un bras à 3 axes proposant une rotation de base et un dispositif de préhension. Ce robot peut être commandé sans fil via Bluetooth ou connecté directement au PC en utilisant la fiche série vers l’adaptateur USB. Dans FlowBotics Studio, l’appli du bras vous permet de glisser le bras virtuel sur l’écran et le bras réel suivra le déplacement : voir c’est croire, et c’est on ne peut plus vrai dans ce cas-là. En outre, vous pouvez prendre le contrôle du bras (du virtuel et du réel) à l’aide du contrôleur PS2 pour déplacer le bras comme vous le souhaitez. Vous pouvez maintenant utiliser la télécommande pour vous aider à faire des séquences de mouvements : utilisez la télécommande pour déplacer le bras sur une position spécifique, par exemple, pour ramasser un objet, et utilisez le séquenceur pour enregistrer chaque cadre et créer les mouvements nécessaires pour mener à bien la tâche en question. Une fois que vous êtes satisfait(e) de votre modèle, il peut être sauvegardé sur le disque et ré-utilisé dans le cadre d’une séquence pour réaliser des tâches plus complexes. Dans une classe, les élèves peuvent même travailler sur des modèles individuels et les réunir ensuite pour former une séquence de mouvements.

En plus du séquenceur, vous avez la possibilité d’ajouter des boutons ou des capteurs, et d’interconnecter les différents robots électroniquement pour leur permettre de communiquer. Pour cela, allez dans la zone de programmation de l’utilisateur, dans la vue de programmation de FlowStone.

L’hexapode MH2

L'hexapode MH2 Lynxmotion

L’hexapode MH2 Lynxmotion

L’hexapode MH2 est un hexapode à 2 degrés de liberté avec deux articulations par jambe. Utiliser le SSC-32 et l’adaptateur Bluetooth crée une connexion sans fil vers votre PC. Dans le logiciel FlowBotics, vous pouvez déplacer chaque articulation et explorer les différentes allures pour faire marcher et tourner ce robot. Là encore, vous pouvez utiliser le contrôleur PS2 pour commander l’hexapode en utilisant les modèles de démonstration.

Le bipède BRAT

Le bipède BRAT Lynxmotion

Le bipède BRAT Lynxmotion

Le bipède est un grand robot doté de 3 degrés de liberté dans chaque jambe qui lui permettent de marcher et de tourner tout en douceur. Chaque pied utilise la cinématique inverse pour créer un mouvement de marche plus humain et cela facilite également énormément la programmation de ce robot. Vous pouvez déplacer les pieds dans le logiciel et toute la jambe suivra grâce à la cinématique inverse. Le BRAT utilise le contrôleur de servomoteurs SSC-32 avec la carte Bluetooth pour assurer un contrôle sans fil et utilise le contrôleur PS2 pour un contrôle à distance.

Le quadrupède SQ3

Le quadrupède SQ3 Lynxmotion

Le quadrupède SQ3 Lynxmotion

Enfin, le quadrupède SQ3 : c’est le plus sophistiqué et le plus complexe de tous les robots du kit SES avec 3 degrés de liberté pour chaque jambe. Une fois de plus, la programmation utilise la cinématique inverse pour vous faciliter la tâche. En utilisant le contrôleur PS2, vous pouvez même faire danser le rock n roll à votre robot pour lui donner vie : la cinématique inverse le fait bouger dans toutes les directions tout en gardant tous ses pieds sur terre. Le SSC-32 et l’adaptateur Bluetooth sont de nouveau utilisés pour permettre le contrôle sans fil.

Programmation personnalisée

Chacun des projets robotiques inclus dans le kit de montage de servo dispose d’une zone de programmation de l’utilisateur dans la vue de programmation de FlowStone, où vous pouvez facilement modifier, ajouter et améliorer votre application robotique. Vous pouvez même vous connecter au Cloud Robotics de MyRobots.com (le « Facebook » des robots) pour identifier les mouvements de vos robots ou communiquer avec d’autres robots dans le monde entier !

Zone de programmation de l'utilisateur : exemple

Zone de programmation de l’utilisateur : exemple

Nous allons maintenant creuser un peu plus en profondeur pour entrer dans le monde du langage de programmation FlowStone sur lequel se basent tous les principaux projets afin d’explorer les possibilités de création de projets personnalisés. Cette section peut être divisée en trois parties, 1) Utilisation du langage de programmation, 2) Régler la zone de programmation de l’utilisateur, et 3) la programmation 100% personnalisée.

Utilisation du langage de programmation

Avec la dernière version de FlowBotics Studio, vous avez quelques fonctionnalités préprogrammées assez soignées qui vous permettent de prendre le contrôle externe de votre robot sans créer de code. Cette option utilise largement les broches d’entrée de rechange (ABCD) du contrôleur de servo SSC-32 pour contrôler l’état du logiciel ainsi que le matériel du contrôleur PS2 sans fil inclus. Plus tôt, nous avons introduit le concept de modèles et de séquences qui permettent de construire une bibliothèque de mouvements robotiques. Maintenant, en utilisant les outils des « opérations spéciales », vous pouvez ajouter une commande « Pause avant cadre » sur la chronologie pour contrôler votre robot. Cela mettra en pause le séquenceur à un cadre particulier jusqu’à ce que vous basculiez sur l’entrée « B » sur la carte de contrôleur SSC-32, qui reprendra la lecture. L’entrée « B » peut également être utilisée pour commencer à lire la séquence depuis n’importe quel endroit. L’entrée « C » arrête la séquence, et vous donne ainsi la pleine maîtrise de la chronologie via les broches matérielles externes. Cette fonctionnalité de base vous permet de faire interagir plusieurs robots et elle peut être utilisée pour ajouter différents capteurs et ainsi contrôler le comportement de vos robots.

La zone de programmation de l’utilisateur

Si vous voulez ajouter d’autres fonctionnalités en complément des « basiques » (marche/arrêt/pause), vous pouvez créer ce dont vous avez besoin dans la zone de programmation de l’utilisateur. Ce n’est rien de plus qu’une zone dans le code FlowStone, mise de côté pour les utilisateurs qui souhaitent faire parler leur créativité sans avoir peur de gâcher l’ensemble du programme. Après tout, vous aurez accès à l’intégralité du code source afin de pouvoir changer absolument tout ce que vous voulez !

Dans la zone de programmation de l’utilisateur, il existe un ensemble de blocs de construction simples et des scripts Ruby qui devraient permettre aux plus aventureux de créer une interactivité personnalisée avec le minimum d’effort.

Ce qui est vraiment excitant lorsque vous commencez à plonger plus profondément dans FlowBotics Studio, c’est que le code FlowStone utilisé pour créer le projet est en cours d’exécution sous l’application principale en temps réel. Cela signifie qu’il n’y a qu’un seul programme en cours, et non pas un code source séparé qui doit être compilé. Si vous appuyez sur « Maj + Echap » à l’intérieur d’une application FlowBotics, cela révélera le code FlowStone qu’il y a dessous, puisque ces projets sont très sophistiqués et complexes, il existe un module spécial pour les débutants afin qu’ils puissent créer leur interaction personnalisée, situé en haut à gauche du projet, un niveau au-dessous une fois que vous êtes dans le mode FlowStone :

Étapes à suivre pour trouver la zone de programmation de l'utilisateur

Étapes à suivre pour trouver la zone de programmation de l’utilisateur

Une fois dans la zone de programmation de l’utilisateur, vous pouvez voir un ensemble de modules pré-définis que vous pouvez facilement re-connecter et modifier :

Zone de programmation de l'utilisateur : exemple

Zone de programmation de l’utilisateur : exemple

Par exemple, vous pouvez maintenant voir comment le mode pause pré-défini fonctionne et comment il est contrôlé à partir de l’entrée « B » & « C » à partir du contrôleur de servomoteur SSC-32. Ces entrées se trouvent dans des menus déroulants, ainsi vous pouvez facilement sélectionner telle ou telle entrée.

Vous pouvez également voir les modules pré-définis pour l’interaction avec le contrôleur PS2. Si nous entrons dans l’un de ces modules, par exemple « Pince Ouvrir/Fermer », alors vous pourrez voir comment l’interaction est arrangée :

À l’intérieur du module « Pince Ouvrir/Fermer »

Les câbles sont reliés au contrôleur PS2 par défaut, mais ils peuvent être connectés à une autre interface très facilement. Par exemple, si nous devions ajouter une carte d’interface Phidgets 8/8/8, nous pourrions avoir 8 entrées numériques et 8 entrées analogiques avec des capteurs pour contrôler notre robot :

phidgets-888-hw-code

phidgets-888-code Exemple de code utilisant un Phidget 8/8/8

Maintenant que nous avons ajouté le module FlowStone Phidgets 8/8/8, nous avons le contrôle de la base de rotation depuis les entrées analogiques 0 & 3. Si entrée = 0 > 100 tours en sens horaire, si entrée = 3 > 50 tours en sens antihoraire. Même chose avec la pince Ouvrir/Fermer : si l’entrée numérique 0 = 1, Ouvrir pince, si l’entrée numérique 1 = 1, Fermer pince. Pour ceux d’entre vous qui ont également repéré le module « Après chargement » sur l’entrée Phidgets Start, il permet simplement de se connecter au matériel Phidgets au démarrage en envoyant une commande à l’entrée Démarrer du module lorsque le projet se charge. FlowBotics Studio prend en charge des centaines d’interfaces matérielles différentes, y compris l’ensemble de la gamme des phidgets, toutes sortes de contrôleurs de moteurs, de capteurs, de caméras, de cartes son, d’interfaces d’acquisition de données, de ports USB, série et réseau.

Jusqu’à présent, nous avons vu comment nous pouvions contrôler les mouvements d’un robot via des entrées externes et utiliser les entrées ABCD du SSC-32 pour lancer/arrêter/mettre en pause notre séquenceur… Et si nous voulions lancer des modèles spécifiques de mouvement en contrôle externe ?

C’est là qu’interviennent les scripts de code Ruby : ils se trouvent à l’intérieur des modules sous ce genre d’appellations « Lancer accueil », « Modèle de mouvement1″, etc.

Une séquence de modèles mise en œuvre dans FlowStone

Une séquence de modèles mise en œuvre dans FlowStone

À l’intérieur, vous trouverez quelques scripts Ruby que vous pouvez modifier pour créer une interaction complexe avec vos habitudes de déplacement :

Un module Ruby

Un module Ruby

Cela peut paraître complexe au premier abord, mais une fois que vous avez compris le fonctionnement, le code Ruby est assez simple. Il existe sept commandes de base de script : Play, Stop, Reset, Goto Pattern, Loop False, Loop True et Speed ; qui peuvent être vues dans l’infobulle d’aide dans « commandes de séquenceur ». Ce script fonctionne en recevant une commande de démarrage de la part de certains périphériques externes, puis comme on peut le voir dans le code Ruby : on arrête le séquenceur, on règle la vitesse de lecture sur 2, on éteint le mode en boucle, puis on définit la position de lecture sur le modèle appelé « Accueil », et enfin on lance le modèle. Une fois que le modèle appelé « Accueil » est terminé, il envoie une commande à la sortie « Terminé » de sorte que le modèle suivant peut être démarré, et ainsi de suite. Vous pouvez modifier ce code Ruby pour faire ce que vous voulez : il est totalement libre et est très puissant. Par exemple, vous pouvez ajouter quelques entrées et sorties et prendre des décisions logiques pour créer un robot entièrement autonome !

En plus de pouvoir contrôler votre robot en externe et de programmer des décisions pour lancer des modèles dans le séquenceur, vous pouvez également ajouter un des 100 modules FlowStone pour créer quelque chose d’encore plus élaboré. Par exemple, vous pouvez ajouter une webcam et certains modules de détection de mouvement ou de couleur pour donner la vue à votre robot, ou ajouter un système de synthèse de voix ou de lecture audio pour qu’il puisse parler. Les possibilités avec FlowBotics Studio sont vraiment infinies !

Programmation 100% personnalisée

Pour la plupart des gens, la zone « de programmation de l’utilisateur » sera plus que suffisante pour améliorer leur robot autant qu’ils peuvent l’être, mais pour d’autres, c’est une chance de fabriquer un tout nouveau robot en utilisant les pièces du kit de montage de servo. Après tout, c’est un kit de plus de 500 pièces et il n’est pas limité aux cinq configurations de robots présentées ici.

Contenu du kit de montage de servo Lynxmotion V1.1

Contenu du kit de montage de servo Lynxmotion V1.1

Par exemple, vous pourriez fabriquer un robot hexapode avec un bras robotique sur son corps, ou quelque chose de tout nouveau et de totalement innovant. Pour cela, vous devez faire votre propre programme avec votre conception en miroir dans le code FlowStone. Pour répondre à toute éventualité et faire de FlowBotics Studio un must, vous pouvez créer vos propres projets dans FlowStone à partir de zéro, à l’intérieur de FlowBotics Studio. Pour ce faire : à partir de la fenêtre principale de FlowBotics Studio, cliquez sur le signe « + » pour créer un projet vide. C’est exactement ce que c’est : une feuille totalement vierge à votre disposition pour créer votre code FlowStone. Vous pouvez copier/coller dans d’autres projets aussi, vous pourrez ainsi réutiliser les pièces d’autres projets et même réutiliser des projets entiers si vous le souhaitez. Voici par exemple un projet d’hexapode et de bras associés ensemble :

Un projet conceptuel combinant un projet d'hexapode et de bras

Un projet conceptuel combinant un projet d’hexapode et de bras

Conclusion

Donc, de ce que nous vous avons montré ici aujourd’hui, vous pouvez voir que Flowbotics Studio est bien plus puissant et plus libre qu’une application robotique fixe, et c’est la solution idéale pour toute démarche éducative, pour apprendre l’informatique ou tout simplement jouer avec la robotique. Pour la plupart des gens, l’utilisation de la zone de « programmation de l’utilisateur » FlowStone stimulera leur inspiration pour un bon moment ; et pour ceux qui veulent créer quelque chose d’entièrement nouveau, il y a le langage complet de programmation FlowStone qui saura littéralement libérer vos inventions.

Liens :