Ordenador portátil Robot controlado v2.0 (19 / 24 paso)

Paso 19: Cargar el código

Copie el código siguiente y péguelo en la pantalla del ide de arduino. Es necesario extraer el módulo de BT antes de subir como los pines rx y tx se asocian con el chip de programación por lo que no debe estar conectado a estos pin mientras se cargan el código. Así que quite tu arduino del escudo y subir el código o quite el módulo de BT de su zócalo.

 #include // add your new ping library here #include // add your liquid crystal library here LiquidCrystal lcd(11, 8, 7, 4, 3, 2); float temp =1; int temppin = A0; int r_motor_n = 9; //PWM control Right Motor + int r_motor_p = 10; //PWM control Right Motor - int l_motor_p = 6; //PWM control Left Motor - int l_motor_n = 5; //PWM control Left Motor + int f_light = A3; int b_light = A4; int horn = 12; int n_light = 13; int speedy = 255; int incomingByte = 0; // for incoming serial data #define TRIGGER A2 // Arduino pin tied to trigger pin on the ultrasonic sensor. #define ECHO A1 // Arduino pin tied to echo pin on the ultrasonic sensor. #define MAX 400 // Maximum distance we want to ping for (in centimeters). Maximum sensor distance is rated at 400-500cm. NewPing sonar(TRIGGER, ECHO, MAX); // NewPing setup of pins and maximum distance. void setup() { pinMode(r_motor_n, OUTPUT); //Set control pins to be outputs pinMode(r_motor_p, OUTPUT); pinMode(l_motor_p, OUTPUT); pinMode(l_motor_n, OUTPUT); pinMode(f_light, OUTPUT); pinMode(b_light, OUTPUT); pinMode(n_light, OUTPUT); pinMode(horn, OUTPUT); digitalWrite(r_motor_n, LOW); //set both motors off for start-up digitalWrite(r_motor_p, LOW); digitalWrite(l_motor_p, LOW); digitalWrite(l_motor_n, LOW); Serial.begin(9600); Serial.println("Start"); lcd.begin(16,2); lcd.clear(); lcd.print(" Hello "); lcd.setCursor(0,1); lcd.print(" I'm Robot "); delay(3000); } void loop() {</liquidcrystal.h></newping.h></p><p>if (Serial.available() > 0) { incomingByte = Serial.read(); }</p><p>switch(incomingByte) {</p><p>case 'S': // control to stop the robot digitalWrite(r_motor_n, LOW); digitalWrite(r_motor_p, LOW); digitalWrite(l_motor_p, LOW); digitalWrite(l_motor_n, LOW); Serial.println("Stop"); lcd.clear(); lcd.print("Stop"); incomingByte='*'; break;</p><p>case 'R': //control for right analogWrite(r_motor_n, speedy); digitalWrite(r_motor_p, LOW); analogWrite(l_motor_p, speedy); digitalWrite(l_motor_n, LOW); Serial.println("right"); lcd.clear(); lcd.print("Right"); incomingByte='*'; break;</p><p>case 'L': //control for left digitalWrite(r_motor_n, LOW); analogWrite(r_motor_p, speedy); digitalWrite(l_motor_p, LOW); analogWrite(l_motor_n, speedy); Serial.println("left"); lcd.clear(); lcd.print("Left"); incomingByte='*'; break;</p><p>case 'F': //control for forward analogWrite(r_motor_n, speedy); digitalWrite(r_motor_p, LOW); digitalWrite(l_motor_p, LOW); analogWrite(l_motor_n, speedy); Serial.println("forward"); lcd.clear(); lcd.print("Forward"); incomingByte='*'; break;</p><p>case 'B': //control for backward digitalWrite(r_motor_n, LOW); analogWrite(r_motor_p, speedy); analogWrite(l_motor_p, speedy); digitalWrite(l_motor_n, LOW); Serial.println("backwards"); lcd.clear(); lcd.print("Backward"); incomingByte='*'; break;</p><p>case 'f': //control for stop digitalWrite(r_motor_n, LOW); digitalWrite(r_motor_p, LOW); digitalWrite(l_motor_p, LOW); digitalWrite(l_motor_n, LOW); Serial.println("Stop"); lcd.clear(); lcd.print("Stop"); incomingByte='*'; break;</p><p>case 'd': // control for right analogWrite(r_motor_n, speedy); digitalWrite(r_motor_p, LOW); analogWrite(l_motor_p, speedy); digitalWrite(l_motor_n, LOW); Serial.println("right"); lcd.clear(); lcd.print("Right"); incomingByte='*'; break;</p><p>case 'a': // control for left digitalWrite(r_motor_n, LOW); analogWrite(r_motor_p, speedy); digitalWrite(l_motor_p, LOW); analogWrite(l_motor_n, speedy); Serial.println("left"); lcd.clear(); lcd.print("Left"); incomingByte='*'; break;</p><p>case 'w': // control for forward analogWrite(r_motor_n, speedy); digitalWrite(r_motor_p, LOW); digitalWrite(l_motor_p, LOW); analogWrite(l_motor_n, speedy); Serial.println("forward"); lcd.clear(); lcd.print("Forward"); incomingByte='*'; break;</p><p>case 's': // control for backward digitalWrite(r_motor_n, LOW); analogWrite(r_motor_p, speedy); analogWrite(l_motor_p, speedy); digitalWrite(l_motor_n, LOW); Serial.println("backwards"); lcd.clear(); lcd.print("Backward"); incomingByte='*'; break;</p><p>case 'J': // front lights on digitalWrite(f_light, HIGH); Serial.println("front lights on"); incomingByte='*'; break;</p><p>case 'j': digitalWrite(f_light, LOW); // off Serial.println("front lights off"); incomingByte='*'; break;</p><p>case 'K': digitalWrite(b_light, HIGH); // back lights on Serial.println("back lights on"); incomingByte='*'; break;</p><p>case 'k': digitalWrite(b_light, LOW); // off Serial.println("back lights off"); incomingByte='*'; break;</p><p>case 'G': digitalWrite(n_light, HIGH); // neon lights on Serial.println("neon lights on"); incomingByte='*'; break;</p><p>case 'g': digitalWrite(n_light, LOW); off Serial.println("neon lights off"); incomingByte='*'; break;</p><p>case 'H': digitalWrite(horn, HIGH); // horn on Serial.println("horn on"); incomingByte='*'; break;</p><p>case 'h': digitalWrite(horn, LOW); off Serial.println("horn off"); incomingByte='*'; break;</p><p>case 'O': // PWM speed values speedy = 0 ; Serial.println("speed= 0"); lcd.clear(); lcd.print("Speed=0"); incomingByte='*'; break;</p><p>case '1': speedy = 155; Serial.println("speed= 10"); lcd.clear(); lcd.print("Speed=10"); incomingByte='*'; break;</p><p>case '2': speedy = 165; Serial.println("speed= 20"); lcd.clear(); lcd.print("Speed=20"); incomingByte='*'; break;</p><p>case '3': speedy = 175; Serial.println("speed= 30"); lcd.clear(); lcd.print("Speed =30"); incomingByte='*'; break;</p><p>case '4': speedy = 185; Serial.println("speed= 40"); lcd.clear(); lcd.print("Speed=40"); incomingByte='*'; break;</p><p>case '5': speedy = 195; Serial.println("speed= 50"); lcd.clear(); lcd.print("Speed=50"); incomingByte='*'; break;</p><p>case '6': speedy = 205; Serial.println("speed= 60"); lcd.clear(); lcd.print("Speed=60"); incomingByte='*'; break;</p><p>case '7': speedy = 215; Serial.println("speed= 70"); lcd.clear(); lcd.print("Speed=70"); incomingByte='*'; break;</p><p>case '8': speedy = 225; Serial.println("speed= 80"); lcd.clear(); lcd.print("Speed=80"); incomingByte='*'; break;</p><p>case '9': speedy = 235; Serial.println("speed= 90"); lcd.clear(); lcd.print("Speed=90"); incomingByte='*'; break;</p><p>case 'q': speedy = 255; Serial.println("speed= 100"); lcd.clear(); lcd.print("Speed=100"); incomingByte='*'; break;</p><p>case 'p': delay(50); // display temp. and distance unsigned int uS = sonar.ping(); Serial.print("Distance: "); Serial.print(uS / US_ROUNDTRIP_CM); Serial.println("cm"); lcd.clear(); lcd.print("Distance: "); lcd.print(uS / US_ROUNDTRIP_CM); lcd.print("cm"); lcd.setCursor(0,1); temp = analogRead(temppin); temp = temp * 0.48828125; Serial.print("Temperature = "); Serial.print(temp); Serial.print("*C"); Serial.println(); lcd.print("Temp. = "); lcd.print(temp); lcd.print("*C"); delay(1000); incomingByte='*'; break;</p><p>delay(5000); } }</p> 

