SHARE
TWEET

Untitled

azeyrx Mar 19th, 2019 70 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2. *   http://playground.arduino.cc/Code/NewPing
  3. *   bearbeitet von Jan van den Bosch
  4. *   Version 1.2 (13.3.2019; 16:40)
  5. *   Einparkhilfe via LED´s
  6. */
  7.  
  8. #include <NewPing.h>            //Einbindung der benötigten Arduino-Bibliothek "New Ping"
  9.  
  10. #define TRIG_PIN_links  7       //Ultraschallsensor für den linken Bereich wird eingerichtet
  11. #define ECHO_PIN_links  13
  12. #define MAX_DIST_links  400
  13.  
  14. #define TRIG_PIN_rechts 5       //Ultraschallsensor für den rechten Bereich wird eingerichtet
  15. #define ECHO_PIN_rechts 11
  16. #define MAX_DIST_rechts 400
  17.  
  18. #define TRIG_PIN_vorne  6       //Ultraschallsensor für den vorderen Bereich wird eingerichtet
  19. #define ECHO_PIN_vorne  12
  20. #define MAX_DIST_vorne  400
  21.  
  22. #define TRIG_PIN_hinten 4       //Ultraschallsensor für den rückwärtigen Bereich wird eingerichtet
  23. #define ECHO_PIN_hinten 10
  24. #define MAX_DIST_hinten 400
  25.  
  26. #define LEDgruen_links  53      //den grünen LED´s werden Eingänge zugewiesen
  27. #define LEDgruen_rechts 51
  28. #define LEDgruen_vorne  49
  29. #define LEDgruen_hinten 47
  30.  
  31. #define LEDgelb_links   45      //den gelben LED´s werden Eingänge zugewiesen
  32. #define LEDgelb_rechts  43
  33. #define LEDgelb_vorne   41
  34. #define LEDgelb_hinten  39
  35.  
  36. #define LEDrot_links    37      //den roten LED´s werden Eingänge zugewiesen
  37. #define LEDrot_rechts   35
  38. #define LEDrot_vorne    33
  39. #define LEDrot_hinten   31
  40.  
  41. int pause               = 20;  //einheitliche Varibale zur Regulation der Messgeschwindigkeiten aller 4 Sensoren
  42.  
  43. int aktivierungsBereich = 30;
  44. int gruenerBereich      = 15;
  45. int gelberBereich       = 10;
  46. int roterBereich        = 5;
  47.  
  48. NewPing Sensor1(TRIG_PIN_links,     ECHO_PIN_links,     MAX_DIST_links);    // NewPing linke Seite initialisieren
  49. NewPing Sensor2(TRIG_PIN_rechts,    ECHO_PIN_rechts,    MAX_DIST_rechts);   // NewPing rechte Seite initialisieren
  50. NewPing Sensor3(TRIG_PIN_vorne,     ECHO_PIN_vorne,     MAX_DIST_vorne);    // NewPing vorne initialisieren
  51. NewPing Sensor4(TRIG_PIN_hinten,    ECHO_PIN_hinten,    MAX_DIST_hinten);   // NewPing hinten initialisieren
  52.  
  53. void setup(){
  54.   pinMode(ECHO_PIN_links, INPUT);
  55.   pinMode(ECHO_PIN_rechts, INPUT);
  56.   pinMode(ECHO_PIN_hinten, INPUT);
  57.   pinMode(ECHO_PIN_vorne, INPUT);
  58.  
  59.   pinMode(TRIG_PIN_links, OUTPUT);
  60.   pinMode(TRIG_PIN_rechts, OUTPUT);
  61.   pinMode(TRIG_PIN_hinten, OUTPUT);
  62.   pinMode(TRIG_PIN_vorne, OUTPUT);
  63.  
  64.   pinMode(LEDgruen_links, OUTPUT);
  65.   pinMode(LEDgruen_rechts, OUTPUT);
  66.   pinMode(LEDgruen_hinten, OUTPUT);
  67.   pinMode(LEDgruen_vorne, OUTPUT);
  68.   pinMode(LEDgelb_links, OUTPUT);
  69.   pinMode(LEDgelb_rechts, OUTPUT);
  70.   pinMode(LEDgelb_hinten, OUTPUT);
  71.   pinMode(LEDgelb_vorne, OUTPUT);
  72.   pinMode(LEDrot_links, OUTPUT);
  73.   pinMode(LEDrot_rechts, OUTPUT);
  74.   pinMode(LEDrot_hinten, OUTPUT);
  75.   pinMode(LEDrot_vorne, OUTPUT);
  76.  
  77.     Serial.begin(4800);
  78.     Serial.println("Programm-Start");
  79. }
  80.  
  81. void loop(){
  82.     Serial.print ("Sensor vorne: ");
  83.     LEDController(Sensor3.ping_cm(),    LEDgruen_vorne,    LEDgelb_vorne,   LEDrot_vorne);
  84.     Serial.print ("Sensor rechts: ");
  85.     LEDController(Sensor2.ping_cm(),    LEDgruen_rechts,   LEDgelb_rechts,  LEDrot_rechts);
  86.     Serial.print ("Sensor hinten: ");
  87.     LEDController(Sensor4.ping_cm(),    LEDgruen_hinten,   LEDgelb_hinten,  LEDrot_hinten);
  88.     Serial.print ("Sensor links: ");
  89.     LEDController(Sensor1.ping_cm(),    LEDgruen_links,    LEDgelb_links,   LEDrot_links);
  90. }
  91.  
  92. void LEDController(int distance, int ledGruen, int ledGelb, int ledRot){
  93.     Serial.println (distance);
  94.     if(distance < aktivierungsBereich && distance > 0){
  95.      
  96.       if(distance > gelberBereich){
  97.           digitalWrite(ledGruen,    HIGH);
  98.           digitalWrite(ledGelb,     LOW);
  99.           digitalWrite(ledRot,      LOW);
  100.       }
  101.    
  102.       if(distance <= gelberBereich && distance > roterBereich){
  103.           digitalWrite(ledGruen,    LOW);
  104.           digitalWrite(ledGelb,     HIGH);
  105.           digitalWrite(ledRot,      LOW);
  106.       }
  107.    
  108.       if(distance <= roterBereich){
  109.           digitalWrite(ledGruen,    LOW);
  110.           digitalWrite(ledGelb,     LOW);
  111.           digitalWrite(ledRot,      HIGH);
  112.       }
  113.     }else{
  114.         digitalWrite(ledGruen,    LOW);
  115.         digitalWrite(ledGelb,     LOW);
  116.         digitalWrite(ledRot,      LOW);
  117.     }
  118.     delay(pause);
  119. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top