Archivo de la etiqueta: Construcción Robot

Conexionado del Robot Minisumo V2

Página principal del robot: https://aprendiendoarduino.wordpress.com/2021/04/02/robot-minisumo-v2/ 

Tiempo aproximado conexiones: 15 minutos

La parte principal para las conexiones es la Arduino Nano Expansion Board. Esta placa dispone de una expansión de los puertos del Arduino Nano junto con un pin de VCC y otro de GND para cada pin del Arduino.

Buena explicación de la expansion board: http://dyor.roboticafacil.es/en/arduino-intro/ 

Datasheet: https://roboticafacil.es/datasheets/nano_io_shield.pdf 

http://forum.arduino.cc/index.php?action=dlattach;topic=498217.0;attach=224635 

Arduino nano data sheet:

Una vez montado el robot procedemos a conectar el cableado.

Conexiones:

DispositivoPin Arduino
Sensor Suelo IR Izquierdo2
Sensor Suelo IR Derecho3
Sensor Suelo IR Trasero4
Sensor Ultrasónico Distancia5 (Trigger), 6 (Echo)
Servo Rueda Derecha9
Servo Rueda Izquierda10
Buzzer12

Esquema Fritzing:

Repositorio del proyecto: https://github.com/jecrespo/Robot-MiniSumo-V2 

Documentos Fritzing: https://github.com/jecrespo/Robot-MiniSumo-V2/tree/main/Esquema%20Fritzing 

IMPORTANTE:

  • Seguir el esquema de cableado y el código de colores si es posible
  • En los conectores de tres pines usados en los sensores IR, tener en cuenta que hay que cruzar los pines GND y Vcc para que coincida con las conexiones de la placa de expansión de Arduino
  • El buzzer, tiene polaridad.

Ejemplo parecido donde obtener algunas partes de Fritzing: http://fritzing.org/projects/bender-dyor

Montaje del Robot Minisumo V2

Página principal del robot: https://aprendiendoarduino.wordpress.com/2021/04/02/robot-minisumo-v2/ 

Tiempo aproximado de montaje: 30 minutos

¡¡IMPORTANTE!!: Para mejorar la autonomía del robot, debe puentearse el diodo M7 de la placa de expansión Nano. Al quitar este diodo mejoramos el voltaje que llega a la placa y los componentes, pero quitamos la protección en caso de un error en la polaridad de la alimentación de la placa de expansión Nano, recordad que la polaridad de la placa es el positivo el centro y masa el exterior. Con esta modificación es casi como si alimentamos al nano desde el Vin

Dos Opciones:

Pasos

  1. Montar las pilas en el portapilas y conectar el cable
  2. El chasis impreso en 3D consiste en dos piezas, en la parte inferior se coloca el portapilas y los tres sensores IR TCRT5000 con sus cables.
  3. Colocar los dos servos con las ruedas y atornillarlas
  4. Colocar el conjunto de los servos y ruedas en el chasis
  5. Colocar el sensor de distancia ultrasónico HC-SR04 con los cables en el hueco a tal efecto de la base del chasis.
  6. Sobre la pieza superior se coloca la placa de expansión de Arduino nano y el Arduino ya instalado.
  7. Atornillar 
  8. Una vez todo colocado, se conectarán los cables a la placa de expansión siguiendo el esquema.

Robot Minisumo V2

Es un robot open source económico y fácil de construir y programar, con el objetivo de acercar la robótica y la programación a cualquiera, especialmente a los niños y niñas.

Robot Minisumo Multifunción. Pensado para competiciones de minisumo, pero puede ser utilizado para aprender a programar otras funciones, como sigue lineas, evita obstáculos, resuelve laberintos o lo que se te ocurra.

Este robot es una versión mejorada del robot publicado en https://aprendiendoarduino.wordpress.com/2019/05/06/construccion-y-programacion-de-robot-minisumo/ 

Repositorio del proyecto: https://github.com/jecrespo/Robot-MiniSumo-V2

Presentación del Robot Minisumo V2 en Arduino Day 2021del Área UR-Maker de la Universidad de La Rioja: link

Lista de Materiales

Montaje del Robot

Conexionado del Robot

Programación con Bloques

Programación con Arduino

Créditos y Patrocinadores

Este proyecto surge del Área UR-Maker de la Universidad de La Rioja

Personas detrás de este proyecto:

  • Alpha Pernía
  • Sergio Peciña
  • Mario Santamaría
  • Enrique Crespo

Construcción y Programación de Robot Minisumo

Este tutorial de construcción y programación de un robot minisumo para competiciones de minisumo está motivado por el Taller de construcción de Robot Minisumo celebrado el 15 de marzo del 2019 en el CEIP Obispo Blanco dentro del Arduino Day 2019 de Logroño https://www.aprendiendoarduino.com/talleres-arduino/arduino-day-logrono-2019/ y el posterior taller de perfecionamiento celebrado el 9 de mayo en el Área UR-Maker de la Universidad de La Rioja

