Detalles, anécdotas, y otras cosas sobre el control computerizado.
(.................................)
Para empezar.
Lo primero es
obtener el software. En la pagina de Mel Bartels lo podéis conseguir
en formato ZIP.
Tenéis
varias posibilidades. Para programadores iniciados y curiosos, la opción
completa incluye los objetos en C del programa y todo lo demás.
Si solo
queréis el control de motores, seleccionar esta opción para
bajar. Yo aconsejo la intermedia, que incluye también el articulo
con las explicaciones.
Después
de descomprimirlo, leer atentamente todas las instrucciones, comentarios
y explicaciones para entender el funcionamiento, pues de no ser así,
la cantidad de variables en juego es tanta que, dadas las múltiples
configuraciones de ordenadores y motorizaciones, que conseguir un buen
rendimiento del conjunto puede ser complicadisimo.
Que pasa por dentro?
Voy a
intentar expresar lo poco que yo se.
El objetivo
del programa es simular unas señales eléctricas analógicas
para hacer que los motores se muevan con suavidad y precisión. Como?
-Con micro pasos. Esto es dividir entre 10 ó menos los saltos del
rotor del motor entre los polos del estator. Habitualmente usaremos motores
de 200 pasos por vuelta (ppv); osea, que a cada ciclo de reloj el rotor
se moverá 1/200 parte de circunferencia. Cada ciclo de reloj es
una secuencia de corriente a los bobinados del motor.
Con micro
pasos obtenemos una transición de cada paso motor progresiva, simulando
una intensidad de corriente creciente en un polo y una corriente decreciente
en el contiguo. Para consegirlo con métodos digitales (valores todo
ó nada) se utiliza la técnica de "Modulación
de Anchura de Pulsos" Esto
consiste en aplicar la corriente al motor en grupos de pulsos con diferentes
tiempos muertos o de pausa. Podemos poner un ejemplo: para enviar un grupo
de pulsos modulados en anchura, haríamos así: mandamos un
pulso de corriente durante un breve instante, a continuación no
enviamos nada (pausa) después mandamos 2 pulsos seguidos, a continuación
una pausa, seguidamente 3 pulsos consecutivos y después otra pausa.
Así obtenemos una rampa creciente de corriente. También se
podría hacer al contrario, es decir disminuir las pausas entre pulso
y pulso. Si lo hacemos al revés obtenemos una rampa decreciente,
por ejemplo: un tren de 3 pulsos y una pausa, después 2 pulsos y
1 pausa, y luego 1 pulso y una pausa.
También
vale cualquier combinación entre ellos, pero siempre siguiendo una
secuencia con sentido. A si que si queremos obtener una simulación
de corriente parecida a la corriente alterna ( sinusoide) la relación
existente entre los pulsos y las pausas es la función seno/coseno.
También
es lo mismo que apliquemos esto sobre un solo bit (cero ó uno) o
sobre una palabra (conjunto de bit)
Ni que decir
tiene que según la combinación que utilicemos el resultado
será más perfecto o menos, siempre depende de las configuraciones
de motor y velocidades de trabajo.
Por eso
el programa de Mel tiene tantas variables configurables, para poder obtener
el mejor resultado. Aunque aveces y para algunos de nosotros signifique
conplicarnos la vida. !!! Cuanto habré deseado que funcionara al
primer intento.......¡¡¡
Dicho esto,
no desesperéis si tenéis que modificar una y otra vez el
MsPause, el MaxDelay, etc....
no hay una combinación milagrosa.
Probar tantas veces como sea necesario. El resultado merece la pena.
Otras facilidades.
El diseño
del programa es tan bueno que no solo podemos ajustar la forma de la corriente
a los motores, si no que ademas, si cometimos errores durante la
construcción del telescopio, el programa nos permite corregirlos.
Para eso
sirve Z1, Z2 y Z3Deg y PEC
(Correccion del Error Periodico)
Insisto en que está mejor explicado en el artículo de Mel
Bartels.
Para adecuar las transmisiones.
No
todos empleamos los mismos reductores en los ejes. Por eso existe un factor
de conversión entre nuestras relaciones de transmisión
y el programa. Son AltFullStepArcsec
para el eje de altura y AzFullStepSizeArcsec
Para
hallar los valores adecuados a nuestro telescopio, lo primero que hay que
hacer es ponerlos a valor 1.
Después
con un nivel de precisión colocar el tubo horizontal o vertical.
Poner a 0 las coordenadas de Altura con la opción de menú
ResetAltZt. Empezar a mover el tubo hasta que quede perfectamente vertical
u Horizontal (al contrario de como hallamos empezado), Ayudarse de nuevo
con el nivel de precisión. Entonces dividimos 90 por el valor que
se muestre en pantalla de coordenadas de Altura. El valor resultante es
el que pondremos en AltFullStepArcsec.
Ahora el programa ya sabe la relación entre sus coordenadas y las
de telescopio. Los movimientos que realice el telescopio se reflejaran
en pantalla.
Para ajustar el eje de Azimut, haremos parecido. Después de asegurarnos
que las coordenadas han sido reseteadas a Cero, debemos dar una vuelta
completa al eje de Azt y calcular el cociente entre 360 y el valor presentado
en pantalla. Yo utilizo un puntero láser para contabilizar una vuelta
completa. Así es: Apunto el láser hacia la pared y marco
una señal fina con un lápiz. Después muevo el motor
para girar una vuelta completa, hasta que el haz del láser vuelve
a coincidir con el punto señalado antes. El valor resultante lo
asignamos a AzFullStepSizeArcsec
ACLARACIÓN .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . .
Mi experiencia hasta el momento. Yo no he podido alcanzar las velocidades
de rotación de los motores de 4.000 medios pasos por segundo. Ni
siquiera en vacío. Todavía
no se si por culpa de la calidad de los motores o la configuración
de las variables de programa. También tengo que decir que mis motores
son de 12 V y no de 6 V y que las tensiones máximas que aplico son
del orden de 18 V.
También
os puedo decir, que los motores que yo uso en ambos ejes no son iguales.
Aunque son de la misma tensión y pasos por vuelta, se nota que no
funcionan igual. No emiten el mismo sonido típico de los micro pasos
uno que otro. Uno es de Sanyo y otro es de Japan Servo CO. El segundo parece
funcionar mejor. Incluso sube más de revoluciones.
. .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . .