Quadricoptere Projet création intégrale d'un quadricoptère.

heamer

Nouveau membre
Bonsoir tout le monde ! :)

Je me présente rapidement, je m'apelle Jérémy, 18 ans et actuellement étudiant en DUT.
Je suis donc très fraîchement inscrit sur ce forum pour débattre sur un projet que j'ai depuis un bon bout de temps:

La réalisation complète d'un quadricoptère, à savoir matériel comme logiciel !

Bien qu'ayant déjà quelques expériences dans le monde des quadricoptères et de la programmation, je manque fortement de conseils avisés ! :cheer:

Pour cela je vais donc expliqué ici les détails du projet, à savoir: les objectifs, le budget, le matériel possédé, le matériel que je pense acheter, le fonctionnement et les questions qui en découlent.

Objectifs:

- Mon objectif dans ce projet est de réaliser un quadricoptère de moins de 1,5 kilos entièrement commandé par ordinateur, plus précisément grâce à processing et arduino.

- Le drone sera équipés de plusieurs capteurs ( Gyro/Accéléromètre/boussole, capteur de température, capteur d'humidité, photorésistance, capteur distances ) pour servir de stations multifonctionnel.
Pour le moment aucune caméra n'est prévu, mais si le coeur m'en dit je pense installer, une fois le drone fonctionnel, une petite caméra qui communiquerais avec le pc avec un récepteur à déterminer.

- Je ne cherche pas un drone ultra réactif/puissant avec une grande portée, mais un drone avec une puissance légèrement supérieur à un AR-Drone 2.0 ainsi qu'une portée de 15-25 mètres.

- Je n'utiliserais pas de carte de vol pré-faite mais d'un arduino Méga 2560 que je programmerais moi même et/ou avec l'aide de programme open source sur le net.

- Pour la communication je souhaite utiliser uniquement des xBee.

- Le drone devra être contrôlé grâce à une manette ( Arduino esplora ).

=> Questions:

- Est ce qu'une communication uniquement en xBee permettrais de réaliser ce genre de projet ? ( Les avis sur le net sont mitigés, cependant il semble que cela soit possible )

- Est ce que processing arrivera à gérer un si gros flux de données ? ( Normalement oui si j'optimise la taille des données transmises )

- Est ce que le arduino Mega 2560 sera assez puissant pour traité tout les calculs sans signifier une réactivité supérieur à 0.5s ?

Budget:

Mon budget est cependant limité à MAXIMUM 320 euros ! Attention pas de panique, je dispose d'une partie du matériel. :-D

Le fonctionnement:

Donc comme vous l'avez compris, je compte utiliser Arduino pour programmer le contrôleur de vol, Processing pour l'interface et le traitement des données de la manette arduino ( Esplora ), ainsi que xBee pour la communication PC/Drone.

Je récupérerais les données accéléromètre/gyro/boussole avec arduino via un protocole i2c. J'utiliserais en grande partie un code open source pour récupérer ces données.

Je compte réalisé le code permettant la stabilisation, décollage/atterrissage, déplacements 3D, arrêt d'urgence et réception/envoie des données xbee.

Quand au pc, il sera relié en usb d'un arduino avec un xBee pour la réception/émission des données du drone sur processing. L'esplora sera aussi branché directement au pc en usb.

=> Questions:

- Je dispose d'une bonne maîtrise de la programmation sur arduino/processing, mais est ce suffisant pour réaliser soit-même un tel code ?

Matériels possédés:

Je dispose actuellement de:

- Un arduino Mega 2560
- Un xBee série 1 normal
- Un xBee pro série 1
- Un shield xbee pro
img1_4134_1302872474.jpg

- Un xBee explorer usb
images

- Deux capteurs de distances, un capteur d'humidité/température dht22, une photorésistance, un buzzer, des leds, des résistances, des boutons poussoirs.

Matériels à achetés:

Voila le matériel qu'il faut que j'achète, ainsi que les références que je pense acheté, il me faudrait des conseils car je ne sais pas s'il sont logique entre eux et par rapport à mes attentes.

- D'un cadre/structure:

Hobbyking X650F Glass Fiber Quadcopter Frame 550mm
( http://cdn.hobbyking.com/hobbyking/...ber_Quadcopter_Frame_550mm_EU_warehouse_.html )

- De 4 moteurs:

D2830-11 1000kv Brushless Motor
( http://cdn.hobbyking.com/hobbyking/store/__36392__D2830_11_1000kv_Brushless_Motor_EU_Warehouse_.html )

- De 4 ESC:

Afro Slim 20Amp Multi-rotor Motor Speed Controller (SimonK Firmware)
( http://cdn.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=54268l )

- De 1 afro usb programmeur ( pour reflasher les ESC ):


http://cdn.hobbyking.com/hobbyking/store/__47724__Afro_ESC_USB_Programming_Tool_EU_Warehouse_.html

- De 4 hélices:

Slow Fly Electric Prop 1045SF
( http://cdn.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=34509 )
( http://cdn.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=34508 )

- D'une batterie

ZIPPY Compact 3300mAh 3s 40c( http://cdn.hobbyking.com/hobbyking/...t_3300mAh_3s_40c_Lipo_Pack_EU_Warehouse_.html )

- D'un chargeur

Turnigy Accucel-6 50W 6A Balancer/Charger
http://cdn.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=31281

- D'un accélémètre/gyroscope/boussole:


IMU 10DOF - MPU9150 + MS5611
http://www.drotek.fr/shop/fr/home/290-imu-10dof-mpu9150-ms5611-.html

- D'un Arduino esplora:

http://boutique.semageek.com/fr/181-arduino-esplora.html

- D'un Arduino uno:

http://boutique.semageek.com/fr/2-arduino-uno-dip-rev3-7640152110092.html

- Des câbles


XT60 --> 6 x 3.5mm pour batterie vers ESC:

http://cdn.hobbyking.com/hobbyking/...r_ESC_Power_Breakout_Cable_EU_Warehouse_.html

Connecteur M/F 2mm ( ESC avec embouts 2 mm ) et connecteur 3.5 mm M/F:

http://cdn.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=48121
http://cdn.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=36237

Prix total actuel: 310 euros.

Je pense que c'est tout ce qu'il me faut, dans le cas contraire merci de me le dire !

=> Questions:

- Est ce que les composants sont compatibles entre eux ?
- Est ce que les composants cités sont conseillé ?
- Existe t-il un site à préférer pour l'achat de ces pièces ?
- Ais-je besoin de flasher les esc ? A quoi cela sert-il vraiment ?

Conclusion:

Voilà donc en gros le projet, j'ai en contre partie besoins de réponses à mes questions pour me lancer. J’espère ne pas avoir était trop long ni trop ennuyeux. :-D

Je remercie beaucoup d'avance les aides et réponses éventuelles à mon projet ! :p
 
Trop de questions / données d'un seul coup...

Si le développement logiciel te fait pas peur, je pense que tu aurais avantage à regarder du coté d'une carte toute faite de type Naze32 qui coute pas vraiment plus cher que ta platine 'aeroquad', mais qui embarque tout les capteurs de base...

Vu que le code est ouvert, tu peux récupérer les parties de stab/contrôle des moteur, et greffer dessus ton code !


Cette carte est issue de Multiwii, mais BaseFlight est une version du soft recodée pour STM32

Cleanflight est un fork de BaseFlight qui ajoute une plus grande modularité, et vu que la Naze32 dispose d'un port I2C fonctionnel, je pense que tu peux greffer tes capteurs par dessus, quitte à repasser par un ATMega 328 (qui sera suffisant du coup).

Dans ce genre de projet, je pense qu'il faut essayer de se rapprocher du principe K.I.S.S.
 
Merci de ta réponse !

Si j'ai mis toutes les données et questions d'un coup c'est justement pour ne pas se perdre dans les infos au fils des messages. Je donne une vision globale d'un coup.

Sinon non, je ne connaissais pas le Naze32, j'avais trouvé la solution d'aeroquad car il se clipser directement sur l'arduino mega et faisais propre et organisé.

Cependant j'aimerais vraiment développer tout le programme sur arduino, est ce possible de récupéré les données gyro/accéléro du Naze32 pour les envoyés à l'arduino mega ?

Et oui je sais mon projet semble complexes par ses moyens utilisé, mais je tient absolument à utiliser arduino pour le controleur de vol et xBee pour la communication. Tout simplement parce que je maîtrise cette plateforme et que je n'est pas le temps d'apprendre une autre plateforme.
 
heamer;2372062 à dit:
Merci de ta réponse !

Si j'ai mis toutes les données et questions d'un coup c'est justement pour ne pas se perdre dans les infos au fils des messages. Je donne une vision globale d'un coup.

Sinon non, je ne connaissais pas le Naze32, j'avais trouvé la solution d'aeroquad car il se clipser directement sur l'arduino mega et faisais propre et organisé.

Cependant j'aimerais vraiment développer tout le programme sur arduino, est ce possible de récupéré les données gyro/accéléro du Naze32 pour les envoyés à l'arduino mega ?

Et oui je sais mon projet semble complexes par ses moyens utilisé, mais je tient absolument à utiliser arduino pour le controleur de vol et xBee pour la communication. Tout simplement parce que je maîtrise cette plateforme et que je n'est pas le temps d'apprendre une autre plateforme.

A moins que ce soit 'pour le chalenge', redévelopper sur Arduino une plateforme de vol, ça me semble pas vraiment valable.

Quand tu dis que maitrise la plateforme Arduino, c'est avec le jeu d'instructions arduino ou tu attaque en dur dans les registre ?
Parce que pour faire une stab de multicoptère, c'est pas à coup de pinmode et librairies !

Je te laisse explorer le code de MultiWii https://code.google.com/p/multiwii/source/browse/branches/MultiWii1_8.pde

Je pense que tu aurais vraiment intérêt à conserver la partie purement stab gestion de vol sur une Naze32, à greffer un peu de code pour l'interfacer avec ton Arduino qui assurera la partie transmission de données.
Pour les sources de Cleanflight, c'est par là https://github.com/cleanflight/cleanflight/tree/master/src/main
 
C'est en effet en partie pour le challenge oui.

Quand je dit que je maitrise arduino c'est que je maitrise sa programmation ( structurelle, logique et en bonne partie techniques ) et que j'arrive rapidement à comprendre les logiques des codes.

J'ai déjà un peu exploré le code Multiwwi et en effet c'est plutôt effrayant ( même si c'est surtout qu'il est très optimisé et donc long à décrypter pour une personne n'ayant pas bosser sur la structure du code ).
Cependant une bonne partie du code est dans une utilisation dont je n'est pas forcement besoin, je ne recherche pas une gestion de vol complexe et très efficace.

Ce que je veux réalisé c'est une gestion de la vitesse des moteurs en fonction des mouvements demandés, une re-stabilisation automatique grâce au données accéléromètre/gyroscope pour redresser le drone en cas d'inclinaison et des commande automatique pour des décollages/atterrissages amorties et stables.

Je bien du mal à imaginer quelles autres fonctions complexes peuvent être demandés pour qu'un drone puisse se déplacer et se re-stabilisé ( même suites à des vents ). Si tu en as idées j'aimerais bien entendre tes explications.

Après j'ai peut être oublier de préciser que je veux un drone fonctionnant principalement à vents faibles ou nulles.
De plus je peux peut être te paraître naïf faces à ma simplicité d'interprétations de la gestion de vol mais je précise que je n'ai jamais fait une analyse poussé sur les contrôleur de vol. Si je suis dans l'illusion, j'aimerais avoir une explication rapide sur la complexité des gestion de vol.

Merci cependant de ton aide !
 
Haut