Con el objetivo de acercar la robótica y la programación a los niños, proponemos un taller donde fabricar y programar un robot de sumo autónomo. El hardware y el software para fabricarlo y programarlo es libre y abierto. Los robots de sumo competirán por pares en un dohyo (tablero circular). El robot ganador será el que logre sacar a su contrincante fuera del dohyo.

También aprovechamos este taller para preparar los robots de minisumo para la competición en el 1er encuentro maker en tierra de Estella: https://encuentromaker.dictelweb.org/

Repositorio github de este tutorial: https://github.com/jecrespo/Robot-MiniSumo

Chasis impreso en 3D: https://www.thingiverse.com/thing:3525719

Robots Minisumo

Este robot minisumo ha sido diseñado desde cero nos hemos basado en este robot: https://www.instructables.com/id/SimpleSumo-Educational-Fighting-Robots/

Se ha simplificado al no tener brazos ni botones de sensores de pulsación. El diseño 3D se ha rehecho desde el principio. Se trata de un fork del SimpleSumo robot kit https://www.instructables.com/id/SimpleSumo-Educational-Fighting-Robots/

Existen muchos tutoriales de robots minisumo como:

Reglas Competiciones Minisumo

Para un conjunto de reglas serias ver: Unified Sumo Robot Rules

Para un conjunto de reglas divertidas de leer ver: fully illustrated guide to robot sumo rules

Más enlaces con reglas de competiciones de robots sumo en español:

Lista de Materiales

Los materiales deben ser iguales o similares en dimensiones para encajar en el diseño del chasis:

Coste Aproximado Materiales Robot Minisumo: 20€

Construcción Robot

El chasis impreso en 3D consiste en dos piezas, en la pieza inferior se coloca el portapilas y los tres sensores IR TCRT5000 sujetos con tornillos. Luego se colocan los dos servos con las ruedas y el sensor de distancia ultrasónico HC-SR04 en los huecos a tal efecto.

Chasis impreso en 3D: https://www.thingiverse.com/thing:3525719

Sobre la pieza superior se coloca la placa de expansión de Arduino nano y el Arduino ya instalado.

Una vez todo colocado, se conectarán los cables usando los jumpers dupont.

La parte principal para las conexiones es la Arduino Nano Expansion Board. Esta placa dispone de una expansión de los puertos del Arduino Nano junto con un pin de VCC y otro de GND para cada pin del Arduino.

Buena explicación de la expansion board: http://dyor.roboticafacil.es/en/arduino-intro/

Datasheet: https://roboticafacil.es/datasheets/nano_io_shield.pdf

Arduino nano data sheet:

Otro modelo de placa:

Conexionado de Placa y Dispositivos

Conexiones:

DispositivoPin Arduino
Sensor Suelo IR Izquierdo2
Sensor Suelo IR Derecho3
Sensor Suelo IR Trasero4
Sensor Ultrasónico Distancia5 (Trigger), 6 (Echo)
Servo Rueda Derecha9
Servo Rueda Izquierda10
Buzzer12

Esquema Fritzing:

Imagen en Github: https://github.com/jecrespo/Robot-MiniSumo/blob/master/Robot%20Minisumo%20Sketch_bb.jpg

Esquema en Github: https://github.com/jecrespo/Robot-MiniSumo

Ejemplo parecido donde obtener algunas partes de Fritzing: http://fritzing.org/projects/bender-dyor

Programación por Bloques

Para programar el robot minisumo usaremos mBlock: http://www.mblock.cc/mblock-software/

Existen varias opciones:

Para la programación se ha usado la versión 3.4.12 de mBlock y no ha sido necesario instalar ninguna extensión.

Para programar es necesario usar el modo Arduino, que se selecciona desde edit – Arduino Mode. Si se usa un Arduino Nano, en boards poner Arduino UNO, si se selecciona Nano (mega328) no funciona.

En caso que no cargue, comprobar si el Arduino Nano tiene el bootloader viejo, en ese caso habrá que actualizar el bootloader o sino usar el IDE de Arduino y usar el bootloader antiguo como se explica en el siguiente punto.

Los códigos en mBlock usados se pueden encontrar en: https://github.com/jecrespo/Robot-MiniSumo/tree/master/Firmware%20mBlock

La primera parte de la programación es hacer las funciones básicas y ponerlas todas en un código de test que compruebe que funcionen los motores y todos los sensores y buzzer.

Funciones básicas a programar:

  • Marcha adelante
  • Marcha Atrás
  • Gira derecha
  • Gira Izquierda
  • Para
  • Pita (se pueden hacer diferentes tonos para identificar qué hace, por ejemplo inicio, detecta linea, detecta oponente, etc…)
  • Detecta distancia
  • Detecta linea (diferencia entre derecha, izquierda y trasero)

Los bloques de funciones básicas quedan así:

En mi caso en lugar de poner 0 y 180 para máxima velocidad de los servos (giro izda. y dcha.) he puesto 15 y 165 que funciona mejor.

El código de prueba es:

Este código comprueba el correcto funcionamiento de los motores y los movimientos, así como el buzzer y los sensores IR de suelo y el sensor de distancia ultrasónico.

Fotos

Frontal:

Lateral

Trasera

Bajo