Herramientas de usuario

Herramientas del sitio


Barra lateral

Traducciones de esta página:

Página principal

Análisis y comparativas

Eventos Guías Herramientas Información de interés Proyectos > Usuarios Varios Wiki Privado

No hay páginas en esta sección.

old admin

No hay páginas en esta sección.

proyectos:cortacesped_autonomo_con_arduino

Cortacésped autónomo

Se describe a continuación, tanto el hardware como el software de un cortacésped autónomo controlado por la tecnología Arduino.

Cortacésped

En el siguiente enlace se puede observar el funcionamiento, equipado con Gyro y Acc. Siguiendo líneas paralelas. https://www.youtube.com/watch?v=JfqQ7j5finA

Aunque todos pensamos que la idea es nueva, ya que recientemente han inundado nuestros centros comerciales y tiendas de bricolage, esta invento tiene un pasado lejaaaano.

Archivo:Med_mowbot.jpg|En 1969 ya estaban cortando nuestra hierba.

El equipo está dotado de 2 Arduinos UNO para su control. Cuenta además con Giroscopo, Acelerómetro, Sensores de Ultrasonidos y Sensores de Corriente. Para su funcionamiento emplea una batería de 12V 7Ah, que le da una autonomía de 30 minutos.

Hardware Cortacésped

Motorización

Para la motorización del cortacésped se ha recurrido a 3 motores reciclados. Dos de ellos son motores de limpia-parabrisas de 205, y el de corte se trata de un arrancador Glow de aeromodelismo.

Archivo:Arrancador.jpeg|Arrancador tipoArchivo:Arrancador2.jpg|Arrancador montadoArchivo:Motor limpia.jpeg|Motor de limpia parabrisas

Para el control de los mismo se emplean 2 variadores ESC de Automodelismo para los motores de las ruedas, y un simple relé para el motor de la cuchilla.

Archivo:ESC.jpeg|ESCArchivo:esc.jpg|Ubicación

El robot se desplaza por el jardín, cortando la hierba dentro de un perímetro delimitado por un lazo inductivo. El lazo tiene las siguientes funciones:

  • Delimitar la zona de corte. El robot no la sobrepasará en ningún momento.
  • Cortar el borde de la zona de corte. El robot seguirá el hilo, con la cuchilla funcionando, recortando de esa forma el perímetro.
  • Localizar el cargador. Éste está ubicado sobre el hilo. Por lo que el robot lo localizará siguiendo el hilo.

Software Cortacésped

El software ha sido desarrollado en el entorno IDE Arduino. Desde cero, y de forma modular en pestañas. De forma que es relativamente sencillo realizar el seguimiento y depuración del mismo. Se ha recurrido a librerías públicas estandard sin modificación alguna, tratando de mantener la sencillez del proyecto. Así mismo la programación se ha realizado utilizando instrucciones básicas.

Tenemos 2 Arduinos UNO.

  1. El principal se encarga del control del robot, actuando según la lectura los sensores. El segundo Arduino, cumple solamente una función, y podía ser sustituido por un IMU de seis grados de libertad autónomo (tipo Razor). Pero dado que se trata de un proyecto, y como tal ha ido evolucionando, nos encontramos con 2 Arduinos comunicados por el protocolo I2C. En el que el Maestro consulta al esclavo para obtener los datos de navegación.
  2. El secundario, a parte de controlar el IMU, y dado las pocas entradas del UNO, se encarga también de supervisar tensión de la batería, presencia de cargador, lcd y botonera.

Y tendremos 2 Arduinos, un MEGA y un UNO. Recientemente he decidido darle un giro al proyecto. Uno de los Arduinos será sustituido por un MEGA, encargándose éste de todo el trabajo (lcd, cargador, sensores, baterías….), y dejando únicamnente el IMU para el UNO.

Nuevo control

Después de mucho trabajo por fin he llegado a un punto estable en el desarrollo del nuevo control del cortacésped.

Archivo:PlacaNueva.jpg|Nuevo conjunto MEGA y UNO

Las características principales son las siguientes:

   **Hardware**
       2 Arduinos. Un Arduino Mega y un UNO, ambos unidos por I2c.
       1 Gyro y un Accelerómetro. Conectados por I2C, a 3.3V. Es el esclavo del Arduino UNO.
       1 Shield para el UNO con reloj RTC y una tarjeta SD, para almacenamiento de datos (futuro).
       1 Shield SENSORS para el MEGA. Con el fin de conectar en ella todas las entradas y salidas y evitar el darrollo de placas impresas.
       1 LCD de 20x4, conectado por paralelo al MEGA, (por I2C no fui capaz de que funcionase sin "chinitos").
       1 módulo bridge para hacer de interface entre los 3.3V y 5V del I2C.
       1 módulo DC-DC para convertir la tensión de la batería en 5V para los equipos.
   **Software**
       La inclusión del MEGA me ha permitido el aumento de las prestaciones. Ahora el UNO únicamente controla el Gyro y el Acc. El MEGA controla todos los demás equipos.
       He incluido el Reloj RTC que por I2C se comunica con el MEGA, ahora tengo conocimiento del tiempo, lo cual me permite programar el contracésped. Para ello he realizado dos programas semanales, de Lunes a Domingo. Con ellos puedo programar los arranques automáticos del cortacésped.
       He incluido una tarjeta SD, para poder recoger datos. (GPS..., logs..)
       Almacenamiento en la EEPROM de datos de configuración y programación.
       También, como interface un LCD y una botonera (provisional). Con el LCD y un trabajoso menu, puedo controlar y supervisar el cortacésped.
           Este es el menú:
               1.Acciones
                   Corte
                   Carga
                   Bordear
               2.Configuración
                   Fecha
                   Hora
               3.Valores
                   Batería
                   Sensores
               4.Programación
                   Tiempo de corte
                   Programas
                       Programa 1
                       Programa 2

Para la conexión I2C tenemos que tener en cuenta que;

   Necesitamos resitencias pullup.
   El MEGA tiene dos en placa de 10K que no se pueden quitar, al lado del led de ON.
   El UNO tiene dos resitencias dentro del ATMega, son de unos 20K y se pueden deshabilitar por software.
   El LCD tiene 2 resistencias de 4k7 en la mochila, se pueden quitar. Pero yo al final le quité la mochila entera, y lo puse por paralelo.
   El Gyro y Acc tiene 2 de 2k2, en placa, se pueden quitar, pero no lo hice.
   La Shield del Reloj y la SD tiene 2 de 2k2, las quité.

Al final me quede con resistencias de 2k2 en el lado de 3.3V, y 5K en el lado de 5V. Mucho ojo, de haberlas dejado todas, estaríamos en menos de 1k en el lado de lo 5V, algo que no es bueno.

No entiendo porque cada módulo trae las suyas, era mejor que no trajeran nada.

PIEZAS IMPRESAS

DISCO LOCO DE CORTE

Recientemente he incluido un disco loco de corte https://www.youtube.com/watch?v=LgfX1vOxX_k

TECLADO

Con tapa y todo alojo un teclado de control con su display.

teclado.jpg

proyectos/cortacesped_autonomo_con_arduino.txt · Última modificación: 2021/04/16 20:41 por 127.0.0.1