Artículos Relacionados

Cómo reciclar la batería del ordenador portátil viejo

Cómo reciclar la batería del ordenador portátil viejo

Invitamos a todo el mundo. En este instructable le demostraré cómo puede reciclar vieja batería del ordenador portátil. Si usted está usando un laptop entonces después de pocos años de uso el rendimiento de la batería disminuye y el tiempo viene cuan
Conectar las ruedas robóticas a su viejo ordenador portátil

Conectar las ruedas robóticas a su viejo ordenador portátil

¿tienes un portátil antiguo a poner alrededor, mientras utiliza su brillante uno nuevo para jugar WoW y navegar por la interweb? ¿Has pensado "Me gustaría algunas ruedas del perno en esa viejo portátil y llevarlo alrededor"? Tal vez solo desea u
Construcción de un cajón de ordenador portátil (macbook)

Construcción de un cajón de ordenador portátil (macbook)

aunque tengo un gran escritorio en casa, quiero que sea limpio y sin montones de cosas que todavía tengo que terminar. También no utilizar mi macbook como un ordenador portátil, sino como un ordenador de sobremesa, conectado a una pantalla de 24 pulg
Lámpara de aspecto fresca de ordenador portátil roto

Lámpara de aspecto fresca de ordenador portátil roto

Si tienes un MacBookPro roto, o cualquier otra laptop rota con una fría luz de fondo en la parte posterior de la pantalla, usted puede construir esta lámpara para sí mismo. Debido a las rayas del RGB LED de la lámpara se puede personalizar la luz, pa
La creación de su propia bolsa de ordenador portátil de protección bump.

La creación de su propia bolsa de ordenador portátil de protección bump.

Casi todos nosotros usan para viajar con nuestros portátiles aquí y allá.Y para llevar en nuestros bolsos tradicionales que no aportan nada en nombre de la seguridad para nuestro ordenador.Este instructivo le guiará sobre cómo puede modificar su bols
Batería DIY para FPV (reciclaje de 18650 células de un ordenador portátil)

Batería DIY para FPV (reciclaje de 18650 células de un ordenador portátil)

Las células viejas de la laptop pueden recargarse mucho después de que su ordenador portátil va kaput. Aquí es cómo reciclar esas células para hacer un paquete de baterías para fines generales.Esta batería es buena para cosas como aviones RC quadcopt
REUTILIZAR su vieja batería del ordenador portátil para hacer un banco de potencia

REUTILIZAR su vieja batería del ordenador portátil para hacer un banco de potencia

Hace unos meses mi batería del ordenador portátil de Dell no funciona. Siempre desenchúfelo de la fuente principal de AC, el portátil apagado inmediatamente. Después de algunos días de frustración, me sustituye la batería y mantiene los muertos uno (
Resolver un problema de pila CMOS en un ordenador portátil

Resolver un problema de pila CMOS en un ordenador portátil

Un día que lo inevitable ocurre en tu PC, falla de la batería CMOS. Esto puede ser diagnosticado como la causa usual de la computadora que necesitan tener la fecha y hora para que vuelva a introducir cada vez el equipo pierde energía. Si su batería e
¿CÓMO REPARAR BATERÍA DE ORDENADOR PORTÁTIL?

¿CÓMO REPARAR BATERÍA DE ORDENADOR PORTÁTIL?

HOLA A MIS COMPAÑEROS!SOY WAQARaquí, les mostraré cómo reparar su batería para portátil muy barato en casa.+ ¿POR QUÉ?El ordenador portátil de baterías consiste en células de litio que se llaman 18650 célulasno son eternostienen período de vida de ce
Ordenador portátil LED Mod

Ordenador portátil LED Mod

Mi Laptop es muy viejo y parecía muy aburrido. Por eso siempre busqué una forma para que se vea más fresco. Después de mi intento de un stickerbomb vivienda fue totalmente equivocada, que decidí hacer un fresco buscando retroiluminado/mod.Hay ya algu
DIY etiqueta geométrica de ordenador portátil/iPhone

DIY etiqueta geométrica de ordenador portátil/iPhone

Hacer una etiqueta personalizada para su tecnología no tiene que ser costoso o complicado.De hecho, sólo necesitas 3 cosas para completar este proyecto!También puede utilizar estas instrucciones para colocar una etiqueta hecha a mano sobre cualquier
Soporte simple del ordenador portátil / escritorio de pie

Soporte simple del ordenador portátil / escritorio de pie

Este es un proyecto de 5 minutos que hice para crear un soporte plegable para mi portátil. Eleva la altura de mi laptop de 12", pero es muy fácil de modificar para hacer que cualquier altura. Dobla plano así que puedo guardar en mi cajón del escritor
Arreglar su ordenador portátil con un martillo

Arreglar su ordenador portátil con un martillo

cuando los tornillos que sujetan la bisagra a la pantalla de mi laptop dio para arriba el fantasma, que necesitaba una solución rápida. Una pequeña tachuela actuando como un remache hace el truco.Paso 1: Quitar bisel No entraré en demasiados detalles
Giro de ventilador ruidoso del ordenador portátil

Giro de ventilador ruidoso del ordenador portátil

Me compré yo un acer aspire V3 - 772G con una CPU de núcleo cuádruple a i74702 como un reemplazo de escritorio. Se trata de un portátil potente pero cool, pero bajo linux el ventilador es siempre pesadamente de funcionamiento - sin necesidad, como so