dimanche 8 décembre 2013

AltiLogger v2 - GPS

Premier test avec le GPS embarqué (5 échantillons / s), mais le malheureusement GPS s'est coupé lors du déploiement du parachute. Peut-être une chute de tension. Toutes les autres données ont été correctement enregistrées.

Lancement
Vol parfait
Apogée atteinte à 421m, déploiement à 10s (G71R)

Après l'atterrissage
Tracé GPS




jeudi 5 septembre 2013

Altilogger v2

Apogée atteinte en 9.1 seconds à 432m (G71R)

J'étais un peu inquiet à l'idée de lancer ma fusée fraîchement réparée avec un nouvel altimètre expérimental. Enfin tout s'est bien passé, pas de casse ... La première sortie pyrotechnique a parfaitement fonctionné (16G détecté!) a 10.6 secondes. Par sécurité, j'ai utilisé le "mode de minuterie". La prochaine fois, je testerai  la détection par apogée, avec la 2e sortie pyrotechnique en sécurité. Je connecterai aussi le GPS, j'ai de bons espoirs avec l'antenne Sarantel ...

61200 échantillons ont été enregistrés dans la mémoire ROM flash pour 1min de vol, avec tous les capteurs (accéléromètre, gyroscope, altitude / pression).

Le décollage a été détecté avec l'accélération, 10G à 3m de hauteur

J'ai pu tester aussi ma Gopro en mode 240 img/s





AltiLogger avec le GPS optionnel

Huge glitch at ejection !

Specifications Altilogger v2 
  • accelerometre 3 axes (+/-16g), gyroscope 3 axes (+ /-2000deg/s), pression(450-1100mb)
  • Plug and Play" GPS Ublox optionnel "Plug and Play"
  • 1MB flash
  • 8 vols (~4min chacun) enregistrés
  • 100 ech/s (et 10 ech/s après l'apogée), log de tous les capteurs (excepté GPS, qui est plus lent)
  • Gestion des vols via USB (téléchargement, RAZ...)
  • Décollage par accélération (>=2.5G) ou par élévation de 15m 
  • 2 sorties pyrotechniques
  • Alimenté par une LIPO 1S
  • 2 ports séries de debug (MCU & GPS)
  • Auto check avant lancement
  • Haut parleur
  • 204800 ech/s pour le capteur de pression
  • Détection du burnout, apogee (de l'accelerometre ou capteur de pression), atterrissage

mercredi 15 mai 2013

High Power Leds sur Dji F550 part 3

Voici la dernière version de mon montage avec un nouvel effet (Merci hrairt pour l'idée), avec l'ajout de la télémetrie via le protocole Hott Graupner) ! Il est possible de lire en temps réel la tension de la batterie.

Le code a été optimisé, avec moins de copier/coller ;-)


Schéma
En comparaison avec le schéma précédent, l'Arduino est alimenté via l'entrée régulée RAW. Deux Arduinos ont cramés, je ne sais pas si c'était dû à une surtension de l'alimentation 5V. Sinon, c'est à peu près le même schéma que précédemment, avec en plus les entrées analogiques pour  la tension de chaque cellule de la batterie. L'échange de télémétrie se fait sur un fil, l'entrée entrée / sortie de l'UART arduino est ponté avec une  résistance.
Le code est prêt à fonctionner tel quel. Il sera juste nécessaire d'ajuster le coefficient de division de tension dans le fichier Tension_Lipo.h..


J'ai séparé la carte principale de la carte carte avec les résistances de puissance. On peut distinguer le connecteur inférieur gauche qui recevoit (standard Hyperion) la prise d'équilibrage.
Une page sur le brochage des prises d'équilibrafeConnecteurs d’équilibrage de LiPo



Il est nécessaire d'activer le module "Général Mod." sur la radio pour les informations de télémétrie.

Telemetry Graupner mx-20

Il est possible de détecter jusqu'à 4 cellules (4S).


Avec une légère modification du code source, vous pouvez aller jusqu'à 6S lipo. Au niveau matériel, il suffit de connecter les entrées analogiques A4 et A5 avec diviseur de tension appropriée.




Telemetry Graupner mx-20
Le deuxième écran. Lit la tension globale et le nombre de cellules détectées (à la place de la température)

Par ex, 15V avec 4 cellules.






Le protocole Hott:
https://code.google.com/p/hott-for-ardupilot/wiki/QuickStartGuideArduCopter
http://www.rc-network.de/forum/showthread.php/281496-Graupner-HoTT-Telemetrie-Sensoren-Eigenbau-DIY-Telemetrie-Protokoll-entschl%C3%BCsselt
Merci à ThyZoon pour the code: 
http://www.thyzoon.fr/Aeromod/LipoHott/LipoHott1.php

Sources

lundi 11 mars 2013

AltiLogger - 1er vol

Ça y est, après moultes réglages, le 1er tir de mon prototype a été effectué ce weekend avec un moteur G53 Fast Black Jack reloadable!


Autant ménager le suspense tout de suite, le parachute ne s'est pas déclenché, et la caméra embarquée est restée définitivement sourde et muette...


Déterrage de la charge utile et de l'ogive
La première partie du vol s'est bien déroulée, conformément à la simulation d' OpenRocket. Malgré un poids élevé (760g à vide), la fusée a décollé rapidement, s'est stabilisée a l'apogée vers les 8 secondes... avant de plonger comme une balle vers le sol à quelques mètres du site de lancement. La charge utile et l'ogive se sont complètement enterrées dans le sol !

Bilan: Ogive, lecteur de carte SD et circuit imprimé détruits...
Altitude / accélération

 Le bon coté, c'est que j'ai pu enregistrer quelques données, 1150 échantillons (accélération 3 axes et altitude) sur 17 secondes. L'enregistrement a commencé des la détection du décollage ( seuil à 2g ).

Les données ne sont pas filtrées, car elles se révèlent très bonnes, quasiment aucun bruit, en particulier pour l’altimètre BMP085 (même en mode ultra low power)





Altitude / vitesse calculée

Les chiffres sont très proches des prévisions calculées par OpenRocket

Apogée à 339m au bout de 8.4s
Accélération max: 10.5g
Vitesse ascensionnelle max: 80m/s a 1.5 s

En intégrant l'accélération, on retrouve la vitesse, et elle est bien nulle à l'apogée, les 2 capteurs ont donc bien fonctionnés.



Conclusion:

Pour la version 2:
  • Utiliser un système de redondance pour l'éjection du parachute (2 e-matches). La résistance de l'ematch était surement trop élevée...
  • Les données sont envoyées par paquets sur la carte SD, ce qui génère un "glitch" d'à peu près 120ms 4 fois par secondes approximativement. En cas de crash, le dernier paquet n'est pas écrit, ce qui provoque une perte de données. La version 2 sauvegardera les données dans un mémoire Flash, et dumpera éventuellement les résultats dans une carte SD.
  • Il n'est peut-être pas nécessaire d'embarquer un accéléromètre sur 3 axes de +/-24g. Autant utiliser une IMU 10dof (avec baromètre intégré), et éventuellement rajouter un accéléromètre 1 axe grande échelle (ADXL193 par ex)
  • Utiliser l'USB pour définir les paramètres de vol et/ou dumper les résultats

Prochain lancement cet été !

mercredi 16 janvier 2013

AltiLogger - prototype


Voila, le montage est passé de la plaque d'essai au prototype. J'ai pris en compte une deuxième sortie pyro dans le programme, mais faute de place, je ne l'ai pas rajouté sur la plaque veroboard. Ainsi on a 2 bips consécutifs en boucle, correspondant à l'état des 2 sorties pyrotechniques.
Le choix des mosfets est important, la commande étant en 3.3V. Ce site recommande des IRLZ44, j'utilise pour ma part des IRFZ44n (en m'étant trompé sur la référence !), mais ils fonctionnent sans problèmes. Il est également possible de supprimer ou réduire la résistance de 10ohms pour le HP, afin d'obtenir un son plus puissant.

Le schéma

Coté face
On trouve l'alimentation en haut à gauche, avec l'interrupteur la possibilité de mettre un inter.
Les 2 pins suivantes servent à l'alimentation de camera.
Juste en dessous du mosfet, on a 2 broches pour la sortie pyrotechnique. 
A droite du transistor, 3 broches permettent de piloter la caméra (power, mode, shutter).



Coté pile
L'envers de l'alti, le haut parleur sur la tranche, pour gagner de la place. J'envisage de mettre une eeprom i2c, ainsi que la deuxième sortie pyro de ce coté. J'aurai du tourner le lecteur de SD dans l'autre sens !







L'alti fait moins de 4cm de large, pour un poids d'environ 30g, sans compter la batterie. Le tout doit faire dans les 50g, poids acceptable même pour une petite fusée.



