Arduino - AYUDA PARA CONTRUIR UN MINI SUMOBOT

 
Vista:
Imágen de perfil de Emanuel
Val: 3
Ha aumentado su posición en 2 puestos en Arduino (en relación al último mes)
Gráfica de Arduino

AYUDA PARA CONTRUIR UN MINI SUMOBOT

Publicado por Emanuel (2 intervenciones) el 23/03/2020 21:30:40
Hola, un gusto saludarles, soy nuevo en este maravilloso mundo de Arduino, y pues quiero armar un mini sumo bot, un amigo me envio los elementos principales para poder armarlo los cuales son:

1 Arduino uno
1 sensor Ultrasónico
3 sensores cny70
2 moto reductores
1 puente H L293

me envio el codigo pero no me envio el esquema de armado y no tengo idea donde va conectado cada elemento, este es el código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
/*
Sensor de proximidad y al ser inferior a 10cm
envia un pulso de alarma por  el pin 13
 HC-SR04 conexiones:
  VCC al arduino 5v
  GND al arduino GND
  Echo al Arduino pin 6
  Trig al Arduino pin 7
 */
 
#define botinicio 2
#define SL0 3
#define SL1 4
#define SL2 5
 
#define Pecho 6
#define Ptrig 7
 
#define mot1adelante 10
#define mot1atras 11
#define mot2adelante 12
#define mot2atras 13
long duracion, distancia;
int val = 0;
 
void setup() {
  Serial.begin (9600);       // inicializa el puerto seria a 9600 baudios
   // define el pin 7 como salida  (triger)
 
   pinMode(botinicio, INPUT);
   pinMode(SL0, INPUT);
   pinMode(SL1, INPUT);
   pinMode(SL2, INPUT);
 
   pinMode(Pecho, INPUT);
   pinMode(Ptrig, OUTPUT);
  pinMode(mot1adelante, 1);  // Define el pin 13 como salida
  pinMode(mot1atras, 1);
  pinMode(mot2adelante, 1);
  pinMode(mot2atras, 1);
  delay(5000);
  }
 
void loop() {
        minisumo();
  }
 
void minisumo() {
 
    val = digitalRead(SL0);
    digitalWrite(mot1adelante, 1);
    digitalWrite(mot1atras, 0);
    digitalWrite(mot2adelante, 0);
    digitalWrite(mot2atras, 1);
 
 
  digitalWrite(Ptrig, LOW);
  delayMicroseconds(2);
  digitalWrite(Ptrig, HIGH);   // genera el pulso de triger por 10ms
  delayMicroseconds(10);
  digitalWrite(Ptrig, LOW);
 
  duracion = pulseIn(Pecho, HIGH);
  distancia = (duracion/2) / 29;            // calcula la distancia en centimetros
 
 
  if (distancia >= 500 || distancia <= 0){  // si la distancia es mayor a 500cm o menor a 0cm
    minisumo();                // no mide nada
  }
        if (val == HIGH) {
     reversa();
               }
               else{
   if (distancia <= 10 && distancia >= 1){
   ataque();         // envia la palabra Alarma por el puerto serial
  }
               }
                   // espera 400ms para que se logre ver la distancia en la consola
}
 
void ataque(){
 
 
  val = digitalRead(SL0);
 
  digitalWrite(mot1adelante, 1);               // en bajo el pin 13
  digitalWrite(mot1atras, 0);
  digitalWrite(mot2adelante, 1);
  digitalWrite(mot2atras, 0);
 
  if (val == HIGH){
       reversa();
       }
 
  digitalWrite(Ptrig, LOW);
  delayMicroseconds(2);
  digitalWrite(Ptrig, HIGH);   // genera el pulso de triger por 10ms
  delayMicroseconds(10);
  digitalWrite(Ptrig, LOW);
 
  duracion = pulseIn(Pecho, HIGH);
  distancia = (duracion/2) / 29;
 
  if (distancia <= 10 && distancia >= 1){
  ataque();
    }
  else{
    if (distancia >= 10 || distancia <= 0){  // si la distancia es mayor a 500cm o menor a 0cm
    minisumo();                  // no mide nada
  }
  }
    }
 
 
    void reversa() {
    digitalWrite(mot1adelante, 0);               // en bajo el pin 13
    digitalWrite(mot1atras, 1);
    digitalWrite(mot2adelante,0);
    digitalWrite(mot2atras, 1);
    val = digitalRead(SL0);
      if (val == HIGH) {
    reversa();
    }
      else{
        minisumo();
        }
    }

agradeceria la ayuda para descifrar las conexiones o si tuvieran el codigo, el esquema y elementos para poder armar el mini sumobot
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder