Je suis en Terminale STI2D SIN et je suis actuellement dans ma période de projet. Ma tache consiste à mesurer la vitesse et l'accélération des roues du véhicule dans le but de mesurer le glissement éventuel par rapport au rouleau du banc de puissance puis créer un programme sur proteus permettant de déterminer le glissement et ainsi l'afficher sur un écran. Je ne sais pas comment continuer mon programme pour pouvoir enfin réussir à mesurer le glissement.
J'ai un timer (NE555) qui met permet de mesurer le nombre d'impulsion sur un temps donné et un capteur infrarouge (CNY70) qui s'occupe de détecter lorsque la roue a fait un tour.
Voici le code source que j'ai commencé:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int infraPin=0;
int horlogePin=1;
int calcul=0;
void setup() {
lcd.begin(16, 2);
Serial.begin(9600);
}
void loop() {
int horloge=digitalRead(horlogePin);
while(horloge==0){
horloge=digitalRead(horlogePin);
}
while(horloge==1){
int comptage=digitalRead(infraPin);
while(comptage==0){
comptage=digitalRead(infraPin);
}
while(comptage==1){
comptage=digitalRead(infraPin);
}
calcul=calcul+1;
horloge=digitalRead(horlogePin);
}
lcd.setCursor(7,0);
lcd.print(calcul);
delay(1000);
lcd.clear();
}
J'espère que quelqu'un pourra m'aider car j'ai vraiment besoin de l'avoir terminer avant ce mercredi c'est très urgent, merci infiniment.
int infraPin=0;
int horlogePin=1;
int calcul=0;
void setup() {
lcd.begin(16, 2);
Serial.begin(9600);
}
Les pins 0 et 1 sont utilisées pour des signaux externes et sont donc en conflit avec le lien série. Au passage cela va aussi perturber (comprendre bloquer/interdire) le téléchargement.
Ton compteur va s'incrémenter tant que la broche infraPin sera à 1. Je suppose que tu voulais compter les fronts. Il faudrait donc conserver l'état précédent de la broche dans une variable et comparer avec l'état courant pour voir s'il y a eu changement et si le changement est (par exemple) un front montant.
Je ne comprend pas bien ce que vient faire le ne555.
Si tu veux mesurer le glissement, il te faut la vitesse tangentielle de le roue et la vitesse tangentielle du rouleau de retenue, ou alors leur vitesses angulaire et les diamètre rouleau et roue.
La portée du CNY70 me parait notoirement insuffisante pour mesurer la vitesse d'une roue sur un banc de puissance qui va se déplacer latéralement de plusieurs centimètres durant l'essai.
De plus la méthode que tu essaies d'utiliser ne va pas te donner une précision correcte (surtout avec deux signaux à mesurer), il faut que tu utilises les interruptions pour déterminer les périodes de tes capteurs.
infobarquee:
bonjour,
1- code entre balise code </>
2- depuis combien de temps tu as ce projet?
tu t'affoles que maintenant?
D'accord, c'est fait. J'ai commencé ce projet en début d'année mais j'ai eu des problèmes de santé qui m'ont particulièrement ralenti car j'ai été souvent absent mais ça n'excuse pas mon retard.
bonjour, je dois faire un projet en arduino. le projet consiste a récupéré la dérivé de puissance du bande de puissance automobile mais je ne sais pas du tout comment procédé.
merci de votre aide.