Traductor

19 de diciembre de 2010

SENSORES DGT



Hola a todos. Estoy planeando la construcción de un tablero electrónico de ajedrez (tipo los de DGT (http://digitalgametechnology.com/site/Electronic-Boards/)), principalmente para hacer de interfaz en partidas por internet.

La pregunta que tengo es qué sensores le pongo para detectar las piezas.. Como primer idea se me ocurrió usar un reed switch debajo de cada escaque y un imádebajo de cada pieza. Solo me interesa saber si hay o no hay una pieza en ese escaque (no interesa poder identificarlas una por una). Es una solución sencilla, y permite "esconder" el sensor para que, a simple vista, parezca un tablero ordinario.

Pero en seguida me desanimó el costo de todo esto: U$S 0.616 (cada switch, lo más barato que encontré) x 64 = U$S 39.424.. Mas de $150, con el peso argentino a U$S 0.25. Eso sin contar los 32 imanes.. :sad:
Así que, tras una larga meditación se me ocurrió usar sensores inductivos (caseros, por supuesto). Algo así:

(http://img704.imageshack.us/img704/196/sensor.png) (http://img704.imageshack.us/i/sensor.png/) Uploaded with ImageShack.us (http://imageshack.us)

Un solenoide debajo de cada escaque ("materia prima" reciclable de monitores/televisores viejos) y una rebanada de metal (hierro, acero, ferrita) debajo de cada pieza. Con el metal la bobina presentaría una inductancia distinta que sin él, lo que indicaría que hay una pieza ahí.
Sin embargo, todavía no se me ocurre cómo medir adecuadamente la diferencia de inductancia :?

¿Alguna idea? ¿Podría funcionar esta idea última, o el cambio en el solenoide sería despreciable como para medirse?

¡Saludos!

Una manera muy económica sería haciendo que sobresalgan dos terminales muy pequeños que no estropeen la estética, de modo tal que un metal en la parte inferior de la pieza cierre el circuito eléctrico.
Talvez con algunos problemitas como rebotes y falsos contactos, pero tendrias 64 interruptores dispuestos en una matriz 8x8.
Mis disculpas si es muy trivial la respuesta :oops:
No hay de qué disculparse, toda ayuda es útil. Ese método es justamente mi "plan B" (es lo más fácil para programar después :mrgreen:) en caso de no encontrar uno que no altere la apariencia del tablero. Es más, yo lo imaginaba como 2 tiritas metálicas que sobresalieran, pero creo que con terminales quedaría bastante mejor a la vista.



No se las medidas del tablero que planeas usar... pero una buena opción seria un touch screen "multi-touch".

Por ejemplo algo asi. Touch (http://cgi.ebay.com/10-1-Capacitive-Multi-Touch-Screen-Panel-Solder-Type_W0QQitemZ270638553808QQcategoryZ31569QQcmdZViewItemQQ_trksidZp4340.m263QQ_trkparmsZalgo%3DSIC%26its%3DI%252BC%26itu%3DUCI%252BIA%252BUA%252BFICS%252BUFI%252BDDSIC%26otn%3D10%26pmod%3D280554858261%26ps%3D63%26clkid%3D5221897744367418758)

Saludos
Antes que nada, mil disculpas por no responder en buen tiempo, pero hace poco me mudé y no tuve acceso a internet hasta hace unos días :(.
Creo que una medida apropiada para el tablero sería 32x32cm (4cm de lado para cada escaque). Es algo inferior a las medidas requeridas por la FIDE para los tableros utilizados en torneos oficiales (5-6.5cm por escaque), que me parece algo excesiva (queda una armatoste de medio metro de lado) :?
No se bien si se puedan conseguir sensores touch screen de esa medida, pero estoy seguro que su precio escaparía de mi presupuesto :D. Aún así, gracias por la sugerencia.

¡Saludos!

El otro día al ver el noticiero me acorde de este post, pasaron un video de una feria de tecnología en la que usaban una camara para sensar la posición de las piesas.

En labview hay varias herramientas para el reconocimiento de objetos con una camara. Esto te puede servir.

Saludos
¿Se podría con una cámara web? :o

Si, yo en labview las utilice, tienen un poco menos de calidad, lo que podria ocasionar algunos errores. Pero para probar si la idea es viable sirve a la perfección.

Saludos

Hola,el proyecto es muy interesante.Es dificil hacerlo con poco presupuesto,dado los 64 casilleros.
Volviendo a la idea de los reed switch podrias utilizar (se pueden conseguir baratos) sensores magnecios de apertura de los sistemas de alarma,te facilitaria mucho el armado,solo tendrias que pegarlos en una superficie delgada,suelen tener buen "Gap",
casi 2 cmm.
Ej http://www.masoportunidades.com.ar/aviso/4844896-sensor-magnetico-para-puertas-y-ventanas-universal-alarmas-disponible-en-capital-federal
Saludos!



Sensores Hall servirían también ;-)

Mmm.. después de un tiempo de reflexión, llegué a la conclusión que lo de la cámara no va a poder ser. Primero porque sería (bastante :() más complicado no solo el sensado en sí, sino después la comunicación con la pc. Para ello ya tenía medio planeado usar el mismo protocolo que los tableros dgt y un programa ya hecho que lo acepte (xboard, por ej). Y segundo porque la presencia de la cámara alteraría la apariencia del tablero, cosa que tardé en darme cuenta :mrgreen:

Aprecio también las alternativas propuestas por chichepic y MLO_, pero ambas resultan relativamente caras, y uno de los propósitos de este proyecto es mantener los costos al mínimo posible, para eventualmente distribuirlo (no venderlo, sino "compartirlo") y crear una alternativa de tablero electrónico para ajedrecistas de bajos recursos jajaja

Saludos

Hola mtristan, puede parecer al principio algo cutre esta idea, pero te aseguro que es muy econòmica.

Tratarè de explicarme, se trata de realizar dicho tablero con contactos tal como ya se a propuesto, los contactos los realizas con tiras de papel aluminio adheridas sobre papel adhesivo tipo "contak". Utilizas 8 tiras para hacer las columnas verticales y 8 para las horizontales y entre ambas usas un separador lo suficientemente delgado para que en estado normal no àlla contacto entre ellas.

Cuando coloques una de las piezas sobre el tablero, el peso de la misma flexionarà la lamina superior y los aluminios haràn contacto.

De esta manera tienes un teclado matricial accionado por las fichas y el resto ya lo supondràs....

Esta es solo una idea y no se que tan factible o duradera serà, eso te lo dejo para que te diviertas tù.

Un saludo

Atte. CARLOS.

Cita de: Chaly29 en 27 de Octubre de 2010, 01:03:23
Hola mtristan, puede parecer al principio algo cutre esta idea, pero te aseguro que es muy econòmica.

Tratarè de explicarme, se trata de realizar dicho tablero con contactos tal como ya se a propuesto, los contactos los realizas con tiras de papel aluminio adheridas sobre papel adhesivo tipo "contak". Utilizas 8 tiras para hacer las columnas verticales y 8 para las horizontales y entre ambas usas un separador lo suficientemente delgado para que en estado normal no àlla contacto entre ellas.

Cuando coloques una de las piezas sobre el tablero, el peso de la misma flexionarà la lamina superior y los aluminios haràn contacto.

De esta manera tienes un teclado matricial accionado por las fichas y el resto ya lo supondràs....

Esta es solo una idea y no se que tan factible o duradera serà, eso te lo dejo para que te diviertas tù.

Un saludo

Atte. CARLOS.

Me parece que no es viable, porque una vez que una pieza te usa una linea ya no podras sensar las otras piezas... imagino que algo similar pero uno para cada posición si seria viable.

Saludo

Sí se puede Ema, tratándolo como si fuera un teclado matricial. El procedimiento es el siguiente.

Llamemos a los pines de las filas F1 a F8, y los de las columnas C1 a C8.
Pones todas las filas como entrada y todas las columnas con salida a 0 excepto C1=1.
Lees las entradas y te saldrá un 1 en las que estén pulsadas. Anotas el resultado de la columna 1.
A continuación pones todas las columnas a 0, excepto C2=1.
Y vuelves a leer las entradas, encontrando un 1 en las pulsadas.
Así, hasta que llegues a C8 y vuelvas a empezar.

La única pega que le veo al sistema es que no reconoce qué pieza pisa cada cuadro, lo que obliga a resetear el tablero al comienzo de la partida y a hacer un seguimiento de cada movimiento para saber quién es el que se ha movido. Pero barato sí que sería, la verdad.

Tienes razón Nocturno... si se puede, me confundi con un touch resistivo.


Citar
La única pega que le veo al sistema es que no reconoce qué pieza pisa cada cuadro, lo que obliga a resetear el tablero al comienzo de la partida y a hacer un seguimiento de cada movimiento para saber quién es el que se ha movido.

Visto sin mayor profundidad, no parece representar mucho problema el seguir el movimiento de la piezas. Me imagino que se podrían dedicar 64 bytes de ram para guardar el estado del tablero completo en todo momento. Tampoco veo mayor problema en jugar partidas ya empezadas, o desde posiciones "no estándar" (como en el ajedrez aleatorio). Lo único que se puede hacer es confiar en que el usuario coloque correctamente las piezas en el tablero al iniciar.

La mayoría de los programas de ajedrez para pc no tienen la capacidad de comunicarse directamente con estos tableros. Pero lo que si se puede hacer (la trampa ;-)) es crear un programa que actúe como si fuera un motor (chess engine) que haga de "intermediario" entre el programa y el tablero. Y lo mejor es que alguien ya se encargó del trabajo sucio y se estos programas intermediarios se encuentran disponibles para bajar sin dificultad.
El tema es que, según el protocolo xboard para comunicación con motores de ajedrez, el programa de la pc no se hace cargo de verificar movimientos ilegales por parte del motor. Y esto hace necesario tener que seguir la partida desde el tablero para no mandar cualquier cosa a la pc.
Pero también es necesario si se quiere adicionar la posibilidad de guardar partidas en algún medio extraible, con el fin de poder analizarla más tarde.

Los sensores de contacto me va pareciendo cada vez más adecuados. Sin duda son la opción más barata :mrgreen:, aunque habría que ver cómo hacer para que no queden estéticamente desagradables. ¿Tal vez usando lámina de cobre en vez de aluminio? :roll:
¿Qué les parece esta opción?

(http://img338.imageshack.us/img338/3364/sensortablero.png) (http://img338.imageshack.us/i/sensortablero.png/)

Personalmente, nunca use un sensor de presencia infrarrojo como este, así que no se qué tan buen desempeño tienen, y sobre todo en distancias tan cortas.. En realidad pienso ponerlos en ángulo, para que la perforación en el tablero sea lo más pequeña posible.

Anduve viendo precios, y podría conseguir LEDs infrarrojos y fototransistores de 3mm a u$s0.1 más o menos, cosa que en total me saldría poco más de $60 (argentinos), que me parece bastante accesible.

y los CNY70..? seran mas baratos o caros, tambien pueden servir...no?, la condicion seria que la parte de abajo de las piezas sea de color negro, pero supongo que habria que pensar en el acondicionamiento de la señal.
Mm.. el problema con el CNY70 es que tendría que tener perforaciones de casi 5mm en el tablero. Y no encuentro información de su precio, pero dudo que cueste menos que receptor y emisor separados :?
En la página de Elemon veo que tienen LEDs y fototransistores aún más baratos :-/




--------------------------------------------------------------------------------
Título: Re: Sensores para tablero de ajedrez
Publicado por: ema en 30 de Octubre de 2010, 12:10:30
--------------------------------------------------------------------------------

Es una buena idea, pero deberias revisar si algún tipo de luz puede generar algún error de sensado.

Saludos


y porque no usas "Touch Sensing"

http://www.microchip.com/en_us/technology/mtouch/

Con algunas modificaciones pequeñas, podría detectar fácilmente a la ficha.

SALUDOS!
Citar
Es una buena idea, pero deberias revisar si algún tipo de luz puede generar algún error de sensado.

¿Y si hago titilar el LED-IR a una frecuencia determinada? Perdón si digo cualquier cosa, pero en serio nunca hice algo como esto :oops:


Citar
y porque no usas "Touch Sensing"

Mm.. no tengo muy en claro cómo funcionan, pero parece que hay 2 formas de sensar con estos dispositivos. Una requeriría que el tablero esté cubierto por una membrana flexible, cosa que no queda muy agradable a la hora de juego :? Y la otra se basa en que acercar el dedo al sensor actúa como conectarle un capacitor a tierra (así se ve en los dibujitos, por favor corrijanme si estoy diciendo cualquier cosa!), por lo que me parece que no funcionaría con piezas de madera o plástico, aún si les pongo algo de metal en la base.


Gracias por las ideas. ¡Saludos!

Hola: estaba en el foro buscando información sobre los modulos xbee, y me encontre con esta duda; ya había pensado lo bueno que seria hacer este proyecto y me entusiasma:
Realmente me parece que el teclado matricial es la mejor solución; sin embargo como no veo que sea definitiva hago un modesto aporte: si se coloca un transistor npn con colector a vcc, y emisor a una resistencia de 47k que luego iria a tierra; la base puede funcionar como una antena amplificadora de electricidad estática que tenga la pieza, que vendría a funcionar como antena, de esta forma tendrías un nivel de tensión superior que indicaria que hay una pieza, igual tendrias que comprar 64 transistores y 64 resistencias, pero me parece lo mas barato, quiza despues tengas que agregar un multiplexor :P
Saludos

Sensores Hall servirían también ;-)


Idem

no creo que sean tan caros los de tipo switch.habra que buscarle precios :mrgreen:

reed switch ??? :mrgreen:
Título: Re: Sensores para tablero de ajedrez
Publicado por: LABmouse en 04 de Noviembre de 2010, 10:43:01
--------------------------------------------------------------------------------

la otra seria usar microRFID para así no solo detectar que esta la ficha, es mas..se puede conocer cual es la ficha y se puede seguir desde el PC la posición de cada ficha.

No hay comentarios:

Publicar un comentario