Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : mazertoc
[Projet] RUB1K solver
- F6FCO

Expert- Messages : 2846
- Âge : 99
- Enregistré en : décembre 2017
- Localisation : Banlieue sud de Klyntar
- Contact :
Oui j'ai aussi lu des trucs sur leurs fonctionnements, j'avais déjà exploré la piste pour une idée de petit robot bipède, piste que j'avais ensuite abandonnée vu le coût final du projet.
Mais ce qui est étrange c'est que le servo dont je donne le lien au-dessus se commande en PWM mais pas du tout dans la norme de tous les servos ana, 333Hz au lieu de 50Hz. J'en commanderai un pour faire des essais car ils ont les mêmes dimensions que mes petits servos des pinces mais un torque un peu plus puissant, çà pourrait faire la différence de tenue du cube.
Mais ce qui est étrange c'est que le servo dont je donne le lien au-dessus se commande en PWM mais pas du tout dans la norme de tous les servos ana, 333Hz au lieu de 50Hz. J'en commanderai un pour faire des essais car ils ont les mêmes dimensions que mes petits servos des pinces mais un torque un peu plus puissant, çà pourrait faire la différence de tenue du cube.
[Projet] RUB1K solver
[Projet] RUB1K solver
- F6FCO

Expert- Messages : 2846
- Âge : 99
- Enregistré en : décembre 2017
- Localisation : Banlieue sud de Klyntar
- Contact :
Morale, il ne faut pas se fier aux appellations "Numérique" des Chinois, c'est la plupart du temps de l'analogique.
Et c'est justement ce 333Hz qui me pose un souci car il faut maintenir le servo pince fermé par un PWM constant (c'est pour-cela que j'utilise un esclave par axe) mais également maintenir le servo PAP en position par un PWM constant. Dans le programme je gére les deux servos (pap et pince) dans la même boucle et le même duty-cycle. Là çà ne va pas le faire.
PAP en arrière et pince ouverte
PAP en avant et pince fermée.
Et c'est justement ce 333Hz qui me pose un souci car il faut maintenir le servo pince fermé par un PWM constant (c'est pour-cela que j'utilise un esclave par axe) mais également maintenir le servo PAP en position par un PWM constant. Dans le programme je gére les deux servos (pap et pince) dans la même boucle et le même duty-cycle. Là çà ne va pas le faire.
PAP en arrière et pince ouverte
PAP en avant et pince fermée.
[Projet] RUB1K solver
[Projet] RUB1K solver
[Projet] RUB1K solver
- F6FCO

Expert- Messages : 2846
- Âge : 99
- Enregistré en : décembre 2017
- Localisation : Banlieue sud de Klyntar
- Contact :
Et hop, je recommence tout à zéro pour la troisième fois
.
Le projet v.2 avec la carte I²C et les servos MG996 avançait en piètinant mais tout en codant cet après-midi j'ai eu une idée qui améliore le système.
Pas facile à expliquer mais je vais essayer:
Depuis le début pour le déplacement avant/arrière des PAP j'utilise des servomoteurs "moyen de gamme" avec un torque pas hyper fort (MG996), tout simplement parce que c'est les seuls que j'avais au départ. Le problème avec ces servomoteurs analogiques c'est qu'il faut leur envoyer le PWM en permanence pour qu'ils maintiennent leur position ce qui prends tout le temps machine. D'ou l'idée (Venom ou Gwion, me rappelle plus) d'utiliser des esclaves pour faire le boulot.
Mais ce n'est pas tout, quand le pap est en avant il faut aussi agir sur le servo pince pour maintenir la pince fermée. Pour résumer deux servomoteurs par axe, maintenir un PWM permanent sur les deux: PAP avant et pince fermée sur le cube. Pour 3 axes il faudrait donc 6 esclaves
.
Jusqu'à aujourd'hui j'ai fais des essais pour contourner le problème en intégrant les PWM PAP et pince dans la même boucle sur chacun des trois esclaves avec la même valeur de PWM, çà fonctionne mais plutôt mal car les servos PAP et pince ne sont pas identiques (MG996 et SG90), soit le pap avance trop et la pince qui ne serre pas assez, soit quand il recule la pince ouvre trop et fait hurler ses pignons, pas top donc. Ca fait plusieurs jours que j'essaie de trouver des compromis mais je ne résoudrais jamais un cube avec ce système.
Rajouter à cela que les petits SG90 sont un peu limite pour pincer le cube sans le lâcher.
Donc nouvelle idée et version V.3:
Pour le mouvement PAP au lieu des MG996 je vais utiliser les HJ3315 avec un torque conséquent (15Kg), après tests leur pignonnerie est suffisamment démultipliée pour les maintenir en place même sans PWM. Du coup je pourrai utiliser ma boucle PWM permanente uniquement pour le petit servo pince et je vais remplacer les faibles SG90 par des servos de même dimensions mais plus sérieux (PTK9497) avec un torque d'environ 8Kg.
Ce qui implique de tout recoder
mais pas grave, quand çà plait on ne compte pas.
Depuis que j'ai commencé ce projet je me bagarre avec la partie hard et je n'ai encore pas codé la moindre routine de résolution
Le projet v.2 avec la carte I²C et les servos MG996 avançait en piètinant mais tout en codant cet après-midi j'ai eu une idée qui améliore le système.
Pas facile à expliquer mais je vais essayer:
Depuis le début pour le déplacement avant/arrière des PAP j'utilise des servomoteurs "moyen de gamme" avec un torque pas hyper fort (MG996), tout simplement parce que c'est les seuls que j'avais au départ. Le problème avec ces servomoteurs analogiques c'est qu'il faut leur envoyer le PWM en permanence pour qu'ils maintiennent leur position ce qui prends tout le temps machine. D'ou l'idée (Venom ou Gwion, me rappelle plus) d'utiliser des esclaves pour faire le boulot.
Mais ce n'est pas tout, quand le pap est en avant il faut aussi agir sur le servo pince pour maintenir la pince fermée. Pour résumer deux servomoteurs par axe, maintenir un PWM permanent sur les deux: PAP avant et pince fermée sur le cube. Pour 3 axes il faudrait donc 6 esclaves
Jusqu'à aujourd'hui j'ai fais des essais pour contourner le problème en intégrant les PWM PAP et pince dans la même boucle sur chacun des trois esclaves avec la même valeur de PWM, çà fonctionne mais plutôt mal car les servos PAP et pince ne sont pas identiques (MG996 et SG90), soit le pap avance trop et la pince qui ne serre pas assez, soit quand il recule la pince ouvre trop et fait hurler ses pignons, pas top donc. Ca fait plusieurs jours que j'essaie de trouver des compromis mais je ne résoudrais jamais un cube avec ce système.
Rajouter à cela que les petits SG90 sont un peu limite pour pincer le cube sans le lâcher.
Donc nouvelle idée et version V.3:
Pour le mouvement PAP au lieu des MG996 je vais utiliser les HJ3315 avec un torque conséquent (15Kg), après tests leur pignonnerie est suffisamment démultipliée pour les maintenir en place même sans PWM. Du coup je pourrai utiliser ma boucle PWM permanente uniquement pour le petit servo pince et je vais remplacer les faibles SG90 par des servos de même dimensions mais plus sérieux (PTK9497) avec un torque d'environ 8Kg.
Ce qui implique de tout recoder
Depuis que j'ai commencé ce projet je me bagarre avec la partie hard et je n'ai encore pas codé la moindre routine de résolution
[Projet] RUB1K solver
Bonjour F6FCO, venom, gwion, et tout le forum,
Autre solution, sans Pwm, contrôler la force de serrage par l'ampérage consommer, c'est servo peuvent être désactiver, il reste juste le moteur et les engrenages, avec le pont H
Quand un servo est sur une position, il est presque impossible de revenir en arrière, même sans être alimenté à cause de la démultiplication des engrenages (surtout si c'est des gros servo)
A+
Autre solution, sans Pwm, contrôler la force de serrage par l'ampérage consommer, c'est servo peuvent être désactiver, il reste juste le moteur et les engrenages, avec le pont H
Quand un servo est sur une position, il est presque impossible de revenir en arrière, même sans être alimenté à cause de la démultiplication des engrenages (surtout si c'est des gros servo)
A+
[Projet] RUB1K solver
- F6FCO

Expert- Messages : 2846
- Âge : 99
- Enregistré en : décembre 2017
- Localisation : Banlieue sud de Klyntar
- Contact :
Ca ne marche que si on a des servos de qualité, tout dépend du modèle ce que j'explique juste au-dessus. Les MG996R pourtant très connus et donnés pour un torque de 11kg/cm à 6v que j'utilisais ne tiennent pas la position, sans PWM on peut les avancer ou reculer avec le doigt. Je ne parle même pas de l'axe bas ou le moteur monte et descend, il redescendait rien que par son propre poids, j'avais compensé par un ressort mais il faisait la balancoire.
Tout est rentré dans l'ordre avec les HJ3315 (15Kg), eux ne bougent pas et çà simplifie la programmation car je n'ai plus à m'en occuper quand ils sont en position.
L'explication se trouve probablement dans le rapport couple moteur/démultiplication, pour un même torque donné:
- Gros moteur/ petit rapport démultiplication --> facile à bouger
- Petit moteur/ gros rapport démultiplication --> plus difficile à bouger
Tout est rentré dans l'ordre avec les HJ3315 (15Kg), eux ne bougent pas et çà simplifie la programmation car je n'ai plus à m'en occuper quand ils sont en position.
L'explication se trouve probablement dans le rapport couple moteur/démultiplication, pour un même torque donné:
- Gros moteur/ petit rapport démultiplication --> facile à bouger
- Petit moteur/ gros rapport démultiplication --> plus difficile à bouger
[Projet] RUB1K solver
[Projet] RUB1K solver
Retourner vers « Langage ASM »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 10 invités

