corrections diverses

This commit is contained in:
pgp 2021-01-31 19:28:58 +01:00
parent 96e85b85b2
commit 22a4483845

View file

@ -24,6 +24,8 @@ bool sem_compteur; // sémaphore pour le compteur
int16_t count = 0; // variable de compteur int16_t count = 0; // variable de compteur
int vRotReel; // vitesse réelle mesurée du moteur int vRotReel; // vitesse réelle mesurée du moteur
unsigned long compteur_minuteur = 0; // minuteur pour le déclenchement du compteur unsigned long compteur_minuteur = 0; // minuteur pour le déclenchement du compteur
bool sema_compte_tour; // semaphore poour le compte tour
unsigned long compteur_compte_tour = 0; // minuteur pour le déclenchement du compte-tour
int refresh_compte_tour = 500; // durée entre deux mesures du compte-tour en ms int refresh_compte_tour = 500; // durée entre deux mesures du compte-tour en ms
///////////////////////////////// /////////////////////////////////
@ -66,7 +68,7 @@ ESP32PWM pwm; // Activation du pwm
int bouton_wifi = 2; // pin du bouton wifi int bouton_wifi = 2; // pin du bouton wifi
bool sem_wifi = false; //sémaphore du minuteur du bouton wifi bool sem_wifi = false; //sémaphore du minuteur du bouton wifi
unsigned long wifi_minuteur = 0; // minuteur pour l'appui long sur le bouton wifi unsigned long wifi_minuteur = 0; // minuteur pour l'appui long sur le bouton wifi
bool etat_bouton_wifi = LOW; bool etat_bouton_wifi;
int tempo_bouton_wifi = 5000; //temps d'appui en millisecondes pour arrêter le capteur et passer en mode wifi int tempo_bouton_wifi = 5000; //temps d'appui en millisecondes pour arrêter le capteur et passer en mode wifi
/////////////////////////////////////// ///////////////////////////////////////
@ -111,10 +113,10 @@ void start_moteur() {
} }
void gaz_moteur() { void gaz_moteur() {
if (vRotVis > vRotReel) { if (vRotVis > vRotReel && pos < 180) {
pos ++; pos ++;
} }
if (vRotReel > vRotVis) { if (vRotReel > vRotVis && pos > 0) {
pos --; pos --;
} }
moteur.write(pos); moteur.write(pos);
@ -169,14 +171,16 @@ void stop_compteur() {
} }
void compte_tour() { void compte_tour() {
int offset = (compteur_minuteur - millis()); if (sema_compte_tour == false){
compteur_compte_tour = millis();
if (offset >= refresh_compte_tour ){ sema_compte_tour = true;
}
int offset = (millis() - compteur_compte_tour );
if (offset >= refresh_compte_tour && sema_compte_tour == true ){
pcnt_get_counter_value(PCNT_TEST_UNIT, &count); pcnt_get_counter_value(PCNT_TEST_UNIT, &count);
vRotReel = (count/offset * 60000); //vitesse en tours par min vRotReel = (count/offset * 60000); //vitesse en tours par min
Serial.println(vRotReel);
gaz_moteur(); // ajustement des gaz en fonction de la vitesse mesurée gaz_moteur(); // ajustement des gaz en fonction de la vitesse mesurée
//Serial.println("vRotReel = ");
//Serial.println(vRotReel);
} }
} }
@ -437,7 +441,7 @@ String html ="<!DOCTYPE html> \
/////FONCTIONS COMMUNES////// /////FONCTIONS COMMUNES//////
void vigie_Wifi () { void vigie_Wifi() {
etat_bouton_wifi = digitalRead(bouton_wifi); etat_bouton_wifi = digitalRead(bouton_wifi);
if ( etat_bouton_wifi == HIGH && sem_wifi == false ) { if ( etat_bouton_wifi == HIGH && sem_wifi == false ) {
sem_wifi = true; sem_wifi = true;
@ -457,7 +461,7 @@ void setup() {
delay(3000); delay(3000);
pinMode(LED,OUTPUT); // LED bouton wifi et erreurs pinMode(LED,OUTPUT); // LED bouton wifi et erreurs
pinMode(bouton_wifi, INPUT); // bouton wifi pinMode(bouton_wifi, INPUT); // bouton wifi
Serial.println("balise 0"); //Serial.println("balise 0");
rtc_init(); // RTC rtc_init(); // RTC
sd_init (); // initialisation de la carte SD sd_init (); // initialisation de la carte SD
sem_wifi = false; // initialisation du sémaphore sem_wifi = false; // initialisation du sémaphore