Differences

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

Link to this comparison view

pm:prj2022:avaduva:robot4wd [2022/05/27 23:09]
mihai.cojocaru2510 [Download]
pm:prj2022:avaduva:robot4wd [2022/06/02 10:19] (current)
mihai.cojocaru2510 [Descriere generală]
Line 12: Line 12:
  ​**Schema bloc**  ​**Schema bloc**
  
-{{:​pm:​prj2022:​avaduva:​diagramarobot.png?700|}}+{{:​pm:​prj2022:​avaduva:​diagrama_electrica_robot.png?700|}}
  
 ===== Hardware Design ===== ===== Hardware Design =====
Line 40: Line 40:
  
 ===== Download ===== ===== Download =====
- +<​note ​important> 
-<​note>​+{{:​pm:​prj2022:​avaduva:​obstacle_robot.rar|}}
 </​note>​ </​note>​
  
Line 58: Line 58:
  
  
-===== Concluzii ​=====+===== Cod =====
  
 +#include <​NewPing.h> ​
  
 +const int RF = 6;
 +const int RB = 7;
 +const int LF = 5;
 +const int LB = 4;
 +
 +#define trig 12 
 +#define echo 13 
 +
 +#define max_dist 200
 +boolean check = false;
 +int dist = 100;
 +
 +NewPing sonar(trig, echo, max_dist);
 +
 +void setup(){
 +
 +  pinMode(LF, OUTPUT);
 +  pinMode(RF, OUTPUT);
 +  pinMode(RB, OUTPUT);
 +  pinMode(LB, OUTPUT);
 +  ​
 +  dist = readPing();
 +  delay(100);
 +}
 +
 +void loop(){
 +
 +  moveForward();​
 +  ​
 +  if (dist <= 35){
 +    moveStop();
 +    delay(300);
 +    moveBackward();​
 +    delay(700);
 +    moveStop();
 +    delay(300);
 +    int distance = look();
 +
 +    if (dist >= distance){
 +      turnRight();​
 +      moveStop();
 +    }
 +  else{
 +    moveForward(); ​
 +  }
 +}
 +
 +  dist = readPing();
 +
 +}
 +
 +int look(){
 +  int distance = readPing();
 +  delay(100);
 +  return distance;
 +  delay(100);
 +}
 +
 +int readPing(){
 +  delay(70);
 +  int cm = sonar.ping_cm();​
 +  if (cm==0){
 +    cm=250;
 +  }
 +  return cm;
 +}
 +
 +void moveStop(){
 +  ​
 +  digitalWrite(LF,​ LOW);
 +  digitalWrite(RF,​ LOW);
 +  digitalWrite(LB,​ LOW);
 +  digitalWrite(RB,​ LOW);
 +}
 +
 +void moveForward(){
 +
 +  if(!check){
 +
 +    check=true;
 +    ​
 +    digitalWrite(RF,​ HIGH);
 +    digitalWrite(LF,​ HIGH);
 +    digitalWrite(LB,​ LOW);
 +    digitalWrite(RB,​ LOW); 
 +  }
 +}
 +
 +void moveBackward(){
 +
 +  check=false;​
 +
 +    digitalWrite(RF,​ LOW);
 +    digitalWrite(LF,​ LOW);
 +    digitalWrite(LB,​ HIGH);
 +    digitalWrite(RB,​ HIGH); ​
 +  ​
 +}
 +
 +void turnRight(){
 +
 +  digitalWrite(RF,​ HIGH);
 +  digitalWrite(LB,​ HIGH);
 +  ​
 +  digitalWrite(RB,​ LOW);
 +  digitalWrite(LF,​ LOW);
 +  ​
 +  delay(500);
 +  ​
 +  digitalWrite(LF,​ HIGH);
 +  digitalWrite(RF,​ HIGH);
 +  ​
 +  digitalWrite(LB,​ LOW);
 +  digitalWrite(RB,​ LOW);
 + 
 +  ​
 +  ​
 +}
 +===== Concluzii =====
  
 +Chiar daca proiectul pe care l-am ales nu este unul dificil pot spune ca am avut ce invata din acest proiect. Am invatat cum sa folosesc driverul L298N cu ajutorul unor videoclipuri de pe Youtube in care se faceau proiecte asemanatoare cu ale mele.
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
 <​note>​ <​note>​
 +  -[[https://​www.youtube.com/​watch?​v=iajyaWi1Ln4&​t=2752s|]]
 +  -[[https://​create.arduino.cc/​projecthub/​now/​l298n-motor-module-service-ba0f56?​ref=search&​ref_id=l298n&​offset=0]]
 +  -[[https://​www.youtube.com/​watch?​v=dyjo_ggEtVU]]
 </​note>​ </​note>​
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
pm/prj2022/avaduva/robot4wd.1653682185.txt.gz · Last modified: 2022/05/27 23:09 by mihai.cojocaru2510
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