Aller au contenu


Photo
- - - - -

Le robot scribe de F4HDK

Robot Scribe

6 réponses à ce sujet

#1 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 963 messages
  • Gender:Male
  • Location:Anglet

Posté 23 février 2018 - 02:25

Suite à un soucis technique un sujet qui traite du robot scribe de F4HDK a été perdu. 

Heureusement nous pouvons retranscrire ici les données les plus intéressantes : 

 

ROBOT SCRIBE V2 en date du 26 mai 2013

 

 

 

Ce que F4HDK avait écrit : 

 

 

 

Mes tests précédents m’ont permis de voir que les servomoteurs de modélismes ne sont pas suffisamment précis, et comportent trop de jeu mécanique, pour pouvoir réaliser une opération aussi précise que l’écriture sur une aussi grande surface. L’électronique des servos standard ou remplacée ne change rien au problème. Comme je suis têtu, je n’ai pas voulu rester sur un échec. J’ai donc revu ma copie en remplaçant les servomoteurs par des moteurs pas à pas, beaucoup plus adaptés et très simples à mettre en oeuvre.

Video:


Photos:


Mécanique – Structure :
La mécanique initiale, entièrement réalisée à partir de pièces Lynxmotion, n’était pas suffisamment robuste, pas suffisamment rigide.

J’ai donc renforcé ça, en changeant toute la partie bras et épaule, qui est la plus critique, et qui doit donc être la plus rigide possible. L’ensemble est réalisé avec de la tôle aluminium de 3mm (c’est surdimensionné, mais j’avais ça en stock), et des entretoises découpées dans des profilé alu rond. Le tout est assemblé avec des tiges filetées et écrous M3 (parfois un peu juste, j’aurai du passer à du M4). Les articulations sont réalisées à partir de petits roulements à bille, les logements des roulements étant de simples trous de 8mm directement réalisés dans la tôle, comme pour les articulations Lynxmotion standard.

La partie avant-bras est moins critique, et on peut accepter plus de flexibilité. Il faut également privilégier la légèreté pour cette partie (qui contribue fortement à l’inertie). J’ai donc conservé des pièces Lynxmotion.

Mécanique – Moteurs :
L’emplacement des moteurs est volontairement fixe, y compris le moteur du coude, pour alléger au maximum les parties mobiles ; c’est nécessaire pour obtenir des mouvements rapides, avec des moteurs bas de gamme peu coupleux. Le moteur du coude est donc centré sur l’axe de l’épaule. La transmission se fait par courroie crantée. La longueur du bras est donc déterminée par les longueur de courroie standard disponibles. Il y a 1 seul étage de réduction pour chaque moteur, de rapport 4.4 (10 dents côté moteur et 44 dents côté articulation). C’est suffisant vu le faible couple demandé.

Les 2 articulations offrent un débattement important, sur plus de 270 deg. Cela permet d’inverser le coude, et donc d’utiliser 2 outils différents de part et d’autre du poignet : stylo ou gomme.

Le poignet est réalisé avec un servo standard. Cette articulation n’a pas besoin d’être précise, contrairement au coude et à l’épaule. Elle est quand même renforcée par un roulement à bille à l’arrière du servo, pour limiter le jeu mécanique important.

Electronique :
L’électronique est assez simple, et réduite au minimum:
* Une platine microcontrôleur Mbed (que je possédais déjà) à base de ARM Cortex M3.
* Deux contrôleurs de moteur pas à pas « easy driver » de Sparkfun à base de A3967.
* Un régulateur de tension 5V à découpage
* Un potentiomètre pour régler manuellement la vitesse d’exécution des mouvements (par logiciel).*
* 1 sortie servo pour le poignet.
* 2 entrées tout ou rien pour les switch de fin de course des 2 articulation (indispensable pour avoir une référence, un zéro, avec des moteurs pas à pas).

2 remarques sur l’électronique : 
* j’ai été très impressionné par les progrès réalisés dans les contrôleurs de moteurs pas à pas. Ca faisait 15 ans que je ne m’étais pas intéressé à ce genre de sujet. Aujourd’hui, pour une somme dérisoire, on a un contrôleur de moteur pas à pas complet (A3967), pour moteurs bi-polaires, avec pont en H intégré, ne nécessitant pas de diodes de roues libre externe, optimisé en dissipation thermique, régulé en courant, et surtout gérant les micro-steps. C’est un progrès énorme qui facilite beaucoup l’utilisation de moteurs pas à pas.

* L’ensemble de l’électronique est alimentée en 24V, malgré les moteurs 12V. Cela permet de vaincre plus facilement le fort effet inductif des moteurs. A haute vitesse, la régulation en courant converge plus rapidement, et cela permet de conserver un couple important à haute vitesse. C’est une méthode assez courante pour l’alimentation des moteurs pas à pas.

Logique/programmation :
Autant le dire tout de suite, c’est un projet beaucoup plus simple que BOB3 et BOB4 en terme de programmation.
Comme à mon habitude, j'ai tout codé intégralement tout seul, sans reprendre de code ou de librairie extérieure. Même la "police de caractère" est inventée.
Au global, les mouvements sont réalisés à vitesse 2D constante. La vitesse est réglable directement par le potentiomètre.
En résumé, voici la liste des fonctions codées, en partant du bas niveau vers le haut niveau :
* Génération des tops de chacun des 2 moteurs par interruption, à une période donnée. En même temps, la fonction mets à jour la position angulaire des moteurs. La période est fonction de la vitesse angulaire visée. Fonction appelée jusqu’à ~1000 fois par seconde.
* Mise à jour de la période des 2 interruptions ci-dessus, en fonction de la position angulaire visée, de la position angulaire actuelle, pour chacune des 2 articulations, et de la vitesse d’exécution (réglable par le potentiomètre). En gros, on élabore une consigne de vitesse angulaire.
* Calcul trigonométrique de cinématique inverse pour établir la position angulaire visée des 2 articulations, en fonction de la position 2D (X, Y) visée. Fonction appelée jusqu’à 200 fois par seconde.
* Fonctions graphiques « line » ou « circle » : elles décomposent le trait ou arc de cercle à tracer en segments de ~1mm. Ces segments ne sont en théorie pas réalisés par de vrais segments, car parcourus à vitesse angulaire de moteur constante. Mais 1mm est suffisamment petit pour que l’approximation soit parfaitement acceptable.
* Fonction « printf ». A partir du code ASCII du caractère à écrire, de la « police de caractères » stockée en mémoire, de la taille et de la position 2D du caractère, élaboration des consignes de de segments/arc de cercle.
* En plus de tout ça, à l’initialisation, une fonction vient apprendre les butées de fin de course.

Il me reste encore des trucs à peaufinner, mais le résultat me convient déjà!

F4HDK

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#2 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 963 messages
  • Gender:Male
  • Location:Anglet

Posté 23 février 2018 - 02:31

 

 

Merci à tous les 4 pour vos commentaires! Ca me fait plaisir! smile.gif

 

Les contrôleurs sont donc des Sparkfun EasyDriver Stepper Motor Driver https://www.sparkfun.../products/10267
Sont-ils facile à cabler et à utiliser ? Déjà, je vois qu'il y a plein de soudures à faire pour les connecteurs, ce qui est décourageant.
J'envisage d'utiliser des moteurs pas à pas dans quelques temps, mais je ne sais pas trop quels contrôleurs choisir.

Oui, ce sont bien les drivers pas à pas que j'utilise. Ils sont disponibles chez Lextronic en France.
Pour la soudure, je pense qu'il est indispensable de savoir souder un minimum pour faire de la bidouille/électronique/robotique. Il suffit de s'entrainer sur des montages simples, des platines d'essai, avant de souder un truc qui coute un peu d'argent.
Ici, sur la platine Sparkfun, tu peux souder des fils ou des connecteurs, c'est comme tu veux. Le minimum vital, sur cette platine, c'est 3 parties à souder, donc ça reste très raisonnable : 
* 2 pistes pour l'alimentation 
* 3 pistes pour la commande 
* 4 pistes pour les moteurs.

 

Par curiosité, quels sont les points qui te restent à peaufiner ?

Alors, en vrac (ce ne sont pas les idées qui manquent):
* Côté mécanique, il faut que je rajoute un tendeur de courroie sur la courroie de l'épaule, comme j'en ai déjà mis un sur la courroie du coude. On voit au tout début, à la fin de la calibration de l'épaule, ça oscille à cause d'un manque de tension dans cette courroie.
* corriger quelques bugs persistants. Exemple : sur des grands déplacements, la position est mal mise à jour, à cause de problèmes de timing mal gérés. On le voit un peu sur le début du N dans la vidéo, après le retour à la ligne.
* Faire des mouvements "stylo levé" plus rapides : ils n'ont pas besoin d'être précis, et ça améliorera grandement la vitesse d'écriture globale.
* Il faut que je finisse de lui apprendre tous les caractères ASCII utiles : minuscules, chiffres, ponctuation, caractères accentués...
* Mettre une "gomme" de l'autre côté du poignet (au cul du stylo), pour pouvoir effacer (sans intervention humaine) et ré-écrire dans la foullée. J'inverserai l'articulation du coude et du poignet, le concept du "robot scara" permet de le faire. C'est la seule façon d'atteindre toute la surface écrite si la gomme est placée de l'autre côté du stylo.
* Mettre un bouchon de stylo, fixe, sur l'épaule, pour boucher le stylo entre 2 phases d'écriture, sans intervention humaine.
* Pour le fun : écrire l'heure en direct... Une horloge-scribe.
* Pour le fun encore : écrire un texte en provenance d'un flux RSS ou d'un compte twitter, en autonome, sans PC, directement depuis le microcontrôleur connecté en Ethernet; c'est faisable à priori.

F4HDK

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#3 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 963 messages
  • Gender:Male
  • Location:Anglet

Posté 23 février 2018 - 02:34

 

Voici une nouvelle vidéo de SCRIBOT.


SCRIBOT (c'est le nom de mon robot scribe) a progressé sur plusieurs points :

  • Il peut écrire une chaine de caractère, soit qu'on lui envoie par port série, soit stockée en local. J'ai codé une grande partie de l'ASCII étendu (accents, caractères spéciaux).
  • Il sait désormais utiliser un 2ieme outil, la gomme, de l'autre côté du stylo. Pour que la gomme puisse atteindre toute la surface, j'inverse le coude, ce qui donne un effet très sympa et amusant, je trouve. Il efface les lignes, une à une, pour faire de la place et écrire à nouveau.
  • Il donne l'heure, en temps réel, à la minute près, grâce à l'horloge sauvegardée du microcontrôleur. Encore une fonction que je trouve amusante.

Je rappelle que toute l'intelligence est dans un microcontrôleur, il n'est pas commandé par un PC.
Bref, c'est un projet assez amusant à réaliser. Je suis content du résultat, même si je pensais réussir à faire un robot plus rapide que ça.
C'est un robot qui est capable de "vivre sa vie" tout seul, pendant un temps indéfini; et ça c'est vraiment amusant!
Je pense que je n'irais pas beaucoup plus loin sur ce projet, car je ne vois pas d'autre amélioration intéressante à réaliser.

F4HDK


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#4 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 963 messages
  • Gender:Male
  • Location:Anglet

Posté 23 février 2018 - 02:36

 

 

Merci pour vos retours.

 

Par contre une petit question : il marche bien si tu le met à la verticale ?

Il marche beaucoup moins bien à la verticale. Ce sont de petits moteurs bas de gamme, et le poids du bras est trop élevé (même si j'ai fait des efforts). Je peux lever de 30 à 40°, mais pas plus. Et puis je ne peux pas non plus atteindre la même vitesse s'il est incliné.

j'aimerais bien avoir un peu plus de details si tu partage ignat_02.gif !


Qu'est-ce que tu voudrais savoir de plus? La description que je fais dans mon premier post n'est-elle pas suffisante?
A moins que tu ne veuilles le code complet pour pouvoir reproduire le robot. Si c'est ça ta demande, la réponse est non, j'ai déjà eu trop de problèmes par le passé en refilant d'autre codes

Mais si par contre tu as des questions précises, et si tu veux t'inspirer de cette réalisation pour concevoir ton propre robot (scribe ou autre), alors je serais ravi de t'aider! N'hésites pas à me poser toutes les questions techniques qui te passent par la tête, qu'elles soient précises ou générales.

F4HDK

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#5 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 963 messages
  • Gender:Male
  • Location:Anglet

Posté 23 février 2018 - 02:42

      

 

 

Cette déclaration est terriblement énigmatique et excitante  ... ignat_02.gif

Quelles furent donc les terribles conséquences de cette révélation ?

 


Une société secrète millénaire t'a-t-elle traqué à travers le monde pour éviter que ton robot ne découvre le tombeau du christ ?Koshechka_08.gif

Ou un groupe terroriste a-t-il copié ton code pour fabriquer une arme de destruction massive autoguidée ? dvgmax_01.gif

Le monde veut savoir 
F4HDK ... 32px-Gnome-face-smile-big.svg.png ...en tout cas, moi ça m'intéresse !


Ah, et bravo pour le bras autonome... yes.gif


 

Sacré Bet@m@x! on rigole bien avec toi! Merci pour cette tranche de rire. Bien trouvé la référence au "Da Vinci Code"!!! laugh.gif
Et heureux de voir que tu continues à suivre les forums robotique.
Plus sérieusement... L'histoire est terriblement classique, pas originale du tout.
J'ai refilé un code à 5 personnes différentes, dont certaines m'avaient "supplié". C'était 4 élèves et 1 prof d'école d'ingé : oui, je dis bien un prof! Avant ça, j'avais bien imposé mes conditions : l'objectif doit être pédagogique, surtout pas de copier-coller bête du code; je réponds aux questions pertinentes, mais je n'aide surtout pas à "porter" le code sur leur robot, ni à faire leur boulot. Tous ont bien évidemment du accepter ces conditions, sinon je ne leur aurait rien refilé.

Rien de ce que je fais n'est (pour l'instant) open-source et destiné à être reproduit facilement. Pour l'instant, je bidouille pour moi, pour me faire plaisir (c'est égoïste, je sais). J'envisage par la suite de contribuer à des projets plus ou moins open-source, on verra bien.

Revenons au sujet : sur les 5 personnes à qui j'ai donné du code, je n'ai eu de nouvelles par la suite que de 4 personnes. Aucune ne m'a montré ce qu'elle avait fait avec, malgré au moins 3 relances de ma part à chacun d'entre eux. Et surtout, les seules questions que j'ai eu en retour (nombreuses sollicitations pour 2 des 4) avaient pour unique objectif de les aider à "porter" le code sur leur robot. Voire que je leur donne tous les schémas, le code du microcontrôleur qui sert d'interface. Or, je n'ai jamais fait de schéma (tout sur papier), et je n'avais même plus le code du microcontrôleur (qui était ultra simple). J'ai quand même pris le temps d'expliquer dans le détail ce que devait faire le code du microcontrôleur, comment interfacer les composants entre eux, mais ça ne servait à rien, la même question revenait toujours : "file moi tout, le code, les schéma, ça ira plus vite". Quitte à carrément me demander de refaire un schéma juste pour leurs beaux yeux.

Bref, l'objectif de ces 4 personnes en face était uniquement de faire du copier-coller sans trop réfléchir. Et bien évidemment avec comme objectif final d'avoir une bonne note en "robotique" dans le cadre de leurs études, ou d'avoir un projet intéressant à faire faire à ses élèves pour le prof. Pourtant, certains essayaient d'argumenter sur l'objectif pédagogique, mais ça masquait assez mal leur volonté de copier-coller.

 

Ah, et bravo pour le bras autonome...

Merci! 
Bon, alors, tu vois qu'on peut arriver à quelque chose d'assez précis. Et tu vois aussi que le mouvement de rotation du poignet n'est pas un problème contrairement à ce que tu craignais! wink.gif

Citation

Je suis curieux de voir ce que ça donnera d'un point de vue précision du tracé ... et comment tu éviteras qu'un trait apparaisse au moment de la rotation du poignet (seul moyen de lever la pointe du stylo apparemment).


F4HDK

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#6 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 963 messages
  • Gender:Male
  • Location:Anglet

Posté 23 février 2018 - 02:51

 

Merci pour vos appréciations.

Mmaatthhiieeuu, (le) 21 Sep 2014 - 3:25 PM, a écrit :snapback.png

Je viens justement d'acheter un easy driver v4,4 , mais le problème c'est qu'il chauffe extremement vite et je ne comprend pas pourquoi ! En fait je pensais que ça venait du moteur car l'easydriver peut supporter jusqu'à 750mA, alors que mon moteur fait 1A / phase, mais en voyant tes photos je suppose que les moteurs que tu utilises sont bien plus balaises que le petit Pas à pas que j'ai ! Je suis assez novice en électronique et je suis un peux confus dans les notions d'ampérage, est-ce qu'on peut le réguler pour que l'easy driver ne reçoive que 750mA? Comment puis-je  vérifier l'intensité exact qui passe dans mon contrôleur ?

Merci et bonne continuation à toi !

à bientôt

Mat

Pour ajuster le courant dans les moteurs, il faut tourner le petit potentiomètre qui est sur la platine easy-driver. Il faut bien évidemment mesurer le courant, côté moteur (et non côté alimentation), quand on fait l'opération.

 

F4HDK


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#7 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 504 messages
  • Gender:Male
  • Location:Paris

Posté 02 mai 2018 - 06:06

Revoilà le robot scribe ! =)
https://hackaday.io/...-scribing-robot

 





Répondre à ce sujet



  


0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users