Mục lục:

Robot Controlado Con Cualquier Control De Tv: 6 bước
Robot Controlado Con Cualquier Control De Tv: 6 bước

Video: Robot Controlado Con Cualquier Control De Tv: 6 bước

Video: Robot Controlado Con Cualquier Control De Tv: 6 bước
Video: Мигель Николелис: Обезьяна управляет роботом силой мысли. На самом деле. 2024, Tháng bảy
Anonim
Image
Image
Robot Controlado Con Cualquier Control De Tv
Robot Controlado Con Cualquier Control De Tv

La idea de este allowable es ensenar a controlar un robot con el control de cualquier televisor. Muchas veces creemos que necesitamos materiales complexados para hacer un rô bốt, tội lỗi cấm vận, la realidad es que con materiales sumamente phổ biến, como el control de un televisor, podemos crear grandes cosas. En este proyecto se explica como programar un robot para que se pueda controlar de manra automatica y manual; ademas, se explica la teoria necesaria de las tecnologias que se useizaron. Este proyecto es Ideal para precisioniantes o Intermediateos que se sientan relativamente comodos entendiendo codigo. Một lo largo de este có thể hướng dẫn se và một bộ điều khiển enseñar como servo-motores de rotacion Continua, đèn led activar RGB, đèn cảm ứng hữu dụng Infrarojos para decodificar se; ales Infrarojas y programar en Arduino. Todo el codigo necesario va a estar claramente comentado y thua invito a hacer cualquier cambio que vean Thuane. Sin mas que decir, aqui les dejo un video de muestra.

Bước 1: Vật liệu

Chất liệu
Chất liệu

Además de una computadora con el phần mềm de Arduino descargado, vamos a necesitar la librería IRremote (Si no están seguros de como descargar una librería para Arduino vean este hướng dẫn) y estos materiales:

  1. 1x Arduino UNO
  2. 2 x Servos de rotación Continua, pequeños preferriblemente / / / / aunque en este proyecto se useizaron los SM-S4303R, yo recomendaría thua MG90D.
  3. 1 x Receptor de Infrarrojo tipo diodo (TSOP382) / / / / a 1.95 $ vi
  4. 1 x LED RGB / / / / a 1.95 vi
  5. 1 x Contenedor de baterías 3xAA / / / / a 1,5 $ vi
  6. 1 x Adaptador tipo jack a batería de 9v / / / / a 2.95 vi
  7. 1 x Batería de 9v y 3x baterías AA
  8. Công tắc BẬT / TẮT (opcional) / / / / a 0.95 vi
  9. Cáp. Es más sencillo con jumpers, aunque habría que cortar una de los bordes.

Materiales Chasis

Esto puede quedar a la creatividad de ustedes y el tipo de robot que quieran hacer. De cualquier forma, el chasis que use para este proyecto fue disñado para otro proyecto por el Tiến sĩ Tomas de Camino Beck y yo no tuve ninguna relación con el disño. Aquí les comparto un link al directionable en el cual aparecen los archivos del chasis que usa este proyecto y aquí están los archivos en formato stl. Si quieren usar el mismo chasis que yo además necesitarán amarras de plástico como las que se usan para cerrar las maletas.

Bước 2: Chasis

Chasis
Chasis
Chasis
Chasis
Chasis
Chasis

Si quieren usar el mismo chasis que yo, estos son los pasos. Utilizen las fotos para guiarse.

1. Una vez con las piezas disñadas por rl Tiến sĩ Tomas de Camino en mano, podemos pegar el velcro en la parte de arriba.

2. Abajo de donde pegaron el vecro, amarren la caja de baterías y la batería de 9v al chasis effizando las amarras de plástico.

3. Ahora sigue amarrrar losservos. Asegurence que estén orientados hacia el mismo lado y estén lo más paralelo posible una de otro. Además, verifyfiquen que los servos estén ajustando la caja de baterías.

4. Con thua servos ya amarrados, enrollen el cable delservo alrededor del mismo servo.

5. Peguen un pedazo de velcro debajo del arduino y, Pracizando el velcro, peguen el arduino al chasis.

Bước 3: Conexiones

Conexiones
Conexiones
Conexiones
Conexiones
Conexiones
Conexiones