Le montage rentre parfaitement dans une ogive Public Missile Intellicone 2.1.




mardi 8 janvier 2013

AltiLogger

Le but est de fabriquer un altimètre pour fusée modèle réduit.  Celui doit être en mesure de déclencher automatiquement l'ouverture du parachute, à l'aide d'une minuterie ou des données issues des capteurs embarqués (altimètre,accéléromètre). Une Lipo 3.7V 700mAh suffit à alimenter le montage.

Le module embarque un accéléromètre 3 axes +/-24G,un altimètre,un haut parleur et un lecteur de micro SD qui permet d'enregistrer les mesures lors du vol. Il est également capable de piloter un caméra "keychain" (cf post précédent). Le module est capable de logguer 50 mesures par seconde.


1er prototype

Lors de la mise sous tension, deux sons retentissent, puis 4 autres, qui donnent successivement l'état de la caméra (déclenchement de l'enregistrement), de la carte SD, de l'accéléromètre, et enfin du baromètre. un son aiguë pour OK ou un grave pour NOK.
Ensuite le testeur de continuité nous indique en permanence l'état de la charge, toujours au moyen d'un son grave ou aigu. Le module scrute alors en même temps l'état de l'accéléromètre (100 fois par seconde), et attend le décollage (seuil de 2G). Le module n'aura même pas besoin d'être parfaitement aligné dans le corps de la fusée, puisqu'il prend en compte l'accélération globale sur les 3 axes.
Dès le décollage,  un nouveau fichier de log (logXX.txt) est créé.

Le module émet alors un nouveau son, qui témoigne de l'ascension. Au bout d'un temps défini, la charge est mise à feu (nouveau son), puis la descente commence (encore un nouveau son).

Au bout d'un temps défini, le module éteint la caméra, et joue une séquence de bips cycliquement pour indiquer l'altitude maximum atteinte (entre 0 et 100m dans la vidéo ci dessous ).

Dans un deuxième temps, la charge sera déclenché suivant l'état de l'altimètre (apogée), intégration de l'accélération, ou autre... De même l'enregistrement sera coupé lorsque le module détectera que la fusée est au sol. Je pense également rajouter un deuxième parachute... J'envisage aussi d'utiliser un eeprom qui ferait office de buffer pour doubler le nombre de mesures par seconde.

1er test en labo

Les fichiers produits sont au format CSV (aisément exploitable sous Excel),et indiquent l'heure courante en ms, les accélérations subies sur les 3 axes et l'altitude.

lundi 7 janvier 2013

Keychain Camera pilotée via Arduino

1080P Jumbo camera
Pour pouvoir embarquer une caméra dans une fusée, il faut qu'elle soit petite ! Mon choix s'est porté sur une de ces fameuses "keychain camera" qui permettent, pour une somme modique, de filmer en full HD 30 fps ! Ce modéle est rechargeable sur USB (lipo 1S), permet aussi le 720p@60fps et les photos a 5MP, en incluant une sortie vidéo analogique ! Intéressant également pour le modélisme en FPV...
Elle peut même faire office de webcam... La lentille peut aussi être remplacée pour changer l'angle de vue.
La caméra était attachée le long de la fusée 

Mais ce qui serait intéressant, c'est de piloter la caméra via un microcontrolleur (ici un arduino). Lorsqu'elle est mise sous tension, on est en mode 720@60fps, led jaune allumée en continu... Un appui sur le bouton permet de passer en 1080@30fps, puis en photo.
A noter que la tension est de 3.3V, donc mieux choisir un uP sous la même tension.



On trouve 3 boutons:

  • Power: la mise sous tension - 3.3V inactif
  • Mode: la sélection du mode - 0V inactif
  • Shutter: le déclencheur - 0V inactif


Il suffit de ponter ces 3 boutons sur les sorties d'un arduino, d'appliquer la tension inverse pour simuler la pression et le tour est joué.

Il doit être possible d'utiliser une sortie sur les leds ou autre, pour avoir un retour sur l'état du module.




Les soudures sont assez délicates...


Séquence d'initialisation:

    • Impulsion positive sur Power pendant 200ms
    • Pause 4s
    • Impulsion négative sur Shutter pendant 200ms
    • Enregistrement
    • Impulsion négative sur Shutter pendant 500ms
    • Pause 4s
    • Impulsion positive sur Power pendant 2s
    • Pause 4s