Advertisement
rhandycan1

carpark monitoring system

Nov 17th, 2024
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.43 KB | Writing | 0 0
  1. #include <LCD_I2C.h>
  2. LCD_I2C lcd(0x27, 16, 2); // A4-SDA, A5-SCL(connections)
  3.  
  4. int IRpin1 = 2;
  5. int IRpin2 = 3;
  6. int IRpin3 = 4;
  7. int IRpin4 = 5;
  8. int counter1 = 0;
  9. int counter2 = 0;
  10. int counter3 = 0;
  11. int counter4 = 0;
  12. int totalCounter = 0;
  13. int NumberOfParkingSpace = 4;
  14. int red1 = 7;
  15. int green1 = 6;
  16. int red2 = 9;
  17. int green2 = 8;
  18. int red3 = 11;
  19. int green3 = 10;
  20. int green4 = 13;
  21. int red4 = 12;
  22.  
  23. void setup() {
  24.   Serial.begin(115200);
  25.   pinMode(IRpin1, INPUT);
  26.   pinMode(IRpin2, INPUT);
  27.   pinMode(IRpin3, INPUT);
  28.   pinMode(IRpin4,INPUT);
  29.   pinMode(red1,OUTPUT);
  30.   pinMode(green1,OUTPUT);
  31.   pinMode(red2,OUTPUT);
  32.   pinMode(green2,OUTPUT);
  33.   pinMode(red3,OUTPUT);
  34.   pinMode(green3,OUTPUT);
  35.   pinMode(red4,OUTPUT);
  36.   pinMode(green4,OUTPUT);
  37.   lcd.begin();
  38.   lcd.backlight();
  39.   lcd.clear();
  40. }
  41.  
  42. void loop() {
  43.   int sensor1 = digitalRead(IRpin1);
  44.   int sensor2 = digitalRead(IRpin2);
  45.   int sensor3 = digitalRead(IRpin3);
  46.   int sensor4 = digitalRead(IRpin4);
  47.  
  48.   if (sensor1 == LOW) {
  49.     digitalWrite(red1,true);
  50.     digitalWrite(green1,false);
  51.     counter1 = 1;
  52.   } else {
  53.     digitalWrite(green1,true);
  54.     digitalWrite(red1,false);
  55.     counter1 = 0;
  56.   }
  57.  
  58.   if (sensor2 == LOW) {
  59.     digitalWrite(red2,true);
  60.     digitalWrite(green2,false);
  61.     counter2 = 1;
  62.   } else {
  63.     digitalWrite(green2,true);
  64.     digitalWrite(red2,false);
  65.     counter2 = 0;
  66.   }
  67.  
  68.   if (sensor3 == LOW) {
  69.     digitalWrite(red3,true);
  70.     digitalWrite(green3,false);
  71.     counter3 = 1;
  72.   } else {
  73.     digitalWrite(green3,true);
  74.     digitalWrite(red3,false);
  75.     counter3 = 0;
  76.   }
  77.   if (sensor4 == LOW){
  78.     counter4 = 1;
  79.     digitalWrite(green4,false);
  80.     digitalWrite(red4,true);
  81.   }else{
  82.     counter4 = 0;
  83.     digitalWrite(green4,true);
  84.     digitalWrite(red4,false);
  85.   }
  86.   totalCounter = counter1 + counter2 + counter3 + counter4;
  87.  
  88.   if (totalCounter < NumberOfParkingSpace) {
  89.     Serial.print("Available Parking Space is : ");
  90.     Serial.println(NumberOfParkingSpace - totalCounter);
  91.  
  92.     lcd.setCursor(0, 0);
  93.     lcd.print(" Parking Space  ");
  94.     lcd.setCursor(0, 2);
  95.     lcd.print("  Available:   ");
  96.     lcd.setCursor(13, 1);
  97.     lcd.print(NumberOfParkingSpace - totalCounter);
  98.   }
  99.  
  100.   if (totalCounter == NumberOfParkingSpace) {
  101.     Serial.println(" No more PARKING SPACE available !");
  102.     lcd.setCursor(0, 0);
  103.     lcd.print("No Parking Space");
  104.     lcd.setCursor(0, 1);
  105.     lcd.print("   Available!    ");
  106.   }
  107. }
  108.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement