Source: http://www.geocities.ws/cwillemoes/encoder.htm
Timestamp: 2020-03-29 19:17:16+00:00

Document:
Utilización de Encoders de Mouse para la realización de Círculos Graduados Digitales (Digital Setting Circles) por Cristian Willemoës
El objetivo de este proyecto es la realización por parte de astrónomos amateurs con telescopios de montura ecuatorial o de tipo altazimutales un sistema de círculos graduados digitales utilizando los encoders de un mouse para PC.
Las principales ventajas de este sistema son el bajo precio de construcción del mismo y la calidad de la prestación ya que por medio de este sistema podrán encontrarse fácilmente objetos celestes con la ayuda de los ordenadores.
Si bien es cierto que parte del encanto de la astronomía amateur es la búsqueda y luego la observación de objetos, a veces resulta engorroso en la oscuridad leer los círculos graduados del telescopio y se pierde tiempo para la observación.
Seguramente a muchos aficionados se les ha ocurrido la idea de utilizar el movimiento adaptado del puntero (la electrónica y los encoders) del mouse para adaptarlo al telescopio pero no han tenido acceso al software necesario para hacer las conversiones o desconocen cuestiones de DOS para hacerlos funcionar. Desde la aparición de Windows ´95 y ´98 se hace difícil saber exactamente que es lo que está sucediendo en nuestras computadoras al cargar un programa u otras cuestiones que anteriormente podían entenderse a nivel de sistema operativo, pareciera que los nuevos Windows han incorporado un manto de belleza al sistema ocultando su base.
El proyecto original para utilizar los encoders de un mouse se encuentra desarrollado por Dan Stixrud en su página de Internet http://www.amsky.com/atm/accessories/mouse/mouse.html utilizando un Digital Setting Circles hecho en casa, el Micro-Guider I cuyos planos están disponibles por medio de David Lane de Nova Astronomics en www.nova-astro.com. También ofrece gratuitamente un programa escrito por Jonathan Rock (puede bajarse desde allí) que es el que utilizaremos en este proyecto.
NOTA: Si Ud. Corta su mouse, lo hará bajo su propio riesgo. Las notas que se describen a continuación han funcionado bien para mi pero no seré responsable si siguiendo estos pasos Ud. destruye su mouse o tiene problemas con su ordenador.
Es importante hacer notar también que una vez cortado el mouse Ud. pierde la garantía sobre el producto.
Normalmente los encoders de un mouse común de PC tienen una resolución baja comparada con la de los encoders comerciales.
La resolución de un mouse se mide en puntos por pulgada, normalmente los programas que vamos a utilizar exigen saber la resolución del dispositivo. No es necesariamente cierto que la resolución que pueda indicar el mouse sea la que finalmente obtengamos, ya que la resolución depende en este caso del diámetro del perno que sostiene la estrella dentada del mouse y la superficie de rozamiento del telescopio.
Hasta el momento yo he probado con dos tipos de mouse, estos cuentan 180 pulsos en una vuelta de 380 grados de rueda dentada pero poseen distinto espesor de perno con lo cual la resolución final para una misma superficie de rozamiento, varía.
Lo mínimo necesario para que el sistema funcione correctamente es obtener resoluciones superiores a los 4000 pulsos. Vale decir, a encoders de baja resolución mayores superficies de rozamiento.
Yo elegí un mouse Sunshine que acoplando los encoders a los círculos graduados de un telescopio Meade Starfinder 8´ da alrededor de 11100 pulsos en el eje de ascensión recta y 4920 pulsos en el de declinación. (uno es mas grande que el otro). Como ejemplo podemos decir que para un mouse de 200 dpi se necesita una superficie de rozamiento de 6 ½ pulgadas para obtener una resolución de 4000 pulsos. El mouse Sunshine decía tener 520 dpi (perno de 3 mm) es por eso que con superficies de rozamiento no muy grandes se obtienen altas resoluciones.
El acoplamiento de los encoders al telescopio no se describe aquí ya que depende de la montura y variedad de cada telescopio.
LA DISECCION DEL MOUSE
Existen gran variedad de mouses en el mercado, de modo que es difícil dar un solo ejemplo de cómo cortar y separar los encoders de la placa electrónica, veremos dos ejemplos.
El primero es un mouse Genius CLIXes modelo Jx. Este mouse trae encoders muy fáciles de adaptar y similares a los del LOGITECH ya que los LEDS están integrados en una sola pieza de plástico y poseen pernos metálicos. El procedimiento sería cortar con cuidado la placa del circuito, separando los encoders y restaurando los caminos dañados agregando un cableado entre la placa y los encoders. Es recomendable utilizar cables cortos y lo mas maleables posible para facilitar la instalación en el telescopio.
Es muy importante como procedimiento copiar en papel o escanerar el circuito antes de cortar para estar seguro de las conexiones dañadas y las que deben realizarse entre los encoders y la placa del mouse.
Vista posterior Vista superior Vistas superpuestas
Para hacer la disección es útil una hoja de sierra nueva (cuidado con los dedos), las conexiones deben realizarse con un soldador pequeño y un poco de estaño cuidando de no sobrecalentar los componentes fijos de la placa y se recomienda no soplar las soldaduras para enfriarlas ya que la solidificación del estaño no es tan buena.
Los cables deberán pre estañarse cuidando de tocar la punta de los cables lo menos posible ya que la grasitud de los dedos impide la fijación de la resina y el estaño.
Aquí se observan las conexiones para este tipo de mouse.
NOTA: Es muy importante probar el conteo de los encoders antes de acoplarlos al telescopio, pueden olvidarse algunos enlaces a soldar o puede suceder como sucedió con este modelo de mouse que contaba 180 pulsos hacia un lado en una rotación de 360 grados pero al volver, en vez de llegar a cero contaba –1, y sumaba progresivamente el error. (puede solucionarse con software pero es preferible descartarlo)
Ahora veremos la disección del Sunshine que es un mouse mas moderno y posee un solo LED para cada encoder, la placa de circuito es mas pequeña, la única desventaja de este modelo de mouse es que el sostén de la rueda dentada es solidario de la carcaza por lo cual deberá cortarse no solamente el circuito sino también la carcaza del mouse.
Como se puede observar, es mucho mas fácil cortar este tipo de mouse ya que solamente es necesario separar un solo encoder mientras que el restante puede dejarse en la placa y acoplarlo integralmente al telescopio.
En esta fotografía se observan las uniones a realizar y los dos encoder terminados al que se le conectará el cable de conexión al ordenador que viene provisto por el fabricante.
EL PROGRAMA ENCODER.EXE
http://www.worldaccessnet.com/~dstixrud/Jon/Encoder.zip
La finalidad de este programa es establecer una interface entre los encoders del mouse y una computadora corriendo un programa de tipo planetario o posicionamiento del cielo (The Sky, ECU, DeepSky), el programa es gratuito y según dice su autor, Jonathan Rock, no ha sido diseñado para la venta.
La configuración del sistema requiere dos computadoras enlazadas entre si, la primera de ellas puede ser una vieja PC del tipo 386 DX2 o mejor, corriendo un sistema operativo 5.0 como mínimo, en ella debe correrse también el driver correspondiente al mouse a utilizar, es necesario fabricar un cable serial RS-232 del tipo NULL que veremos mas adelante, y finalmente una computadora donde debe correrse el programa planetario. Si bien es necesario utilizar dos computadoras, la primera de ellas puede comprarse usada por poco dinero ya que se trata de una PC poco potente, e incluso con monitor blanco y negro y solamente para correr un programa de DOS.
Como vimos anteriormente, el programa CONVERT.EXE puede ejecutarse en una PC portátil y transportarse junto con el telescopio, este sistema es un poco mas voluminoso y parecería conveniente dejarlo fijo junto al telescopio, a pesar de esta desventaja, el resultado final es mucho mejor ya que puede verse en la pantalla una mirilla que indica exactamente hacia donde apunta el telescopio y por otra parte funciona tanto para monturas ecuatoriales como de tipo Dobson.
Los encoders del mouse (conectados a su placa correspondiente) se conectan a la primera computadora en la entrada COM1 donde normalmente se conecta el mouse. Esta computadora actúa como una interface entre el telescopio y la computadora que corre el programa planetario.
El funcionamiento del programa ENCODER requiere que se encuentre instalado y funcionando el driver del mouse a nivel DOS, generalmente el programa ejecutable es GMOUSE.COM (como en el caso anterior es imprescindible quitar la aceleración que normalmente se le aplica al mouse, esta variable deberá verificarse y anularse si se encuentra activa), si se desea que la computadora arranque y cargue automáticamente el driver del mouse y el programa encoder con las variables correspondientes, puede agregarse al archivo autoexec.bat las líneas:
encoder –v –p 2 –x 11100 –y 4920
Las variables del programa encoder se verán mas adelante.
El sistema funciona de la siguiente forma, los encoders envían la información a la placa del mouse, ésta convierte los pulsos eléctricos en cuentas de pulsos y las envía a la primera PC por el cable serial que viene con el mouse, el driver del mouse lee la información de los pulsos del mouse que recibe por la puerta serial (normalmente COM1), encoder.exe verifica el driver del mouse periódicamente para ver si ha habido cambios en el conteo (o movimiento del telescopio) de los encoders ópticos, luego encoder.exe toma y actualiza la información y la convierte a un protocolo que pueda ser entendido por los programas planetarios y la envía por la puerta serial (COM2) por medio de un cable RS-232 tipo NULL (se describe mas adelante) a la puerta COM2 de la segunda computadora y el programa planetario hace las conversiones correspondientes y muestra en pantalla el movimiento y las coordenadas de posición.
El programa ENCODER.EXE es capaz de emular varios protocolos como Bseg, JMI´s NGC-MAX y MicroGuider III y permite visualizar el conteo en pantalla (para verificar el buen funcionamiento de los encoders ópticos), permite también invertir la posición de los encoders (en caso de haberlos instalado invertidos en los ejes de ascensión recta y declinación) y exige la resolución para el eje x e y (por omisión 4000 para ambos ejes).
Las variables de la línea de comandos para ejecutar el programa ENCODER.EXE son las siguientes:
-h un pequeño mensaje de ayuda para recordar los parámetros
-v para ver el conteo de los pulsos en pantalla
-t (MG3, BSEG) para indicar el tipo de protocolo de salida. Por omisión es MG3.
-r para invertir los ejes x e y en el protocolo de salida (no en pantalla)
-x (valor numérico) resolución del eje x. Por omisión 4000.
-y (valor numérico) resolución del eje y. Por omisión 4000.
-p (número de puerto) este es el número de puerta COM por donde sale la información de datos de posición a la computadora que corre el programa planetario.
Un ejemplo de la línea de comandos para los encoders Sunshine sería la siguiente:
encoder –v –r –p 2 –x 11100 –y 4920 (ENTER)
donde –v envía el conteo a la pantalla, -r invierte los encoders, -p 2 envía la información de salida a la puerta COM2 (es imprescindible dejar un espacio entre la –p y el número 2), -x resolución del encoder a 11100/rev (es imprescindible dejar un espacio entre la –x y el número), -y resolución del encoder 4920/rev (es imprescindible dejar un espacio entre la –y y el número).
Una vez diseccionado el mouse es conveniente probar el buen funcionamiento de los encoders acoplando un pequeño alambre rígido al perno de la estrella dentada, para ello corremos el driver del mouse, luego el programa encoder con salida en pantalla (encoder –v –p 2) y damos una vuelta de 380 grados hacia un lado y hacia el otro para verificar que el conteo sea exacto.
Luego instalamos los encoders en el telescopio y debemos determinar la resolución final que arrojan con respecto a las superficies de rozamiento que tengamos.
Siempre con el driver de mouse instalado corremos el programa encoder con salida a pantalla y asignamos un número alto a la resolución x e y ya que es posible que los encoders superen por mucho los 4000. (encoder –v –p 2 –x 15000 –y 15000) luego damos una vuelta completa a ambos ejes del telescopio y determinamos la resolución final que hemos obtenido. Esta información es la que realmente debemos asignar a la línea de comandos de encoder en los ejes x e y y también será la que configuremos en el programa planetario. (en algunos modelos de mouse debe duplicarse el valor de conteo en la línea de comandos para evitar el sobrepaso).
EL CABLE SERIE RS-232 TIPO NULL
Como describíamos anteriormente, ambas computadoras están interconectadas por medio de un cable serie RS-232, cuyo armado es simple y las conexiones pueden verse en este diagrama:
Las vistas de este diagrama son de la parte interior del conector, hay que prestar especial cuidado con este punto ya que es bastante fácil confundirse a pesar de que cada pin se encuentra numerado de ambos lados de la ficha.
Las fichas pueden comprarse en cualquier casa de electrónica y se denominan comúnmente Db 25 hembra, las de ambos extremos son iguales, el cable puede ser de 7 alambres y generalmente traen cada cable de un color pero se repite en general el blanco de modo que sería útil un tester o una lamparita y una pila para verificar las puntas en caso de utilizar varios de los blancos.
Este cable se suele utilizar para transferir información entre computadoras, es importante verificar el buen funcionamiento de la conexión entre las dos máquinas para ir descartando errores.
Para la verificación pueden utilizarse los programas INTERLNK.EXE e INTERSVR.EXE que antiguamente traía incorporado el sistema operativo 6.0. Normalmente se ejecuta el INTERSVR.EXE en una máquina y en la otra el INTERLNK.EXE y si todo anda bien, puede verse el disco rígido y las disketeras de la otra computadora lo cual verifica que pueden transferirse datos entre ambas.
Aquí se describen los pasos necesarios para iniciar el sistema:
1. Verificamos que las conexiones entre encoders y computadora y computadoras entre sí estén correctas.
2. Inicializamos la primera PC, ejecutamos el driver del mouse (sin aceleración), y ejecutamos ENCODER con los parámetros correspondientes.
3. Si se está utilizando monturas de tipo Dobson, es necesario nivelar la base del telescopio y apuntar el mismo a 0° o 90° dependiendo en que posición de alineación exija el programa planetario. Si se utilizan monturas ecuatoriales se deberá poner el telescopio en estación como se hace habitualmente.
4. Los siguientes pasos dependen del programa planetario que se esté utilizando pero normalmente son los siguientes:
En la segunda PC corriendo el programa planetario, se debe buscar el menú configurar la interface de los encoders, aquí debemos seleccionar MicroGuider III si está disponible o cualquier otro protocolo compatible con ENCODER. Luego se deberá configurar la puerta COM a donde se ha conectado el cable RS-232 (normalmente COM2 si es que no hay instalado un módem u otros dispositivos en esta computadora). Luego debe indicarse la resolución obtenida por los encoders de nuestro telescopio que será la misma que pusimos en la línea de comando de ENCODER. Luego configuramos la puerta COM para 9600 baudios, 8 bits de datos y no paridad. (9600 baud, 8 data bits, no parity).
5. Ahora inicializamos la comunicación entre el programa planetario y los encoders y debemos observar la mirilla y las dos computadoras comunicándose sin error.
6. La mayoría de los programas planetarios piden alineamiento del telescopio con objetos conocidos en el cielo, normalmente 2 estrellas para monturas tipo Dobson y una para monturas ecuatoriales.
7. Finalmente es conveniente verificar las posiciones que arroja el programa planetario con aquellas que indican los círculos graduados del telescopio hasta encontrar la resolución óptima de los encoders.
El montaje final de los encoders en el telescopio ha de variar según el tipo de montura utilizada.

References: resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución