[go: up one dir, main page]

0% encontró este documento útil (0 votos)
142 vistas3 páginas

Codigo Arduino Carro

El documento define las variables y pines de entrada/salida para controlar 4 motores y un sensor ultrasónico mediante Arduino. El código en el bucle principal mide la distancia con el sensor ultrasónico y controla la velocidad y dirección de los motores dependiendo de la distancia medida, encendiendo también un LED. Adicionalmente revisa el estado de un sensor TCRT5000L para cambiar la dirección de los motores.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
142 vistas3 páginas

Codigo Arduino Carro

El documento define las variables y pines de entrada/salida para controlar 4 motores y un sensor ultrasónico mediante Arduino. El código en el bucle principal mide la distancia con el sensor ultrasónico y controla la velocidad y dirección de los motores dependiendo de la distancia medida, encendiendo también un LED. Adicionalmente revisa el estado de un sensor TCRT5000L para cambiar la dirección de los motores.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

int motor1 =2;

int motor2 =3;

int motor3 =4;

int motor4 =5;

int motor1Enable = 9;

int motor2Enable = 10;

#define Pecho1 7

#define Ptrig1 6

const int sensorPin = 11;

int led2 =13;

long duracion,distancia;

void setup() {

// put your setup code here, to run once:

pinMode(Pecho1,INPUT);

pinMode(Ptrig1,OUTPUT);

Serial.begin(9600);

pinMode(motor1,OUTPUT);

pinMode(motor2,OUTPUT);

pinMode(motor3,OUTPUT);

pinMode(motor4,OUTPUT);

pinMode(led2,OUTPUT);

pinMode(sensorPin, INPUT); //definir pin como entrada

analogWrite(motor1Enable, OUTPUT); // Inicialmente, velocidad 0

analogWrite(motor2Enable, OUTPUT); // Inicialmente, velocidad 0

void loop() {
// put your main code here, to run repeatedly:

digitalWrite(Ptrig1,HIGH); //

delayMicroseconds(1);

digitalWrite(Ptrig1,LOW);

delayMicroseconds(1);

duracion = pulseIn(Pecho1,HIGH);

distancia = (duracion/2) / 29;

if(distancia >=500 || distancia <=0){

Serial.println("---");

else {

Serial.print(distancia);

Serial.println("cm");

int value = 1;

value = digitalRead(sensorPin ); //lectura digital de pin

if (distancia<=20 && distancia >=1){

analogWrite(motor1Enable,255);

analogWrite(motor2Enable,255);

digitalWrite(motor1,HIGH);

digitalWrite(motor2,LOW);

digitalWrite(motor3,HIGH);

digitalWrite(motor4,LOW);
digitalWrite(led2,HIGH);

delay(1000);

if (distancia<=200 && distancia >=20){

analogWrite(motor1Enable,100);

analogWrite(motor2Enable,100);

digitalWrite(led2,LOW);

digitalWrite(motor1,HIGH);

digitalWrite(motor2,LOW);

digitalWrite(motor3,LOW);

digitalWrite(motor4,HIGH);

if (value == LOW) {

Serial.println("TCRT5000L activado");

digitalWrite(motor1,LOW);

digitalWrite(motor2,HIGH);

digitalWrite(motor3,LOW);

digitalWrite(motor4,HIGH);

else {

Serial.println("TCRT5000L desactivado");

También podría gustarte