Aumento y posición por pulsos: cómo se posicionan los lentes zoom motorizados POMEAS

Los lentes zoom motorizados POMEAS se posicionan por conteo de pulsos absolutos, no por tensión ni por una señal de retroalimentación analógica. Cada modelo de lente se entrega con una tabla de pulsos en la que el nombre de archivo identifica el modelo de lente y cada línea mapea un aumento óptico a su posición de pulso — por ejemplo 1X 4600, 2X 8400. El zoom multposición preestablecido entonces es simplemente almacenar esos valores de pulso y emitir llamadas repetidas a MoveTo(pulse).

Como el mapeo se produce por calibración de fábrica de un ensamblaje óptico y mecánico específico, los valores de pulso siempre deben citarse junto con el número de modelo exacto y el tipo de motor. El mismo aumento se mapea a conteos de pulso distintos en modelos distintos, en generaciones de motor distintas y en tarjetas de control cifradas frente a estándar.

Datos clave a simple vista

ElementoValor
Método de posicionamientoConteo de pulsos absolutos con una referencia de origen
Ubicación de la tabla de pulsosOP/*.txt en el SDK — nombre de archivo = modelo de lente, cada línea = un aumento
Granularidad típicaDe 9 a 17 pasos de aumento seleccionables por lente, según el modelo
Lectura de posición de vueltaSí — GetPos() / serie XN
Relación con el aumentoNo lineal; los incrementos de pulso por paso de aumento se reducen a medida que sube el aumento
Portabilidad entre modelosNinguna — las tablas son específicas del modelo y del motor

Por qué posicionamiento por pulsos, y no por una señal analógica

Método de controlPosicionamiento¿Repetible?
Motor DC con potenciómetroAnalógico, sin referencia absolutaNo
Paso a paso o servo con conteo de pulsosConteo de pulsos absolutoSí — legible y reproducible
Zoom motorizado POMEASPulso absoluto más una referencia de origenSí — MoveTo(pulso absoluto) con lectura de posición de vuelta

Las consecuencias de ingeniería importan más que el mecanismo:

  • El aumento no es "girar hasta que se vea más o menos bien" — es "ir al pulso N".
  • El mismo valor de pulso produce la misma posición mecánica, y por tanto el mismo aumento, cada vez.
  • Los aumentos usados con frecuencia pueden por tanto congelarse en un conjunto de posiciones preestablecidas (la documentación POMEAS las llama posiciones registradas o movimientos punto a punto) y conmutarse desde la aplicación host con un solo comando.

Una tabla de pulsos completa: PMS-LZL-12109-3 (12.5X, línea de control de motor 32)

La siguiente tabla es la tabla de pulsos de fábrica para el PMS-LZL-12109-3, un lente de doble motor 12.5X con un motor de ajuste de enfoque motorizado de 3 mm. Proporciona nueve pasos de aumento a lo largo de su rango.

Aumento ópticoPulsoAumento ópticoPulso
0.58X104X13650
1X46005X15200
2X84006X16500
3X117007X17700
7.5X18650

Lea los incrementos en lugar de los números absolutos y la no linealidad es obvia: el paso de 1X a 2X cuesta 3800 pulsos, mientras que de 7X a 7.5X cuesta solo 950. El conteo de pulsos sigue la posición mecánica; el aumento es el resultado óptico. Ambos se relacionan por calibración de fábrica, no por una fórmula que pueda extrapolar.

Una segunda plataforma: 6.5X serie 65 con línea de control de motor 512

La tabla de abajo pertenece a la plataforma 6.5X serie 65, usada por el PMS-LZ-650104 (motorizado) y el PMS-LZ-650105 (motorizado, iluminación coaxial). Tiene once pasos y un recorrido total de 24400 pulsos.

Aumento ópticoPulsoAumento ópticoPulso
0.69X03X20000
0.7X5003.5X21800
1X80004X23000
1.5X120004.5X24200
2X15500Recorrido total: 24400
2.5X18000

Compare las dos tablas y el punto se vuelve concreto: 1X es el pulso 4600 en el lente 12.5X y el pulso 8000 en el lente 6.5X. No hay una escala compartida. Un valor de pulso no tiene sentido a menos que el modelo se indique junto a él.

Tres cosas que cambian los números

1. Generación de motor

Las distintas generaciones de motor usan ángulos de paso y micro-pasos distintos, por lo que el mismo aumento óptico cae en un conteo de pulso diferente. Siempre haga coincidir la tabla con la línea de control realmente instalada en su lente.

2. Tarjeta de control cifrada frente a estándar

Los lentes equipados con la tarjeta de control cifrada tienen una calibración de cero mecánico independiente y un área de parámetros Flash. Sus tablas de pulsos difieren de la versión estándar de la misma plataforma óptica — a 1X, por ejemplo, la plataforma 6.5X de 1" marca 6500 en la tarjeta cifrada y 8000 en la estándar. Cambiar la tarjeta de control implica cambiar la tabla.

3. Construcción de riel frente a base

Las construcciones de zoom montadas en riel usan un accionamiento mecánico distinto, que también explica por qué las dos variantes de la plataforma 6.5X se especifican con cifras de resolución en el espacio objeto distintas. Los datos de especificación deben tomarse por modelo, no por serie.

Una trampa de documentación que vale la pena conocer

Las tablas de pulsos existen en más de un documento, y no todas coinciden. Una tabla ampliamente difundida en el manual del producto es un diseño de ocho columnas cuyos encabezados de columna no se alinean con los datos que hay debajo. Contrastar esa tabla con los archivos de pulsos por modelo reales del SDK muestra claramente la discrepancia:

Columna según etiquetaQué es realmente el datoCómo lo sabemos
"serie 650"Correcto — datos de la serie 65Coincide exactamente con el archivo de pulsos de la serie 65, paso a paso (1X = 8000, 2X = 15500, 4.5X = 24200, total 24400)
"serie 4K"En realidad datos 12.5XCoincide exactamente con el archivo de pulsos del lente 12.5X (1X = 4600, 2X = 8400, 4X = 13650, 7.5X = 18650)

La regla práctica: tome los valores de pulso de los archivos de pulsos por modelo suministrados con el SDK, no de una tabla resumen en un manual. Una tabla resumen que mezcla plataformas es un peligro de lectura, y usar una columna bajo su encabezado impreso enviará el lente a la posición equivocada.

Poner a trabajar las posiciones preestablecidas

Enviar un comando de posición

RutaMétodoUso típico
Comando serie en brutoXG más seis dígitos HEXPLC, controlador de movimiento, microcontrolador
API SDK heredadaMoveGoto(Motor m, long dest)Windows C++ / C#
SDK V4.4.7MoveTo(pulse) con lectura de vuelta GetPos()Recomendado para desarrollos nuevos

Ciclar por aumentos preestablecidos

(1)  XM / GetMaxPos()          read total travel, confirm the target is in range
(2)  XH / GoHome()             home the lens and establish the absolute reference
(3)  XG <pulse> / MoveTo()     move to the preset position
(4)  XZ / GetStatus()          poll until 0x55, or until status reads stopped
(5)  XN / GetPos()             read back and verify (closed loop)
(6)  back to (3) for the next preset position

El ciclado punto a punto es una capacidad nativa de la aplicación de demostración suministrada: introduzca un valor de pulso en el campo de posición de prueba, cárguelo como posición registrada, defina un conteo de repeticiones y un tiempo de espera, y ejecute. Ese es el mecanismo detrás de la secuenciación de zoom multiposición — un lente que sirve a varias variantes de producto llamando a conjuntos de posición distintos, sin cambio de lente ni hardware de conmutación mecánica.

// Move to a preset magnification and verify the result
int zoomTo(int fd, long targetPulse) {
    char buf[16];
    int n = snprintf(buf, sizeof(buf), "%c%c%6lX%c", 'X', 'G', targetPulse, '\r');
    if (write(fd, buf, n) != n) return -1;              // send
    if (waitStop(fd, 10000) != 0) return -2;            // wait for motion to end
    long pos = readPos(fd);                             // read back
    return (labs(pos - targetPulse) <= TOL) ? 0 : -3;   // tolerance set by the integrator
}

La tolerancia TOL debe elegirla el integrador según el requisito del proceso. El protocolo proporciona lectura de posición de vuelta; no define una cifra de repetibilidad, y no debe hacerse ninguna afirmación de precisión numérica sin mediciones tomadas en su propio hardware bajo sus propias condiciones.

Cómo evaluar la repetibilidad usted mismo

Si su proceso necesita una cifra de repetibilidad, midala. El procedimiento de abajo produce un valor de rango para una condición de operación específica.

PasoAcción
1Elija dos posiciones preestablecidas muy separadas: A (bajo aumento) y B (alto aumento)
2Lleve el lente al origen, MoveTo(A), espere la parada, registre la posición P₁ con GetPos()
3MoveTo(B), espere la parada, registre la posición
4MoveTo(A), espere la parada, registre P₂
5Repita los pasos 3–4 N veces — N de 30 o más es aconsejable — registrando la posición alcanzada en A cada vez
6Calcule el rango R = máx(Pᵢ) − mín(P₂) y la desviación estándar
7Invierta los papeles de A y B y repita en la dirección opuesta (prueba bidireccional)
8Registre la temperatura ambiente, la longitud del cable del motor y la velocidad de recorrido junto con el resultado

Reporte el rango R para ese conjunto específico de condiciones, y establezca las condiciones — una cifra sin sus condiciones no es utilizable por nadie.

Conceptos erróneos comunes

«El valor de pulso para 12.5X es un número específico»

No. Los valores publicados para la plataforma 12.5X difieren según la generación de motor, y los números no son intercambiables. Cite el valor de pulso junto con el modelo y el tipo de motor, siempre.

«Los valores de pulso se pueden reutilizar entre modelos»

No. El diseño óptico, el recorrido mecánico y el micro-paso del motor difieren todos. Consulte cada modelo por separado. La sola plataforma 6.5X tiene al menos cuatro tablas distintas entre sus variantes estándar, cifrada y de riel.

«Las tarjetas cifradas y estándar usan la misma tabla»

No lo hacen. La tarjeta cifrada tiene su propia calibración de cero y área de parámetros Flash, por lo que su tabla difiere de la tarjeta estándar en la misma óptica.

«Pulso equivale a aumento»

El pulso es posición; el aumento es el resultado óptico. La relación la establece la calibración de fábrica y no es lineal.

«Puedo leer la tabla de pulsos del manual del producto»

No de forma fiable. Use el archivo de pulsos por modelo incluido en el SDK. Las tablas resumen en los manuales pueden y de hecho contienen desalineación de columnas, y la consecuencia es un lente llevado a la posición equivocada.

Preguntas frecuentes

¿De dónde vienen los valores de pulso?

De la calibración de fábrica de cada modelo de lente individual. Se distribuyen como archivos de texto sin formato en la carpeta OP del SDK, donde el nombre de archivo es el modelo de lente y cada línea empareja un aumento con su posición de pulso.

¿Es lineal la relación aumento-pulso?

No. Los incrementos de pulso por paso de aumento disminuyen a medida que aumenta el aumento, porque el conteo de pulsos sigue la posición mecánica y no la potencia óptica.

¿Puedo añadir mis propios pasos de aumento entre los tabulados?

El lente acepta cualquier valor de pulso dentro de su recorrido total, por lo que las posiciones intermedias son alcanzables. Como la relación es no lineal, el aumento en un pulso intermedio debe establecerse por medición y no por interpolación.

¿Qué ocurre si envío un valor de pulso igual a la posición actual?

El lente no se mueve y no reporta error. Este es un comportamiento especificado, y es la razón por la que una lectura de posición de vuelta — no un comando de movimiento — es la forma fiable de confirmar que el enlace está vivo.

¿Necesito llevar el lente al origen antes de mover a una posición preestablecida?

Sí, si quiere que la referencia absoluta sea válida. El origen establece el cero mecánico a partir del cual se miden los valores de pulso absolutos.

Lecturas recomendadas

Productos relacionados

Volver al inicio
VK Message
WhatsApp

Escanear el código QR

Código QR de WhatsApp
Wechat

Escanear el código QR

Código QR de Wechat
Número de teléfono
+8618598102007
Copiado!
Mensaje en línea

Mensaje en línea

Haz clic para actualizar