Advertisement
Guest User

Untitled

a guest
Mar 18th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.03 KB | None | 0 0
  1. #include <Wire.h>
  2.  
  3. const int trigPin = 12;
  4. const int echoPin = 11;
  5.  
  6. volatile int pozivanje1;
  7. volatile int pozivanje2;
  8. volatile int pozivanje3;
  9. long duration;
  10. int distance;
  11.  
  12. void setup() {
  13.  
  14. Wire.begin();
  15.  
  16. pinMode(trigPin, OUTPUT); // Trigger Pin OUTPUT
  17. pinMode(echoPin, INPUT); // Echo Pin INPUT
  18. pinMode(4, INPUT);
  19. pinMode(2, INPUT);
  20. pinMode(3, INPUT);
  21. pinMode(13, OUTPUT);
  22.  
  23.  
  24.  
  25.  
  26.  
  27. Serial.begin(9600);
  28. }
  29.  
  30. void loop() {
  31.  
  32. digitalWrite(trigPin, LOW);
  33. delayMicroseconds(2);
  34. digitalWrite(trigPin, HIGH);
  35. delayMicroseconds(10);
  36. digitalWrite(trigPin, LOW);
  37. duration = pulseIn(echoPin, HIGH);
  38. distance = duration * 0.034 / 2;
  39. Serial.print("Distance: ");
  40. Serial.println(distance);
  41.  
  42.  
  43. /* PRVI KAT */
  44.  
  45. if (digitalRead(2) == 1) {
  46. pozivanje1=1;
  47. }
  48.  
  49. if(pozivanje1==1){
  50.  
  51.  
  52. if (distance > 10) {
  53. Wire.beginTransmission(4);
  54. Wire.write(2);
  55. Wire.endTransmission();
  56. }
  57.  
  58.  
  59. if (distance < 10) {
  60. Wire.beginTransmission(4);
  61. Wire.write(1);
  62. Wire.endTransmission();
  63. }
  64. }
  65.  
  66. if (distance >= 10 && distance <= 10 && pozivanje1==1) { // Kada dode na 1. kat, stopiraj motor i update-aj display
  67.  
  68. Wire.beginTransmission(4);
  69. Wire.write(0);
  70. Wire.endTransmission();
  71.  
  72. Wire.beginTransmission(6); // pokreni prijenos sa uredajem 2
  73. Wire.write(1); // posalji 1
  74. Wire.endTransmission(); // prekini prijenos
  75. pozivanje1=0;
  76.  
  77.  
  78. }
  79.  
  80.  
  81. /* DRUGI */
  82.  
  83. if (digitalRead(3) == 1) {
  84. pozivanje2=1;
  85. }
  86.  
  87. if(pozivanje2==1){
  88.  
  89.  
  90. if (distance > 27) {
  91. Wire.beginTransmission(4);
  92. Wire.write(2);
  93. Wire.endTransmission();
  94. }
  95.  
  96.  
  97. if (distance < 27) {
  98. Wire.beginTransmission(4);
  99. Wire.write(1);
  100. Wire.endTransmission();
  101. }
  102. }
  103.  
  104. if (distance >= 27 && distance <= 27 && pozivanje2==1) { // Kada dode na 1. kat, stopiraj motor i update-aj display
  105.  
  106. Wire.beginTransmission(4);
  107. Wire.write(0);
  108. Wire.endTransmission();
  109.  
  110. Wire.beginTransmission(6); // pokreni prijenos sa uredajem 2
  111. Wire.write(2); // posalji 1
  112. Wire.endTransmission(); // prekini prijenos
  113. pozivanje2=0;
  114.  
  115.  
  116. }
  117.  
  118.  
  119. /* TRECI KAT */
  120.  
  121. if (digitalRead(4) == 1) {
  122. pozivanje3=1;
  123. }
  124.  
  125. if(pozivanje3==1){
  126.  
  127.  
  128. if (distance > 43) {
  129. Wire.beginTransmission(4);
  130. Wire.write(2);
  131. Wire.endTransmission();
  132. }
  133.  
  134.  
  135. if (distance < 43) {
  136. Wire.beginTransmission(4);
  137. Wire.write(1);
  138. Wire.endTransmission();
  139. }
  140. }
  141.  
  142. if (distance >= 43 && distance <= 43 && pozivanje3==1) { // Kada dode na 1. kat, stopiraj motor i update-aj display
  143.  
  144. Wire.beginTransmission(4);
  145. Wire.write(0);
  146. Wire.endTransmission();
  147.  
  148. Wire.beginTransmission(6); // pokreni prijenos sa uredajem 2
  149. Wire.write(3); // posalji 3
  150. Wire.endTransmission(); // prekini prijenos
  151. pozivanje3=0;
  152.  
  153. }
  154.  
  155. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement