Problema con la motor shield! / Problem with the motor shield!

Hola quiero hacerme mi propio robot pero me a surgido un problema. Tengo un Arduino Mega 2560 y resulta que para el control del motor uso la motor shield de DK electronics, la cual me ocupa todos los pines PWM, algunos analógicos y la F.A. Mi pregunta es, ¿como puedo conectar el sensor de ultrasonidos? en las practicas uso dos pines PWM para el envió y la recepción de la señal, ¿podría realizar esto en los pines analógicos que continúan libres? aunque en la placa pone "Analog IN", porque creo que usando los pines digitales es imposible, ¿no?. Gracias!

Hi I want to make my own robot but I come to a problem. I have an Arduino Mega 2560 and use the motor shield of DK electronics, which takes me all the PWM pins, some analog and FA My question is, how can I connect the ultrasonic sensor? in practice use two pins PWM for sending and receiving the signal, could do this in the analog pins to remain free? but on the plate it says "Analog IN", because I think using digital pins is impossible, right?. Thank you!

Hola, que modelo y marca de ultrasonidos tienes, driver de motores y que es "f.a"?. Saludos

Yo también estoy empezando a probar un Motor Shield de DK Electronics v1.0 pero sobre un Arduino UNO, así que me ocupa todos los pins. Para conectar los sensores he tenido que soldar unos pins a las salidas analógicas A0-5, a las 5V y a las Gnd, que el Motor shield tiene ya preparadas en la parte inferior derecha. Los sensores de US me funcionan perfectamente conectándolos allí. Supongo que utilizando los que te quedan libres en tu Mega no tendras ningún problema tampoco y así te evitas tener que soldar nada.

Yo en cambio tengo problemas con el control de los motores. Al parecer este motor shield es v1.0 y no va muy fino con la libreria AFMotor.h que hay por ahí, de hecho solo parece responder correctamente la salida M2. Leí por algún foro que hace falta una version anterior pero no logro encontrar. Ya me contarás si consigues un buen resultado con los motores.

Al parecer es un problema con el carácter de salto de linea en las librerías. Dejo aquí la librería modificada. He hecho una pequeña prueba y creo que funciona correctamente.

#include <AFMotor.h>

AF_DCMotor MotorIzq(2);
AF_DCMotor MotorDer(3);



void setup()
{
MotorIzq.setSpeed(255);
MotorDer.setSpeed(255);
}

void loop()
{
    MotorIzq.run(FORWARD); //delante
    MotorDer.run(FORWARD);
    delay(1000);
    MotorIzq.run(RELEASE); //paro
    MotorDer.run(RELEASE);
    delay(100);
    MotorIzq.run(BACKWARD); //atras
    MotorDer.run(BACKWARD);
    delay(1000);
    MotorIzq.run(RELEASE); ///paro
    MotorDer.run(RELEASE);
    delay(100);
    MotorIzq.run(FORWARD); //giro izquierda
    MotorDer.run(BACKWARD);
    delay(1000);
    MotorIzq.run(RELEASE); //paro
    MotorDer.run(RELEASE);
    delay(100);
    MotorIzq.run(BACKWARD); //giro derecha
    MotorDer.run(FORWARD);
    delay(1000);
    MotorIzq.run(RELEASE); //paro
    MotorDer.run(RELEASE);
    delay(100);
}

AFMotor_fixed.rar (7.43 KB)