Grossissement et position en impulsions : comment se positionnent les objectifs zoom motorisés POMEAS

Les objectifs zoom motorisés POMEAS sont positionnés par comptage d'impulsions absolu, ni par tension ni par un signal de retour analogique. Chaque modèle d'objectif est fourni avec une table d'impulsions dont le nom de fichier identifie le modèle et chaque ligne mappe un grossissement optique sur sa position en impulsions — par exemple 1X 4600, 2X 8400. Le zoom multiposition préréglé revient alors simplement à stocker ces valeurs d'impulsions et à émettre des appels MoveTo(pulse) répétés.

Comme le mappage est produit par l'étalonnage d'usine d'un assemblage optique et mécanique spécifique, les valeurs d'impulsions doivent toujours être citées avec le numéro de modèle exact et le type de moteur. Le même grossissement se mappe sur des nombres d'impulsions différents selon les modèles, les générations de moteur, et les cartes de commande chiffrées ou standard.

L'essentiel en un coup d'œil

ÉlémentValeur
Méthode de positionnementComptage d'impulsions absolu avec référence de retour à l'origine
Emplacement de la table d'impulsionsOP/*.txt dans le SDK — nom de fichier = modèle d'objectif, chaque ligne = un grossissement
Granularité typique9 à 17 paliers de grossissement sélectionnables par objectif, selon le modèle
Lecture en retour de la positionOui — GetPos() / série XN
Relation avec le grossissementNon linéaire ; les incréments d'impulsions par palier de grossissement diminuent quand le grossissement augmente
Portabilité entre modèlesAucune — les tables sont propres au modèle et au moteur

Pourquoi un positionnement en impulsions, et non un signal analogique

Méthode de commandePositionnementReproductible ?
Moteur CC avec potentiomètreAnalogue, sans référence absolueNon
Pas à pas ou servomoteur avec comptage d'impulsionsComptage d'impulsions absoluOui — lisible et reproductible
Zoom motorisé POMEASImpulsion absolue plus référence d'origineOui — MoveTo(impulsion absolue) avec lecture en retour de la position

Les conséquences pour l'ingénierie comptent plus que le mécanisme :

  • Le grossissement n'est pas « tournez jusqu'à ce que cela ait l'air à peu près juste » — c'est « va à l'impulsion N ».
  • La même valeur d'impulsion produit la même position mécanique, donc le même grossissement, à chaque fois.
  • Les grossissements fréquemment utilisés peuvent donc être figés dans un ensemble de positions préréglées (la documentation POMEAS appelle celles-ci positions enregistrées ou mouvements point à point) et commutés depuis l'application hôte par une seule commande.

Une table d'impulsions complète : PMS-LZL-12109-3 (12.5X, ligne de commande 32-moteur)

Le tableau suivant est la table d'impulsions d'usine du PMS-LZL-12109-3, un objectif 12.5X double moteur avec un moteur de trim de mise au point motorisé 3 mm. Il fournit neuf paliers de grossissement sur sa plage.

Grossissement optiqueImpulsionGrossissement optiqueImpulsion
0.58X104X13650
1X46005X15200
2X84006X16500
3X117007X17700
7.5X18650

Lisez les incréments plutôt que les nombres absolus et la non-linéarité est évidente : le palier de 1X à 2X coûte 3800 impulsions, tandis que 7X à 7.5X n'en coûte que 950. Le comptage d'impulsions suit la position mécanique ; le grossissement est le résultat optique. Les deux sont reliés par l'étalonnage d'usine, non par une formule extrapolable.

Une seconde plateforme : 6.5X série 65 avec une ligne de commande 512-moteur

Le tableau ci-dessous appartient à la plateforme 6.5X série 65, utilisée par le PMS-LZ-650104 (motorisé) et le PMS-LZ-650105 (motorisé, éclairage coaxial). Il comporte onze paliers et une course totale de 24400 impulsions.

Grossissement optiqueImpulsionGrossissement optiqueImpulsion
0.69X03X20000
0.7X5003.5X21800
1X80004X23000
1.5X120004.5X24200
2X15500Course totale : 24400
2.5X18000

Comparez les deux tableaux et le point devient concret : 1X est l'impulsion 4600 sur l'objectif 12.5X et l'impulsion 8000 sur l'objectif 6.5X. Il n'y a pas d'échelle partagée. Une valeur d'impulsion est sans signification à moins que le modèle ne soit indiqué à côté.

Trois facteurs qui modifient les nombres

1. Génération de moteur

Les différentes générations de moteur utilisent des angles de pas et un micropas différents, donc le même grossissement optique aboutit à un nombre d'impulsions différent. Faites toujours correspondre la table à la ligne de commande réellement montée sur votre objectif.

2. Carte de commande chiffrée ou standard

Les objectifs équipés de la carte de commande chiffrée disposent d'un étalonnage de zéro mécanique indépendant et d'une zone de paramètres Flash. Leurs tables d'impulsions diffèrent de la version standard de la même plateforme optique — à 1X, par exemple, la plateforme 6.5X 1" affiche 6500 sur la carte chiffrée et 8000 sur la carte standard. Changer de carte de commande implique de changer la table.

3. Construction sur rail ou à base

Les constructions de zoom sur rail utilisent une commande mécanique différente, ce qui explique aussi pourquoi les deux variantes de la plateforme 6.5X sont spécifiées avec des valeurs de résolution en espace objet différentes. Les données de spécification doivent être prises par modèle, non par série.

Un piège documentaire utile à connaître

Les tables d'impulsions existent dans plusieurs documents, et ils ne sont pas tous d'accord. Un tableau très diffusé dans le manuel produit est une mise en page à huit colonnes dont les en-têtes de colonne ne s'alignent pas avec les données situées dessous. Confronter ce tableau aux fichiers d'impulsions par modèle réels du SDK montre clairement le décalage :

Colonne telle qu'étiquetéeCe que sont réellement les donnéesComment nous le savons
"650 series"Correct — données de la série 65Correspond exactement au fichier d'impulsions de la série 65, palier par palier (1X = 8000, 2X = 15500, 4.5X = 24200, total 24400)
"4K series"En réalité des données 12.5XCorrespond exactement au fichier d'impulsions de l'objectif 12.5X (1X = 4600, 2X = 8400, 4X = 13650, 7.5X = 18650)

La règle pratique : prenez les valeurs d'impulsions dans les fichiers d'impulsions par modèle fournis avec le SDK, pas dans un tableau de synthèse d'un manuel. Un tableau de synthèse qui mélange les plateformes est un piège de lecture, et utiliser une colonne sous son en-tête imprimé enverra l'objectif à la mauvaise position.

Mettre les positions préréglées en œuvre

Envoyer une commande de position

VoieMéthodeUsage typique
Commande série bruteXG plus six chiffres HEXPLC, contrôleur de mouvement, microcontrôleur
API SDK héritéeMoveGoto(Motor m, long dest)Windows C++ / C#
SDK V4.4.7MoveTo(pulse) avec lecture en retour GetPos()Recommandé pour les nouveaux développements

Cycler à travers les grossissements préréglés

(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

Le cyclage point à point est une capacité native de l'application de démonstration fournie : saisissez une valeur d'impulsion dans le champ de position de test, chargez-la comme position enregistrée, définissez un nombre de répétitions et un temps d'attente, et exécutez. C'est le mécanisme derrière la séquence de zoom multiposition — un seul objectif desservant plusieurs variantes de produit en appelant différents ensembles de positions, sans changement d'objectif ni matériel de commutation mécanique.

// 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 tolérance TOL doit être choisie par l'intégrateur selon l'exigence du processus. Le protocole fournit la lecture en retour de la position ; il ne définit pas de valeur de répétabilité, et aucune affirmation de précision numérique ne doit être faite sans mesures prises sur votre propre matériel dans vos propres conditions.

Comment évaluer vous-même la répétabilité

Si votre processus a besoin d'une valeur de répétabilité, mesurez-la. La procédure ci-dessous produit une valeur de plage pour une condition de fonctionnement spécifique.

ÉtapeAction
1Choisissez deux positions préréglées éloignées : A (faible grossissement) et B (grossissement élevé)
2Raminez l'objectif à l'origine, MoveTo(A), attendez l'arrêt, enregistrez la position P₁ avec GetPos()
3MoveTo(B), attendez l'arrêt, enregistrez la position
4MoveTo(A), attendez l'arrêt, enregistrez P₂
5Répétez les étapes 3–4 N fois — N de 30 ou plus est conseillé — en enregistrant la position atteinte en A à chaque fois
6Calculez la plage R = max(P₂) − min(P₂) et l'écart type
7Inversez les rôles de A et B et répétez dans le sens opposé (test bidirectionnel)
8Enregistrez la température ambiante, la longueur du câble moteur et la vitesse de course avec le résultat

Rapportez la plage R pour cet ensemble spécifique de conditions, et indiquez les conditions — un chiffre sans ses conditions n'est utilisable par personne.

Idées reçues courantes

« La valeur d'impulsion pour 12.5X est un nombre précis »

Non. Les valeurs publiées pour la plateforme 12.5X diffèrent selon la génération de moteur, et les chiffres ne sont pas interchangeables. Citez la valeur d'impulsion avec le modèle et le type de moteur, toujours.

« Les valeurs d'impulsions peuvent être réutilisées entre modèles »

Non. La conception optique, la course mécanique et le micropas du moteur diffèrent tous. Consultez chaque modèle séparément. La plateforme 6.5X seule compte au moins quatre tables distinctes à travers ses variantes standard, chiffrée et sur rail.

« Les cartes chiffrées et standard utilisent la même table »

Elles ne l'utilisent pas. La carte chiffrée a son propre étalonnage de zéro et sa zone de paramètres Flash, donc sa table diffère de la carte standard sur la même optique.

« Impulsion égale grossissement »

L'impulsion est une position ; le grossissement est le résultat optique. La relation est établie par l'étalonnage d'usine et n'est pas linéaire.

« Je peux lire la table d'impulsions dans le manuel produit »

Pas de façon fiable. Utilisez le fichier d'impulsions par modèle livré avec le SDK. Les tableaux de synthèse des manuels peuvent — et contiennent — un décalage de colonnes, et la conséquence est un objectif conduit à la mauvaise position.

Questions fréquentes

D'où proviennent les valeurs d'impulsions ?

De l'étalonnage d'usine de chaque modèle d'objectif pris individuellement. Elles sont distribuées sous forme de fichiers texte dans le dossier OP du SDK, où le nom de fichier est le modèle d'objectif et chaque ligne associe un grossissement à sa position en impulsions.

La relation grossissement-impulsion est-elle linéaire ?

Non. Les incréments d'impulsions par palier de grossissement diminuent quand le grossissement augmente, car le comptage d'impulsions suit la position mécanique plutôt que la puissance optique.

Puis-je ajouter mes propres paliers de grossissement entre ceux du tableau ?

L'objectif accepte toute valeur d'impulsion dans sa course totale, donc les positions intermédiaires sont atteignables. Comme la relation est non linéaire, le grossissement à une impulsion intermédiaire doit être établi par mesure plutôt que par interpolation.

Que se passe-t-il si j'envoie une valeur d'impulsion égale à la position courante ?

L'objectif ne bouge pas et ne signale aucune erreur. C'est un comportement spécifié, et c'est la raison pour laquelle une lecture en retour de la position — et non une commande de déplacement — est le moyen fiable de confirmer que la liaison est active.

Dois-je ramener l'objectif à l'origine avant d'aller à une position préréglée ?

Oui, si vous voulez que la référence absolue soit valide. Le retour à l'origine établit le zéro mécanique à partir duquel les valeurs d'impulsions absolues sont mesurées.

À lire également

Produits associés

Zurück nach oben
VK Message
WhatsApp

QR-Code scannen

WhatsApp QR-Code
Wechat

QR-Code scannen

Wechat
Telefonnummer
8618598102007
Kopiert!
Online-Nachricht

Online-Nachricht

Click to refresh