Mon premier multirotor avec raspberry
Posté : lun. 1 déc. 2014 00:43
Salut à tous et à toutes, me revoila encore dans des projets très, voire trop ambitieux mais... je sens comme une odeur de réussite sur celui-là. C'est d'ailleurs pour cette raison que je viens présenter mon 'coucou' car je suis preneur de toute idée d'amélioration pour que ca ne termine pas dans la poubelle! (pas de méchante critique par contre svp
)
Je ne suis pas à ma première expérience en modélisme mais j'en suis resté il y a des années au stade débutant/amateur, à acheter des avions et hélicos RTF en polystyrène trop fagiles pour les crasher peu de temps après.
Mes compétences intiales : informatique, électricité, mécanique, bricollage en tout genre, etc... je suis un touche à tout.
Voila, il y a environ 2 semaines et demi, travaillant pour une grosse boite dans le transport d'électricité, j'ai entendu parlé de ces fameux drones qui passaient au dessus des centrales.
Et alors je me suis demandé... tient pourquoi pas moi? Evidemment, pas au dessus des centrales!
Caractérisques importantes demandées pour le drone : un grande autonomie et un control total sur l'équipement : pas de choses toute faites non modifiables, je fais moi-même mon contrôleur de vol. Ca tombe bien car voila enfin une bonne raison d'acheter un raspberry pi.
J'ai entendu parlé de Open pilot mais pour la raison ci-dessus, je préfers faire le miens (même si je sais que c'est open) et refaire moi-même mon interface graphique.
De plus, au lieu d'avoir plusieurs transmetteur (radio, télémétrie, vidéo, etc...) le raspberry centralise et envoi le tout via ssh donc gain d'argent et de poid!
Une vidéo est tout en bas du post qui présente un peu l'état du drone à l'état actuel + des explications et tests.
Ce qui suit décrit ma démarche du tout début avec plus de détail.
Je commande donc mon petit projet, en attendant l'arriver de ma commande amazon, un peu de bricollage :


