Isi kandungan:
- Langkah 1: Bahan
- Langkah 2: Chasis
- Langkah 3: Conexiones
- Langkah 4: Recepetor Infra Rojo
- Langkah 5: ¿Servomotor Como Usar?
- Langkah 6: Código
Video: Robot Controlado Con Cualquier Control De Tv: 6 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:07
La idea de este yang boleh diarahkan untuk memastikan pengendali robot dan pengendali telefon bimbit. Muchas veces creemos que necesitamos materiales complicados para hacer un robot, sin embargo, la realidad es que con materiales sumamente populares, 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 manera automatik manual; ademas, se explica la teoria necesaria de las tecnologias que se utilizaron. Este proyecto es ideal para Principiantes o intermedios que se sientan relativamente comodos entendiendo codigo. Satu larangan de este yang dapat diarahkan seo a enseñar como controlar servo-motores de rotacion Continua, activar led RGB, utilizar 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 easye. Sin mas que decir, aqui les dejo un video de muestra.
Langkah 1: Bahan
Además de una computadora con el perisian 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 tutorial) dan isi bahan:
- 1x Arduino UNO
- 2 x Servos de rotación Continua, pequeños preferiblemente / / / / aunque en este proyecto se utilizaron los SM-S4303R, yo recomendaría los MG90D.
- 1 x Receptor de infrarrojo tipo diodo (TSOP382) / / / / a 1.95 $ en
- 1 x LED RGB / / / / a 1.95 id
- 1 x Contenedor de baterías 3xAA / / / / a 1.5 $ en
- 1 x Adaptador tipo jack a batería de 9v / / / / a 2.95 id
- 1 x Batería de 9v y 3x bateria AA
- Suis ON / OFF (opsional) / / / / a 0.95 id
- Kabel. Es más sencillo con jumpers, aunque habría que cortar uno de los bordes.
Chasis Bahan
Esto puede quedar a la creatividad de ustedes y el tipo de robot que quieran hacer. Secara terperinci, el chasis que use para este proyecto fue diseñado para otro proyecto por el Dr. Aquí les comparto un link al instructable en elualual 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.
Langkah 2: Chasis
Si quieren usar el mismo chasis que yo, estos son los pasos. Utilizen las fotos para guiarse.
1. Toma 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 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 mungkin tidak dapat dilakukan. Además, verifiquen que los servos estén ajustando la caja de baterías.
4. Con los servos ya amarrados, daftarkan el cable delservo alrededor del mismo servo.
5. Peguen un pedazo de velcro debajo del arduino y, utilizando el velcro, peguamen el arduino al chasis.
Langkah 3: 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 reseptor de infrarrojos va conectado a un ground del arduino, el pin de 5v y cualquier pin digital. En este código se utiliza el pin número 6. (Ver foto 2)
3. Kabel 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 manera, los kabel 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 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 hacerlo solo tienen que cortar el cable de tierra de este cable y conectarlo por medio del switch. (Ver foto 3)
*** Notas ***
La caja de baterias es exclusiveivamente para los servomotores, ya que habiskan banyak 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.
Boleh dicadangkan que solden las conexiones. Aquí un excelente tutorial que pueden utilizar si no estan seguros de como hacerlo.
Langkah 4: 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 walikota a la que se encuentra en el espectro terlihat dan dapat dikalahkan al ojo humano. Lebih baik, secara semula jadi, secara semula jadi, dari sudut kegunaan yang sangat baik. 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 38.5 kHz, tal y como los controles de televisyen. (Ver Foto # uno)
¿OK, ya 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. Finalmente, podemos usar estos unos y ceros para saber cual botón del control se presiono y actuar segúnesponda.
Nuestro código funciona con el setaraf del numero binario dan perpuluhan. La table de la foto numero tres muestra el numero binario y el setara perpuluhan de los botones de mi kawalan. Es muste notar que aunque normalmente todos los controles envían el mismo numero binario para cada botón, algunos controles varian. Si este es el caso con su control, o simplemente quieren agregar otros botones, pueden corer el código de abajo para obtener el numero desimal que sesuai dengan penentu botón de su control. En este ejemplo se imprime en el monitor bersiri el numero desimal queesponde al botón que presionamos. Recuerden que necesitan la librería IRremote descargada y en la carpeta correcta.
#sertakan
Sensor IRrecv (6);
decode_results resultados;
batal persediaan () {
Serial.begin (9600);
sensor.enableIRIn (); // habilitamos "sensor" para recibir
}
gelung kosong () {
jika (irrecv.decode (& hasil)) {// 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
}
}
Langkah 5: ¿Servomotor Como Usar?
Los servomotores son sumamente fácil de manipular rápidamente y controlar con tepatitud por lo que son ideales para este tipo de proyectos. Lo primero que hay que saber es que wujud dosategoras Principles 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 dan programan de la misma manera, responden distinto al código.
Primero un ejemplo:
1) #sertakan
Esta librería ya viene instalada cuando descargamos el IDE de Arduino, por ten cual solo tenemos que incluirla al código para poder usarla.
2) Motor servo1;
Creamos un objeto que vamos a usar para controlar el motor.
3) persediaan tidak sah () {
motor1.tempel (9);
}
Con la función attach () asignamos un pin para usar con nuestro servomotor. A cone pin es al que debemos conectar el cable de señal del servomotor.
4) gelung kosong () {
motor1.write (180); // un lado velocidad maxima
kelewatan (3000); // que corra por tres segundos
motor1.write (0); // otro lado velocidad maxima
kelewatan (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
kelewatan (3000); // esperamos sin penggerak el motor tres segundos
}
Aquí podemos Obsar las diferencias entre un servomotor de 180 grados y uno de 360. En un servomotor de 180 grados al usar la función tulis movemos el motor a el grado que pongamos en el parámetro, pero en uno 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 uno u otra dirección. Oleh ejemplo, 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 kemungkinan a la dirección opuesta habría que escribir motor1.write (0).
Langkah 6: Código
Ya tenemos casi todo listo, solo nos falta Preparar el "cerebro" de nuestro robot. La mejor forma de entender el cdigo es viendo cada detalle en el codigo. Oleh eso, aquí les adjunto el código que escribí. Cada parte está sumamente comentada para intentaric explicar todo de la mejor manera y el código en si está escrito buscando claridad principalmente. Cual duda o sugerencia, tiada duden en dejar un comentario.
Disyorkan:
Romeo: Una Placa De Control Arduino Para Robótica Con Driver Incluidos - Robot Seguidor De Luz: 26 Langkah (dengan Gambar)
Romeo: Una Placa De Control Arduino Para Robótica Con Driver Incluidos - Robot Seguidor De Luz: Que tal amigos, siguiendo con la revisiones de placas y sensores, con el aporte de la empresa DFRobot, hoy veremos una placa con prestaciones muy interesante, y es ideal para el desarrollo de prototipos robóticos y el control de motores y servos, d
Brightness Control PWM Based LED Control Menggunakan Push Button, Raspberry Pi dan Scratch: 8 Langkah (dengan Gambar)
Brightness Control PWM Based LED Control Menggunakan Push Button, Raspberry Pi dan Scratch: Saya cuba mencari cara untuk menerangkan bagaimana PWM bekerja kepada pelajar saya, jadi saya menetapkan tugas untuk mengawal kecerahan LED menggunakan 2 butang tekan - satu butang meningkatkan kecerahan LED dan yang lain meredupkannya. Untuk progra
Menimbang Robot / Robot 3 Roda / Robot STEM: 8 Langkah
Balancing Robot / 3 Wheel Robot / STEM Robot: Kami telah membina robot balancing gabungan dan roda 3 untuk penggunaan pendidikan di sekolah dan program pendidikan selepas sekolah. Robot itu berdasarkan Arduino Uno, perisai khusus (semua butiran pembinaan disediakan), pek bateri Li Ion (semua konstruksi
Como Crear Un Programa De Python Que Grafique Cualquier Función Y Saque Un Área Especifica Debajo De Ella: 6 Langkah
Como Crear Un Programa De Python Que Grafique Cualquier Función Y Saque Un Área Especifica Debajo De Ella: Este programa izin al usuario introducir cualquier funci ó n, graficarla y determinar un area especifica debajo de la misma
Robot Con Sistema De Control: 7 Langkah (dengan Gambar)
Robot Con Sistema De Control: En este Instructable aprendemos dos cosas: Construir un robot sencilloIncroporarle un sistema de control para que se mueva entre paredesPara el sistema de control, utilizo una versi ó n simplificada de control PID y se utiliza algo de impresi & oa