Aller au contenu


Contenu de Oracid

Il y a 1000 élément(s) pour Oracid (recherche limitée depuis 18-mai 13)



#114755 5Bar Quadruped - Mojo4

Posté par Oracid sur 28 novembre 2021 - 12:08 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

Hi Doug

 

Just paste the link from YouTube Shared bouton. I did it, don't worry.

 

- I am sorry to read about issue. I hope it is not big.

- What are your servos ?

- for the mirror leg, no problem. We shall see at this time. Can you show us the code between 2 spoiler tags 

- You must think about to put the quadruped on a stand. It is better for testing.

 

Anyway, very good first test !

 




#114733 Servo moteur qui tourne en continu. Mais pourquoi !?

Posté par Oracid sur 24 novembre 2021 - 06:38 dans Conseils et aide aux débutants, livres et kits en robotique

Tu peux commander ce Shield, https://www.robot-ma...d-nano-307.htmlsur lequel tu mets un Arduino Nano, malheureusement en rupture de stock sur la boutique, https://www.robot-maker.com/shop/cartes-programmables/46-clone-arduino-nano-46.html.

Tu connectes ton 12V sur le Shield (prise PC) qui contient une alimentation 5V. Puis tu connectes ton servo sur un port de sortie. Il y a une photo en bas de la page du Shield.

Si tu veux protéger ton circuit contre un éventuel court-circuit, tu peux intercaler un Boomer, https://www.robot-ma...-cable-226.html

Là, tu as tout ce qu'il te faut, à part la batterie.

 

C'est la configuration que j'utilise pour toutes mes réalisations, jusqu'à 12 servos. Aucune soudure n'est nécessaire sauf pour faire des connecteurs adaptés à toutes les circonstances.




#114728 Interrompre un fichier audio en cours de lecture en fonction d'une variable

Posté par Oracid sur 24 novembre 2021 - 07:57 dans Sons et lumières

@Oracid : tmrpcm.isPlaying() est calculé pour savoir si on entre ou pas dans le if.

Vu que le if n'a pas d'accolades, seule l'instruction suivante ( "tmrpcm.stopPlayback();" ) est soumise au if

Oui, mais est ce volontaire , ou est ce une erreur ?




#114721 Webots, simulateur de robots

Posté par Oracid sur 23 novembre 2021 - 07:32 dans Logiciels

Désolé, je ne l'utilise pas.




#114720 Interrompre un fichier audio en cours de lecture en fonction d'une variable

Posté par Oracid sur 23 novembre 2021 - 07:30 dans Sons et lumières

Il n'y a pas de ; à la fin de cet instruction, l'instruction suivante fait donc partie du if. Non ? 

 if(tmrpcm.isPlaying())        // if music is playing




#114719 5Bar Quadruped - Mojo4

Posté par Oracid sur 23 novembre 2021 - 07:13 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

I have tested your version of IK, but without success. This is most likely due to my ignorance, not your code.

I was unsuccessful with the atan () function. But looking at your image, it gave me the idea to use the asin () function to calculate the angle B, whereas before, I used the acos () function, which seems to me less elegant. 

 

- Here is an alternative code of my usual code. In this code, I don"t use data tables. Instead I use the functiun Rectangle() which is more simpler in this test.

- I have keeped the origin [0,0] on the ground. Not in top, like you. I don't know why, only intuition. It is not important, this just add one line of code.

- I have modified the name of my vaiable to be closer to your code. Thus, the variable A (as alpha) instead of G, and the variable B (as beta) instead of E.

- instead of your atan (), I used asin () to calculate B.

- I used the Degrees () function although I think it is not supported on Arduino. But it works, and it is very convenient.

 

Here are the most important lines of the code. The full code is in the spoiler.

