Tabla de contenido:

MrK Blockvader: 6 pasos (con imágenes)
MrK Blockvader: 6 pasos (con imágenes)

Video: MrK Blockvader: 6 pasos (con imágenes)

Video: MrK Blockvader: 6 pasos (con imágenes)
Video: YEAR IN REVIEW | The WWF in 1996 (Full Year Documentary) 2024, Octubre
Anonim
Image
Image
Impresión 3d
Impresión 3d

A lo largo de los años, he visto muchos proyectos interesantes de robots móviles impresos en 3D y me encanta cómo la tecnología de impresión 3D ha ayudado a la comunidad robótica a aumentar la diversidad en las opciones de diseño y materiales. Quiero agregar una pequeña contribución a la comunidad robótica publicando MrK_Blockvader en Instructable for the Maker Community.

MrK_Blockvader es un pequeño robot divertido con un pequeño timbre, pero no dejes que la apariencia de bloques te engañe. Podría estar equipado con el sensor de color, sensor de distancia, un módulo de radio para comunicarse con otros Blocky con la misma capacidad, con una base o con un controlador.

MrK_Blockvader será parte de una red de robots donde uno puede ser asignado como comandante a un grupo de robots para archivar el mismo objetivo.

Suministros

1 * Arduino Nano

1 * controlador de motor DC

2 * motor DC con caja de cambios

Batería Venom LiPo de 1 * 650 mAh

2 * 1/24 ruedas de camión RC

2 * LED blancos

1 * sensor de distancia

1 * sensor de color

1 * placa de ruptura nRF24

1 * placa de radio nRF24

1 * zumbador

1 * interruptor

1 * 26 AUG cable negro

1 * 26 AUG cable azul

1 * 22 AUG cable negro

1 * 22 AUG cable rojo

Paso 1: Impresión 3D

Utilizo la impresora 3D CEL Robox impresa con material de carbono para una mayor ligereza y durabilidad. Adjuntaré los archivos STL a continuación. Escriba el comentario si tiene alguna pregunta sobre el proceso y la configuración de la impresión 3D.

Paso 2: prepara el Arduino Nano

Prepare el Arduino Nano
Prepare el Arduino Nano
Prepare el Arduino Nano
Prepare el Arduino Nano
Prepare el Arduino Nano
Prepare el Arduino Nano
Prepare el Arduino Nano
Prepare el Arduino Nano

Aprendí que realizar un trabajo de preparación en todos los componentes eléctricos es clave para un proyecto limpio.

Este proyecto incluye el cableado de la placa de conexión nRF24, lo he hecho en un proyecto separado llamado NRF24 Wireless LED Box, aquí es donde puede encontrar la información sobre cómo conectar la placa de conexión nRF24 a un Arduino.

Nota: Utilizo un cable 22AWG más grueso para alimentar el Nano y cables azules y negros delgados 26 AWG para todos los demás propósitos de la señal. Me encantan estos cables de tamaño 26 AWG, son flexibles pero fuertes y brindan lo mejor de ambos mundos.

Trabajo de preparación de Arduino Nano:

  1. Suelde el encabezado del pin de señal al Arduino Nano.
  2. Mojar estos pines con la soldadura hará que la soldadura sea mucho más fácil más adelante.
  3. Suelde un grupo de cable azul a los 5V para suministrar energía a todos los sensores y LED.
  4. Suelde un grupo de cable negro al GND para proporcionar tierra a todos los sensores y LED.

Trabajo de preparación de la placa de conexión NRF 24:

  1. Suelde 5 cables a la placa de conexiones nRF24 para las señales.
  2. Suelde 2 cables a la placa de conexiones nRF24 para la alimentación.
  3. Verifique el enlace para asegurarse de cómo conectar la placa de conexión a un Arduino.
  4. Suelde los 5 cables de señal del nRF24 al Arduino Nana.

Trabajo de preparación del zumbador:

  1. Suelde un cable negro a una de las patas del zumbador para conectar a tierra.
  2. Suelde un cable azul a la otra pata del zumbador para controlar la señal.

Trabajo de preparación del fotorresistor: (diagrama disponible)

  1. Suelde un cable azul a una de las patas del fotorresistor para 5V.
  2. Suelde una resistencia de 10K a la otra pata del fotorresistor.
  3. Suelde un cable azul entre la resistencia de 10K y la fotorresistencia para la señal.
  4. Suelde un cable negro a la resistencia de 10K para tierra.

Trabajo de preparación de LED:

  1. Suelde un cable azul desde el LED positivo derecho al LED positivo izquierdo.
  2. Suelde un cable negro desde el LED negativo derecho al LED negativo izquierdo.
  3. Suelde un cable azul al LED derecho positivo para controlar la señal.
  4. Suelde un cable negro al LED derecho negativo para tierra.

Paso 3: Prepare el motor de CC, el controlador del motor de CC y los sensores

Prepare el motor de CC, el controlador del motor de CC y los sensores
Prepare el motor de CC, el controlador del motor de CC y los sensores
Prepare el motor de CC, el controlador del motor de CC y los sensores
Prepare el motor de CC, el controlador del motor de CC y los sensores

El MrK_Blockvador tiene un par de opciones de sensor y los sensores adicionales no afectan el funcionamiento general, sin embargo, el sensor de color no podrá instalarse después de que el motor de CC esté pegado en su lugar.

Trabajo de preparación del motor de CC:

  1. Suelde un cable negro y uno rojo al motor de CC.
  2. Envuelva el extremo del motor con cinta de aprendizaje.
  3. Llene el área con pegamento caliente para sellar los conectores del motor.

Trabajo de preparación del controlador de motor de CC:

  1. Suelde los 6 cables de señal en el controlador del motor.
  2. Suelde el cable de señal al pin correcto del Arduino Nano.
  3. Instale los cables de 12 V para alimentar el controlador del motor desde la batería. Asegúrese de tener los cables lo suficientemente largos para pasarlos por debajo y por la parte posterior del robot.
  4. Instale los cables de 5V para alimentar el Arduino Nano desde el controlador del motor.

Trabajo de preparación del sensor de color (opcional):

  1. Suelde los 2 cables de la señal.
  2. Suelde los 2 cables para obtener energía.
  3. Suelde el 1 cable para controlar el LED superbrillante.

Trabajo de preparación del sensor de distancia: (opcional)

  1. Suelde un cable azul para la señal.
  2. Suelde otro cable azul en el puerto positivo para 3V positivos.
  3. Suelde un cable negro en el puerto negativo para tierra.

Paso 4: ensamblar

Image
Image
Armar
Armar

Después de todo el trabajo de preparación, ahora es el momento en que las cosas se unen.

Nota: Utilizo pegamento caliente para el motor de CC y el controlador del motor de CC porque el pegamento caliente puede proporcionar una absorción de impactos menor y, si necesita quitarlo, un poco de alcohol para frotar eliminará el pegamento caliente de inmediato.

Proceso de montaje:

  1. Pegue con pegamento caliente el sensor de color al chasis y pase el cable del sensor de color a través del canal. (Opcional)
  2. Pegue en caliente los motores de CC al chasis, asegúrese de que el motor de CC se asiente al mismo nivel que el chasis.
  3. Superpegue la cabeza de Blocvader a su chasis para asegurarse de que todos los cables pasen.
  4. Sensor de distancia de pegamento caliente. (Opcional)
  5. LEDs de cola caliente para ojos Blockvador.
  6. Inserte los cables del motor de CC en el controlador del motor de CC hasta el final y atorníllelos firmemente.
  7. Pase los cables de alimentación de 12 V del controlador de CC hacia abajo y hacia afuera por la parte posterior del chasis para el interruptor de encendido / apagado.
  8. Asegúrese de que todos los cables de todos los sensores estén despejados antes de pegar el controlador del motor de CC.
  9. Cargue el código de prueba y solucione el problema si lo hubiera.

Paso 5: Código

Image
Image
¿Qué sigue?
¿Qué sigue?

Código básico:

El robot utiliza su fotorresistencia y detecta el nivel de luz de la habitación y reacciona si hay un cambio de nivel de luz con el tiempo.

El corazón del código:

bucle vacío () {lightLevel = analogRead (Photo_Pin); Serial.print ("Nivel de luz:"); Serial.println (nivel de luz); Serial.print ("Luz actual:"); Serial.println (Luz_actual); if (lightLevel> = 200) {Chill_mode (); analogWrite (eyes_LED, 50); Serial.println ("Modo frío");} if (lightLevel <180) {Active_mode (); analogWrite (eyes_LED, 150); Serial. println ("modo activo");}}

El robot se puede controlar mediante un controlador y cambiar al modo autónomo parcial mediante el controlador.

El corazón del código:

bucle vacío () {int debug = 0; lightLevel = analogRead (Photo_Pin); Dis = analogRead (Dis_Pin); // Verifica si hay datos para recibir if (radio.available ()) {radio.read (& data, sizeof (Data_Package)); if (data. C_mode == 0) {Trim_Value = 10; Direct_drive ();} if (data. C_mode == 1) {Trim_Value = 0; Autonomous_mode ();} if (data. C_mode == 2) {Trim_Value = 0; Chill_mode ();} if (debug> = 1) {if (data. R_SJoy_State == 0) {Serial.print ("R_SJoy_State = HIGH;");} if (data. R_SJoy_State == 1) {Serial.print ("R_SJoy_State = LOW;");} if (data. S_Switch_State == 0) {Serial.print ("S_Switch_State = HIGH;");} if (data. S_Switch_State == 1) {Serial.print ("S_Switch_State = LOW; ");} if (data. M_Switch_State == 0) {Serial.println (" M_Switch_State = HIGH ");} if (data. M_Switch_State == 1) {Serial.println (" M_Switch_State = LOW ");} Serial.print ("\ n"); Serial.print ("Modo móvil:"); Serial.println (data. C_mode); Serial.print ("L_XJoy_Value ="); Serial.print (data. L_XJoy_Value); Serial.print ("; L_YJoy_Value ="); Serial.print (data. L_YJoy_Value); Serial.print ("; R_YJoy_Value ="); Serial.print (datos. R_YJoy_Value); Serial.print ("; Throtle_Value ="); Serial.println (datos. Throtle_Value); retraso (depuración * 10); } lastReceiveTime = millis (); // En este momento hemos recibido los datos} // Verificamos si seguimos recibiendo datos, o si tenemos una conexión entre los dos módulos currentTime = millis (); if (currentTime - lastReceiveTime> 1000) // Si la hora actual es más de 1 segundo desde que recibimos los últimos datos, {// eso significa que hemos perdido la conexión resetData (); // Si se pierde la conexión, restablezca los datos. Evita comportamientos no deseados, por ejemplo, si un dron acelera y perdemos la conexión, puede seguir volando a menos que restablezcamos los valores}}

Paso 6: ¿Qué sigue?

Este proyecto es el comienzo de un proyecto más grande, donde una red de estos pequeños trabaja juntos para archivar un objetivo común.

Sin embargo, estos robots necesitarían informar su estado a una estación de comunicación, luego esta estación combinaría todos los informes de todos los bots para luego tomar una decisión sobre cuál sería la próxima acción necesaria.

Por esa razón, la siguiente fase del proyecto sería un controlador para actuar como una estación de comunicación. Esto ayudará a desarrollar aún más el proyecto.

El controlador en sí es un robot, sin embargo, es más pasivo que el Blockader. Por lo tanto, el controlador abandona su propio artículo instructable, así que sintonice para un proyecto futuro; D

Recomendado: