Talaan ng mga Nilalaman:

Robot Controlado Con Cualquier Control De Tv: 6 Mga Hakbang
Robot Controlado Con Cualquier Control De Tv: 6 Mga Hakbang

Video: Robot Controlado Con Cualquier Control De Tv: 6 Mga Hakbang

Video: Robot Controlado Con Cualquier Control De Tv: 6 Mga Hakbang
Video: Using 28BYJ-48 Stepper Motor Push button Speed with 8 projects: Ultimate Video Tutorial Lesson 107 2024, Hulyo
Anonim
Image
Image
Pagkontrol ng Robot Kontrolado ng Cualquier De Tv
Pagkontrol ng Robot Kontrolado ng Cualquier De Tv

Ang ideya na ito ay maaaring turuan ng isang tagapagtaguyod ng isang robot upang makontrol ang de-kwalipikadong telebisyon. Karamihan sa mga tagubilin ay nagtataglay ng mga materyal na kumplikado para sa isang robot, sin embargo, la realidad es que con materiales sumamente populares, como el control de un televisor, podemos crear grandes cosas. Magagawa natin itong isang proyekto para sa isang robot para sa iyong kontrol sa pamamagitan ng manu-manong automatica y manu-manong; ademas, se explica la teoria nekesaria de las tecnologias que se utilizaron. Este proyecto es ideal para principiantes o intermedios que se sientan relativamente comodos entendiendo codigo. Ang isang largo de este ay maaaring turuan ng isang kontrol sa mga serbisyo sa pag-ikot ng patuloy na paglulunsad, ang activar leds RGB, ang magagamit na sensore infrarojos para decodificar se; ales infrarojas y programar en Arduino. Todo el codigo necesario va a estar claramente comentado y los invito a hacer cualquier cambio que vean conveniente. Sin mas que decir, aqui les dejo un video de muestra.

Hakbang 1: Mga Materyales

Mga Materyales
Mga Materyales

Maaari mong mai-install ang software tungkol sa Arduino descargado, upang mai-download ang ilang librería IRremote (Si no están seguros de como descargar una librería para sa Arduino vean este tutorial) at mga materyal na ito:

  1. 1x Arduino UNO
  2. 2 x Servos de rotación Continua, pequeños preferiblemente / / / / aunque en este proyecto se utilizaron los SM-S4303R, yo recomendaría los MG90D.
  3. 1 x Receptor de infrarrojo tipo diodo (TSOP382) / / / / a 1.95 $ tl
  4. 1 x LED RGB / / / / a 1.95 tl
  5. 1 x Contenedor de baterías 3xAA / / / / a 1.5 $ tl
  6. 1 x Adaptador tipo jack a batería de 9v / / / / a 2.95 tl
  7. 1 x Batería de 9v y 3x baterías AA
  8. ON / OFF switch (opcional) / / / / a 0.95 tl
  9. Kable. Ang mga mambabasa ng mga jumpers, aunque habría que cortar uno de los bordes.

Mga Materyal na Chasis

Esto puede quedar a la creatividad deunaues y el tipo de robot que quieran hacer. Para sa karagdagang kaalaman, maaari mong gamitin ang mga proyekto para sa otro na proyekto para kay Dr. Ang mga sumusunod na link ay maaaring maiugnay sa mga itinuturo sa bawat 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.

Hakbang 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 diseñadas por rl Dr. Tomas de Camino en mano, podemos pegar el velcro en la parte de arriba.

2. Abajo de donde pegaron el vectorro, amarren la caja de baterías y la batería de 9v al chasis utilizando 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 uno de otro. Además, verifiquen que los servos estén ajustando la caja de baterías.

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

5. Peguen un pedazo de velcro debajo del arduino y, utilizando el velcro, pembelen el arduino al chasis.

Hakbang 3: Mga Conexiones

Conexiones
Conexiones
Conexiones
Conexiones
Conexiones
Conexiones

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

2. El receptor de infrarrojos va conectado a un ground del arduino, el pin de 5v y cualquier pin digital. Ito ay ang iyong magagamit na pin sa panahon ng 6. (Ver litrato 2)

3. Los dos cables 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 manera, los cables de corriente de los servomotores van conectados al cable de corriente de la caja de baterías. Esta corriente no es nekesaria conectarla al arduino.

4. En este proyecto los cables 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 sa hacerlo solo tienen que cortar el cable de tierra de este cable y conectarlo por medio del switch. (Ver larawan 3)

