This topic contains 13 replies, has 3 voices, and was last updated by  Gael Langevin 5 years, 8 months ago.

  • Author
    Posts
  • #4935

    anthony
    Moderator

    Salut !

    J’ai commencé à changer mes 805BB par des CYS . Ce sont des servos en métal et digitaux.
    J’ai lu un post de Gaël un jour que je ne retrouve plus.
    Mon soucis, quand le servo est initialisé j’ai l’impression qu’il se positionne au point 0 à pleine vitesse. Et cela a pour conséquence de tout bousiller bien sure.
    J’ai l’impression que ça ne le fait pas pour tous les servos.
    Quelqu’un à une idée?
    Je pensais mettre une résistance dynamique pendant les 10 premieres seconde d’initialiastion du robot sinon
    Afin de ralentir la bestiole

  • #4936

    Christian
    Participant

    Salut Antony

    la commande servo.attach() peut prendre un parametre pour initialiser la position

    par exemple bicep.attach(arduino, pin, pos)

    Pas certain que ceci soit implémenter dans les services InMoov, je vais vérifier quand j’aurai un peu de temps.

    Il est aussi possible d’initialiser les services InMoov avant de les lancer. Regarde le script de Gael, je crois qu’il procede ainsi

    Christian

  • #4937

    anthony
    Moderator

    Salut Christan merci pour l’astuce ! je vais essayer le bicep.attach(arduino, pin, pos)
    J’ai tout déclaré pourtant avant d’effectuer la mise en tension ( positions et vitesse )
    J’ai l’impression que c’est une réaction interne au servo, enfin je vais retester tous ça pour être sûre. Te tiens au courant

    @+

  • #4939

    Christian
    Participant

    Il y a deux facon de démarer les services InMoov

    avec Runtime.createAndStart…
    et

    Runtime.create…
    set the parameters
    Runtime.start…

    J’ai pas la syntaxe exacte disponible avec moi maintenant, mais tu peux trouver dans le forum ou sur le site myrobotlab

  • #4991

    anthony
    Moderator

    Salut ! petit retour .

    Avec ceci :

    Mon servo se positionne d’entré de jeu à la position demandée, c’est bien.
    Reste un problème il le fait à pleine vitesse ! et Inmoov va bientôt avoir besoin d’une minerve 🙂
    Alors j’ai joué avec plein de paramètres mais la je bloque…

    Et sinon j’ai peur de ne pas avoir le contrôle de la position initiale dans le service inmoov. Mais si la vitesse peut être baissée ce n est pas un soucis.
    De plus dans le service inmoov la commande startHead() fais une position 0 + 90 à a la suite. Double bobo !
    Testé sur le dernier mrlcomm et mrl

    • This reply was modified 5 years, 8 months ago by  anthony.
    • This reply was modified 5 years, 8 months ago by  anthony.
  • #4994

    Christian
    Participant

    essaie ceci avec la version 1679 (flash les arduinos)

    le paramettre ajouté a servo.attach est pour la vitesse angulaire, exprimé en degré/sec

    • This reply was modified 5 years, 8 months ago by  Christian.
  • #4998

    anthony
    Moderator

    Christian, tu as sauvé ma tête ! ça fonctionne parfaitement. C’est cool je peux continuer à utiliser ces servos. Du coup comment profiter de cette commande dans le service Inmoov. ( pour calmer la commande startHead()

    merci à toi

  • #5007

    Gael Langevin
    Keymaster

    Je ne sais pas si cette commande est nécessaire pour les nouvelles versions puisque les vitesses ont été modifiées pour ressembler aux vitesses de la version 1.0.107.
    Mais sinon, effectivement cela pourrait être pas mal de l’intégrer de manière à éviter des démarrage d’InMoov trop violent.

  • #5014

    anthony
    Moderator

    Coucou Gaël en effet je viens de tester la 1682 et c’est beaucoup mieux !

  • #5016

    Christian
    Participant

    1683, j’ai changer la précédure d’attache des servos des services InMoov. Donc dès que le servo sera attaché, il ira vers la position Rest() a la vitesse spécifié par setVelocity(). J’ai mis des valeurs par défault pour la vélocité.

    J’espère que ca vous aidera

  • #5020

    Gael Langevin
    Keymaster

    Merci Christian pour l’info.
    Tu parles des boutons de slider n’est-ce pas?

    @anthony, je suis en train d’essayer d’insérer les éléments de traduction, aiml et py afin que tout le monde puisse traduire dans leurs langue. Je galère un peu car ton système n’est pas construit comme le mien au niveau config et emplacements de def. En fait tout fonctionne correctement. La mise en fonction du topic “translate” se passe correctement mais c’est lors de la commande de traduction que je me retrouve avec une erreur. Enfin encore un peu de recherche et je vais trouver le pb.

  • #5021

    Christian
    Participant

    Gael,

    Je parle lors de l’initialisation d’un InMoov par les services InMoov.

    Par exemple lors de i01.head.start(), le servo se déplacait rapidement vers la position 0. puis vers la position rest().

    Mon changement fait que le servo s’initialise vers la position rest(). Malheureusement, le controle de vitesse ne fonctionne pas a ce moment (a cause du fonctionnement de la librairie Arduino Servo)

    Lors de l’attach via les GUI (swing ou web) il semble avoir encore des tracas,je vais investiguer ca

    • #5028

      anthony
      Moderator

      @Gaël j’ai ouvert un post AzureTranslate et je t’ai fait un script démo pour azure avec le minimum vital : ( juste pour tester et faciliter l’intégration )

      http://inmoov.fr/forums/topic/service-azuretranslator/

      j’ai ajouté une boucle pour “réessayer” aussi car le service est parfois capricieux à répondre.

      @calamity c’est génial je réessaye prochainement avec des vrais servos 🙂

  • #5031

    Gael Langevin
    Keymaster

    @Merci Anthony, je regarde immédiatement et te réponds sur le post concerné.

    @calamity, Ah cela parait être parfait, il ne reste plus qu’à tester!

You must be logged in to reply to this topic.