DIY GnuVario : variomètre opensource - openhardware Arduino

Merci Eric pour le tuyau ! :trinq: Je suis pas encore suffisamment équipé… Mais c’est sur que c’est un bon outil ! du coup tu as une évaluation précise de la consomation.

Pour le choix du microcontrolleur :

Pour moi l’essentiel c’est de choisir une plaque qui fonctionne en 3,3V car tous les composant (batterie, ms5611, mpu9250, gps, carte sd, écran … ) fonctionnent en 3,3V. Donc cela simplifie grandement les circuits. Chez Sparkfun par exemple on trouve des plaques avec le ATmega32U4, un micro usb, et en 3,3V. Pour moi c’est idéal pour ce projet. Ya plein d’équivalent chez les autres constructeurs.

Pour le passage au processeurs ARM, on change d’architecture. C’est du 32bit et il y a souvent plus de performance et de mémoire. Mais je pense que tout (alti, acceleromètre, écran, GPS, carte sd, bluetooth) rentre dans un ATmega328p ou un ATmega32U4. Et les performences sont suffisantes même en 3,3V. Donc je pense que le changement de processeur sera avantageux lorsqu’il faudra proposer des fonctionnalités plus avancées (direction du vent, cartes etc …)

Autrement pour répondre à Vmath54 il n’y à pas de problème à changer de processeur. Comme le disait Whistler il faut juste changer le code du timer pour l’altimètre. Je peux donner des infos à ceux qui seraient interessés.

L’interêt du 4050 :

Pour Guillaume1 le 4050 sert à changer le voltage des signaux logiques. Le nokia 5110 utilise du 3.3V et donc ce n’est pas idéal de lui envoyer du 5v. Il faut voir le 4050 comme un simple interrupteur. Il ouvre du 3,3V au besoin. Mais comme je le disait plus haut, l’idéal est de tout faire fonctionner en 3,3V et le composant devient inutile. Le schéma sur mon Github est un peu obsolète j’en ai donné uen version à jour dans les pages précédentes.

Proposition pour les bricoleurs :

Comme je trouve que je ne vole pas suffisament pour faire évoluer mon vario, j’avais pour idée de fournir des kits tout prêt pour construire le vario de la vidéo ci-dessous. Il resterait plus qu’à souder et éventuelleement à percer le boîtier. Si il y a du monde on pourrait grouper les achats. Enfin je lance juste l’idée. Il me faut encore un bon mois pour être sur que le montage est au point et fiable.

Amusez vous bien !

A+

intéressé ! même si je suis équipé cela donne envie de jouer

intéressé aussi par curiosité
cela dépendra quand même du prix du joujou

très intéressé.
Mais, qu’y aura-t-il dedans ?

Intéressé aussi. :+1: La flemme et pas le temps de m’y mettre :ange:

Salut à tous ! :trinq:

Alors l’idée c’est de préparer à l’avance tout ce qui est difficile à adapter pour finaliser le vario.

Déjà tous les éléments qui demandent des mesures précises :

-> Un boîtier prêt et déjà ouvert pour l’écran, le switch on/off , l’écran et la carte sd.
-> Un circuit imprimé ajusté au boitier, percé, et prêt à acceuillir toutes les plaques de composants.
-> Un scratch autocollant de fixation au cockpit

Ensuite tous les composants pénibles à trouver. Dans ma version finale je ne veux plus de fil soudé. Ils sont cassants et font de mauvais contacts. C’est une plaie. Il y aurait donc :

-> un systême de connecteur pour l’écran afin de ne pas souder de fils. Le connecteur serait à souder sur l’écran et de l’autre côté sur le circuit impimé. Les câbles seraient préparés et ajusté à la bonne longueur.
-> un systême de switch on/off (à souder) intégré au circuit imprimé
-> un buzzer (à souder) intégré au circuit imprimé

Ensuite il y aurait toutes les plaques de composant nécessaires :
-> un arduino pro mini 3,3V
-> une plaque avec altimètre et acceleromètre
-> une plaque avec une chargeur lipo
-> une batterie lipo 600mah
-> une plaque avec un module GPS
-> une plaque avec un lecteur de carte SD
-> une plaque avec un module bluetooth

Donc comme boulot il y aurait à souder toutes ces plaques sur le circuit imprimé. Et à fixer tout ça dans le boîtier. Donc comme matos non fournis il faudrait :
-> un fer à souder fin
-> de l’étain et de la tresse à dessouder
-> du papier de verre fin
-> un pistolet à colle
-> une carte SD

Le but n’étant pas de gagner de l’argent, ça sera au prix coutant internet. Mais il faudra compter quand même le matos dont j’ai besoin pour réaliser les circuits imprimés, pour percer et pour préparer les câbles.

Dès que j’ai le temps je ferais une estimation. Mais je pense que ça doit passer en dessous de 60 euros.

Je vous tiens au jus.

A+

Super, prunkdump !

Finalement, équipé au complet, on n’est pas loin des fonctionnalités d’un XC Tracer, non ?
Avec la satisfaction d’avoir fait soi-même, de maitriser le code, de disposer d’un afficheur et pour un coût très attractif.

Si j’osais une proposition : pas possible de prévoir un “bouton” genre encodeur, pour ceux qui seraient tentés d’ajouter des choses, comme par exemple spécifier l’altitude de départ ?

Salut.

Bin au niveau hardware on est pas loin du XC Tracer. Après il manque tout le développement des logiciels qui gravitent autour. La gestion des traces, les mises à jours de firmware, la visualisation des traces, les convertions de formats de traces.

D’ailleurs je suis en train de programmer un bootloader qui permettrait de mettre à jour l’arduino par la carte sd et non par l’USB. Parceque je trouve pénible d’avoir à démonter le boîtier chaque fois qu’il faut mettre à jour le programme.

Pour l’idée du bouton, si tu regarde la vidéo il y a pas mal de place sous l’écran pour placer différents types de boutons. En plus l’arduino est juste en dessous pour la connectique. Donc ça ne posera pas de soucis. Mais j’aime pas trop les boutons et pour l’instant l’altitude est recalée avec le GPS. C’est quand même relativement précis. Après il est possible également de contrôler le vario avec l’accelerometre. Par exemple pour terminer la calibration dans le programme de calibration il faut le tourner à l’envers. On peut imaginer contreller des menus en “penchant” le vario.

Mais bien sur l’idée c’est que tout le monde puisse adapter le montage comme il veux. Mais pour l’instant je ne pensais pas mettre de boutons dans le “kit”.

  • Pour le bouton : je m’attendais à ta réponse.
    Tu as raison : S’il y a de la place pour rajouter, a chacun de faire.
    Sur la vidéo, pas évident de savoir : on voit le boitier de l’extérieur, sans voir comment c’est dedans.

  • pour l’USB : pas moyen de donner accès sans ouvrir le boitier ?
    Alors, comment fais-tu pour charger l’accu ?

bonjour à tous, super projet! Je suis preneur aussi.

Dans l’idée de développer l’outil encore plus loin, je me demande ce qui serait possible de faire en soft. Je rêve d’avoir ce genre de vario-gps à code ouvert pour développer des scripts. Deux problèmes: 1) je n’ai pas de connaissance en électronique suffisante pour construire une boitier moi même, et 2) je ne sais coder qu’en matlab. J’ai aucune idée de la puissance du processeur de l’arduino ni de jusqu’où on peut aller en terme d’algorithme.

Les deux idées que j’ai actuellement en couche soft sont:

Salut !

@vmath54 : En fait il n’est pas possible de charger la batterie avec l’USB de l’arduino car lorsqu’il est sous tension il démarre. Ce n’est pas très pratique. Donc l’USB qui sort à l’extérieur du boîtier est l’USB du chargeur qui est indépendant de l’arduino. Il sert uniquement à la charge, il ne peut donc pas servir à uploader les programmes.

@finlard : Les deux points que tu cites sont très au dela de la performance d’un arduino. Il faudrait plutôt programmer cela sur une tablette ou un portable qui reçoit les données du vario. Il faut voir avec l’équipe de XCsoar. Je ne sais pas ce qu’ils utilisent comme language de programmation et les fonctionnalités qu’il ont déjà implémentées.

Mais je répète le but n’est pas de juste fournir un vario à monter qui fonctionne. Mais bien de permettre à tout le monde de le modifier comme il le souhaite. J’espère d’ailleurs profiter moi même de toutes les idées intéressante qui vont émerger ! :wink:

A+

ok merci pour la réponse! Je viens de voir que pour le point 2 c’est déjà fait chez XCsoar :wink:
https://www.xcsoar.org/discover/2016/08/12/xcsoar-6-dot-8-7-released.html

