interfaz gráfica para la cmucam3 -...

43
Interfaz Gráfica para la CMUCAM3 Arturo Camarillo Rodríguez Seminario del Proyecto de Investigación en robótica Humanoide

Upload: duongnhu

Post on 23-Sep-2018

222 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Interfaz Gráfica para la CMUCAM3

Arturo Camarillo Rodríguez

Seminario del Proyecto de Investigación en robótica Humanoide

Page 2: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Objetivo• GENERAL:• Aprender a manejar la interfaz Gráfica creada en LabView para la

cámara.

• ESPECÍFICOS:• Obtener una imagen de la CMU y verla en la interfaz• A partir de dicha imagen seleccionar los colores de nuestro interés y

crear los cubos de color• Escribir los datos en la cámara• Obtener la segmentación de la cámara• Ver los datos con los que está trabajando la cámara

Page 3: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Material• CMUCAM 3• Tarjeta SD• Adaptador TTL-Serial• USB2Dynamixel• Pila para la cámara• Objetos de colores distinguibles

Page 4: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

DESARROLLO

Page 5: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Conexión de la cámara• USB2Dynamixel• Revisar que esté el switch en RS232

Page 6: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Serial

Page 7: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Cámara

Tarjeta SD

Adaptador Serial

Alimentación(5-12V)Pin derecho es +

Page 8: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Bajar el programa a la CMU• Instalar LPC2000 flash utility• Revisar en que puerto COM se dio de alta.

Modificar a un COM 1-5 en caso de ser necesario.

• Abrir el programa para subir el programa a la cámara.

Page 9: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara
Page 10: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Seleccionar Archivo .HEXNombre del archivo:

havimo_lpc2106-cmucam3.hex

Page 11: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Baud Rate y Puerto COMBaud Rate: 115200Puerto: En el que se haya dado de alta

Page 12: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Dispositivo y FrecuenciaDevice: LPC2106Freq: 14745 Hz

Page 13: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Apachurrar el botón mientras se baja el switch de encendido

El jumper es importante para bajara un programa a la CMUCAM3

Page 14: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Si lo hicieron bien…

Page 15: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Apachurrar el botón Mágico

Page 16: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Please reset… Dar OK

Page 17: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Re iniciar la CMUcam3 …Cerrar el programa de Philips

Prender y apagar el switch de la cámara

Page 18: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

INTERFAZ GRÁFICA

Page 19: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Espacio de color RGB

Page 20: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Espacio RGB• Red• Green• Blue• Nosotros trabajamos con una resolución

de 1 byte• 0 a 255 por cada uno• 176*143 (resolución baja de la cámara)=

25,168 pixeles en total

Page 21: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

COMUNICACIÓN

Page 22: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Opciones• 0: Recibir una Imagen• 1: Segmentar una Imagen y mostrar los

resultados (una por una o continuo)• 2: Cambiar valores de colores• 3: Ver valores de la cámara

• Hasta 7 colores

A continuación se explican cada opción.

Page 23: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Comunicación• Serial RS232• Interfaz manda comando• Cmucam recibe comando, procesa la

petición y envía respuesta• Interfaz recibe respuesta y la procesa.• Interfaz genera resultados.

• Código ASCII

Page 24: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Opción 0• Comando mandado: “aaaaa\n”• Regresa las 3 componentes (RGB) de los

25,168 pixeles.• Manda 143 paquetes de 530 bytes cada

uno• …

• Cada byte representa un número entre 0 y 255.

• Así hasta juntar la imagen

0x0D

1 2 176

0x0A

Page 25: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Opción 1• Comando mandado: “aaaab \n”• En el espacio en blanco aparecera ya sea

a=1 color; b=2 colores…g=7colores.• Manda el tiempo que tardó en analizar la

imagen (en ms) => “273\n”• Luego por cada color…• Si no encontró el color mandará: “no hay

objeto de ese color…\n”

Page 26: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Si encontró el color:• [# de grupos encontrados]\nPor cada grupo manda:• [#grupo][xmin][xmax][ymin][ymax][#pix]\nDonde• [#grupo] identificador del grupo• [xmin] coordenada en x ubicada a la izquierda• [xmax] coordenada en x ubicada a la derecha• [ymin] coordenada en y arriba• [ymax] coordenada en y abajo• [#pix] número de pixeles que contiene ese grupo

Page 27: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Ejemplo

• [3] [31] [45] [23] [64] [35] [enter]• 0x03 0x1F 0x2D 0x17 0x40 0x23 0x0D 0x0A

Page 28: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

• Son máximo 10 grupos por color• Y solo se envían los datos de los grupos

que tienen más de 5 pixeles.• Si no hay ningún pixel del color o los

grupos tienen todos menos de 5 pixeles entonces aparecerá la leyenda “no hay objeto de ese color…”

Page 29: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Opción 2• Comando mandado: “aaaac \n”• Primer espacio corresponde al igual que

en la opción 1 al # de colores que modificaremos.

• Segundo espacio es variable, desde 6 hasta 42 bytes

• Cada 6 bytes son los límites de cada “cubo” de cada color

Donde RLL=red lower Limit,RUL=red upper Limit, etc

RLL RUL GLL GUL BLL BUL

Page 30: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Opción 3• Comando mandado: “aaaad\n”• Devuelve los límites de los cubos de los 7

colores que tiene registrados en la tarjeta SD

• “ \n”• Un paquete por cada color

RLL RUL GLL GUL BLL BUL

Page 31: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

NOTA: Siempre se debe iniciar usando la opción 0.

Page 32: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Seleccionar Puerto COM

Page 33: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Indicadores de Texto

Indicador Opción 1: estatus de la segmentación# Grupos: grupos encontrados de cada colorTiempo: tiempo desde que se mando el comando hasta que se terminó de procesar la información (LabView) [ms]Tiempo de Segmentación: Tiempo que toma a la cámara analizar la imagen

Page 34: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Indicadores Gráficos

Page 35: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Imagen Original• Cuando se seleccione

la opción 0, la imagen que mande la cámara se verá en este espacio.

Page 36: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Filtro• De acuerdo a

como vayan variando los valores se irán presentando en este cuadro los pixeles que se encuentren dentro de nuestra área de interés.

• Se controla el número de colores

Page 37: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Caja delimitadora (BondingBox)

• Cuando se activa la opción 1, se verán en este cuadro los resultados de la segmentación realizada por la cámara.

• Con el siguiente control determinas cuántos colores:

Page 38: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Seleccionador• Para poder

seleccionar específicamente con un click que pixeles queremos.

• Si está en 0 no hace nada.

• De a uno por uno

Page 39: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Indicadores “cubos”• Podemos ver los límites numéricos de nuestros

cubos.• El led indica que color se está modificando

(depende del seleccionador)

Page 40: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Botón Resetear• Cuando lo pulsan resetean los límites del color

que se esté modificando (o sea el que tenga el led prendido)

Page 41: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Switch Continuo• Derecha activado• Izquierda desactivado• Solo debe activarse

con la opción 1• Provoca que la

segmentación sea continua, es decir que no es necesario apachurrar muchas veces el botón OK de la opción

Page 42: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Interfaz

Page 43: Interfaz Gráfica para la CMUCAM3 - …homepage.cem.itesm.mx/aaceves/Bogobots/seminario/InterfazCMU.pdf · • Aprender a manejar la interfaz Gráfica creada en LabView para la cámara

Referenciaswww.cmucam.orgVision module Quick Start (Havimo):http://robosavvy.com/RoboSavvyPages/Support/Hamid/Ha

ViMoQuickStart.pdfPara bajar el Flash Utility:http://www.nxp.com/products/microcontrollers/support/softw

are_download/lpc2000/Para bajar el RunTime Engine:http://joule.ni.com/nidu/cds/view/p/id/2087/lang/es