Close

évolution technologique

A project log for SteamBot Willie

Un robot à ficelles ElectroPunk (défi 0 plastique), le plus léger possible et intégrable à terme dans un ours en peluche

llollo 11/12/2017 at 16:160 Comments

Dernier log datant de mi-septembre ? Ouch, il était temps d'en faire un nouveau.

Depuis que j'ai cerné les technologies qui seraient utilisées pour le contrôle des moteurs, les choses ont bougé. Je dirai même que la terre a tremblé : d'un côté, les PICs ont montré un certain degré de résistance à la programmation qui m'a un peu refroidi et de l'autre, le processeur que je comptais utiliser pour la partie haut niveau (qui correspondrait à la partie bas niveau d'un ordinateur, soyons clairs) a décollé comme une fusée. Du coup, étant donné qu'une version plus menue est en production à l'heure où j'écris, il devient possible d'envisager une utilisation complète de FPGA : de petits FPGA avec une multitude d'outils énergétiques pour le bas niveau, et de plus gros FPGA, plus sommaires mais plus puissants pour la partie haute :) Merci Whygee :-* 

Cela dit, j'ai quand même écrit ce fameux article sur les PICs, parce que mine de rien, attaquer cette partie avec un tuto, ça aide sérieusement à mettre le pied à l'étrier. Je finis la relecture et j'envoie :)

Rappelons nous que la nécessité de l'utilisation d'une logique avancée pour le contrôle des moteurs est multiple : il y a évidemment la coordination entre les moteurs (c'est la première chose à laquelle on pense en tant que roboticien), il y a aussi l'utilisation, de plus en plus courante et précise d'outils de contrôle de type accéléromètres, pour réguler l'utilisation des moteurs et permettre au robot d'acquérir une certaine stabilité, par des mouvements plus fins.

Il y a enfin dans mon cas un contrôle de l'énergie utilisée par les moteurs, afin de les forcer à respecter le contexte articulaire dans lequel ils sont intégrés. C'est une nécessité dans mon cas et pas dans d'autres car mon système articulaire ne prévoit de bornes mécaniques. Pas de triches, de fins de courses, tout est hyper flexible et hyper laxe. C'est un désavantage évident dans le cas d'un robot basique, avec quelques mouvements répétitifs. Ça devient une nécessité absolue dans le cas d'un robot capable d'exécuter des combinaisons complexes de mouvements variés. Dès qu'on aborde l'équilibre, les mouvements fins, le déplacement de poids, raisonner en termes d'axes coordonnés ne suffit plus pour que ça tienne la route, il faut maîtriser la puissance et contrebalancer les effets de plusieurs moteurs.

Pour ça, il faut connaitre le mouvement produit, la consommation des moteurs et détecter les surconsommations employées pour forcer le moteur à tourner malgré une résistance au mouvement et garder en tête l'hyper flexibilité. Ou pour parler de façon plus précise : envoyer un courant et un voltage au moteur, connaitre l'accélération produite sur le membre, corriger éventuellement, et en fonction de l'efficacité de cette correction, continuer d'augmenter, et tout le temps de cette correction, comparer la consommation et stopper le mouvement quand la consommation dépasse un certain seuil, au risque de léser l'articulation, le moteur ou les deux.

Discussions