The PyFly Project

Présentez ici vos machines en détails

Modérateur : Dehas

Avatar du membre
Vex
Bicopter
Messages : 12
Enregistré le : mar. 30 déc. 2014 23:27
Réputation : 0

The PyFly Project

Message non lu par Vex »

Bonjour,

Voici un petit poste expliquant mon projet. Mon but est de construire un quadcopter moi même en partant de 0.

La structure
La mécanique, c'est pas trop mon truc. Vu Qu'il existe déjà sur le marché des strcutures toutes prêtes, j'ai commandé une Q450 V3 (10€):
Image
Il y a une très bonne vidéo ici qui montre comment monter la strcuture(en Anglais):


Les rotors
4 Turnigy D2836/8 1100KV
Image
4 Turnigy dlux 20A SBEC
Image
8x4~10x4.5 Prop
C'est la partie la plus négligée du projet :). Je veux un truc qui vole, mais je ne me suis pas penché du tout sur la performance de vol (dynamisme, autonomie). Je crois que ça ira pour un premier jet.

Batterie
2200mAh 3S 11.1V 30C LiPo, 13AWG EC3
Je me suis rendu compte que ma batterie sera trop petite pour tourner à pleine puissance :). Ce sera donc un batterie de test, je prendrais quelque chose de plus costaud à l'occasion.

IMU
J'ai acheté un AltIMU-10 v3, qui regroupe un baromètre LPS331AP, un gyroscope L3GD20H et un accéléromètre LSM303D. La communication se fait via I2C.
Image

Controlleur
Le controlleur est fait maison basé sur une carte BeagleBone. C'est un carte pas très connue, c'est en gros un mix entre une Raspberry PI et une Arduino. Ma distribution est basée sur Debian (Linux). Le processeur ets un AM3358 cadencé à 720MHz. Cette carte a maintenant été remplacé par la BBB (BeagleBone Black), plus puissante et moins chere ($55).
Image

Manette
Une manette de playstation low cost à 10€ :D. Cette dernière s'interface avec mon ordinateur, et la partie "client" de mon programme lit les valeurs et envois tout ça au "serveur" qui se trouve sur le quadcopter (BeagleBone).

Programmes
Serveur:
Il tourne en pure Python. Subdivisé en 4 classes pour le moment:
  • Communication: Gère la communication entre le serveur et le client (le quadcopter et l'ordinateur)
  • Reception: Une sorte de buffer qui gère les ordres envoyés par l'odinateur.
  • IMU: Gère l'acquisition de l'IMU et le traintement (callibration, filtre). Fait maison.
  • PID: gère le controle des moteurs.
Client:
Pure Python également. C'est une interface graphique qui gère l'analyse des données envoyés par le drone et qui envoi les commandes. Subdivisé en une dizaine de classes:
  • Window: Classe principale
  • Client, ClientDataReceiver: Classes de communication TCP/IP avec le drone
  • compassGUI: Pas complète. Une classe qui gère l'affichage d'une sorte de boussole pour positioner le drone.
  • Display: Affiche les valeurs de l'IMU
  • Joystick: Tout est dit
  • Motors, MotorPower: Gère les bargraphs moteurs
  • Parameters: Les valeurs des PIDs.
  • Trend: Affichage des courbes des différentes valeurs (basé sur matplotlib)
  • widget3D: Affiche une représentation du drone en 3D
Quelques screenshots:
1.png
2.png
3.png
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.


Mon Quadricopter: The PyFly Project
Avatar du membre
Vex
Bicopter
Messages : 12
Enregistré le : mar. 30 déc. 2014 23:27
Réputation : 0

Re: The PyFly Project

Message non lu par Vex »

Bon ben la batterie est morte :-P
J'ai du descendre en dessous de la tension limite lors de mes tests car mon chargeur ne détecte plus la batterie.
Il est urgent de mettre en place une mesure de tension batterie...
Je vais commander une nouvelle batterie sur Hobbyking.


Mon Quadricopter: The PyFly Project
Avatar du membre
BerTiN25
Pilote toutes catégories
Messages : 1070
Enregistré le : mar. 26 août 2014 23:27
Réputation : 0

Re: The PyFly Project

Message non lu par BerTiN25 »

Si tu as un petit peu de budget, commandes en 2 ou 3, sinon. C'est maxi 13-14 minutes de vol pour 1 heure de recharge.... Essaye aussi de trouver un lipo buzzer, ou ou module fld02, si jamais tu utilises un module rx frsky avec télémétrie. Dans ce cas il te faut aussi un capteur de tension frsky. Bref, il te faut un retour sur l'etat de ta batterie, sinon tu vas en flinguer d'autres de la lipo, surtout en vol.

Autrement, ton projet est super, je suis toujours admiratif des gens qui font leur propre contrôleur ! C'est cool de programmer en python, c'est très puissant comme language ! Le beaglebone, j'avais hésité a en acheter quand je voulais me mettre a la domotique. C'était ça ou un rasberry, pis finalement j'ai pas le temps pour ça...


Further 210 - RMRC Dodo - Emax RS2205 2300kv- HQ 5x4x3 - LittleBee 20A - Sky+ - LemonCore pro - Xiaomi - 4S - 625 gr

Further 180 - Naze32 - Cobra 2204 2300kv- HQ 4x4x3 - LittleBee 20A - Sky+ - microminimosd- XSR - 4S - 500 gr
Avatar du membre
Vex
Bicopter
Messages : 12
Enregistré le : mar. 30 déc. 2014 23:27
Réputation : 0

Re: The PyFly Project

Message non lu par Vex »

Je suis sur le point de commander 2 ZIPPY Flightmax 5000mAh 3S1P 20C. Et ... oui il faut que je me trouve un buzzer...
J'ai prévu de monitorer l'état de la batterie (des 3 cellules en fait) sur les entrées analogigiques de la beaglebone, mais vu que c'est moins sexy que de faire tourner des moteurs... :hehe:
Oui beaglebone pour la domotique c'est super. Et je suis d'accord, ce genre de projets est ultra chronophage :]