void IK(int Px, int Py, int LS, int RS){      // Inverse Kinematics function. Point coordonates. Left Servo and Right Servo
  if (! digitalRead(0)) resetFunc();          // don't care
 
  float Ax=0, Ay=180, c=112;                  // Values of paw coordonates and side of Diamond
 
  float d=Ay-Py, e=Ax-Px;                     // d and e are the sides of the rectangle triangle
  float h=sqrt((d*d)+(e*e));                  // h is hypotenuse of the rectangle triangle
 
  float B=asin(d/h);  if(e<0)B=(PI-B);        // B is the top angle of the rectangle triangle
  float A=acos(h/(2*c));                      // A is the Diamond half top angle (cosin law)
 
  int S1=round(degrees(B-A))+Err[LS];         // S1 is the left servo angle
  int S2=round(degrees(B+A))+Err[RS];         // S2 is the right servo angle
 

 

Spoiler

 

Here are two pictures showing the test I did  and the diagram with the details of the variables with their respective calculation.

 

Oracid-KI.jpg DSC_3447-S.JPG




#114694 5Bar Quadruped - Mojo4

Posté par Oracid sur 22 novembre 2021 - 08:17 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

Thank you for sharing.
 
Your result is satisfactory. The deformation, if it is constant, is not serious and can be the consequence of misalignment of the servos.
If I have a moment, I'll try your IK () function. Precisely, I am setting up a test.
But, could you make a simple little drawing showing your variables.
 
For passing S1 and S2 as pointers this is fine, but a lot of people have a problem with pointers.



#114691 Robot inattendu / Des robots à l'état sauvage

Posté par Oracid sur 21 novembre 2021 - 04:16 dans Général

Si on parle de robots roulants, quadrupèdes ou bipèdes, c'était à la Toulouse Robot Race en octobre 2019,   https://www.robot-ma...-2019/?p=105589




#114688 Servo moteur qui tourne en continu. Mais pourquoi !?

Posté par Oracid sur 21 novembre 2021 - 12:40 dans Conseils et aide aux débutants, livres et kits en robotique

Est-ce que je protège mon Arduino et ma prise USB si j'alimente l'Arduino avec une alimentation extérieure en 12V ?

NON !

 

Peu importe comment est alimenté ton Arduino. Ce qui est important, c'est que le fil rouge (+) de ton servo ne soit pas connecté à l'Arduino.

Regarde bien le schéma de connexion sur la vidéo. L'alimentation de l'Arduino n'est pas représentée. L'Arduino peut être alimenté par sa prise noire (que l'on appelle, prise PC) ou/et par la la prise USB du PC dans la phase d'écriture du code.

Dans ton cas, pour aller au plus simple, alimente ta carte Arduino par la prise USB de ton PC et le servo comme indiqué dans la vidéo.

 

Pour la pince, difficile à dire tant que le problème de l'alimentation n'est pas réglé.




#114684 Servo moteur qui tourne en continu. Mais pourquoi !?

Posté par Oracid sur 21 novembre 2021 - 11:01 dans Conseils et aide aux débutants, livres et kits en robotique

ATTENTION !!!

 

Ton problème vient de ce que tu branches le servo directement sur la UNO. Ceci est fortement déconseillé. Les sorties de la Uno ne sont pas faites pour débiter autant de courant.

Cela fonctionne avec le 9g car il nécessite peu de courant, mais ce n'est pas conseillé également. De plus, tu risque de détériorer la prise USB de ton PC. 

Tu dois impérativement alimenter le servo, quel qu'il soit, à partir d'une alimentation séparée de 5V ou 6V. Il est préférable de relier les 2 masses, les pôles négatifs.

 

Dans cette vidéo qui est très complète, tu as le schéma de câblage à 14'20".




#114682 Servo moteur qui tourne en continu. Mais pourquoi !?

Posté par Oracid sur 21 novembre 2021 - 08:44 dans Conseils et aide aux débutants, livres et kits en robotique

J'ai un peu cherché, ce servo ne semble pas exister en rotation continu. 

Néanmoins, dans cette description il suggère qu'à l'allumage il fait 360°, c'est très bizarre. https://fr.aliexpres...0001996133901"}

C'est peut-être un 270°.

 

Voici un petit programme qui fait des allers et retours de 0° à 180°. Ton servo doit être connecter à la Pin 4.

Pourrais-tu déjà tester cela.

 

#include <Servo.h>
Servo Srv4;
 
void setup() {
  Srv4.attach(4); Srv4.write(0); 
}
 
void loop() {
  for(int i=0;i<=180;i++){  Srv4.write(i); delay(10);  }
  for(int i=180;i>=0;i--){  Srv4.write(i); delay(10);  }
}

 




#114679 Servo moteur qui tourne en continu. Mais pourquoi !?

Posté par Oracid sur 20 novembre 2021 - 08:58 dans Conseils et aide aux débutants, livres et kits en robotique

Tu as sans doute acheté un servo à rotation continu. 

Peux-tu nous donner le lien de la boutique où tu l'as acheté ?




#114651 moteur CC avec driver Cytron

Posté par Oracid sur 15 novembre 2021 - 06:33 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

Pourrais-tu nous en dire plus sur ton automate ? Sa taille, son poids, roulant, bipède, quadrupède etc.

Une photo peut-être ?




#114650 mathieu de menton

Posté par Oracid sur 15 novembre 2021 - 06:26 dans Et si vous vous présentiez?

Bienvenue !

Des automates avec Arduino, c'est une excellente idée !

Tu devrais nous en dire un peu plus en débutant un sujet dans la bonne rubrique.




#114634 5Bar Quadruped - Mojo4

Posté par Oracid sur 14 novembre 2021 - 09:31 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

Thank you, Doug.

 

Perhaps you could include it as a link in the README of on the git repo. (?)

I will think about this.

 

Yes A1y=180 is arbitrary. But it depends on the size of the femur and tibia. Furthermore, the gait is nicer when high and some value could be better for speed. You must test different values but be careful about the "RESTRICTED AREA CONTROL".

 

 

 I am thinking that this 'neutral position should be in the center of the working area of the two servos. with room up and down for movement.  

any other thought process?

I don't understand what you mean.

May be do you mean that the point [0,0]  could be beetween the 2 servos ? If it is this, yes, it is possible.




#114623 Au bistrot du coin ...

Posté par Oracid sur 14 novembre 2021 - 02:13 dans Général

Autant pour moi , au moins comme cela on sais :)

J'ai regardé quelques vidéos sur l'ESP32 Cam. Alors, c'est vrai, on peut faire de la reconnaissance faciale, du tracking et même du suivi de ligne.

Mais l'ESP32, c'est un 32 bit, comme son nom l'indique, et c'est un microcontrôleur, pas un capteur.

Alors que le Kendrite K210 est un 64 bit, spécialisé dans le son et l'image. Et ça, ça change tout dans la facilité d'utilisation.

J'ai vu d'autres vidéos, depuis, et c'est au delà de ce que l'on peut imaginer.

Quand je dis que je pourrais mettre le HuskyLens sur mon quadrupède, à la prochaine TRR . . . , c'est parce que aujourd'hui, c'est extrêmement facile à faire avec un simple Nano.

Ceci dit, un quadrupède, ça tangue pas mal, il faudra peut-être que je le mette sur un Gimbal, ce qui serait dommage.




#114622 5Bar Quadruped - Mojo4

Posté par Oracid sur 14 novembre 2021 - 08:41 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

First, you have to know that I have not been to high school, so my mathematical level is equal to zero. I can't tell you why I use acos instead of atan.

I have tried to understand maths with YouTube and the result is what it is. But I try to do my best to answer you, don't worry.

 

If you want to make 8 DOF the link is here, https://www.robot-ma...nsion/?p=113549, the Github code link in description.

If you want to make 12 DOF the link is here, https://www.robot-ma...berte/?p=114366, the Github code link in description.

 

12 DOF is a bit more complicated than 8 DOF. I think it is better to start talking about the code of 8 DOF. But it is as you like.

 

At the beginning I started with this, https://www.robot-maker.com/forum/topic/12717-la-cinematique-inverse-pour-les-nuls/ 

In this video, you have explanation of the original variables name. Keep in mind this is for a real 5 bars. 

 

- In a real 5 bars the g variable is the ground or chassis. But with the diamond the g variable disappear or is equal to zero.

- A1 is the position of left servo. A1x and A1y are the coordinates. A2 is the same but for the right servo.

- variable a1 and a2 are the length of left and right tibia. They could be different.

- variable c1 and c2 are the length of left and right femur. They could be different.

 

- You are right, things can be simplified for the diamond code. I did it for the 12 DOF code because femur and tibia are equal.

 

- Yes, you have to code what I have named "RESTRICTED AREA CONTROL" to prevent broken parts.

 

- In my quadrupeds, you have a switch for powering on and a button for starting, on Pin 0. You can see the Start Button at 1'43" in the 8 DOF video.

  I use this Start Button at the end of the setup() to start the loop().

  But I use too this Start Button for a coded reset.  It's a trick ! The called function is the first line of the code. It is very useful in case of problem.

 

I hope I haven't forgotten anything. Don't hesitate to ask.




#114615 12DOF-Q-XL - Big quadruped

Posté par Oracid sur 12 novembre 2021 - 12:32 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

Voici quelques photos qui montrent les mécanismes et les entrailles du quadrupède.

 

La première photo montre le principe du losange vers la patte.

La deuxième photo montre le losange qui lie le servo à la patte.

Ensuite, quelques détails de la patte et le palonnier du servo.

Puis, le panneau arrière avec le bouton de mise sous tension, le connecteur XT60 pour la recharge de la batterie, et le connecteur USB de l'Arduino Nano.

En bas, on peut voir l'intérieur avec batterie, Nano +Shield, Boomer, contrôleur de tension avec à sa droite le bouton Start. Notez à l'arrière plan, l'UBEC (5V,6V,7.4V) qui peut délivrer de 8A à 12A.

 

Cliquez moi.

DSC_3424-S.jpg DSC_3429-S.jpg

DSC_3428-S.jpg DSC_3426-S.jpg

ServoArm-M.jpg DSC_3439-S.jpg

DSC_3441-S.jpg DSC_3444-S.jpg




#114614 Au bistrot du coin ...

Posté par Oracid sur 12 novembre 2021 - 08:21 dans Général

Tu sais que l'ESP32 Cam fait cela aussi?

J'ai posé la question au YouTuber DroneBot pour savoir quelle différence il y avait entre une ESP32 Cam et un HuskyLens, voici sa réponse.

 

They are by no means the same. While the 32-bit ESP32-CAM is capable of simple recognition tasks, it has nowhere the power of the 64-bit Kendryte K210.  It certainly can't recognize a cow, and programming it to track an object is difficult (but not impossible).

Also, the HuskyLens is meant to be used as an external sensor, while the ESP32-CAM is a microcontroller with I/O ports, WiFi and Bluetooth. So they aren't even really in the same category.

A better comparison would be to compare the HuskyLens with the Pixy 2 camera, a much older technology. The HuskyLens is much more powerful, and cheaper too.

Not to mention that the ESP32-CAM doesn't come with a 2-inch display, which is where a lot of the cost of the HuskyLens is incorporated.

But your friend is correct about one thing, the ESP32-CAM is much cheaper. You can buy five of them for the price of one HuskyLens. But, again, you are really comparing two different categories of device.

The real beauty of a device like the HuskyLens is what I referred to at the beginning of the video - it's an "edge computing" device. So it does all the hard work, making it easier for the microcontroller.

I'll be reviewing some more similar sensors that use the Kendryte K210, these are from Seeedstudio, and they bring out many of the K210 I/O pins. I have three of them, and one of them even has an ESP-32 onboard for wireless connectivity. 




#114609 5Bar Quadruped - Mojo4

Posté par Oracid sur 11 novembre 2021 - 08:36 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

What experience do others have in getting similar results for the  Working Area of a 5 bar leg?

I guess the way to experiment is to lay the leg horizontally on a table with a pen at the extremity as you did.
An other way is to attach the leg on a tower with a paper on back. This is a good way as you can put a load on the leg.
On YouTube, you can too look for Scara Robot.
About the speed, it is worse that you can imagine when you test on a real life walking. Of course the Speed variable is what you have to modify. But you have to test if it is better to delay after each servo move or after the 2 servos move.
This could be very confusing. We made a lot of test here, please have a look, https://www.robot-ma...rs-plus-rapide/
 
But as you know with your own experiments, the first goal is to make it walking.



#114608 [En projet] Terran Task Force en 3D de 89 cm du haut avec des servomoteurs AX...

Posté par Oracid sur 11 novembre 2021 - 08:02 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

Bravo, ça prend forme !

J'ai hâte de le voir en action.




#114603 12DOF-Q-XL - Big quadruped

Posté par Oracid sur 10 novembre 2021 - 07:16 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

Voilà la bête !

 

J'ai repris au plus près l'architecture de mes précédents quadrupèdes. Non sans mal ! A cette échelle, j'ai dû renforcer toute la structure.

Avec 12 servos de 60g chacun, j'arrive à un total de 2,2Kg. C'est énorme, et j'ai quelques doutes sur la faisabilité.

Ici, les servos sont des MG996R qui ne sont pas très chers et ont un couple de 11kg.cm. Si nécessaire, je devrais les changer par des plus puissants.  Heureusement, le poids ne devrait pas augmenter.

 

Sur la photo du bas, vous pouvez le comparer avec mon précédent 12 DOF. Il est vraiment très gros, mais cela est nécessaire s'il doit monter des escaliers.

Je ferai quelques photos plus détaillés sur la mécanique.

Maintenant, je vais essayer de faire bouger tout cela et vous tiendrai informer de l'évolution.

 

Cliquez moi.

DSC_3422-L.jpg DSC_3419-L.jpg

 




#114601 Au bistrot du coin ...

Posté par Oracid sur 10 novembre 2021 - 02:07 dans Général

Tu sais que l'ESP32 Cam fait cela aussi?

Non, je ne sais pas !

 

Tu pourrais nous faire une petite présentation ?

Pas un tutorial, juste une ou deux vidéos qui montreraient des possibilités équivalentes à l'HuskyLens. En particulier, le suiveur de ligne.




#114599 Au bistrot du coin ...

Posté par Oracid sur 10 novembre 2021 - 07:43 dans Général

La carte HuskyLens.

 

Voici un produit absolument exceptionnel ! Je l'ai commandé pour l'installer sur mon prochain quadrupède.

A la prochaine Toulouse Robot Race, il devrait me permettre de faire le circuit des "grands", mais avec un quadrupède et non un roulant.

Je ne vous en dis pas plus. Voici la vidéo et quelques liens.

 

https://arduiblog.co...5/24/huskylens/

https://arduiblog.co...n-et-huskylens/

https://fr.rs-online...catifs/2049900/

 




#114598 5Bar Quadruped - Mojo4

Posté par Oracid sur 09 novembre 2021 - 08:54 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

Does my question make sense?

Of course, yes !

 

What is a "horn" ? If it is the servo arm, my servo arm is 3L (3 Lego unit). That make 3 x 8 = 24mm.

On my last Quads, the connector between the servo and the femur is a 24mm diamond sided. 

 

- Which , code/video are you refering ? As you want to make a 8 DOF Quad, I suggest to refer to 5BQE-2, https://www.robot-ma...avec-extension/

- In the video, https://www.robot-ma...nsion/?p=113549, at 1'56" you see how to mount the servo arms.

- Then at 2'45", I explain how to calibrate the servos. In this version, the 'a' variable (line 33) is 60°, not 70°, but this does not matter, it depends on the lenght of the gauge.

The top extremity of the gauge is on the main diamond axis. The bottom extremity of the gauge is on the extremity of the paw(or diamond). Keep in mind that the paw is a diamond.

- First you have to calibrate the left servo with modifyingt the error value, line 12. That make the extremity of the paw in the good X value.

- Then you have to calibrate the right servo with modifyingt the error value, line 12. That make the extremity of the paw in the good Y value.

- Yes, the [0,0] point is the origin X/Y. This is the bottom of the diagonal of the diamond. All the values of the tables are from this point and in millimeter.

- Beware, left and right legs are symmetrical.

 

I guess, mainly, you have understood the principle.
If you make your Quad exactly with the same sizes of 5BQE- 2 it will work the same.
 
Don't hesitate to ask.