SkyMega

De WikiRobotics
Revisión del 02:41 1 dic 2011 de Obijuan (Discusión | contribuciones) (Grabación del Bootloader)

Saltar a: navegación, buscar

right

Introducción

Tarjeta microcontroladora de reducidas dimensiones compatible con los Módulos Y1 / MY1 / REPY1. Las aplicaciones principales son la programación de robots modulares, robots móviles como el Miniskybot (o derivados) o bien para usos educaciones.

La tarjeta Skymega es hardware libre2. Ha sido diseñado con la herramienta libre Kicad. También es compatible con Arduino.


Logokicad.png

Características

  • Hardware libre2
  • Compatible mecánicamente con la tarjeta Skycube
  • Compatible con Arduino
  • Microprocesador: ATMEGA a 16Mhz. Modelos: 88/168/328
  • Conexión de hasta 8 servos (8 módulos).
  • Los conectores de los servos se pueden poner por ambas caras de la placa
  • Comunicación por bus I2C entre tarjetas skymega
  • Hasta 2 conectores de I2C, que se pueden soldar por ambas caras
  • Conector de alimentación doble, tipo molex, uno por cada cara
  • Conector de grabación ICSP
  • Led de pruebas
  • Pulsador de pruebas
  • Micro-interruptor de on/off
  • Led de power-on
  • Slot de expansión para conectar sensores

Fotos

Álbum de fotos en google+
La skymega 1.0 en un módulo Repy1 (click para ampliar)
El Miniskybot con una skymega (click para ampliar)
Tarjeta Skymega 1.0. Lote 1 (click para ampliar)
PCB de la Tarjeta Skymega 1.0. Lote 1 (click para ampliar)

Conexión al PC

La skymega se conecta al PC a través de un cable USB-serie de FTDI (modelo TTL-232R-5V). Este cable tiene un conector de 6 pines. Para usarlo con la Skymega es necesario modifica este conector y sustituirlo por uno de 4 pines como se muestra en las fotos. Opcionalmente, si no se dispone del conector de 4 pines, se puede reutilizar el de 6, colocando los cables como se indica en las fotos y sin conectar los 2 hilos sobrantes.

Este cable sirve para descargar firmware en la Skymega, así como comunicarse vía puerto serie con ella.

Conexión del cable FTDI modificado a la Skymega 1.0 para descargar software (click para ampliar)
El cable USB-serie de FTDI: TTL-232R-5V modificado para la skymega (click para ampliar)
Detalles del conector. Vistas superior e inferior (click para ampliar)
Conexión de la skymega al PC con un cable FTDI de 6 pines modificado, sin sustituirlo por un conector de 4 pines (click para ampliar)

Descripción de elementos

Partes

Parte frontal de la Skymega (click para ampliar)
Descripción de la skymega (click para ampliar)

Pines

Asignación de pines de la Skymega. Las etiquetas azules son pines correspondientes a la nomenclatura de Arduino y las rojas del micro ATMEGA (click para ampliar)

Alimentación

La Skymega se alimenta con un voltaje entre 4.5v y 6v. Es necesario crear un cable con un conector molex de 2 vías para alimentarla. Existen varias posibilidades:

  • Utilizar un portapilas, con el conector molex
  • Crear un cable USB-molex para alimentarla directamente desde el PC
  • Utilizar cualquier fuente de alimentación externa con un conector molex
Conector molex de alimentación. ¡¡Ojo a la colocación exacta de los cables!! (click para ampliar)
La skymega con el cable de alimentación conectado (click para ampliar)
Portapilas con 4 pilas AAA (click para ampliar)
Cable de alimentación USB - molex (click para ampliar)
Skymega conectada a una fuente de alimentación (click para ampliar)
Skymega conectada a un portapilas imprimible (click para ampliar)

Conexión de servos

Los servos tiene 3 cables:

  • Negro: Masa (GND)
  • Rojo: Alimentación (VCC)
  • Blanco: Señal de control (CTL)

Los servos se conectan con la orientación mostrada en las fotos

Conector del servo Futaba 3003 (click para ampliar)
Conexion de un servo Futaba 3003 a la skymega (click para ampliar)
Detalles de conexión del servo (click para ampliar')

Accesorios imprimibles

Sonar device Portapilas Módulos REPY1 Mini-Skybot
170px 170px 100px 120px

Periféricos

Tarjeta Freeleds Tarjeta Skypads
200px 200px

Grabación del Bootloader

Para poder utilizar la tarjeta skymega normalmente, es necesario grabar un bootloader. Esta operación sólo hay que realizarla una vez por cada nuevo micro ATMEGA que se coloque en la placa. Por ello, si ya nos lo han grabado, no es necesario comprar ningún programador adicional.

Para grabar el bootloader en micros nuevos, se necesita disponer de un programador de AVRs. Existen muchos modelos. Uno de ellos es el USBtinyISP, que es totalmente libre.

Conexión del grabador USBtinyISP a la Skymega (Click para ampliar)
Detalles de la conexión del grabador al puerto ICSP (Click para ampliar)

Para grabar el bootloader seguir los siguientes pasos:

  • Conectar el grabador USBtinyISP al PC (USB) y a la tarjeta Skymega. El led rojo de power on se deberá encender
  • Arrancar el entorno de Arduino. Icono aviso.png ¡¡Es necesario hacerlo como super usuario!!
$ sudo arduino
  • Seleccionar la placa en Tools/Board. Dependiendo del micro ATMEGA que se tengo, se deberá seleccionar una de estas dos opciones:
    • skymega con micro ATMEGA 328 -> Opción: Arduino Duemilanove or Nano w/ ATmega328
Figura 1: El entorno de Arduino nada más arrancarlo (Click para ampliar)
Figura 2: Selección de la placa: ATMEGA 328 (Click para ampliar)

Probando la placa: "Hola mundo"

  • Es necesario que el Bootloader esté previamente grabado
  • Alimentar la skymega, conectando bien el portapilas o el cable de alimentación USB.
  • Encender la placa con el interruptor. El led rojo se encenderá
  • Enchufar el cable de descarga (FTDI) al PC y conectarlo a la Skymega
  • Ejecutar el entorno de arduino
  • Seleccionar la placa en Tools/Board: Arduino Duemilanove or Nano W/ ATmega 328 (Si el micro que se tiene es el ATMEGA168, seleccionar la opción: Arduino diecimila, Duemilanove or Nano W/ ATmega 168)
  • Seleccionar el puerto serie en Tools/Serial Port. En Linux típicamente será el /dev/ttyUSB0
  • Abrir el ejemplo "hola mundo". Pinchar en File/Examples/1.Basic y seleccionar Blink.
  • Descargar en la skymega. Pinchar el icono correspondiente (ver figura) o la opción File/Upload to I/O Board. El programa se compilará y empezará a descargarse. Al cabo de unos segundos se podrá ver cómo el led verde de la skymega se parpadeará.

Ejemplos de programación

Programación Avanzada

Planos

Icono aviso.png Utilizar la version 2011-08-04 o superior de KICAD.
  • Ficheros FUENTE y de fabricación:
skymega-1.0-src.zip Ficheros fuentes para Kicad: Esquemas, librerias y PCB
skymega-v1.0-gerber.zip Ficheros para su fabricación: Gerbers y plano de taladros


  • Ficheros con documentación en PDF:
skymega-v1.0-sch.pdf Esquema
skymega-v1.0-Back.pdf PCB. Cara inferior
skymega-v1.0-Front.pdf PCB. Cara superior
skymega-v1.0-SilkS_Front.pdf Serigrafías cara superior
skymega-v1.0-SilkS_Back.pdf Serigrafías cara inferior
skymega-v1.0-components-es.pdf Listado de componentes
  • Planos mecánicos
100px 100px 100px
DXF OpenScad STL

Repositorio

Historia

  • 17/Nov/2011: Repartidos 40 PCBs entre los estudiantes de la UC3M para que las monten
  • 03/Agosto/2011: Montaje de 50 skymegas finalizado
  • 20/Junio/2011: Recibido el primer lote de 100 PCBs. Montadas y probadas 3 prototipos (Blog)
  • 29/Mayo/2011: Encargados 100 PCBs en pcbcart. Tardarán unas 3 semanas. Se espera recibirlos la semana del 20 de Junio
  • 16/Mayo/2011: Fabricados 8 PCBs prototipos en la ETSI de Telecomunicación (UPM). Montada y probada!! (Blog)
PCB de la skymega
Itziar Lima y Juan Gonzalez soldando el PCB de la skymega
  • 07/Mayo/2011: Cambio de nombre. La placa ha sido bautizada como Skymega, en vez de Skycube-mega.
  • 14/Abril/2011: Itziar Lima ha hecho un nuevo esquema y ha soldado un prototipo. Está validado
Protipo de Itziar Lima
Itziar Lima soldando el prototipo
  • 30/Mayo/2010: Construido prototipo I. Probado con la locomoción de Minicube-I (Blog)
Cara superior
Cara inferior
Locomoción de Minicube-I
300|250</youtube>

Skycube-mega prototipo 1: Ejemplo de locomoción
del robot Minicube-I

  • 27/Mayo/2010: Prototipo preliminar. Placa protoboard con un Arduino nano (Blog)
Prototipo I: Arduino nano montado en una protoboard, haciendo oscilar un servo
300|250</youtube>

Prototipo preliminar: Oscilación de un módulo MY1

Autores

Licencia

100px

Open Source Hardware Definition v1.0
Hardware de Fuentes Abiertas (OSHW en inglés) es aquel hardware cuyo diseño se hace disponible públicamente para que cualquier persona lo pueda estudiar, modificar, distribuir, materializar y vender, tanto el original como otros objetos basados en ese diseño. Las fuentes del hardware (entendidas como los ficheros fuente) habrán de estar disponibles en un formato apropiado para poder realizar modificaciones sobre ellas.

Enlaces

Noticias

  • 21/Junio/2011: Añadidas fotos de la versión 1.0
  • 29/Mayo/2011: Añadidas fotos del PCB prototipo
  • 7/Mayo/2011: Añadido fotos del prototipo de Itziar Lima
  • 27/Mayo/2010: Comenzada esta página