Et... voila la commande ! (raspberry, accesoires, camera, et d'autres..)

Je débale, je monte et je test :


Premier interfacage GPIO pour les tests :

Les tests se poursuivent avec plusieurs leds, un programme basique, interfacage de l'accéléromètre de mon smartphone pour les controler, etc...



Voila environ 1 semaine!
Me voila donc parti dans un magasin ultra high-tech : BRICOMARCHE!!!! (si si)
Après plusieurs heures dans la magazin, chaque jour, ... au point de me faire passer pour un voleur, me voila ressorti finalement avec ce dont je cherchai, mon futur drone!!! :

De l'huile de coude, de la matière grise, un peu de sang versé ... :


Après quelques jours (bah oui j'ai pas tous les outils donc je fais comme je peux!) :

(60cm de diamètre)
En paralèle, j'ai passé des heures sur e-calc, je me suis renseigné sur les sites, pété un cable avec GLS pour savoir où était mon colis et finalement... :

Premier test d'interfacage, avec un servo :

avec un moteur :

Installation des équipements :







Mise en place du Yaw car j'y tenai beaucoup :




.




Mode forgeron pour la biele :

Et ca continu... :




.



Après l'électronique, je combine à l'électronique de puissance :




.


Après l'installation du support d'attérissage, c'est prêt pour le test :

Et pour finir vidéo de présentation/test :
(Moteurs 610 kV et non 690)
Voila où j'en suis aujourd'hui. J'ai déjà réfléchi au programme de pilotage. Je sais l'organiser mais malheureusement je sent déjà que je vais avoir des problèmes de stabilité au niveau de l'asservissement (PID : puissance, intégrale, dérivé), je ne sais pas trop comment m'y prendre sur les courbes de puissance (rampe/exponancielle/logarythme/etc...).
Merci à tous pour vos futurs commantaires, idées et aide.
A bientôt!
Edit du 1 déc.
========================
Petite modif sur le "planning" :
Au lieu de commencer le programme de pilotage auto, je vais interfacer un joystick ou l'accéléromètre de mon smartphone pour controler le drone.
Je pourrai alors tracer des graphs "angle drone/puissance moteur" ce qui me donnera une idée des courbes de puissance à programmer dans le pilote auto.
Commencer par là est à mon avis la meilleur solution, temps que je n'ai pas de perte de connexion car il n'y aura aucun programme pour le maintenir debout.
Maintenant, je suis toujours preneur pour de l'aide sur le PID.
Suite du soir même, tentative d'interfacage d'un joystick :

Jusque là les erreurs de programmation ne m'avais jamais fait mal...

Test du joystick :
Ca fonctionne!
Je remonte un peu le tricoptère et continu la programmation pour pouvoir le controler entièrement.
Ca va quand meme être un peu dûr vu l'état de mes 3 doigts
Edit du 2 décembre :
=====================
Suite des péripéties, le joystick est correctement interfacé (sauf le yaw), plus que quelques petites retouches à faire.
Les premiers tests de control manuel sont faits, les problèmes de parasites sont résolus.
Edit du 4 décembre :
=====================
- La caméra est installée, sans servo pour le moment et interfacée avec le raspberry.
- Le pc de control est configuré pour la réception de la caméra, avec un minium de latence (< 150-200ms, ce qui est pas trop mal). Je pense pourvoir le diminuer encore + en passant par de l'udp plutot que le tcp et en réduisant la résolution.
- Le yaw du joystick est interfacé
Coté servo, test à mi-puissance : incontrolable! (le Raspeberry génère des interférences)
Il me faut une régulation en hardware.
Edit du 11 décembre :
=====================
Changement d'avis sur la batterie du rasberry, plutôt acheter un régulateur dédié, de qualité. gros gain de poids => gros gain d'autonomie (et en plus c'est moins cher...)


Carte adafruit (PWM en hardware) arrivée! Interfacée, testée, tout fonctionne parfaitement, encore mieux que ce que je pensais.
Carte altimu de pololu (gyro + alti) est aussi arrivée! (pas testée)
Erreur de manip pendant un test, un fils de masse à touché le raspberry
Le nouveau raspberry est commandé (modèle A+ cette fois ci, plus petit, léger et moins gourmand) avec des fils de breadbord cette fois-ci pour ne pas refaire la même erreur.
Je profite du temps libre pour revoir le coté matériel :
- mousse pour éviter les vibrations de équipement,
- positionnement des cartes,
- revu du cablage
- perfectionnement de l'axe du yaw
Je ne suis pas à ma première expérience en modélisme mais j'en suis resté il y a des années au stade débutant/amateur, à acheter des avions et hélicos RTF en polystyrène trop fagiles pour les crasher peu de temps après.
Mes compétences intiales : informatique, électricité, mécanique, bricollage en tout genre, etc... je suis un touche à tout.
Voila, il y a environ 2 semaines et demi, travaillant pour une grosse boite dans le transport d'électricité, j'ai entendu parlé de ces fameux drones qui passaient au dessus des centrales.
Et alors je me suis demandé... tient pourquoi pas moi? Evidemment, pas au dessus des centrales!
Caractérisques importantes demandées pour le drone : un grande autonomie et un control total sur l'équipement : pas de choses toute faites non modifiables, je fais moi-même mon contrôleur de vol. Ca tombe bien car voila enfin une bonne raison d'acheter un raspberry pi.
J'ai entendu parlé de Open pilot mais pour la raison ci-dessus, je préfers faire le miens (même si je sais que c'est open) et refaire moi-même mon interface graphique.
De plus, au lieu d'avoir plusieurs transmetteur (radio, télémétrie, vidéo, etc...) le raspberry centralise et envoi le tout via ssh donc gain d'argent et de poid!
Une vidéo est tout en bas du post qui présente un peu l'état du drone à l'état actuel + des explications et tests.
Ce qui suit décrit ma démarche du tout début avec plus de détail.
Je commande donc mon petit projet, en attendant l'arriver de ma commande amazon, un peu de bricollage :
Et... voila la commande ! (raspberry, accesoires, camera, et d'autres..)
Je débale, je monte et je test :
Premier interfacage GPIO pour les tests :
Les tests se poursuivent avec plusieurs leds, un programme basique, interfacage de l'accéléromètre de mon smartphone pour les controler, etc...
Voila environ 1 semaine!
Me voila donc parti dans un magasin ultra high-tech : BRICOMARCHE!!!! (si si)
Après plusieurs heures dans la magazin, chaque jour, ... au point de me faire passer pour un voleur, me voila ressorti finalement avec ce dont je cherchai, mon futur drone!!! :
De l'huile de coude, de la matière grise, un peu de sang versé ... :
Après quelques jours (bah oui j'ai pas tous les outils donc je fais comme je peux!) :
(60cm de diamètre)
En paralèle, j'ai passé des heures sur e-calc, je me suis renseigné sur les sites, pété un cable avec GLS pour savoir où était mon colis et finalement... :
Premier test d'interfacage, avec un servo :
avec un moteur :
Installation des équipements :
Mise en place du Yaw car j'y tenai beaucoup :
.
Mode forgeron pour la biele :
Et ca continu... :
.
Après l'électronique, je combine à l'électronique de puissance :
.
Après l'installation du support d'attérissage, c'est prêt pour le test :
Et pour finir vidéo de présentation/test :
(Moteurs 610 kV et non 690)
Voila où j'en suis aujourd'hui. J'ai déjà réfléchi au programme de pilotage. Je sais l'organiser mais malheureusement je sent déjà que je vais avoir des problèmes de stabilité au niveau de l'asservissement (PID : puissance, intégrale, dérivé), je ne sais pas trop comment m'y prendre sur les courbes de puissance (rampe/exponancielle/logarythme/etc...).
Merci à tous pour vos futurs commantaires, idées et aide.
A bientôt!
Edit du 1 déc.
========================
Petite modif sur le "planning" :
Au lieu de commencer le programme de pilotage auto, je vais interfacer un joystick ou l'accéléromètre de mon smartphone pour controler le drone.
Je pourrai alors tracer des graphs "angle drone/puissance moteur" ce qui me donnera une idée des courbes de puissance à programmer dans le pilote auto.
Commencer par là est à mon avis la meilleur solution, temps que je n'ai pas de perte de connexion car il n'y aura aucun programme pour le maintenir debout.
Maintenant, je suis toujours preneur pour de l'aide sur le PID.
Suite du soir même, tentative d'interfacage d'un joystick :
Jusque là les erreurs de programmation ne m'avais jamais fait mal...
Test du joystick :
Ca fonctionne!
Je remonte un peu le tricoptère et continu la programmation pour pouvoir le controler entièrement.
Ca va quand meme être un peu dûr vu l'état de mes 3 doigts
Edit du 2 décembre :
=====================
Suite des péripéties, le joystick est correctement interfacé (sauf le yaw), plus que quelques petites retouches à faire.
Les premiers tests de control manuel sont faits, les problèmes de parasites sont résolus.
Edit du 4 décembre :
=====================
- La caméra est installée, sans servo pour le moment et interfacée avec le raspberry.
- Le pc de control est configuré pour la réception de la caméra, avec un minium de latence (< 150-200ms, ce qui est pas trop mal). Je pense pourvoir le diminuer encore + en passant par de l'udp plutot que le tcp et en réduisant la résolution.
- Le yaw du joystick est interfacé
Coté servo, test à mi-puissance : incontrolable! (le Raspeberry génère des interférences)
Il me faut une régulation en hardware.
Edit du 11 décembre :
=====================
Changement d'avis sur la batterie du rasberry, plutôt acheter un régulateur dédié, de qualité. gros gain de poids => gros gain d'autonomie (et en plus c'est moins cher...)
Carte adafruit (PWM en hardware) arrivée! Interfacée, testée, tout fonctionne parfaitement, encore mieux que ce que je pensais.
Carte altimu de pololu (gyro + alti) est aussi arrivée! (pas testée)
Erreur de manip pendant un test, un fils de masse à touché le raspberry
Le nouveau raspberry est commandé (modèle A+ cette fois ci, plus petit, léger et moins gourmand) avec des fils de breadbord cette fois-ci pour ne pas refaire la même erreur.
Je profite du temps libre pour revoir le coté matériel :
- mousse pour éviter les vibrations de équipement,
- positionnement des cartes,
- revu du cablage
- perfectionnement de l'axe du yaw