Vivement la demo

#143
Posté 13 septembre 2017 - 08:07
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#145
Posté 14 septembre 2017 - 06:49
Je pense que c'est surtout pour que les fils tiennent aux soudures.La colle, c'est pour éviter d'arracher les soudures ? Je comprends pas pourquoi tu as mis de la colle.
Me trompes-je ?
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#148
Posté 16 septembre 2017 - 08:01
Aujourd'hui j'ai modifier quelques câbleq et installer l'interrupteur général ainsi que le support de câble (photos demain) .
J'ai également réussi à faire un menu comme je veux mais je bute sur une fonction.
J'arrive a récupérer l'appui de chaque touche de mon clavier donc j'aimerai, à l'aide des chiffres, pouvoir entrer une valeur à 3 chiffres que j'utiliserai ensuite pour la rotation de mes moteurs.
Par exemple, j'appui sur la touche "2", puis "Ok", puis "5", puis "Ok", puis "4", puis "Ok" et à partir de la, la valeur "254" est stockée dans une variable que j'utiliserai ensuite.
Une idée de comment faire ça sur Arduino?
#149
Posté 17 septembre 2017 - 12:39
Met le code que tu utilises pour récupérer les touches une par une chaque et on peut te le modifier pour récupérer le chiffre complet =)
Par contre explique aussi comment tu fais si tu veux taper 2 25 254 et 2543
Exemple :
tu veux taper toujours trois chiffre cad pour 2 tu vas taper 0 puis 0 puis 2 ?
Ou bien tu fais une validation de nombre une fois que le nombre souhaité est tapé ? genre "2" puis "5" puis "4" puis " x " ( ou tout autre caractère au choix ) ?
Si mon commentaire vous a plus laissez nous un avis !
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!
#150
Posté 17 septembre 2017 - 05:59
Ma chaine YouTube : https://www.youtube..../oracid1/videos
#151
Posté 17 septembre 2017 - 08:59
Salut, je récupère l'état des touches de cette manière : (le "readAnalogMux" est une fonction qui me récupere le multiplexage des boutons)
boolean etatOK = readAnalogMux(0)>500; boolean etatFlecheBas = readAnalogMux(4)>500; boolean etatFlecheHaut = readAnalogMux(6)>500; boolean etatRetour = readAnalogMux(7)>500; boolean etatMaison = readAnalogMux(3)>500;
(je sais que "0" est le bouton OK, le "4" la flèche du bas, etc...)
En gros, je suis en train de faire un mode manuel pour faire bouger chaque articulation de manière indépendante. Je souhaiterai donc avec mon clavier numérique, taper une valeur (qui ne dépassera pas un nombre à 3 chiffres) pour donner un angle positif ou négatif à mon articulation.
Si je veux faire tourner mon articulation de 2°, si c'est possible de taper juste sur la touche "2" du clavier et non pas "002", c'est même mieux.
Ou bien tu fais une validation de nombre une fois que le nombre souhaité est tapé ? genre "2" puis "5" puis "4" puis " x " ( ou tout autre caractère au choix ) ?
J'étais parti sur ce système la mais on peut aussi utiliser une touche pour effacer si on veux modifier, peut importe.
@Oracid, j'ai réussi à réutiliser un beau clavier sur lequel j'ai récupéré l'appui de chaque touche, autan ne pas s'en priver
- Oracid aime ceci
#153
Posté 17 septembre 2017 - 10:56
Une manière de gérer les touches ergonomiquement est la suivante : chaque appui sur une touche ajoute sa valeur à une chaîne de caractères. Tant que les appuis sont suffisamment rapides (temps à déterminer), on incrémente la chaîne de caractères. Dès que le délai dépasse ce temps, la chaîne de caractères est interprétée comme valeur décimale (par exemple). Ca évite un appui pour validation mais c'est un peu plus dur à régler correctement pour que les temps soient agréables.
En termes de code, ça ferait qqch comme ça:
... const unsigned int seuil_validation = 500; // si 500ms se sont écoulées sans appui, on valide l'entrée String input; // Objet de type String : https://www.arduino.cc/en/Reference/StringObject unsigned_long stored_time; bool time_elapsed = false; void setup() { // ... initialisations } loop() { String new_input; if( test_si_nouvel_appui_sur_touches ) { // si nouvel appui, lire l'entrée clavier stored_time = millis() ; // màj temps depuis dernier appui new_input = Read(); // Read() à remplacer par la méthode adéquate } else { time_elapsed = (millis() - stored_time) > seuil_validation; // màj condition validation } // traitement d if(new_input == "Ok" || time_elapsed) // si appui sur ok ou inactivité, on valide l'entrée { // machine à état pour différent traitements // ... } else { // on met juste à jour la chaîne de caractères input += new_input; // https://www.arduino.cc/en/Tutorial/StringAppendOperator : concaténation } }
Délivré avec bugs potentiels
- Donovandu88 aime ceci
#156
Posté 17 septembre 2017 - 06:47
Voila, j'ai réussi à faire ce que je voulais.
A la page correspondant, je tape la valeur de l'angle. Si je me trompe, j'appuie sur " # " pour tout effacer et si mon angle est bon, j'appuie sur " * ".
Ton code fortement modifié ^^ :
String valeur_Angle; void Choix_valeur_angle(){ String new_input; if(readAnalogMux(5)>500){new_input = '1'; }if(readAnalogMux2(7)>500){new_input = '2'; }if(readAnalogMux2(5)>500){new_input = '3'; }if(readAnalogMux2(6)>500){new_input = '4'; }if(readAnalogMux2(3)>500){new_input = '5'; }if (digitalRead(38)==true) {new_input = '6';}if(readAnalogMux2(0)>500){new_input = '7'; }if(readAnalogMux2(1)>500){new_input = '8'; }if (digitalRead(36)==true) {new_input = '9';}if(readAnalogMux2(2)>500){new_input = '0'; } if(digitalRead(40)==true) // si # est appuyé, on efface la chaine { valeur_Angle = ""; } else { // on met juste à jour la chaîne de caractères valeur_Angle += new_input; // https://www.arduino.cc/en/Tutorial/StringAppendOperator : concaténation } lcd.print(valeur_Angle);lcd.print((char)223); if(readAnalogMux2(4)>500){Menu = (Menu * 10)+1;Valeur_choisie();} // si * est appuyé, on valide }
#157
Posté 20 septembre 2017 - 07:20
Hier soir j'ai même réussi à faire bouger mon premier axe en choisissant la valeur de rotation sur mon écran 😀.
J'ai même faut sauter les plombs de mon appartement en mettant en route l'alimentation. Je ne sais pas trop pourquoi. Je pense à une saleté qui serait tombée dans l'alimentation puisqu'après, plus de problème.
J'aurai juste une question pour peut être ajouter une fonctionnalité, peut-on récupérer les signaux des moteurs pas à pas pour pouvoir apprendre des mouvements au robot en le bougeant manuellement ?
#158
Posté 20 septembre 2017 - 08:21
peut-on récupérer les signaux des moteurs pas à pas pour pouvoir apprendre des mouvements au robot en le bougeant manuellement ?
Franchement non, même si la bobine du moteur génère une suite de pics de tension lorsqu'on fait tourner son axe ( effet dynamo ) ça n'est pas exploitable.
Mais on peut placer un codeur sur l'arbre du moteur.
#160
Posté 24 septembre 2017 - 07:09
Salut, voila la vidéo tant attendu des premiers mouvements "officiel" du robot.
J'y montre une partie de mon menu et son fonctionnement.
L'initialisation du robot au début de la vidéo est en faite la mise en place de chaque axe dans leur position zéro, c'est à dire lorsque les flèches des différents éléments sont alignées (comme le robot est positionné en gros). Grâce à ça, je défini la position zéro de chaque moteur.
Il y a encore de nombreux bugs que je résous tout doucement.
Répondre à ce sujet

Aussi étiqueté avec au moins un de ces mots-clés : bras robot
Projets et réalisations, robots et machines en tout genre →
Bras robots, pinces, tourelles, et autres manipulateurs →
Bras Robot pouvant porter jusqu'à 8Kg ?Débuté par Adri, 09 déc. 2020 ![]() |
|
![]() |
||
Découvertes →
Projets collaboratifs →
Bras 6 axes BCN3D Moveo →
BCN3D Moveo et OpenCVDébuté par Kristoff, 22 oct. 2020 ![]() |
|
![]() |
||
Découvertes →
Projets collaboratifs →
Bras 6 axes BCN3D Moveo →
Bcn3d firmwareDébuté par theo-paul, 05 juil. 2018 ![]() |
|
![]() |
||
Découvertes →
Présentations de produits robotique →
Robots en kits →
Kit bras rotatif et pince robot [testé par mthibs]Débuté par mthibs, 31 mars 2017 ![]() |
|
![]() |
1 utilisateur(s) li(sen)t ce sujet
0 members, 1 guests, 0 anonymous users