1. El led RGB va conectado a los pines 9, 10 y 11. El pin común va conectado al pin de 5v del arduino. (Ver foto # 1)

2. El receptor de Infrarrojos va conectado a un ground del arduino, el pin de 5v y cualquier pin digital. En este código se useiza el pin número 6. (Ver foto 2)

3. Cáp Los dos de tierra de los servomotores van conectados al cable de tierra de la caja de baterías. Además, este cable de tierra tiene que ir conectado a algún pin ground del arduino. De la misma mamra, los cable de corriente de los servomotores van conectados al cable de corriente de la caja de baterías. Esta corriente no es necesaria conectarla al arduino.

4. En este proyecto los cable de señal de los motores van conectados a los pines 3 y 4 del Arduino.

5. Opcionalmente pueden agregar un switch al cable de la batería de 9v. Para hacerlo solo tienen que cortar el cable de tierra de este cable y conectarlo por medio del switch. (Ver bức ảnh 3)

*** Notas ***

La caja de baterias es Excivamente para los servomotores, ya que tiêu dùng mucha bateria.

Que tanto duren las baterias va a depnder del tipo de motores que usen.

Cáp Alternativamente podrian cortar la cabezera de los del motor servo, sin cấm vận, en mi caso decidi grandvarla y conectarle unos cable tal y como se muestra en las fotoa.

Es recomendable que hàn las conexiones. Hướng dẫn Aquí un excelente que pueden useizar si no estan seguros de como hacerlo.

Bước 4: Recepetor Infra Rojo

Recepetor Infra Rojo
Recepetor Infra Rojo
Recepetor Infra Rojo
Recepetor Infra Rojo
Recepetor Infra Rojo
Recepetor Infra Rojo

Primero que todo Qué es Infra Rojo?

Infra-Rojo / debajo del Rojo /

Básicamente, la luz Infrarroja es una luz con una longitud de onda thị trưởng a la que se encuentra en el espectro seen y por ende invincible al ojo humano. Es muy poco común encontrarla de forma natural, por lo que se effiza mucho en aplicaciones electrónicas. El TSOP382 tiene filtros que logran que solo luz de 980 nanómetros pase, por lo cual un ambiente con mucha luz no nos afectara en nada. Además, nuestro código esta disñado para solo tomar en cuenta luz que este parpadeando a 38,5 kHz, tal y como los Controller de TV. (Ver Foto # una)

¿OK, bạn có funciona la comunicación không?

El TSOP382 es normalmente abierto, está disñado de esta forma para que cada vez que Recogba alguna señal se corte el pulso que mandamos al microprocesador. En nuestro código, una vez que el pulso se corta, se empieza el protocolo de comunicación. Con 2,4 ms de que el este Recogbiendo un pulso (Recogbiendo LOW en el Arduino) se entiende que se quiere empezar una comunicación. Los ceros se đại diện cho pulsos de 0,6 ms, los unos con pulsos 2,4, y entre cada pulso hay 0,6 ms de descanso. (Ver Foto # dos)

Lo que estamos consiguiendo es una cadena de números binaria única para cada botún que presionamos. Finalmente, podemos usar estos unos y ceros para saber cual botón del control se presiono y actuar según tương ứng.

Nuestro código funciona con el tương đương del numro binario en decimal. La table de la foto numro tres muestra el numro binario y el samee decimal de los botones de mi control. Es importante notar que aunque normalmente todos los controlles envían el mismo numro binario para cada botón, algunos controlles varian. Si este es el caso con su control, o simplemente quieren agregar otros botones, pueden Correr el código de abajo para obtener el số thập phân que tương ứng với một điều khiển botón de su xác định. En este ejemplo se printme en el monitor serial el numro que decimal que tương ứng al botón que presionamos. Recuerden que necesitan la librería IRremote descargada y en la thảma đúnga.

#bao gồm

Cảm biến IRrecv (6);

decode_results resultados;

void setup () {

Serial.begin (9600);

sensor.enableIRIn (); // habilitamos "cảm biến" para Recogbir

}

void loop () {

if (unacv.decode (& results)) {// la función.decode nos devuelve 1 si se decodificó correctamente o 0 si no.

Serial.println (resultados); // NOS DA EL NUMERO QUE NECESITAMOS

Uncv.resume (); // Cảm biến Preparamos el para Recogbir el siguiente valor

}

}

Bước 5: ¿Como Usar Servomotores?

¿Como Usar Servomotores?
¿Como Usar Servomotores?

Los servomotores son sumamente fácil de Thao tác rápidamente y controlar con exactitud por lo que son Idees para este tipo de proyectos. Lo primero que hay que saber es que survivalen dos categorías majores que difieren ampliamente entre los servomotores, los de 180 grados y los de rotación Continua o 360 grados. Aunque, usan la misma Libraría de Arduino y se Programan de la misma Mamra, responseen chưng cất al código.

Primero un ejemplo:

1) #include

Esta librería ya viene instalada cuando descargamos el IDE de Arduino, por lo cual solo tenemos que incluirla al código para poder usarla.

2) Động cơ servo1;

Creamos un objeto que vamos a usar para controlar el motor.

3) void setup () {

motor1.attach (9);

}

Con la función đính kèm () asignamos un pin para usar con nuestro servomotor. A este pin es al que debemos conectar el cable de señal del servomotor.

4) void loop () {

motor1.write (180); // un lado velocidad maxima

chậm trễ (3000); // que corra bởi tres segundos

motor1.write (0); // otro lado velocidad maxima

chậm trễ (3000); // que corra bởi tres segundos

// con 90 grados detenemos el motor

motor1.write (90); // si no se detiene hay que calibrarlo girando el tornillo ubicado a un costado del servomotor

chậm trễ (3000); // esperamos sin mover el motor tres segundos

}

Aquí podemos Observar las diferencias entre un servomotor de 180 grados y una de 360. En un servomotor de 180 grados al usar la función viết movemos el motor a el grado que pongamos en el parámetro, pero en una de 360 grados al poner 90 en el parámetro detenmos el sensor y entre más nos alejemos del 90 más rápido nos movemos hacia una u otra dirección. Por ejemplo, si quisiéramos mover el motor de este código lentamente hacia un lado podriamos escribeir motor1.write (105) y si quisiéramos moverlo lo más rápido posible a la dirección opuesta habría que escribeir motor1.write (0).

Bước 6: Código

Código
Código

Ya tenemos casi todo listo, người máy solo nos falta preparar el "cerebro" de nuestro. La mejor forma de entender el cdigo es viendo cada detalle en el codigo. Por eso, aquí les adjunto el código que escribeí. Cada parte está sumamente comentada para Purposear explicar todo de la mejor manra y el código en si está escrito buscando claridad majormente. Cual duda o sugerencia, no duden en dejar un comentario.

Đề xuất: