Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- // Detection de passage bille avec detecteur TCRT5000 unitaires en les faisant travailler en différentiel
- // Possibilite de determiner le sens de passage
- // Detection de cible atteinte par conduction electrique avec bille d'acier
- // Vidéo YouTube DFT_#A89 DETECTION IR DIFFERENTIELLE - PINBALL-PASSAGE BILLE
- // https://youtu.be/oo4GJQcbkKA
- // Claude DUFOURMONT
- // https://www.youtube.com/c/ClaudeDufourmont
- //----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- #define BrocheLEDRed 6 // Droite vers Gauche
- #define BrocheLEDGreen 7 // Gauche vers Droite
- #define BrocheLEDBlue 8 // Target hit
- #define BrocheTarget 9 // A corriger c'est Drain de Q1 plutot.
- #define BrocheBuzzer (A5)
- float VanaIR1; // Valeur sur collecteur détecteur 1
- float VanaIR2; // Valeur sur collecteur détecteur 1
- float Vdiff12; // Valeur différentielle Droite Gauche
- float Vdiff21; // Valeur différentielle Gauche Droite
- int seuildiff12 = 700; // Seuils
- int seuildiff21 = 700;
- void setup()
- {
- //Serial.begin(9600);
- pinMode(BrocheLEDRed,OUTPUT);
- pinMode(BrocheLEDGreen,OUTPUT);
- pinMode(BrocheLEDBlue,OUTPUT);
- pinMode(BrocheTarget,INPUT);
- pinMode(BrocheBuzzer,OUTPUT);
- }
- void loop()
- {
- digitalWrite (BrocheLEDRed, LOW) ;
- digitalWrite (BrocheLEDGreen, LOW) ;
- digitalWrite (BrocheLEDBlue, LOW) ;
- digitalWrite (BrocheBuzzer, LOW) ;
- VanaIR1 = (analogRead (A1))*5;
- VanaIR2 = (analogRead (A3))*5;
- Vdiff12 = (VanaIR1 - VanaIR2);
- Vdiff21 = (VanaIR2 - VanaIR1);
- /* Serial.print ("VanaIR1 = ");
- Serial.println (VanaIR1);
- Serial.print ("VanaIR2 = ");
- Serial.println (VanaIR2);
- Serial.print ("Vdiff = ");
- Serial.println (Vdiff);*/
- if((Vdiff12 > seuildiff12))
- {
- digitalWrite (BrocheLEDRed, HIGH) ;
- digitalWrite (BrocheLEDGreen, LOW) ;
- digitalWrite (BrocheLEDBlue, LOW) ;
- digitalWrite (BrocheBuzzer, HIGH) ;
- delay(300);
- }
- if((Vdiff21 > seuildiff21))
- {
- digitalWrite (BrocheLEDRed, LOW) ;
- digitalWrite (BrocheLEDGreen, HIGH) ;
- digitalWrite (BrocheLEDBlue, LOW) ;
- digitalWrite (BrocheBuzzer, HIGH) ;
- delay(300);
- }
- if (digitalRead (BrocheTarget) == HIGH)
- {
- digitalWrite (BrocheLEDRed, LOW) ;
- digitalWrite (BrocheLEDGreen, LOW) ;
- digitalWrite (BrocheLEDBlue, HIGH) ;
- digitalWrite (BrocheBuzzer, HIGH) ;
- delay (80);
- digitalWrite (BrocheBuzzer, LOW) ;
- delay (10);
- digitalWrite (BrocheBuzzer, HIGH) ;
- delay (80);
- digitalWrite (BrocheBuzzer, LOW) ;
- delay (10);
- digitalWrite (BrocheBuzzer, HIGH) ;
- delay (80);
- digitalWrite (BrocheBuzzer, LOW) ;
- delay (10);
- digitalWrite (BrocheBuzzer, HIGH) ;
- delay (80);
- digitalWrite (BrocheBuzzer, LOW) ;
- delay (10);
- digitalWrite (BrocheBuzzer, HIGH) ;
- delay (80);
- digitalWrite (BrocheBuzzer, LOW) ;
- delay (10);
- digitalWrite (BrocheLEDBlue, LOW) ;
- delay (100);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement