Enfocador con Arduino (otro)

Aqui pueden meter todo lo que crean que es algo curioso o una Locura que inventaron

Enfocador con Arduino (otro)

Notapor augustohdzalbin » 16 Septiembre 2017 13:07

Tema
Enfocador con Arduino emulado al "FocusLynx" y con comunicación "Wifi"

Objetivo
Viendo el proyecto de "zeuzmac" y Rainer me quedé con la curiosidad de construir uno para 2 de mis telescopios. El Epsilon de 8" y el FSQ106. En ambos telescopios tengo el problema que el enfocador que tengo, el FocusLynx de la empresa Optec, no tiene el torque suficiente para mover el enfoque con certidumbre.

También ya había yo comprado CPU's Arduino y Raspberry PI y tenía la curiosidad de usarlos y recordar mis épocas de estudiante. Hace 40 años estudié la carrera de electrónica y maestría de Control de Procesos. Ya había microprocesadores (Z80, 6800, 68000, 6502,...) pero eran difíciles de usar. Trabajé con el CPU 6502 con compilador de ensamblador, chip de entrada y salida digital y construí mi propio convertidor analógico de entrada y salida de 8 bits. Con este equipo controlábamos un modelo de "Distribución de Agua" en una computadora analógica.


Pasos

Adquisición del HARDWARE

- Selección del Motor de paso: encontré un motor Nema 17 para el "Epsilon" y Nema 8 para el FSQ106
- Diseñe con José Villicana una base fundida para apoyar el enfocar en el Epsilon
- Encontré micro poleas para banda dentada para mover el enfocador
- Compre el hardware necesario: CPU Arduino Uno, controlador de motor de paso, sensor de temperatura, interfase WIFI, gabinete de aluminio para contenerlo

Desarrollo del software
Par el desarrollo del software tome en en cuenta el protocolo de comunicación y la funcionalidad a construir.

Protocolo de comunicación
Decidí No hacer la programación ASCOM del enfocador (en windows) sino emular un enfocador "FocusLynx" y usar el ASCOM del FocusLynx. Me evito el driver y me evito programar en Windows.

La parte difícil del proyecto es hacer que la computadora maneje el enfocador. Es la parte difícil no tanto para mover el motor sino por los bugs (o errores) de programación y el manejo los eventos de excepción. En el desarrollo de software dedicamos como el 10% de código en hacer la solución y el 90% en el manejo de excepciones (errores de: datos, del usuario, de la comunicación, de la plataforma, del cambio de reglas).

Para simplificar y evitar estos errores estoy programando el Arduino para que emule al "FocosLynx" que tengo. Conseguí un documento del protocolo de comunicación entre la caja de control del FocusLynx y el protocolo Ascom del FocusLynx (http://optecinc.com/astronomy/catalog/f ... g_rev3.pdf).
El documento tiene una versión inicial del protocolo. Tuve que poner un programa analizador (en windows) del flujo de datos de la interfase serial para identificar nuevos comandos y cambios.

Funcionalidad

La funcionalidad programada es la misma que la funcionalidad del FocusLynx. La funcionalidad es:

- Syncronización de posición
- Movimiento a una posición
- Manejo de backslash para asegurar que el juego de engranes, banda y base tome el juego del mismo lado
- Ajuste por cambio de temperatura.

Para manejar el cambio de posición No estoy usando las rutinas (o clases) estándar de Arduino ("Stepper"). Conseguí en internet una biblioteca gratuita que manejo el movimiento tomando coeficientes de aceleración y velocidad máxima. Esto reduce el brinco de pasos por la inercia del objeto a mover. Esto tal vez no es importante para el enfocador por que la masa a mover es muy baja.


Resultados

- Ya controlo el motor de pasos desde el Software de Control del FocusLynx y desde el software "
Sequence Generator " que controla la ejecución del telescopio. Para el software y CPU es como si estuviera un FocusLynx operado.
- Contiene el manejo del backslash y control de temperatura con base en la misma configuración del Focuslynx.

Próximos pasos

- A nivel programa meterle un chip de memoria "EE" para que cuando se apague el equipo no pierda la configuración asi como la rutina de lectura de temperatura.
- Fundir en metal la base del enfocador para el Epsilon
- A nivel de hardware terminar la base de sustento del Epsilon y por el motor, poleas y banda. Y construirle una caja que lo contenga.
- Ensamblar la caja de control, ponerle los sockets de control y alimentación y construir el cable entre la caja el motor.
- Probar a nivel de casa
- Finalmente, esperar que deje de llover y hacer la prueba tomando fotos.

También me falta el protocolo para manejarlo vía Wifi. Compre la interfase de Wifi del FocusLynx para estudiar, conocer y re-programar el protocolo. La gente de Optec tiene una aplicación en el iPhone y Androide para controlar el enfocador. Si emulo el protocolo puedo usar esta aplicación para mis enfocadores.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Saludos,

Augusto
Avatar de Usuario
augustohdzalbin
 
Mensajes: 392
Registrado: 24 Noviembre 2015 18:57
Ubicación: Mexico D.F, Cuajimalpa

Re: Enfocador con Arduino (otro)

Notapor Rainer » 16 Septiembre 2017 13:40

Hola Augusto,

Excelente

:woohoo:
Saludos Rainer

" Ab ove maiori discit arare minor "
Avatar de Usuario
Rainer
Site Admin
 
Mensajes: 6628
Registrado: 14 Enero 2008 19:10
Ubicación: San Luis Potosí, México

Re: Enfocador con Arduino (otro)

Notapor zeuzmac » 19 Septiembre 2017 10:47

Muy buena propuesta!, ¿que tarjeta controladora estas usando para el wifi?
Avatar de Usuario
zeuzmac
 
Mensajes: 29
Registrado: 07 Abril 2015 13:31
Ubicación: San Luis Potosi

Re: Enfocador con Arduino (otro)

Notapor augustohdzalbin » 20 Septiembre 2017 19:52

Esa parte todavía no la tengo. Te aviso cuando la tenga funcionando para que valga la pena.
Saludos,

Augusto
Avatar de Usuario
augustohdzalbin
 
Mensajes: 392
Registrado: 24 Noviembre 2015 18:57
Ubicación: Mexico D.F, Cuajimalpa

Re: Enfocador con Arduino (otro)

Notapor augustohdzalbin » 03 Diciembre 2017 20:23

He continuado con el proyecto del enfocador del Arduino.

Inicialmente me enfoqué a:
- Control del motor de paso
- Software de manejo de Aceleración y Des-Aceleración paulatina. Empece a programarlo y después encontré una biblioteca que lo maneja mejor.
- Emulación de la comunicación con el protocolo ASCOM del FOCUSLYNX.

Después le empece a incluir:
- Comunicación serial con USB estándar
- Control de temperatura
- Manejo de guardado de datos de parametrización y operación en memoria EEPROM

Tengo pendiente la interfase WIFI. Hasta este sábado me llegaron los chips de Wifi.

Encontré que manejar todas estas tareas para un solo Arduino Nano. Interrumpia la operación. Sobre todo que la comunicación con ASCOM es cada 0.5seg.

Estoy cambiando la arquitectura de CPU para tener un Arduino Maestro y 2 Arduinos esclavos (uno para el motor y otro para la comunicación ASCOM). Los Arduino Nano que son pequeños y baratos. Para la comunicación entre CPU estoy aprendiendo y usando el protocolo SPI que es muy rápido.

Pude haber puesto un Arduino más rápido pero el reto del proceso distribuido (maestro y esclavos) está muy interesante. Sobre todo para futuros proyectos como un "Montaje ecuatorial" y eventualmente el control del Observatorio.

Creo que la distribución del las tareas en varios CPU chicos puede ser más eficiente que el control de todo con un CPU rápido.

Por el momento, para probar mis motores montados, lo simplifiqué y puse un "Encoder" tipo potenciometro para controlar manualmente el enfocador. También habilité motores de paso en el telescopio "Epsilon" que me vendió Alberto Levi y en el Rich Chretien de 12". Voy a hacer el circuito impreso de esta sencilla solución porque es muy práctica para enfoque manual.

En el cableado del enfocador estoy copiando la distribución del motor y cable del FOCUSLYNX para mantenerlo compatible. Es decir: puedo usar el control de FOCUSLYNX para controlar los nuevos motores y con el controlador Arduino puedo mover los motores de FOCUSLYNX. Ya lo probe y funciona muy bien.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Saludos,

Augusto
Avatar de Usuario
augustohdzalbin
 
Mensajes: 392
Registrado: 24 Noviembre 2015 18:57
Ubicación: Mexico D.F, Cuajimalpa

Re: Enfocador con Arduino (otro)

Notapor Rainer » 04 Diciembre 2017 07:47

Hola Augusto,

Muy bien muy bien. ¿ como le hiciste con esos 2 motores que según mi saber tienen diferentes voltajes de alimentación ?

Saludos
Saludos Rainer

" Ab ove maiori discit arare minor "
Avatar de Usuario
Rainer
Site Admin
 
Mensajes: 6628
Registrado: 14 Enero 2008 19:10
Ubicación: San Luis Potosí, México

Re: Enfocador con Arduino (otro)

Notapor augustohdzalbin » 04 Diciembre 2017 16:44

Rainer:

Te comentario es válido. El controlador del motor de paso DRV8825 que utilizo tiene un potenciómetro que limita la corriente máxima independiente al voltaje. La corriente la deje limitada a 150 mA. Es la corriente la que energiza las bobinas que mueven el motor.

Efectivamente el motor grande puede trabajar con mayor corriente que el chico. Sin embargo para mover el enfocador esta corriente es suficiente. Si estuviéramos moviendo motor de un montaje si tendría que configurar una corriente mayor.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Saludos,

Augusto
Avatar de Usuario
augustohdzalbin
 
Mensajes: 392
Registrado: 24 Noviembre 2015 18:57
Ubicación: Mexico D.F, Cuajimalpa

Re: Enfocador con Arduino (otro)

Notapor Rainer » 04 Diciembre 2017 17:07

augustohdzalbin escribió:Rainer:

Te comentario es válido. El controlador del motor de paso DRV8825 que utilizo tiene un potenciómetro que limita la corriente máxima independiente al voltaje. La corriente la deje limitada a 150 mA. Es la corriente la que energiza las bobinas que mueven el motor.

Efectivamente el motor grande puede trabajar con mayor corriente que el chico. Sin embargo para mover el enfocador esta corriente es suficiente. Si estuviéramos moviendo motor de un montaje si tendría que configurar una corriente mayor.


Hola Augusto,

OK, entonces está utlizando el modo de control por corriente no de control por voltaje para accionar el motor.

:thumbsup:

Gracias y saludos
Saludos Rainer

" Ab ove maiori discit arare minor "
Avatar de Usuario
Rainer
Site Admin
 
Mensajes: 6628
Registrado: 14 Enero 2008 19:10
Ubicación: San Luis Potosí, México


Volver a Curiosidades y Locuras Astronómicas

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron