Variomètre maison à base d'Arduino

dans la série des perles : http://navspark.mybigcommerce.com/
un bon proc, et un GPS intégré. (en accessoire une carte qui charge un lipo)
reste plus que la partie vario, écran et SD :wink: et on a un vario plus que correct.

Pour les écrans, attention aux TFT qui sont peu voire pas lisible en plein soleil. le top c’est les écrans à encre électronique, mais lent en rafraichissement, ou alors les écran LCD monochrome sans éclairage.

Hallucinant ce qui existe pour 25$ !!!

Interressant, je ne connaissait pas le concept de processeur softcore, dans l’esprit opensource, plutot tentant.
Le bémole, as moyen de mettre la main sur un de ces joujous en chine…

Pour le moment, j’orienterais plutot mon choix vers le STM32F103RBT6.

L’avantage est qu’il est à la fois compatible avec arduino_stm32 et mbed : http://developer.mbed.org/platforms/ST-Nucleo-F103RB
Je peux le trouver à moins de 4€ : http://item.taobao.com/item.htm?id=35595258574

J’ai découvert il y a quelques heures ce SDK spécialisé dans la programmation sur ARM. Il présente un IDE et un compilateur en ligne (original n’est-ce pas?) ainsi qu’un système de révision et de nombreuses librairies…
Je me laisserais bien tenter plutôt que de passer du temps à me familiariser avec arduino qui est un peu trop spécifique à mon gout…
Avez-vous déjà essayé de programmer avec mbed ?
Ou alors je me dis qu’un bon vieux gcc-arm-embedded + openOCD serait encore plus formateur…

Bref, ensez-vous que 128Ko de flash serait suffisant pour un projet baro/gyro/accelero/gps/ecran avec tous les calculs qui vont bien pour traiter toutes ces données (filtre Kalman et/ou autres), les afficher et les logguer sur une carte SD ?

Sinon, dans le même esprit il y aurait la ultra basse conso STM32L152RE qui fait 512Ko : http://www.st.com/web/en/catalog/mmc/SC1169/SS1295/LN1041/PF259539
Elle est autour de 10€ mais le problème est que je la trouve uniquement dans sa version nucleo qui n’est pas ttrès compacte :
http://item.taobao.com/item.htm?id=43179892943

En ce qui concerne l’écran, je vais voir si je peux trouver du LCD assez grand… J’ai regardé le e-ink mais c’est beaucoup plus cher (entre 10 et 30€).

:+1:
Quand on voit le prix de l’électronique en Chine on ne se pose même pas la question de connaitre la responsabilité sociale et environementale des fabricants…
Et quand on le compare au prix auquels les grandes marques vendent leur derniers I-daubes, ça donne le vertige.
:vrac:

Vive le DIY !

Bonjour Davy,

Quel est ton expérience en terme de conception électronique et informatique embarquée ?

En ce qui concerne l’électronique, j’ai pas mal bidouillé il y a quelque temps.
Pour la prog embarquée, je commence tout juste à m’y intéresser, d’où mes interogations sur la voie la plus judicieuse (arduino, mbed, ou autre SDK…).
Pas vraiment d’exérience donc, mais beaucoup de motivation :slight_smile:

@Jéremie :
Aurais-tu effectué des premiers tests de sensibilité avec le ms5611 ?
J’attends de savoir s’il sera nécessaire de travailler avec l’accéléromètre pour passer ma commande :slight_smile:

Au final, je pense que je vais me mettre à mbed avec un STM32 muni d’une bonne mémoire pour ne pas être limité.
Pour l’écran, je pense m’orienter vers un e-ink de 2 pouces muni d’un controleur intégré SSD1606 (50rmb):
http://item.taobao.com/item.htm?id=41964477729

Okidac ! Sans vouloir me montrer condescendant, je pense sincèrement qu’il est bon de commencer par mener une réalisation simple jusqu’au bout puis d’augmenter progressivement la difficulté.

