Monitoring d'aéromodèles avec ANDROID

20 august 2012 : from nowdays ... discussion will be in English +++++++++++++++++++++++++++++++++++++++++++++++++++TODO : translation of pertinent existing texts to EnglishNext posts will take place from here +++++++++++++++++++++++++++++++++++++++++++++++++++
20 august 2012 : from nowdays ... discussion will be in English
+++++++++++++++++++++++++++++++++++++++++++++++++++
TODO : translation of pertinent existing texts to English
Next posts will take place from here
+++++++++++++++++++++++++++++++++++++++++++++++++++
Old texts in French :
Utiliser un téléphone Android enbarqué pour échanger des informations avec un téléphone au sol. J'ai vérifié une portée supérieure à 500m pour chaque téléphone vers un routeur WI-FI équipé d'un Booster : voir compte-rendu sur le forum. Le téléphone embarqué sera connecté à l'électronique de bord par l'USB/série (ANDROPOD) Les deux téléphones étant équipés chacun d'une puce GPS, les données transmises pourront être géographiquement relatives On peut imaginer également la transmission d'images depuis la caméra du téléphone (faisablité vérifiée avec DroidCam et autre applications IP ) La liaison montante pourra commander l'enregistrement de photos, de WayPoints ... En cas de perte de contrôle ou de crash, on pourra demander une position par échange de SMS J'ai testé la quasi totalité des fonctionnalités requises en utilisant des Apps existantes (Google play ou Apps Elektor) et aussi avec les "quelques" Microkopter ou autres MultiWii que j'ai mis au point et fait voler. A suivre ...
8 juin 2012
Première étape, intégrer quelques fonctionnalités utiles au projet, sous forme réduite sur un seul smartphone : mesure d'une distance et diffusion vocale. voir documents joints "AndroMON may 7": photo, code source et .APK que vous pouvez charger sur votre téléphone et essayer vous-même, ça vous permettra de mesurer confortablement des distances (difficile de lire un écran en pleine lumière
) grâce à la synthèse vocale !.Etape suivante : déporter les informations du GPS et les contrôles entre deux téléphones via un routeur ... à suivre
18 juin 2012
Ma 1ère idée était de partir du code TimeLapse (www.elektor.fr/110690) pour transmettre la distance GPS vers le 2ème smartphone dans un formulaire d'une page HTML plaçé dans une WebView. La page HTML incorporant un script JAVAScript permettant une récupération en Java pour traitement/affichage des données.
Je pense maintenant qu'il serait plus judicieux de déclarer le téléphone "embarqué" comme Client (java.net.Socket) et de recevoir les données côté Serveur (java.net.ServerSocket). Le Client gère les requétes et les flux de données vis à vis du Serveur. Ce dernier est en attente des demandes et envois du client. Les exemples et tutoriaux que j'ai consulté, concernant la transmissions de trames vidéo , appliquent ce principe.... QU'EN PENSEZ-VOUS ?
>>>>> Pour en savoir plus : www.siteduzero.com/tutoriel-3-173544-introduction-aux-sockets.html
24 juin 2012 : Le choix de la solution client/serveur est délicat car l'Android embarqué doit pouvoir transmettre des trames vidéo à un rythme raisonnable et être capable de se reconnecter automatiquement au réseau WIFI en cas de problème de liaison (donc serveur); reste à choisir ce qui est le plus approprié : client Thread comme sous-classe du Thread de l'UI ou AsyncTask ou utiliser un Handler ...
Je trouve dans des sources diffusés sur Internet des exemples intéressants. Je décortique également les sources des projets présentés dans Elektor. TimeLapse (www.elektor.fr/110690 m'intéresse beaucoup et il serait souhaitable que les auteurs de ce type d'article soient contactables (par E-mail ou à travers Elektor...) pour obtenir un minimum d'éclaicissement au sujet de leur code. Aucune "contribution effective" ne s'étant manifestée sur le présent site je me suis inscrit sur le Forun http://www.developpez.net/forums/d1236533/java/general-java/java-mobiles/android/utilisation-string/ ou dans un premier temps, vous pourrez trouver certaines clarification concernant le code Java de TimeLapse.
13 juillet 2012 : Je choisis de mettre le serveur sur le Smartphone embarqué. C'est la solution la plus logique et la plus souple permettant de fournir des services (pourquoi pas différents contenus) vers de potentiel clients smartphone et/ou PC, tablette.... à suivre !
8 août 2012 : le shield Wi-FI de Clemens (projet Elektor) pourrait être utilisé dans le cadre du projet dans le cas ou on déciderai d'utiliser Android uniquement pour le controle à partir du sol; en effet,le téléphone
embarqué peut difficilement à la fois envoyer de la vidéo et permettre du controle via AndroPOD sans souffrir d'un manque de réaction pour les commandes, ce qui rendrait le système inutilisable opérationnellement.
Cette configuration était celle du projet flaRDUINO stoppé mi-2011 suite à l'arrêt de la production du module Wi-Fi BlackWidow.
dans cette configuration, la vidéo pourrait être fournie par une caméra numérique UCAMTTL (Lextronic).
La solution "Android embarqué" reste envisageable pour du monitoring GPS + vidéo uniquement
site perso, pour essai : http://andromon.monsite-orange.fr/
Discussion (5 comments)
abiz 11 years ago
Je vais développer tous les travaux de la phase 1 dans cette contribution.
PHASE 1.0 (voir synoptique No1)
- dans un premier temps, monitorer la position GPS actuelle d'un smartphone par rapport à une position enregistrée, par exemple après le 'FIX' (gisement relatif en degrés, distance en mètres) Je m'inspire de codes sources existants, entre autre 'bearing, ralfoide 2009'.
- dans un deuxième temps, déport de ce delta de position vers le navigateur(HTML) d'un 2ème smartphone, via le routeur WI-FI
en cours...
Remarque: passer de C/C++ à ANDROID sans être passé par la case Java : la pente est rude !!!
22 mai : l'essai de l'App BEARING sur un Nexus One m'a permis de vérifier la 1ère étape sans avoir besoin de modifier le source et de le recompiler. Voir photo jointe.
http://code.google.com/p/bearing/
Je vais donc essayer de coder le déport d'informations vers un navigateur via WI-FI ...
------
Je vais dans un premier temps, essayer de visualiser les données GPS d'un téléphone 'TA' (A comme Airborn) sur le navigateur d'un téléphone distant 'TB' (B comme base)...
Je vais partir du source de l'App BEARING :
http://code.google.com/p/bearing/
programmation : la pente est rude lorsque l'on passe directement de C/C++ à ANDROID !
31 mai:
reading data on a smartphone screen, especially outdoors is problematic ...
speech synthesis can be a solution.
I changed 'Locale.US to .FRANCE' in the code I adapted from a tutorial (see url in .zip) and got a very clear female French voice on a Nexus One
( but
attached documents:
photo: TTS on Nexus One
.ZIP: source code ,APK & URL of tutorial
tts-fr.jpg (259kb)
TTS source code/fr APK & ref URL tutorial (67kb)
livres-android.JPG (217kb)
abiz 12 years ago
abiz 12 years ago
abiz 11 years ago
réponse à Michel : GC=Garbage Collector, c'est un dispositf qui permet de gére automatiquement l'espace mémoire (la pile d'exécution)
Je n'ai pas été assez complet dans mes explications car les causes possibles de latences sont nombreuses, je pense en particulier au WLAN surtout si la bande ISM est encombrée... sans compter qu'en cas de déconnexion, la reconnection (automatique, et peut-être dans un autre canal !) peut prendre...un certain temps. Il faut penser aussi que si on met une carte SIM dans le téléphone pour les SMS, cette dernière tâche est prioritaire !
Je joins les synoptiques (très succints) des deux phases principales de ce projet: en substance, la 1ère concerne le seul téléphone, le multicopter servant uniquement de 'porteur'; la 2ème, avec connexion avec les contrôleurs de l'engin.
Je compte développer en parallèle, un nouveau quadicoptère dédié, à partir d'un modèle basé sur Arduino (a partir du projet Multiwii de AlexInParis) le quadri sur les photos fonctionne admirablement mais sa faible taille: 23cm entre moteurs (10g) ne permet pa d'embarquer un Nexus One.
Je vais utiliser la carte ArduinoMEGA de taille réduite (en rouge sur les photos) ainsi qu'un sonar (type EZ2) pour assurer un maintien précis en altitude basse
A suivre ...
androix-control-phase-2-001.jpg (568kb)
img-0783-large.jpg (149kb)
img-0794-large.jpg (122kb)
img-0926-large.jpg (135kb)
fancyfly 12 years ago
abiz 11 years ago
cette contribution a pour but d'illustrer mes objectifs concernant ce projet.
Je joins tout d'abord des photos montrant quelques uns de mes multicopters opérationnels, utilisant des technologies 'classiques'.lls sont performants et permettent d'effectuer de très bonnes photos aériennes.
Un téléphone Android pourrait simplifier considérablement la réalisation matérielle et aussi logicielle... je m'explique sur ce dernier point: ANDROID permet une intégration de l'OSD ainsi que des fonctions Navigation (waypoints, homing...) et permet de plus de remplacer avantageusement un APN 'standard'. La possibilité de recevoir des SMS en cas de crash ou de perte est un plus
Nota: le GPS du téléphone ne peut en aucun cas remplacer un GPS intégré à la carte navigation pour le control des évolutions du multicopter car la DVM de l'application peut suspendre (ou retarder) à tout moment une tâche... en particulier avec le GC (jusqu'à 500mS?!
à suivre...
img-5600-large.jpg (143kb)
img-5651-large.jpg (171kb)
img-5570-large.jpg (142kb)
img-0012-large.jpg (33kb)
p1010492-large.JPG (126kb)
fancyfly 12 years ago
fancyfly 11 years ago
Bonjour à tous,
Je suis nouveau sur ce site de projets électroniques communautaires et je profite de ce premier post pour saluer et remercier Elektor pour cette excellente initiative.
Je suis aussi aéromodéliste et j'ai un projet de pilote automatique avec télémesure qui est en cours de développement avancé. La technologie radio utilisée est le ZigBee. Le HW est basé sur une architecture à 'intelligence répartie' autour d'un bus CAN (cartes perso). Je n'envisage pas à court terme d'embarquer un téléphone dans mes modèles, mais j'aimerais pouvoir utiliser ma Samsung Galaxy tab 10.1 pour afficher les infos au sol, plutôt que mon 'gros' HP portable.
A ce titre votre projet m'intéresse et je souhaite y participer en apportant mes compétence HW et SW. Ce projet pourrait être pour moi une opportunité de 'jump start' dans le monde Androïd que je ne connais pas encore.
Merci de fournir lien de votre contribution au sujet des performances du WiFi.
Au plaisir de vous lire,
Michel
abiz 12 years ago
fancyfly 12 years ago
abiz 12 years ago
abiz 11 years ago
J'ai écrit en Francais... et j'ai constaté que le texte publié ne ressemble que de très loin à celui que j'ai tapé !
probablement suite à une double traduction 'automatique' Français->Anglais->Français !!!
Dois-je rédiger en Anglais pour éviter ces désagréments pour les lecteurs ?
Merci d'effaçer ce message après lecture
ClemensValens 12 years ago
abiz 12 years ago
ClemensValens 12 years ago
abiz 12 years ago
ClemensValens 12 years ago
abiz 12 years ago
abiz 12 years ago
ClemensValens 12 years ago
abiz 12 years ago
abiz 12 years ago
ClemensValens 12 years ago