Pour le point 1, je pense que l’algorithme est beaucoup plus simple et peut facilement est importé sur un arduino.

idéalement, il faudrait deux petits accéléromètres accrochés à chacun des élévateurs qui enverraient en bluethoot (ou autre) les données au boitier principal afin de mesurer le roulis. C’est envisageable?

Salut,

@Prunkdump, merci encore pour les fichiers, j’ai eu beaucoup de boulot ces derniers temps et je me suis arraché encore un peu sur l’écran oled en fastwire mais cela ne fonctionne toujours pas, à la place du coup j’ai utilisé un écran oled en SPI. Du coup c’est parfait et cela laisse le bus I2C pour le MS5611.

@Vmath54, idem que prunkdump à propos du M0, j’en ai un et ai déjà essayé de faire fonctionner le code dessus mais sans succès pour l’instant car je ne sais pas comment gérer les timer. Si quelqu’un avance avec un Cortex M0 je suis preneur d’infos car le 328 est limite si on veut ajouter de nouvelles fonctionnalités au vario, surtout pour l’affichage.

Je commence tout juste à m’intéresser à l’Arduino ( grâce à vous)
Je retrouve mes bricolages d’ado à base de CI bien moins sophistiqués
Je vais me commander un kit pour faire joujou moi aussi

:coucou:

@whistler, je suis intéressé également par l’adafruit feather m0 (pas encore commandé) ; tu peux nous expliquer les problèmes que tu rencontres ?

@vmath54: Comme dit précédemment je ne sais pas comment changer le code pour le faire fonctionner avec les timers du M0.

Il y a aussi le fait que le M0 ne laisse pas accès à son EEPROM, il faut donc utiliser un eeprom externe connecté en SPI (que je n’ai pas encore).

Bonjour !

@finlard : Je pense qu’il n’y a pas besoin de mettre deux accéléromètres sur chaque élévateur pour mesurer le roulis puisque le mpu-9250 sait déjà mesurer le roulis du vario. Il suffirait donc de constuire un support pour le vario qui communique bien au boîtier le roulis des deux maillons. Le reste c’est de la programmation et de la mise au point.

@whisler : Dommage que l’écran I2C n’ait pas marché. Je pensais que mon code était bon mais sans l’écran pour tester c’est toujours difficile de débugger. Content que tu ais trouvé une solution.

Pour le passage au Cortex M0 :

Dès que j’ai fini mon prototype complet avec le ATmega328 je vous enverrai comment paramétrer les timers sur le M0. Ce n’est pas très différent finalement du ATmega328 mais tous les noms de registre changent. Il faudrait donc adapter deux bibliothèques : ms5611 et toneAC.

Pour les interessés par le kit :

J’ai presque fini le code du bluetooth et je vais passer à la construction d’un premier prototype avec cette fonctionnalitée. Si tout se passe bien je donnerai le prix final et je redemanderai les personnes interessées pour faire la commande du matériel. Le temps de tout recevoir, cela me permettra de faire un petit manuel de construction parceque ce n’est pas non plus complètement évident. Voici une liste mise à jour du matériel nécessaire pour ceux qui voudraient prendre de l’avance :

-> un fer à souder fin
-> de l’étain et de la tresse à dessouder
-> une pince coupante fine
-> du papier de verre fin
-> un pistolet à colle
-> une carte SD

A+

Salut Prunk,
Encore une fois : Super projet !!!
une petite question : Tu es sur une version though hole ou CMS ?

@prunkdump j’imagine que fixer rigidement le vario aux maillons des élévateurs va poser un problème…Après si le vario est sur un cockpit ça devrait le faire, sur une jambe ça le fera moins.

@FRFM : Le kit serait en composants traversants. Le CMS me parait trop difficile à souder pour que le kit soit accessible à tout le monde. Mais en réalité les composants eux même sont en CMS. C’est juste qu’il seront fournis sur des plaques que l’on pourra monter en composant traversants.

@Finlard : Effectivement il faudrait un cockpit. Mais c’est également tout à fait possible de faire une fixation qui ne contrain pas les élèvateurs en écartement mais qui par contre communique totalement le roulis. On peut imaginer quelque chose qui ressemble à un règle pliable en deux avec le vario fixé sur la rotule et les extrémités fixées à chaque élévateur. Ainsi en “s’ouvrant” la rêgle peut suivre l’écartement des élévateurs et par contre il n’y a aucune souplesse dans le sens du roulis.

A suivre.

A+