0Home Page test forums FABRICATION MODS Manipulator

This topic contains 14 replies, has 4 voices, and was last updated by  cyberneo 1 year, 1 month ago.

  • Author
    Posts
  • #9500

    Dominique
    Participant

    Après Activator, voici Manipulator.
    Il permet de gérer un main complète : les 6 servos (pinky, ring, major, index, thrumb et wrist),
    les 5 capteurs aux bouts des doigts, et un capteur de distance. Le capteur de distance permet au robot de prendre un objet uniquement lorsque celui ci se trouve dans la zone de la main. La prise en main devient automatique mais uniquement si le capteur est actif.
    Pour cela je demande au robot de prendre un objet, il lève le bras et attend l’objet. Dés qu’il le détecte, alors il ferme la main.
    Si après 10 secondes il n’a rien détecté, alors il baisse le bras et le capteur se désactive.

    Le cœur est un arduino nano avec la dernière version de MrlComm et, bien sur, géré par MyRobotLab. Le port de communication est l’USB.
    Avec un nano, les 6 servos ne posent aucun problème. Pour les capteurs, on utilise les entrées analogiques. MrlComm gère sur un nano, A0 à A5.
    Problème, A4 et A5 sont utilisés pour la com I2C. Pas de chance… Alors, il reste A6 et A7 qui ne sont pas encore gérés. Grog de l’équipe MRL est au courant du problème, on va donc trouver une solution. En attendant, j’ai dû faire une petite modif dans MrlComm.ino.

    J’ai ajouté ce petit bout de code:

    // Test for analogRead with A6 and A7
    unsigned long cm = millis();
    unsigned int val1;
    unsigned int val2;

    if (cm – pm >= 1000)
    {
    pm = cm;

    val1 = analogRead(6);
    val2 = analogRead(7);

    sndBuff[0] = 41;
    sndBuff[1] = (val1 >> 8) & 0x00FF;
    sndBuff[2] = val1 & 0x00FF;
    sndBuff[3] = (val2 >> 8) & 0x00FF;
    sndBuff[4] = val2 & 0x00FF;

    mrlComm.sendCustomMsg(sndBuff, 5);
    }

    Ainsi, toute les secondes, je reçois dans MRL, la valeur des 2 entrées manquantes.
    Toutes la gestion est faite en python.

    Pour la réalisation, voici mes photos:

    Attachments:
    You must be logged in to view attached files.
  • #9503

    Dominique
    Participant

    Suite

    Attachments:
    You must be logged in to view attached files.
  • #9507

    Dominique
    Participant

    suite2

    Attachments:
    You must be logged in to view attached files.
  • #9512

    Dominique
    Participant

    suite3

    Attachments:
    You must be logged in to view attached files.
  • #9515

    Dominique
    Participant

    J’allais oublier le câblage. Cela se résume à ça: un cable USB et l’alimentation des moteurs. J’ai doublé la puissance car mon cable était un peu fin.

    Attachments:
    You must be logged in to view attached files.
  • #9520

    lecagnois
    Participant

    Hello dominique

    Encore une belle avancée technique .
    fais nous une petite vidéo pour le plaisir

  • #9523

    Dominique
    Participant

    Salut, je termine le bout des doigts et je te fais ça.

    Les capteurs des doigts ne sont pas du tout évident à mettre au point mais ça va venir.

    • This reply was modified 2 years, 1 month ago by  Dominique.
  • #9541

    Dominique
    Participant

    Suite de manipulator:

    J’ai fait beaucoup d’essai avec de la mousse conductrice, malheureusement les résultats obtenus sur les entrées analogiques ne sont pas fiable. Les valeurs changent souvent et il faut souvent recalibrer pour détecté la pression sur le bout du doigt.

    Le but du capteur au bout du doigt est (pour moi, je me trompe peut être) de détecter l’objet pris et de couper le moteur afin de ne pas trop serrer et aller jusqu’à la surchauffe du servo.
    J’ai donc changé mon fusil d’épaule, j’utilise un petit switch que j’ai placé au bout du doigt, à la place de la mousse. Une petite épaisseur comble le vide. Du coup, au lieu d’une valeur analogique, j’obtiens une info digital, beaucoup plus simple à traiter.
    Pour le serrage de l’objet, j’utilise un petit délai avant coupure du servo après détection du switch ON.

    Voici les photos:

    Attachments:
    You must be logged in to view attached files.
  • #9589

    Dominique
    Participant

    Bon, j’avais dis que je ferais une petite vidéo… La voici :

  • #9590

    Lirax60
    Participant

    Bonjour

    Pourrait tu me donnée la réf de la carte mère que tu utilise actuellement stp.
    Moi pour les doigts j’avais pensée à des capteur de pression, mais j’ai pas trouver sur le net les dimensions correspondantes aux doigts.

    Merci.

  • #9591

    Dominique
    Participant

    Salut, toutes les explications sont ici: http://inmoov.fr/forums/topic/integration-dune-carte-mere/

    Pour les capteurs de pression, oui j’ai pas mal cherché aussi. La seule solution fiable que j’ai trouvé sont les micro-switch. L’info reçu est l’appui sur le doigt ou non…

    Dom.

  • #9593

    lecagnois
    Participant

    @dominique
    belle réalisation

  • #11436

    cyberneo
    Participant

    Bonjour,
    Je suis entrain d’etudier pour mettre un autre système de main a mon robot, j’aimerais intégrer un capteur de distance au creux de la paume de la main, je compte le faire attraper les objets, je sais ce n’est pas si simple…
    Je dois choisir le type de capteur et me demande quel est l’avantage d’avoir choisi un capteur infrarouge (précis entre 10cm et 80 cm 8€) plutot qu’un capteur ultrason (précis de 2cm a 450cm 3€).
    Car si il commenence a 10cm il ne peut pas calculer la distance de l’objet qui sa rapproche ?
    Est-ce que c’est plus compliqué niveau programmation ?
    Merci

    • This reply was modified 1 year, 1 month ago by  cyberneo.
    • This reply was modified 1 year, 1 month ago by  cyberneo.
  • #11441

    Dominique
    Participant

    Salut,

    Dans les capteurs a ultrason il y a beaucoup de modèle. Du plus basic au plus intelligent. Je déconseille le plus basic car il faut générer les signaux avec le µ et c’est plus difficile à gérer.
    Pas besoin de détecter la chose a prendre a 80cm, la main fermera trop top.

    J’ai pris des capteurs infrarouges car ils sont petits et fiables. Celui que j’ai choisi donne un niveau 1 dés qu’il détect un objet à une trentaine de cm environ.

    Je suis en train de revoir le schéma global des 2 manipulators.

    A+

  • #11443

    cyberneo
    Participant

    Qu’est ce que ca veut dire “il donne un niveau un?
    Qu’il y a plusieurs niveaux ou que ca fait office d’interrupteur on/off des qu’un objet rentre dans la zone detectée?
    Je n’en a jamais utilisé mais dans mon idée ça detecte un objet, ça donne la distance et on peut dire a quelle distance, quelle action correspond.non?
    Quel est ton modèle ?
    Merci!

You must be logged in to reply to this topic.