*** Notas ***

La caja de baterias es exclusivamente para sa los servomotores, yaong consumen mucha bateria.

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

Alternativamente podrian cortar la cabezera de los cables del servo motor, sin embargo, en mi caso decidi conservarla y conectarle unos cables tal y como se muestra en las fotoa.

Inirerekumenda ang que solden las conexiones. Ito ay walang excelente tutorial na pueden utilizar si no estan seguros de como hacerlo.

Hakbang 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 mayor a la que se encuentra en el espectro visible and por invincible al ojo humano. Es muy poco común encontrarla de forma natural, por lo que se utiliza 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 diseñado para solo tomar en cuenta luz que este parpadeando a 38.5 kHz, kung saan kontrolado mo ang telebisyon. (Ver Foto # uno)

¿OK, y como funciona la comunicación?

El TSOP382 es normalmente abierto, está diseñado de esta forma para que cada vez que reciba 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 recibiendo un pulso (recibiendo LOW en el Arduino) se entiende que se quiere empezar una comunicación. Los ceros se representan con 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. Sa wakas, mga podemos usar estos unos y ceros para saber cual botón del control se presiono y actuar según corresponda.

Nuestro código funciona con el equalente del numero binario en decimal. La table de la foto numero tres muestra el numero binario y el katumbas na decimal de los botones de mi control. Ito ay mahalaga nota que aunque normalmente todos los controles envían el mismo numero binario para cada botón, algunos controles varian. Ang este es el caso con su control, o pinasimple na pinagsama-sama na mga botones, na nagtuturo sa pamamagitan ng abajo para makuha ang numero ng decimal na tumutugma sa isang determinado na boton de su control. Magagawa mong subaybayan ito habang sinusubaybayan ang serial el numero decimal que corresponde al botón que presionamos. Recuerden que neesitan la librería IRremote descargada y en la carpeta correcta.

# isama

IRrecv sensor (6);

decode_results resultaado;

walang bisa ang pag-setup () {

Serial.begin (9600);

sensor.enableIRIn (); // habilitamos "sensor" para recibir

}

void loop () {

kung (irrecv.decode (& mga resulta)) {// la función.decode nos devuelve 1 si se decodificó correctamente o 0 si no.

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

irrecv.resume (); // Preparamos el sensor para recibir el siguiente valor

}

}

Hakbang 5: ¿Como Usar Servomotores?

¿Como Usar Servomotores?
¿Como Usar Servomotores?

Los servomotores son sumamente fácil de manipular rápidamente y controlar con precitud por lo que son ideales para este tipo de proyectos. Narito ang una sa lahat ng mga ito na mayroon ng mga kategorya ng mga prinsipyo na naglalagay ng ampliamente entre los servomotores, los de 180 grados at los de rotación Continua o 360 grados. Aunque, usan la misma libraría de Arduino y se programan de la misma manera, responden distinto al código.

Primero un ejemplo:

1) # isama

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

2) Servo motor1;

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

3) walang bisa ang pag-setup () {

motor1.attach (9);

}

Con la función attach () asignamos un pin para usar con nuestro servomotor. Isang este pin es al que debemos conectar el cable de señal del servomotor.

4) void loop () {

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

pagkaantala (3000); // que corra por tres segundos

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

pagkaantala (3000); // que corra por 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

pagkaantala (3000); // esperamos sin mover el motor tres segundos

}

Ang mga podemos na ito ay nagmamasid sa lahat ng mga serbisyo sa 180 grados y uno de 360. En un servomotor de 180 grados al usar la función sumulat ng movemos el motor a el grade que pongamos en el parámetro, pero para sa 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 uno u otra dirección. Para sa iyo, si quisiéramos mover el motor de este código lentamente hacia un lado podriamos escribir motor1.write (105) y si quisiéramos moverlo lo más rápido posible a la dirección opuesta habría que escribir motor1.write (0).

Hakbang 6: Código

Código
Código

Ya tenemos casi todo listo, solo nos falta paghahanda el "cerebro" de nuestro robot. Para sa iyo sa entender ng cdigo es viendo cada detalle en el codigo. Para sa iyo, ito ay nararapat na itaguyod ng isang tao. Cada parte está sumamente comentada para intentar explicar todo de la mejor manera y el código en si está escrito buscando claridad principalmente. Cual duda o sugerencia, no duden en dejar un comentario.

Inirerekumendang: