Calcul de vitesse avec un capteur à effet hall

Bonjour,

Dans le cadre d'un projet en prépa ingénieur, nous devon créer un objet connecté et pour cela nous devons calculer la vitesse d'un vélo d'appartement, on utilise un capteur à effet hall, cependant nous rencontrons un problème avec le programme Arduino, celui-ci ne fonctionne pas.
Voici, notre programme:
int pin_DEL=13;
int hallSensorPin=2;
// compteur est une variable permettant de compter les détection de l'aimant donc les tours
volatile int compteur=0;

int chrono=0;
int temps=0;
float vitesse=0;

float chronometre;

void setup()
{

Serial.begin(9600);

Serial.println("BONJOUR LE PROGRAMME DE MESURE DE VITESSE VA DEMARRER");

pinMode(pin_DEL,OUTPUT);
pinMode(hallSensorPin, INPUT);

attachInterrupt(0,detectaimant,CHANGE);

}
void loop ()
{
digitalWrite (pin_DEL, LOW);
temps=millis();
if (compteur==1)
{
compteur=0;
chrono=millis()-temps; //calcul du temps passé entre 2 passages de l'aimant devant le capteur (1 tour)
vitesse= (1/chrono)23.141590.023.6;
Serial.print(chrono);
Serial.print(vitesse);
}
}

void detectaimant()
{

digitalWrite(pin_DEL, HIGH);
compteur=compteur+1;
}

Peux-tu éditer ton message et mettre le programme entre balises ‘CODE’ (la touche </>), c’est plus facile à lire. L’idéal serait d’ôter les lignes vides et de faire CTRL T dans l’IDE pour l’indenter correctement, avant de le recopier dans le message.

Il y a plein de programmes de mesure de vitesse d’une roue de vélo sur Internet. Ton choix d’utiliser une interruption est inhabituel. J’aurais plus simplement mesuré le temps entre deux passages de l’aimant devant le capteur, avec un code inspiré du Blink without delay. Ce message peut aussi aider à comprendre la technique associée, et des infos ici .

Une fois que la mesure marche, il faut la “débruiter”, c’est à dire faire des moyennes pour éviter que des petites variations soient trop visibles.

bonjour,

Dans le cadre d'un projet en prépa ingénieur, nous devon créer un objet connecté et pour cela nous devons calculer la vitesse d'un vélo d'appartement, on utilise un capteur à effet hall, cependant nous rencontrons un problème avec le programme Arduino, celui-ci ne fonctionne pas.

qu'est ce qui ne fonctionne pas déjà?
quel type de capteur?
bref, il manque pas mal de réponses

Bonjour,
j'ai fait un compte tour pour ma mini fraiseuse, j'utilise une interruption sur front montant et je calcule le nombre de tick du micro pour en déduire le nombre de tour minutes. J'ai comparé avec les données du constructeur pour ma machine et c'est très précis.
Cdt.
Marcus.

nous devons calculer la vitesse d'un vélo d'appartement

c'est facile - généralement un vélo d'appartement ça ne bouge pas, donc sa vitesse c'est 0 :)).....

rhoooooo fallait la sortir celle là :slight_smile:

Bonjour,

J-M-L:
c'est facile - généralement un vélo d'appartement ça ne bouge pas, donc sa vitesse c'est 0 :)).....

:slight_smile:

ça dépend du référentiel : c'est vrai dans le référentiel de la pièce où se trouve le vélo, mais pas dans le référentiel du système solaire

Certes tout est relatif!