Paso 7: Mi coche ahora
¡ Hola chicos!
Así que ahora han agregado un sensor y han sobrecargado el motor en el perno para hacer que funcione con el coche
ahora el coche se conducir hasta objeto (como una pared) y dejar unos 20cm de distancia entonces inverso del objeto y mantener en la conducción
Este es el código que puse en el coche hacer esto
#include
#define TRIGGER_PIN 7 / / pin Arduino atado para activar el pin en el sensor de ultrasonidos. #define ECHO_PIN 6 / / atado de Arduino pin a pin en el sensor ultrasónico del eco. #define MAX_DISTANCE 200 / / distancia máxima queremos ping para (en centímetros). Distancia máxima del sensor está valorada en 400-500cm.
int adelante = 12; pin delantero int inversa = 11; invertir el pin int izquierda = 10; int pin a la izquierda derecha = 9; eje derecho
El método setup() se ejecuta una vez, cuando comienza el bosquejo
void setup() {/ / inicializar los pines digitales como una salidas: pinMode (delantero, salida); pinMode (inversa, salida); pinMode (a la izquierda, salida); pinMode (derecha, salida); Serial.Begin(115200); Resultados Open monitor serie a 115200 baudios ver ping.
}
void go_forward() {digitalWrite(forward,HIGH); / / gire hacia delante motor en digitalWrite(reverse,LOW); / / apagar motor revers}
void go_reverse() {digitalWrite(reverse,HIGH); / / vuelta reversa motor en digitalWrite(forward,LOW); / / desactivar delantero notor}
void stop_car() {digitalWrite(reverse,LOW); / o apagar el motor revers digitalWrite(forward,LOW); / / gire hacia delante con el motor apagado digitalWrite(left,LOW); digitalWrite(right,LOW);}
void go_left() {digitalWrite(left,HIGH); / / girar a la izquierda motor en digitalWrite(right,LOW); / / apagar motor adecuado}
void go_right() {digitalWrite(right,HIGH); / / girar a la derecha motor en digitalWrite(left,LOW); / / tune izquierdo motor off}
el método loop() se ejecuta una y otra vez, / / como el Arduino tiene poder
void loop() {delay(50); / / espera 50ms entre pings (alrededor de 20 segundo pings). 29ms debe retrasar la más corta entre pings. unsigned int nos = sonar.ping(); unsigned int distancia = uS / US_ROUNDTRIP_CM; / / enviar ping, ping tiempo en microsegundos (uS). Serial.println(Distance); Convertir el tiempo de ping a distancia en cm y el resultado de la impresión (0 = distancia fija exterior gama) si (distancia < 1 || distancia > 25) {Serial.println("forwards"); go_forward(); delay(500);} else {Serial.println("backwards"); go_reverse(); delay(500);}}
Este también es un video de ella haciendo su cosa:
http://youtu.be/Cu3RqLXkCc8