Aller à : navigation, rechercher

Tête Astronomique Multi-fonction Merlin Electronique fma38

Modification de l'électronique de pilotage de la tête astronomique multi-fonction Merlin en vue de réalisation de photos panoramiques

Projet de fma38.

Hardware

L'électronique est séparée en 2 parties distinctes :

  • la partie positionneur, responsable des mouvements élémentaires des axes ;
  • la partie interface de commande, embarquant le logiciel haut niveau (réalisation du panorama de différentes façons)

Les 2 dialogueront via une simple ligne série suivant un protocole très simple.

µ-contrôleur et périphériques pour l'asservisssement

  • un Basic Stamp 2 pour l'asservissement (très connu, très facile à programmer, et ne nécessite pas de hard spécial pour downloader le programme sur le chip)
  • un module Pololu SMC01A pour piloter les moteur CC en PWM (validé)
  • un LM339 (comparateur) pour remettre en forme les signaux codeurs
  • deux LS7366R pour lire les codeurs en quadrature, ou un µ-contrôleur dédié ?
  • un opto-coupleur pour le déclenchement de l'APN (genre CNY17-1)

Schémas

Interface de commande

Elle peut être réalisée de plusieurs manières :

  • un PC (surtout pour le prototypage du code de pilotage, écrit en python, par exemple). Dans ce cas, le Pilotage APN pourra être plus complet qu'un simple contact
  • un Palm (on trouve des Palm Vx à 30€ sur ebay). Développement C ou C++
  • un petit afficheur alphanumérique (genre 4x40 caractères), plus une roue codeuse épaulée d'un ou 2 boutons (OK/Cancel)

Protocole de communication

Le protocole est ascii, pour faciliter son utilisation depuis n'importe quel interface.

dr h/v <pos>
déplace l'axe horizontal/vertical à la position <pos>
st
stoppe l'axe en cours de déplacement
rd h/v
lecture de la position courante de l'axe horizontal/vertical
hm h/v
definit la position courrante de l'axe horizontal/vertical comme origine (0)

Une commande doit se terminer par le caractère CR.
Si la commande réussit, le contrôleur retourne ok suivi de CR. Sinon, il retourne er, suivi de CR.

Notes :

  • il n'est possible de bouger qu'un seul axe à la fois
  • les valeurs de position sont des angles, exprimés en dixièmes de degré (entiers)

Software

µ-contrôleur et périphériques pour l'asservisssement

Interface de commande

Voici un premier jet d'un diagramme de classes pour la partie interface :

PanoheadClassDiagram.png

En gros, la classe Mosaic contient le modèle principal ; c'est par elle que tout se joue. Ses champs sont sauvés dans les préférences, pour être rappelés automatiquement à chaque lancement de l'appli. Les instances des classes Template, DSLR et Lens peuvent être chargée depuis une base de données (éditable), via des popup list. L'édition de ces instances se fera via un dialogue dédié, mais certains attributs seront dupliqués sur l'écran principal, pour un accès rapide (focale...).

Peut-être peut-on ramener les attributs de la classe Misc dans la classe Mosaic...

PC, en python

Palm

Il existe un environnement de développement pour Palm pas mal fait du tout ; il s'agit de ORBForms Designer. Le langage est proche du C/C++, avec quelques simplifications et améliorations, ce qui le rend très facile à utiliser. La license ne coûte que 53€.