Advertisement
safwan092

Untitled

Nov 5th, 2023
20
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.07 KB | None | 0 0
  1. #include <Wire.h>
  2. #include <OneWire.h>
  3. #include <DallasTemperature.h>
  4. #include <LiquidCrystal_I2C.h>
  5.  
  6. #define ONE_WIRE_BUS A1 //✔✔ //Signal Pull-Up resistor
  7. #define IR_Sensor 11 //✔✔
  8. #define Input A0 //✔
  9. #define Relay_1 3 //✔✔
  10. #define Relay_2 12 //✔✔
  11. #define Relay_3 8 //✔✔
  12. #define Relay_4 9 //✔✔
  13. #define proximity A2 //✔✔
  14. #define buttonPin 2 //✔✔ //Signal Pull-Down resistor
  15. #define IR_col 10 //✔✔
  16. #define IN1 4 //✔✔
  17. #define IN2 7 //✔✔
  18. #define enA 5 //✔✔
  19.  
  20. OneWire oneWire(ONE_WIRE_BUS);
  21. DallasTemperature sensors(&oneWire);
  22. LiquidCrystal_I2C lcd(0x27, 16, 2);
  23.  
  24.  
  25. int x = 0;
  26. int state = 0;
  27. int val_proximity;
  28. int LEDState = 0;
  29. int buttonNew;
  30. int buttonOld = 1;
  31. int dt = 100;
  32. int val_col = HIGH;
  33.  
  34.  
  35. void setup(){
  36. sensors.begin();
  37. lcd.init();
  38. lcd.init();
  39. lcd.backlight();
  40. lcd.setCursor(0, 1);
  41. lcd.print("turn=");
  42. pinMode(Input, INPUT);
  43. pinMode(buttonPin, INPUT);
  44. pinMode(proximity, INPUT);
  45. pinMode(IR_col, INPUT);
  46. pinMode(Relay_1, OUTPUT);
  47. pinMode(Relay_2, OUTPUT);
  48. pinMode(Relay_3, OUTPUT);
  49. pinMode(Relay_4, OUTPUT);
  50. pinMode(IR_Sensor, OUTPUT);
  51. pinMode(IN1, OUTPUT);
  52. pinMode(IN2, OUTPUT);
  53. pinMode(enA, OUTPUT);
  54. digitalWrite(Relay_1, 1);
  55. digitalWrite(Relay_2, 1);
  56. digitalWrite(Relay_3, 1);
  57. digitalWrite(Relay_4, 1);
  58.  
  59. }
  60.  
  61. void loop(){
  62. lcd.setCursor(0, 1);
  63. lcd.print("turn=");
  64. buttonNew = digitalRead(buttonPin);
  65. val_proximity = digitalRead(proximity);
  66. val_col = digitalRead(IR_col);
  67. if (val_col == LOW) {
  68. lcd.clear();
  69. delay(50);
  70. lcd.setCursor(0, 0);
  71. lcd.print("DON = 10CM");
  72. delay(1500);
  73. }
  74. if (val_proximity == LOW) {
  75. digitalWrite(Relay_1, 1);
  76. digitalWrite(Relay_2, 1);
  77. digitalWrite(Relay_3, 1);
  78. digitalWrite(Relay_4, 1);
  79. digitalWrite(IR_Sensor, 1);
  80.  
  81. }
  82. if (buttonOld == 0 && buttonNew == 1) {
  83. if (LEDState == 0) {
  84.  
  85. digitalWrite(IR_Sensor, 0);
  86. digitalWrite(Relay_1, 0);
  87. digitalWrite(Relay_2, 0);
  88. digitalWrite(Relay_3, 0);
  89. digitalWrite(Relay_4, 0);
  90.  
  91. LEDState = 1;
  92. }
  93. else {
  94. digitalWrite(IR_Sensor, 1);
  95. digitalWrite(Relay_1, 1);
  96. digitalWrite(Relay_2, 1);
  97. digitalWrite(Relay_3, 1);
  98. digitalWrite(Relay_4, 1);
  99. LEDState = 0;
  100. }
  101. }
  102. buttonOld = buttonNew;
  103. delay(dt);
  104. analogWrite(enA, 75);
  105. digitalWrite(IN1, HIGH);
  106. digitalWrite(IN2, LOW);
  107. delay(100);
  108. lcd.setCursor(9, 1);
  109. lcd.print("T=");
  110. lcd.print(millis() / 5000);
  111. sensors.requestTemperatures();
  112. lcd.setCursor(0, 0);
  113. lcd.print("Temp in C =");
  114. lcd.println(sensors.getTempCByIndex(0));
  115.  
  116. int counter = digitalRead(Input);
  117. if (state == 0)
  118. {
  119. switch (counter) {
  120.  
  121. case 1 : state = 1; lcd.setCursor (5, 1); x = x + 1; lcd.print(x); break;
  122. case 0 : state = 0; break;
  123. }
  124. }
  125.  
  126. if (counter == LOW) {
  127. state = 0;
  128. }
  129. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement