« Fabrication d'un quadcopter autonome » : différence entre les versions

De WikiRennes
Aller à la navigationAller à la recherche
modif branchement moteur D sur le port 7
(ajout de la partie bluetooth et appinventor)
(modif branchement moteur D sur le port 7)
(3 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 3 : Ligne 3 :
== Idées de départ ==
== Idées de départ ==
* Cela fait des années que nous réalisons des petits projets de robots, en grande majorité à l'aide de cartes arduino.
* Cela fait des années que nous réalisons des petits projets de robots, en grande majorité à l'aide de cartes arduino.
* Les ados de la Maison de Quartier La Touche <ref>[[Toponymes du quartier 3 : Bourg l'Evesque – La Touche – Moulin du Comte]]</ref>  demandent depuis longtemps qu'on se lance dans la fabrication d'un drone.
* Les ados de la Maison de Quartier La Touche demandent depuis longtemps qu'on se lance dans la fabrication d'un drone.
* La réglementation parait lourde dans le cadre d'un vol en extérieur, en particulier sur l'espace public. Nous décidons donc de penser le projet pour un vol en intérieur (salle des fêtes, gymnase, etc...)
* La réglementation parait lourde dans le cadre d'un vol en extérieur, en particulier sur l'espace public. Nous décidons donc de penser le projet pour un vol en intérieur (salle des fêtes, gymnase, etc...)
* Nous ne souhaitons pas fabriquer un drone pilotable avec une télécommande : nous voulons relever le défi de réaliser un drone capable de se déplacer tout seul, en évitant les obstacles, en faisant demi tour s'il arrive contre un mur, etc...
* Nous ne souhaitons pas fabriquer un drone pilotable avec une télécommande : nous voulons relever le défi de réaliser un drone capable de se déplacer tout seul, en évitant les obstacles, en faisant demi tour s'il arrive contre un mur, etc...
Ligne 17 : Ligne 17 :


http://mitappsinventor.blogspot.com/2015/05/rgb-slider-color-selector-rgb-led.html appli Android pour controler le drône : un bon point de départ avec cet exemple de l'utilisation d'un slider pour contrôler une LED.
http://mitappsinventor.blogspot.com/2015/05/rgb-slider-color-selector-rgb-led.html appli Android pour controler le drône : un bon point de départ avec cet exemple de l'utilisation d'un slider pour contrôler une LED.
https://www.carnetdumaker.net/articles/mesurer-une-distance-avec-un-capteur-ultrason-hc-sr04-et-une-carte-arduino-genuino/ débuter avec les capteurs de distance ultrasons


== Matériel ==
== Matériel ==
Ligne 67 : Ligne 69 :
L'erreur du premier lien, c'est qu'il manque des informations dans la ligne esc.attach(12); il fallait mettre esc.attach(12, 1000, 2000); Pourquoi ?
L'erreur du premier lien, c'est qu'il manque des informations dans la ligne esc.attach(12); il fallait mettre esc.attach(12, 1000, 2000); Pourquoi ?


La deuxième erreur était de comprendre la séquence de calibration des ESC. Pour calibrer un ESC, il faut mettre plein gaz dès l'allumage, attendre les bips aigus réguliers, et relâcher les gaz à ce moment précis.  
Par ailleurs il es important de comprendre la séquence de calibration des ESC. Pour calibrer un ESC, il faut mettre plein gaz dès l'allumage, attendre les bips aigus réguliers, et relâcher les gaz à ce moment précis.  


Dans notre code arduino, nous avions mis esc.write(180); pendant quelques secondes, puis  esc.write(0); 180 représente la valeur maximale (plein gaz) et 0 la valeur minimale. Le passage à 0 ne se faisait pas au bon moment, et le calibrage ne se faisait pas. Le deuxième lien (firediy) permet d'envoyer la valeur minimale à un moment précis. C'est grâce à ce code que nous avons réussi à calibrer notre ESC. Ensuite nous utilisons le 1er lien (blaisepascal) pour envoyer une valeur précise à l'ESC. Tout se passe bien, on arrive à faire tourner plus ou moins vite notre moteur. Ouf !
Dans notre code arduino, nous avions mis esc.write(180); pendant quelques secondes, puis  esc.write(0); 180 représente la valeur maximale (plein gaz) et 0 la valeur minimale. Le passage à 0 ne se faisait pas au bon moment, et le calibrage ne se faisait pas. Le deuxième lien (firediy) permet d'envoyer la valeur minimale à un moment précis. C'est grâce à ce code que nous avons réussi à calibrer notre ESC. Ensuite nous utilisons le 1er lien (blaisepascal) pour envoyer une valeur précise à l'ESC. Tout se passe bien, on arrive à faire tourner plus ou moins vite notre moteur. Ouf !
Ligne 82 : Ligne 84 :
* dans le code arduino, attention au baudrate de la liaison par la bibliothèque SoftwareSerial ! Beaucoup d'exemples montrent un baudrate à 57600 ou 115200. Pour nous, ça n'a fonctionné que avec 9600.
* dans le code arduino, attention au baudrate de la liaison par la bibliothèque SoftwareSerial ! Beaucoup d'exemples montrent un baudrate à 57600 ou 115200. Pour nous, ça n'a fonctionné que avec 9600.
* la valeur envoyée à la carte arduino est un nombre. Nous aurions voulu envoyer du texte mais il semble que ça ralentisse énormément la vitesse d'exécution du programme. Nous allons donc échanger uniquement des nombres pour garder une vitesse d'exécution optimale.
* la valeur envoyée à la carte arduino est un nombre. Nous aurions voulu envoyer du texte mais il semble que ça ralentisse énormément la vitesse d'exécution du programme. Nous allons donc échanger uniquement des nombres pour garder une vitesse d'exécution optimale.
=== Mise en place de la carte arduino micro ===
Jusqu'ici nous faisions nos tests avec une carte arduino Uno. En adaptant nos branchements avec la carte arduino micro, il semble impossible de piloter le moteur branché sur le port 12. Nous modifions donc le branchement du moteur arrière gauche pour le mettre sur le port 7. Le port 7 devait servir plus tard pour brancher un sonar, il faudra voir si on peut le mettre sur le 12.
*  
*  
<references />
<references />
[[Catégorie: Fabrication numérique]]
61

modifications

Menu de navigation