
Présentation - Construction d'un Drone
#1
Posté 09 février 2010 - 11:46
je m'appelle Guillaume Helle, je suis ingénieur en informatique, expert Java ;-) et j'ai décidé de me lancer dans la construction d'un drone pour valider qqs notions de Java embarqué, temps réel,...
La première étape consiste à faire un drone style quadrirotor controlé par une carte Java.
Au niveau capteurs : gyroscopes, accélérométre puis éventuellement radar ultrason
Le code embarqué doit se charger de la stabilisation et des déplacements, les commandes arrivant via Wifi pour l'instant : donc pas de télécommande style modélisme...
Par la suite je compte lui ajouter une caméra embarquée mais la solution n'est pas finalisée...
Les problèmes existants :
- la récupération des données des gyros et accèléromètres. J'ai une solution à environ 125€ : http://www.sparkfun.com/commerce/product_info.php?products_id=9184
- la communication : le wifi n'a pas une portée énorme et je suis à la recherche d'une solution pour faire de la longue portée (1 à 2 km) mais permettant de transmettre aussi un débit acceptable (comme la vidéo)
Voilà, la barre est placée assez haute ;-) si vous avez des avis ou des retours, je suis preneur!
Amicalement,
Guillaume
#2
Posté 09 février 2010 - 12:36
va voire dans " projet et réalisations " Léon est aussi sur ce projet.
cordialement.
skyhack.
They live inside us and sometimes they win."
-------------Stephen King.------------------
" le fait que les extraterrestres étaient amis avec les Mayas ne signifie pas qu'ils sont nos amis ... "
-------------------------------------Stephen Hawking----------------------------------------------------
#3
Posté 09 février 2010 - 12:53
Guillaume
#4
Posté 09 février 2010 - 03:54

S'il t'étais possible de cabler un circuit perméttant de lire le giro pour stabiliser directement l'hélico, tu éviterais d'utiliser du code et le processeur serait déchargé de ce travail.Le code embarqué doit se charger de la stabilisation et des déplacements,
Je pense que cela doit être un réflexe "naturel" de l'hélico de s'équiliber grace au giro et non un contrôle continu de la part d'un programme, c'est un peu comme nous humains, on ne réfléchit pas à garder notre équilibre, ça se fait tout seul instinctivement.
"Plus on partage, plus on possède, voilà le miracle". LEONARD NIMOY
"Celui qui se bat peut perdre, celui qui ne se bat pas a déjà tout perdu". BERTOLT BRECHT (1898-1956)
Comment se lancer dans la robotique !
Mince encore un post pour augmenter mon compteur
#5
Posté 09 février 2010 - 07:22
Salut, et bienvenue!Bonjour,
[...]
Voilà, la barre est placée assez haute ;-) si vous avez des avis ou des retours, je suis preneur!
Amicalement,
Guillaume
Je suis content de voir que je ne suis pas tout seul à me lancer dans un projet de fou comme celui-ci!
Quelle 'carte mère java' comptes-tu utiliser pour le cerveau de ton robot? Est-ce que tu as commencé à acheter le matériel? Assemblé quelque chose?
Ca serait vraiment sympa si on avançait ensemble sur de tels projets. Même si on a des projets différents, je pense qu'ils se rapprocheront sur beaucoup d'aspects.
Leon.
BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + Foxboard Linux http://ze.bot.free.fr/
BOB5, robot bipède simulé, puis tentative de réalisation (fail)
#6
Posté 09 février 2010 - 08:09
Je ne suis pas sur d'avoir compris ce que tu proposes. Quand tu parles de "câbler un circuit", tu parles d'un FPGA ou équivalent?Salut
![]()
S'il t'étais possible de cabler un circuit perméttant de lire le giro pour stabiliser directement l'hélico, tu éviterais d'utiliser du code et le processeur serait déchargé de ce travail.
Je pense que cela doit être un réflexe "naturel" de l'hélico de s'équiliber grace au giro et non un contrôle continu de la part d'un programme, c'est un peu comme nous humains, on ne réfléchit pas à garder notre équilibre, ça se fait tout seul instinctivement.
Réaliser un tel asservissement en hardware (FPGA ou autre), je ne pense vraiment pas que ce soit une bonne idée. Pourquoi décharger un processeur? Sur un drone, il n'aurra 'que ça' à faire: 90% de la charge CPU sera dédiée à l'asservissement/la stabilisation... Et alors?
Pour stabiliser un drone, il y a quand même pas mal d'opérations mathématiques à réaliser: pour estimer son orientation (calculer les angles d'euler en temps réel), pour estimer sa vitesse en 3D, etc... Puis pour l'asservissement, un bon PID par consigne, soit 4 en tout pour nos drones. Le PID, ça fonctionne très bien en software. Plus il y a de calculs différents à faire faire à une électronique, plus la réalisation de ces calculs devient intéressante en software plutôt qu'en hardware.
On fait de microcontroleurs très rapides de nos jours. Je ne vois donc pas l'intérêt de chercher la complexité à programmer un FPGA ou autre joyeuseté. As-tu une expérience dans le domaine? On privilégie surtout les FPGA pour les applications où la quantité de donnée à traiter est trop importante, ou alors pour réaliser des tâches très rapides et répétitives. Je ne pense pas que ce soit le cas pour un tel asservissement.
Leon.
BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + Foxboard Linux http://ze.bot.free.fr/
BOB5, robot bipède simulé, puis tentative de réalisation (fail)
#7
Posté 09 février 2010 - 10:13
Bienvenue à toi et à ton projet fort sympathique

Par le plus grand des hasards, ne chercherais-tu pas du travail ?
Je prêche pour ma paroisse, car on cherche un expert JAVA au travail de façon très urgente =)
Tous les moyens sont bons

#8
Posté 09 février 2010 - 10:22

Cool ton projet, je vois qu'il y a de plus en plus de monde qui s'intéressent aux drones, c'est vrai que c'est assez séduisant.
Bon sinon histoire que ca reste un sujet de présentation ce serait bien de parler technique dans une rubrique appropriée héhéhé...
#9
Posté 09 février 2010 - 11:02
c'est bien un projet de drone comme ça

Reste plus qu'à espérer que toutes les réflexions seront bien retrancrites ça peut servir à ceux qui voudront s'y lancer aussi.
Sinon une question qui est peut être bête mais que je me pose : j'ai juste fait du java sur PC "normal" mais même si c'est un language puissant, j'ai toujours trouvé sa plus ou moins lourd par rapport à un language comme le C++ ou ce style là. Je ne sais pas ce qu'il en est au niveau embarqué mais ça ne risque pas de pomper pas mal (trop ?) de ressources ou d'être trop lent, surtout si ton programme est beaucoup solicité pour maintenir la stabilité de l'engin ?
"All the world's a stage, And all the men and women merely players." - William Shakespeare
#10
Posté 09 février 2010 - 11:28
Faisons un nouveau topic hein ?Bon sinon histoire que ca reste un sujet de présentation ce serait bien de parler technique dans une rubrique appropriée héhéhé...
Pour le cablage de la gestion du gyro je ne pensais pas à un FPGA car je ne connais pas ces circuits, mais juste à un montage en composants classiques.
Mon intervention à ce sujet était sous forme de question aussi ^^ je ne connais pas bien les gyros.
Mais dans le drone que je compte faire je vais utiliser ma solution c'est sûr.
"Plus on partage, plus on possède, voilà le miracle". LEONARD NIMOY
"Celui qui se bat peut perdre, celui qui ne se bat pas a déjà tout perdu". BERTOLT BRECHT (1898-1956)
Comment se lancer dans la robotique !
Mince encore un post pour augmenter mon compteur
#11
Posté 09 février 2010 - 11:54
on va se retrouver avec 50 drones volants et inventer la première i-volière ^^
#12
Posté 10 février 2010 - 06:48
Mais qu'entends-tu donc par "un montage en composants classiques"?? Je ne comprends toujours pas ce que tu veux faire sur TON drone. Tu parles de câbler des gyro de modélismes? Autre chose? Tu veux faire des asservissements en analogique pur?Faisons un nouveau topic hein ?
Pour le cablage de la gestion du gyro je ne pensais pas à un FPGA car je ne connais pas ces circuits, mais juste à un montage en composants classiques.
Mon intervention à ce sujet était sous forme de question aussi ^^ je ne connais pas bien les gyros.
Mais dans le drone que je compte faire je vais utiliser ma solution c'est sûr.
Leon.
BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + Foxboard Linux http://ze.bot.free.fr/
BOB5, robot bipède simulé, puis tentative de réalisation (fail)
#13
Posté 10 février 2010 - 11:40
http://www.robot-maker.com/forum/topic/3194-projet-de-drone-autonome-dinterieur/
Pour l'asservissement : je persiste à le coder..
D'ailleur si tes composants force le drone à être naturellement stabilisé, comment le pilotes-tu? tu vas lutter contre la stabilisation ou utiliser les petits gyros qui se mettent entre un récepteur RC et un servo/commande moteur?
Ca me semble beucoup plus souple de faire ça de façon logicielle...
Pour le Java : je compte utiliser une carte de Java embarqué. Le choix n'est pas encore fixé mais je te rassure, c'est aussi rapide que du C (car dédié).
Je posterai (dans l'autre topic... ;-)) une liste de choix...
#14
Posté 10 février 2010 - 01:40

merci d'avance
#15
Posté 10 février 2010 - 07:15
Tiens, une question:Le code embarqué doit se charger de la stabilisation et des déplacements, les commandes arrivant via Wifi pour l'instant : donc pas de télécommande style modélisme...
comment comptes-tu contrôler ton robot, pour la partie IHM? Avec une commande comme celle de l'AR Drone? Une manette de jeu? En n'envoyant que des instructions de "haut niveau" (va à telle position) en WiFi, sans possibilité de le piloter "à la main"?
Bref, qu'est-ce qu'il se cache derrière l'absence de radiocommande?
Leon.
BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + Foxboard Linux http://ze.bot.free.fr/
BOB5, robot bipède simulé, puis tentative de réalisation (fail)
#16
Posté 11 février 2010 - 10:34
pour qu'il devienne intelligent, il faudrait que je lui rajoute un GPS...
1 utilisateur(s) li(sen)t ce sujet
0 members, 1 guests, 0 anonymous users