Mon Quadricopter: The PyFly Project
Avatar du membre
Dehas
Administrateur du site
Messages : 16172
Enregistré le : ven. 3 juin 2011 12:50
Réputation : 5
Localisation : Saint Dié des Vosges
Genre :
Contact :

Re: The PyFly Project

Message non lu par Dehas »

20C n'est pas suffisant, la lipo va s’effondrer, prends plutôt 35/40C.


Avatar du membre
Vex
Bicopter
Messages : 12
Enregistré le : mar. 30 déc. 2014 23:27
Réputation : 0

Re: The PyFly Project

Message non lu par Vex »

20C:
C = 5Ah (5000mAh)
20C --> 100A
4 moteurs à 20A + 25% de marge --> 100A
Quelque chose m'échappe ?


Mon Quadricopter: The PyFly Project
Avatar du membre
Dehas
Administrateur du site
Messages : 16172
Enregistré le : ven. 3 juin 2011 12:50
Réputation : 5
Localisation : Saint Dié des Vosges
Genre :
Contact :

Re: The PyFly Project

Message non lu par Dehas »

c'est surtout sur les appels de courant ou les lipos s’effondrent et entre la théorie et la pratique, il y a un grand pas ;)


Avatar du membre
caluc
Octocopter
Messages : 723
Enregistré le : jeu. 12 juil. 2012 18:38
Réputation : 0

Re: The PyFly Project

Message non lu par caluc »

Clair qu'une bonne ressource ça pompe dur .


Avatar du membre
BerTiN25
Pilote toutes catégories
Messages : 1070
Enregistré le : mar. 26 août 2014 23:27
Réputation : 0

Re: The PyFly Project

Message non lu par BerTiN25 »

Pinaize, tu m'inquiètes Dehas... Sur mon 450 à motorisation Dji (2212 920 Kv) je tourne avec des 4000 25C en 3S. Ca me donne du 100 A théorique, mais les 2212 ne pompe que 16 A je crois en pointe, sauf que je tourne avec des 10*5, donc on doit être plutôt à 20 A en pointe. Je me disais que 80A pour 100 théorique j'étais tranquille, mais la, ça me fait un peu peur...

En même temps, j'ai pour l'instant un pilotage cool, et je fais rarement de grosses ressources, mais je durcis mes vols, tu penses que je suis trop limite en Lipo du coup ?


Further 210 - RMRC Dodo - Emax RS2205 2300kv- HQ 5x4x3 - LittleBee 20A - Sky+ - LemonCore pro - Xiaomi - 4S - 625 gr

Further 180 - Naze32 - Cobra 2204 2300kv- HQ 4x4x3 - LittleBee 20A - Sky+ - microminimosd- XSR - 4S - 500 gr
Répondre

Retourner vers « Présentation de vos machines »