aide mesure d'angle arduino

Bonjour, à toutes et tous

Je m’appelle David et je suis un tout jeune novice de l'arduino (ce matin même) :), j'ai lu nombre d'informations sur l'arduino qui m'ont permis de comprendre certaines choses mais il y a encore beaucoup de flou dans tout ça. Je me permet de poster ici afin de solliciter votre aide si cela est possible. Voila je suis entrain de développer un tableau de bord avec écran lcd 7.5"pour un ULM et j'aimerais pour cela faire un horizon artificiel 2 axes. La carte électronique que j'utilise dans mon tableau de bord est très spécifique et assez limitée dans ses applications pour réaliser mon horizzon mais possède 5 entrées analogiques. Le seul moyen pour moi de pouvoir exploiter l'information serait d'avoir une tension ou un indice (0-1023?) représentatif de l'angle du module comme ça je pourrais faire une table(dans la prog de ma carte) si tu as 1023 ou 2.5v sur l'entrée analogique4 ça veut dire 90°et si tu as 0 ou -2.5v ça veut dire -90° par exemple. J'ai lu qu'un accéléro pouvait me permettre de faire ça mais je sais pas trop comment le mettre en place,avec quelle carte cela serait-il le plus viable, quelle programmation mettre dedans etc... Je n'ai pas trouver de module qui me permettait de me fournir sur une de ses sorties directement une tension en fonction de l'angle... car tous les nouveaux gyro et accéléro MEMS fournisse une vitesse angulaire et pas un angle absolu.. Cela existe???
l'arduino semble être un moyen plus simple pour les novices comme moi d'arriver au bout de se projet car il y a nombres d'explication à voir et quelques tutos pour apprendre.

Serait-il possible d'avoir quelques lumières svp... :slight_smile: pardonnez moi de mon noobisme prononcé :wink:

disciple:
... Cela existe???
l'arduino semble être un moyen plus simple pour les novices comme moi d'arriver au bout de se projet car il y a nombres d'explication à voir et quelques tutos pour apprendre.

Serait-il possible d'avoir quelques lumières svp... :slight_smile: pardonnez moi de mon noobisme prononcé :wink:

bonsoir
il y a pas d'appli basé sur un nunchuck (capteur ADXL330) et un arduino
par exemple

Bonjour et merci pour la réponse.

Je suis encore entrain d'apprendre et de chercher mais je sais que des applications existes. Ce que je voulais savoir par cette question c'est si il existe directement des modules avec accéléro ou gyro qui donne directement EN SORTIE une tension en fonction de L'ANGLE et non d'une vitesse angulaire. Car je me demande toujours comment cela peut fonctionner comme il faut avec un accéléro dans un ULM ou tu es soumis constamment à un mouvement et des accélérations.?? Et puis si tu mesures une vitesse angulaire est que par exemple tu décides de prendre 15° et que après tu stabilises cette inclinaison. Tu seras toujours à 15° d'inclinaison mais ta vitesse angulaire sera nulle alors comment faire pour récupérer ce qu'il faut?

Je suis entrain de regarder pour m'acheter un petit kit arduino pour pouvoir programmer mais je ne sais pas du tout quel code il faudrait que je mette dedans pour pouvoir sortir une tension en fonction de l'angle absolu.Seul moyen pour moi avec ma carte interne de pouvoir faire mon horizon...

Re bonjour :wink: Je suis toujours en recherche et en apprentissage et de plus en plus de chose se précises. Le prochain point qui me gêne avant de me lancer dans l'achat est le suivant:

j'ai bien vu que toutes les cartes imu avec gyro et accélero fournisse une donnée en fonction de la vitesse angulaire mesurée et non de l'angle absolu et que du coup il faut que je rajoute une tite carte micro-contrôleur derrière pour programmer,calculer et interpréter cette vitesse angulaire. En prenant par exemple un montage simple avec un adlx335. Je relie alim et mass et en ne prenant que un seul axe, je vais relier mon "X" sur la broche A0 de mon arduino nano (par exemple), ensuite mon code me permettra de voir sur le pc ma valeur brute (par exemple) 0 pour -90° et 1023 pour 90°...

Mais le problème est la pour moi... Cela est fait directement par le micro-contrôleur... en mettant un fil de ma broche A0 sur une des entrées analogiques de ma carte tableau de bord, je récupère pas cette valeur (0-1023)... C'est comme si je branchais directement mon entrée entrée ana sur le X du adxl335??? Je vois pas physiquement comment récupère ma donnée calculée pour la mettre physiquement sur mon entrée analogique... à moins que je puisse sortir cette valeur sur une autre sortie de mon arduino nano...??? Pls help MERCI

Utiliser le PWM et un filtre RC ou bien utiliser un DAC (Digital to Analog Converter).

L'horizontalité (ou la verticalité) sont des grandeurs absolues et statiques, relatives au centre de la terre (ou du géoïde).

Les indications fournies par un accéléromètre ou un gyromètres sont relatives et rapportées au mobile.
On mesure en 3D des variations des composantes d'accélération.

Si il n'y a pas de variation, on ne mesure rien.

Un fil à plomb serait plus utile :wink:

Oula ça fait encore des nouveaux trucs à assimiler... :slight_smile: Donc en utilisant le PWM des entrées correspondantes de ma carte micro et un filtre passe bas ça pourrait marcher sans problème??? Donc toujours dans le but de récupérer une donnée en fonction de mon angle calculé, en utilisant le montage en fichier joint, cela marcherait comme ça??? Je pourrais récupérer ma donnée comme il faut??

Désolé de tout cassé, mais tu a aussi la possibilité d'utilisé d'utilisé un imu (Gyro+acc) ou ++ (c'est a dire compas+capteur baro+gps) avec le soft multiwii, il te suffira d'accoupler un module bluetooth a la carte arduino pour avoir en direct toutes les info que tu souhaite, a la base c'est utilisé comme débogage, station télémétrique pour les quad et hexacoptere mais je pense que cela peut très bien marché sur un ulm.

Héhé oué en recherchant j'avais intraperçu ce genre de truc, mais j'ai laissé tombé de suite... :slight_smile: Je suis déjà un novice la dedans alors ce genre de projet est bcp trop complexe pour moi pour le moment surtout pour l'adapter à mon système :slight_smile: mais je vais quand même essayer d'en savoir plus la dessus par ce que c'est un truc de dingue. Merci

RE re :slight_smile: sans compter la partie code que je vais mettre, est ce que ce montage en utilisant le PWM et un filtre passe bas pourrait marcher pour récupérer sur ma carte tableau de bord une donnée entre 0 et 1023(par exemple) en fonction de l'angle calculé dans mon code?? merki :slight_smile:

B@tto:
Utiliser le PWM et un filtre RC ou bien utiliser un DAC (Digital to Analog Converter).

...

???
les ... veulent dire c'est ça... ou pffff n'importe quoi... il a péter une durite le noob??? :smiley:
dsl de ma novicité mais, ne faisant pas partie de cette branche de métier à la base et n'ayant jamais eu de formation en électronique et programmation, il est un peu difficile de tout saisir au début :slight_smile:

Merci

Nan mais tu demandes si par PWM ça peut marcher alors que je te l'ai dis 4 posts avant :wink:

Je sais ce que c'est que de rien comprendre, je suis pas du tout du métier non plus je suis chimiste.

J'ai bien compris que ça pouvait marcher avec le PWM vu que tu me l'avais dis :wink: et c'est pour ça que je suis allez voir ce que c'était et voir aussi ce qu'il était possible de faire avec cette info. Quand je demandais si ça pouvait marcher, je parlais sur le montage lui même notamment sur la position du filtre RC. Donc en utilisant le PWM et ce montage là est ce que je peux bien faire ce que je veux faire :slight_smile:

Normalement oui. Après il faut prendre le rapport qualité du filtrage/temps de réponse en considération : plus tu vas filtrer, c'est à dire soit une plus grosse résistance soit un plus gros condo, soit les deux à la fois, tu vas également augmenter le temps de réponse (et oui tu charges plus lentement et/ou il y a une plus grosse capacité à charger, donc ça necessite plus de temps). Un DAC n'aura pas ces inconvenients mais est (à peine) plus compliqué à mettre en oeuvre. J'en utilise en i2c y'a 2 commande à envoyer et c'est la même chose.

C'est ce que je voulais savoir pour ne pas me lancer dans le vide :slight_smile: Je vais m'acheter un petit kit pour essayer de me faire un montage ressemblant avec une carte accélero et gyro. C'est en faisant aussi qu'on apprend :slight_smile: Je vais donc commencer comme ça avec le plus simple un filtre RC en faisant plusieurs essais et si je vois que ça ne me satisfait pas au niveau de temps de rep et du filtrage je passerais au DAC. Par curiosité le (à peine) plus compliqué change quoi sur le montage?? :slight_smile:

Manquera plus après (pour le début) qu'à apprendre le langage de prog pour réussir à faire mon application sur un axe d'abord... Et ça c'est pas gagné... :smiley:

Merci beaucoup

Celui dont je me sert est un MAX 517. En branchement y'a que des fils : +5V et GND pour l'alim, SDA + SCL pour la communication, et sur le chip il y a deux pins pour l'adresse i2c (à relié donc au GND ou au +5V), un pin pour la tension sur laquelle va bosser le DAC (typiquement +5V) et enfin forcement le pin de sortie où tu récupères ta tension. Au niveau code après c'est la rigolade :

#include <wire.h>
void setup(){
wire.begin();
}

void ConsigneDAC(byte Consigne){
wire.beginTransmission(addrDAC);
wire.write(0);
wire.write(Consigne);
wire.endTransmission()
}

Merci B@tto, je vais regarder tout ça de bien plus près quand j'aurais tout mon petit attirail :slight_smile: Ya encore plein de truc que je vois pas comment faire et saisi pas encore notamment pour garder mon angle calculé avec un accéléro mais ça viendra surement. J'aurais surement d'autres questions :smiley:

Merci bon je continu à potasser :wink:

Tu auras surement besoin de te servir de l'EEPROM pour stocker des valeurs (zero de l'horizontalité je pense) après un reset.