En voulant commencer par un vario qui fait papa-maman dès le départ (GPS, accéléromètre, etc.) tu risques de te décourager très vite et de ne finalement rien produire.

Je ne connais pas les produits “ST Nucleo” mais je te conseille plutôt de commencer par un produit doté d’une importante communauté donc plutôt Arduino ou Teensy.

Je l’ai reçu en début de semaine et je n’ai encore pas trouvé le temps de souder les broches et encore moins de le tester.

De toute façon je souhaite d’abord tester mon algorithme avec le BMP180 avant de mettre en place le MS5611 pour voir si on peut déjà tirer quelque chose du BMP.

A mon avis, le boulot réalisé avec l’accéléromètre est trop complexe pour une première expérience.

Un conseil, laisse tomber le BMP, le bruit est beaucoup trop important, et meme en filtrant (à la freq d’échantillonage max) ca ne permet pas d’avoir qq chose d’exploitable pour une utilisation en parapente.

Passe plutot sur le MS5611, tu trouvera le filtre utilisé @60Hz sur le repo git du vario solaire http://www.lebipbip.com/.

Salut Marsu :slight_smile:

Comme expliqué plus haut, j’ai justement extrait le code de filtrage du BipBip pour l’inclure dans mon projet mais je n’ai pas encore pris le temps de tester. Par contre l’Arduino est très limité en terme de mémoire donc il ne reste plus grand chose pour les autres fonctionnalités avec une telle fonction de filtrage !

Quelle est la fréquence d’échantillonnage max du BMP180 ?

En usage perso, la différence de prix entre le MS5611 et le BMP est minime donc je suis d’accord que ça ne sert à rien de l’utiliser mais je voudrais tout de même voir ce que peut donner un bon filtrage tel que celui du BipBip sur un capteur très bruité.

Le conseil est bon, vu la différence de prix actuel, autant avoir le top.
Mais c’est faux de dire que le BMP est inexploitable en parapente, il donne même des résultats honorables, y compris dans sa version antérieur en 085. (J’ai pas mal volé avec entre 2009 et 2012 avant de passer au 5611)

@Jérémie
Le fait que n’aie pas d’expérience en programation de microcontroleurs ne signifie pas que je n’en aie pas du tout en programmation. Merci quand même pour les conseils :wink:

Mon choix se porte sur Mbed justement pour sa communauté, Arduino me semblant d’avantage axé sur des développements amateurs. En tout cas, c’est l’impression que j’en ai eu à la lecture des différentes sources que j’ai pu trouver sur le net, peut-être que je me trompe… En tout cas l’utilisation de l’environnement d’Arduino, AVR ou Teensyduino me parait trop restrictive quant au matériel ciblé.
Bref, je vais faire le choix m’orienter sur une plateforme ARM avec Mbed, qui me semble être être un apprentissage plus facilement redéployable dans d’autres cadres que mes projets amateurs.

Bref, vu la difference de prix ici en Chine, je pense investir dans un module MS5611 + accelero ainsi qu’un BMP180 seul. J’aurrais ainsi la possibilité d’étudier la sensibilité de différentes associations. Je pense qu’il serait intéressant de distribuer les sources de différentes versions : 1 - simple “bip-bip” minimaliste BPM180 / 2 -vario avec écran et meilleure sensibilité / 2 - vario GPS

J’essayerai de suivre les échanges sur ce forum avant de mettre au développement après mon installation en France (pas avant avril).

Bons développements à tou-te-s et bons vols. En ce qui me concerne, j’ai hâte de retrouver ma voile :slight_smile:

[quote=“Davy,post:93,topic:49491”]
J’ai prévu de créer un projet GitHub dès que j’aurai pondu quelque chose de fonctionnel ! (j’ai même déjà trouvé le nom de mon projet avec un jeu de mot subtil mais ça viendra en même temps ^_^)

Bonjour à tous

je viens de recevoir mes composants , je vais pourvoir attaquer la soudure,
le micro contrôleur est programmé, tous c’est bien déroulé grâce à vos conseil

sur le BPM180 il y a une broche 3,3v , quelqu’un pourrait il me dire à quoi cela correspond sur le MS5611 car elle n’y figure pas

pour info j’ai trouvé également cet écran qui semble assez grand pour la V2
http://item.taobao.com/item.htm?spm=2013.1.20141001.2.vnSEnQ&id=41985764351&scm=1007.10115.4482.i41964477729&pvid=cde32777-0b0b-4988-8c50-4ed6ef9370a8

merci à tous

le troubadour

pour éviter les bip -bip intenpestif voici ce que je viens de trouver, peut-être l’avez vous déjà vu , si ça peux faire avancer le projet

la vidéo: https://www.youtube.com/watch?v=rPTJk17pWu4&feature=youtu.be

descriptif de l’ensemble : http://pataga.net/imukalmanvario.html

bonne journée

Le troubadour
[/quote]
Super votre projet. J.ai conacté Hari Nair récemment car je trouve son idée freeIMU + MS5611 géniale (si en plus on associe le navspark…) mais son code est en partie sous NDA avec Max. kellerman de XC Soar… Alors si vous arriviez à un résultat aussi bluffant que sur la vidéo ça serait fantastique

Salut à tous ! Et bien ça fuse les idées !

De mon côté après ne pas avoir touché au bidule depuis un bout de temps j’ai repris un peu le montage (optimisation pour branchement de l’écran) et le code. J’ai optimisé certains points qui permettent notamment d’améliorer la rapidité d’exécution de la loop, la façon dont le bidule bip et fais la mise à jour de certaines librairies dans le but de gagner quelques octets et d’améliorer la précision de l’ensemble (plus de loop = plus de capture de pression).

Du coup maintenant avec vos commentaires j’aurais presque envie de changer le capteur de pression.

En effet le MS5611 est plus précis http://wiki.paparazziuav.org/wiki/Baro_comparsion mais aussi plus cher.
Concernant la précision du bmp085 je filtre le signal grâce à un “smooth filter” et cela permet d’avoir de bons résultats. J’ai bien sûr testé en vol ce vario et personnellement je trouve la précision bien suffisante.

Mais comme dit plus haut je suis quand même en train de me renseigner pour remplacer le bmp085 par un module MS5611 + accéléromètre (faut bien s’occuper :)).
Quelqu’un aurait un conseil niveau matos et librairie à utiliser ?

Pour finir une petite vidéo d’un vol avec ce vario. Pas très parlant car la coque de la caméra atténue beaucoup mais on l’entend biper parfois à travers le vent.
http://youtube.com/v/pDU3rvpa3h0

++

Bof, je l’ai payé moins de 10€ port compris et il a vraiment l’air de faire comparé à l’autre. Je te dirai quand j’aurai le temps de tester…

bonjour à tous

je viens de mettre à jour ma carte avec les modifs de Sinseman et ça me met un message d’erreur, étant vraiment débutant pourriez vous m’aider .

en pj ma capture d’écran

Merci

Le troubadour

Salut,

oui c’est tout simple. J’ai mis également à jour les librairies. Donc il faut que tu écrases les anciennes avec les nouvelles.

Et aussi comme indiqué dans le README le schéma de connexion de l’écran a été modifié pour des soucis d’optimisations du montage.

PIN_SCLK : D8 --> D4
PIN_LIGHT : D11 --> Inchangée
PIN_SCE : D7 --> Inchangée
PIN_RESET : D8 --> D6
PIN_DC : D6 --> D5
PIN_SDIN : D5 --> D4

Donc fais attention à bien revoir cette partie sur ton montage ou à modifier directement dans le code les pin comme elles sont chez toi.
Je ne l’ai pas indiqué non plus mais j’ai aussi inversé les pin lisant le bouton encodeur (ligne 39) Encoder knob(3, 2); remplace Encoder knob(2, 3); donc si ton montage est déjà fais la rotation gauche droite sera inversé. Là aussi avant de compiler le code tu peux remettre les valeurs d’origine.