Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2021:abirlica:object_following_robot [2021/06/04 00:50]
radu_stefan.blejan [Software design]
pm:prj2021:abirlica:object_following_robot [2021/06/04 02:08] (current)
radu_stefan.blejan [Bibliografie/Resurse]
Line 1: Line 1:
 ====== Object Following Robot ======= ====== Object Following Robot =======
 +
 +Autor: Blejan Radu-Stefan 333CC
 ==== Introducere === ==== Introducere ===
  
Line 34: Line 36:
      - 4 motoare DC       - 4 motoare DC 
      - 2 punti H      - 2 punti H
-     ​- ​baterie ​de 9V+     ​- ​2 baterii ​de 9V
      - 1 servomotor      - 1 servomotor
      - 1 senzor ultrasonic      - 1 senzor ultrasonic
-     - fire+     - fire jumper + mama-tata
      - breadboard      - breadboard
      - 4 roti      - 4 roti
Line 78: Line 80:
  
 Astfel am setat directia curentului prin fiecare roata si am dat directia masinii. Astfel am setat directia curentului prin fiecare roata si am dat directia masinii.
 +
 +Apoi am implementat o functie ce calculeaza distanta determinata de senzorul ultrasonic.
 +Se trimite un impuls de la senzor. Apoi sunt folosite viteza sunetului și timpul revenirii
 +impulsului pentru a calcula distanța.
 +
 +int setDistance() {
 +  digitalWrite(Trig,​ LOW);   
 +  delayMicroseconds(2);​
 +  digitalWrite(Trig,​ HIGH);  ​
 +  delayMicroseconds(20);​
 +  digitalWrite(Trig,​ LOW);   
 +  float distance = pulseIn(Echo,​ HIGH);  ​
 +  distance= distance / 58;       
 +  return (int)distance;​
 +}
 +
 +In final, in cadrul functiei loop() determin constant distantele din stanga si dreapta sevomotorului
 +pentru a putea deplasa masina dupa un obiect care se misca si in functie de aceste valori, apelez
 +functiile de deplasare a masinii pentru a respecta traiectoria.
 +
 +void loop() {
 +    myservo.write(120);  ​
 +    delay(200); ​
 +    rightDistance = setDistance();​
 +
 +    myservo.write(60); ​
 +    delay(200); ​
 +    leftDistance = setDistance();​
 +
 +    if((rightDistance > 50)&&​(leftDistance > 50)){
 +      stop();
 +    }else if((rightDistance >= 20) && (leftDistance >= 20)) {     
 +      forward();
 +    }else if((rightDistance <= 5) && (leftDistance <= 5)) {
 +        back();
 +        delay(100);
 +    }else if(rightDistance - 3 > leftDistance) {
 +        left();
 +        delay(100);
 +    }else if(rightDistance + 3 < leftDistance) {
 +        right();
 +        delay(100);
 +    }else{
 +      stop();
 +    }
 +}
 +
 +=== Activity Diagram ===
 +
 +{{:​pm:​prj2021:​abirlica:​activitydiagramblejanradu.png?​direct&​300|}} ​
 +
  
  
  
 ==== Rezultate obtinute ==== ==== Rezultate obtinute ====
 +
 +Poze:
 +
 +
 +{{:​pm:​prj2021:​abirlica:​pozapisoi1.jpg?​direct&​300|}}
 +{{:​pm:​prj2021:​abirlica:​pozapisoi2.jpg?​direct&​300|}}
 +{{:​pm:​prj2021:​abirlica:​pozapisoi3.jpg?​direct&​300|}}
 +{{:​pm:​prj2021:​abirlica:​pozapisoi4.jpg?​direct&​300|}}
 +{{:​pm:​prj2021:​abirlica:​pozapisoi5.jpg?​direct&​300|}}
 +
  
 Link video Youtube: https://​www.youtube.com/​watch?​v=hF8JkSknpL0 Link video Youtube: https://​www.youtube.com/​watch?​v=hF8JkSknpL0
Line 89: Line 152:
 ==== Concluzii ==== ==== Concluzii ====
  
-TODO+Proiectul a fost unul din care am invatat foarte multe. Am intampinat destul 
 +de multe dificultati,​ deoarece a fost nevoie de o atentie mare la conectarea  
 +componentelor,​ fiind nevoit sa folosesc si pinii analogici de pe placuta  
 +Arduino(A0, A1,... A5). 
 +Adevarata provocare dupa crearea masinii si obtinerea controlului asupra fiecarei 
 +roti a fost tratarea corecta a cazurilor pentru distantele senzorului ultrasonic,​ 
 +deoarece a trebuit sa le adaptez si la dimensiunea obiectului pe care trebuia sa il 
 +urmeze. 
 +Ca si concluzie, a fost o alegere buna, iar realizarea proiectului char mi-a oferit 
 +satisfactie si posibil noi idei pentru proiecte cu Arduino. ​
  
-==== Download ==== 
- 
-TODO 
  
 ==== Bibliografie/​Resurse ==== ==== Bibliografie/​Resurse ====
  
-TODO+https://​www.youtube.com/​watch?​v=8Ea_jUQPVrE 
 + 
 +https://​randomnerdtutorials.com/​complete-guide-for-ultrasonic-sensor-hc-sr04/​ 
 + 
 +Link pagina ocw: https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​abirlica/​object_following_robot 
 + 
 +Pdf: https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​abirlica/​object_following_robot?​do=export_pdf
pm/prj2021/abirlica/object_following_robot.1622757008.txt.gz · Last modified: 2021/06/04 00:50 by radu_stefan.blejan
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0