Étape 8: Explication et calcul
Ce programme surveille fondamentalement la valeur du capteur IR sans cesse et avec la plus haute priorité à l’aide interrompt.
L’Arduino Uno a 3 interruptions et l’interruption 0 est broche 2 sur l’arduino.
Cette ligne s’attache à une interruption de la broche 2 sur arduino en mode « RISING ». Cela signifie que chaque fois que le capteur va de faible à élevé, la fonction RPMCount() ; est appelée.
Cela signifie que dans une révolution, la fonction sera appelée deux fois ( REV ++ ). C’est pourquoi actualREV = REV / 2.
Pour calculer la vitesse de rotation réelle, nous devons le temps pris pour un tour. Et (millis() - temps) est le temps nécessaire à une révolution complète.
Dans ce cas, soit t le temps pris pour un tour complet, le nombre total de tours en 60 sec ( 60 * 1000 millisecondes ) est :
tr/min = 60 * 1000 / t * actualREV = > t/mn = 60 * 1000 / (millis() - temps) * REV/2
OU tr/min = 30 * 1000 / (millis() - temps) * REV ;