CielDeCreuse

Un focuser pas-a-pas OpenSource ASCOM, ça intéresse quelqu'un ?

Messages recommandés

Bonjour à tous!

Mon compte est nouveau, mais je passe par ici depuis des années...

Comme beaucoup de monde j'ai toujours eu le syndrôme des gros doigts qui n'arrivent pas à focuser précisément ou qui font tout bouger quand ils saissent la molette dans le noir :-)

J'ai donc décidé de m'attaquer au problème et de développer une série de cartes capable de piloter un ou deux moteurs pas-a-pas de précision.

Mais plutot que de me garder le projet, j'ai décidé de le donner en OpenSource, et son nom est devenu "LibreFocus!".

Mieux, j'ai réussi à faire en sorte qu'il soit à 99%.. en kit, et qu'il ne faille que 4,6 ou 8 soudures de boutons poussoirs selon la version.

J'ai bien vu qu'un équipement RoboFocus vaut le prix d'un premier instrument, et même si c'est justifié par une nécéssité économique et une grande qualité technique, quel dommage qu'il ne soit pas accessible au plus grand nombre...

J'ai donc concu Libre Focus! pour qu'il soit réalisable par tout le monde, pour quelques dizaines d'euros, à partir de sous-ensembles disponibles chez un fournisseurs de matériel éducatif et de développement "plug-and-play".

La carte MCU que j'ai choisi existe en trois tailles, communique coté PC en SerialUSB et répond au protocole RoboFocus, FreeFocus et à son propre protocole LibreFocus! bien entendu.

Elle dispose d'un affichage LCD pour sa plus grande taille, avec des boutons de déplacement et de menus, et commande directement des micro-moteurs pas-a-pas en pas entier, 1/2, 1/4 et 1/8.

Bien entendu, il faut adapter chaque instrument, puisque cette carte ne commande que des moteurs mais ne se soucie pas de la liaison mécanique.

J'ai choisi des microcourroies crantées et des démultiplications importantes (15x64 et 15x82) pour pouvoir exploiter les 65535 pas disponibles pour chaque moteur avec une très bonne résolution.

Et le plus beau, c'est que mon code est compatible ASCOM à travers le protocole RoboFocus! Reste juste à déverminer, pour l'instant c'est assez buggy puisqu'une telle "machine à état" est assez complexe à programmer.

Les caractéristiques pour la version actuelle 1.9 sont les suivantes:

- MCU Atmel ATMega16 @16MHz ou 20MHz (16Ko code, 1Ko ram, 256o EEPROM)

- Commande de 1 ou 2 moteurs pas-a-pas en pas entier, 1/2, 1/4 ou 1/8 par étage à régulation de courant;

- Un LCD 2X16 rouge sur fond noir (une horreur à trouver, MOUSER USA est mon sauveur :-) pour la grosse carte, les autres n'ont pas assez de port d'I/O;

- Une paire de bouton IN/OUT pour chaque moteur, plus une paire MENU/VALID pour la version LCD qui dispose de fonctions avancées;

- Liaison SerialUSB selon ASCOM coté PC. Pour les versions sans LCD, la configuration se fait par SerialUSB selon le protocole LibreFocus!

- Alimentation entre 9 et 30V pour la carte évoluée, alim du MCU par USB et moteur 5-30V pour les versions simples;

- Consommation entre 10 mA et 50 mA pour le MCU et courant moteur en sus;

- Temps de courant de maintien moteur de 0, 10 et [infini] secondes;

- Mémorisation de deux points de position entre 0 et 65535 pour chaque moteur, atteignable avec des rampes d'accélérations et de décélérations pour chaque moteur. Pour les cartes simples, ces fonctions sont inhibées;

- Sauvegarde de tous les paramètres en EEPROM pour passer les redémarrages;

- LE PRIX, puisque c'est une juxtaposition de cartes d'évaluations disponibles à prix modique: entre 18$ et 29$ pour la carte MCU, 29$ pour la carte de commande de moteur, 20$ de plus pour un LCD, le boitier et les boutons sont à discrétion :-)

Je pense que j'aurai le temps de finaliser l'ensemble d'ici un mois ou deux, et je mettrai des photos ici quand j'aurai compris comment :-)

PS: je n'ai AUCUN lien avec la société qui conçoit et produit les modules que j'ai utilisé. Ils sont disponibles chez LEXTRONIC, chez MOUSER et chez eux directement MIKROELEKTRONIKA.

Et ne venez pas me parler d'ARDUINO :-)))

Christophe.
23-Auzances.

Partager ce message


Lien à poster
Partager sur d’autres sites
projet interessant je met ce post dans mes favoris pour suivre l evolution

[Ce message a été modifié par corsica_2 (Édité le 24-08-2011).]

Partager ce message


Lien à poster
Partager sur d’autres sites
salut Christophe, (un creusois diddioux !!!! (perso je suis du coté St Martin Chateaux, un peut loin donc) ) et bienvenue

ton idée me parait exélente et a vrai dire inespérée : bravo..
perso je suis déjà équipé (easyfocus (compatible moonlite) pour le boitier et RBFCS pour le moteur) donc je ne pense pas être"client" de ton système dans l’immédiat, mais l'aurai certainement été si je n’étais pas déjà équipé


Partager ce message


Lien à poster
Partager sur d’autres sites
Bonjour Christophe,

Félicitations pour ce projet et merci de le faire partager à la communauté.
A la différence de Mr Goto ci-dessus, cette option est particulièrement intéressante pour moi qui envisage sérieusement de motoriser la MAP de ma FSQ. Je vais donc garder un œil sur ton projet.

Partager ce message


Lien à poster
Partager sur d’autres sites
Il faut que tu charge tes images chez un hébergeur quelconque ou dans un répertoire de ton site web, si tu en as un, et que tu utilises la syntaxe UBB code (voir exemple ci dessous en supprimant les espaces entre les crochets)

[ img]http://www.monsite.com/images/moi.gif[ /img]

Partager ce message


Lien à poster
Partager sur d’autres sites
Merci du tuyau, c'est même dans les FAQ :-)

J'ai ouvert une page perso pour contenir les photos chez mon FAI, je chargerai et je poursuivrai ce fil quand la page sera activée!

Christophe.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

Hop, comme Corsica2...Dans les bookmarks!!!

Je dois dire que ce système me plairait bien, car je galère comme un goret avec mes vieuzyeux...

En plus, je n'ai pas de PB avec les réalisations électoniques, alors, le kit, pourquoi pas...

Je vais suivre ce post !!!

BGI

Partager ce message


Lien à poster
Partager sur d’autres sites
Salut,

j'ai rien compris au sujet, et ne suis donc pas concerné, mais je me suis dit "tiens, un pays!"
La maison de famille ancestrale se trouve à Basville. Pas loin de chez toi donc.

A+

Partager ce message


Lien à poster
Partager sur d’autres sites
65535 pas, c'est bien pour 360° ( autrement dit 0.005 ° par pas) ? Peut-être je ne me rend pas bien compte mais n'est-ce pas un peu surdimensionné ?
A vrai dire la question m'intéresse assez car je suis sur un projet similaire( mais à base d'Arduino...dsl :p ) Quelle résolution en µm cherches-tu à atteindre sur ton focuser ?
Tu pourrai nous montrer quel moteur tu utilises (et les micro-courroies aussi ça m'intéresse :p ) ?

Partager ce message


Lien à poster
Partager sur d’autres sites
Bonsoir.

Non, les 65535 pas te disent que la position absolue du moteur est codée sur 16 bits, parce que cette position sur 16 bits permettra de la mémoriser.

Le moteur est en position zéro quand la carte démarre, puis ce compteur de position est incrémenté ou décrémenté au fil des déplacements.

Ces déplacements sont manuels par bouton IN/OUT ou bien sous le controle d'un des protocoles honorés.

Ainsi, je démarre la carte avec la crémaillère ou le crayford en position mini (rentré), la carte a ses compteurs à zero, et "je me rends rapidement", par exemple, en position 10500, ce qui correspond en général à une premiere approximation du focus sur mon premier instrument.

Là, je règle finement avec les boutons IN/OUT.

En fait, il faut voir que la carte commande les moteurs pas à pas mais ne se soucie pas de la taille réelle d'un pas en déplacement angulaire de molette ou en déplacement linéaire de l'équipage mobile.

En ce sens, elle est universelle, selon que l'on choisisse des moteur directs en 200/400 pas par tours, des moteurs à faible nombre de pas démultipliés par cascade d'engrenage intégrée, et que l'on aie ou pas une démultiplication en action du focuser.

Il faut juste l'adapter à l'instrument et à la situation!

Exemples:

1) Mon instrument d'autoguidage est un petit newton 114/F4 (orion starblast) qui permet d'avoir un champs étendu et une grande luminosité pour un prix et un poids minimes. Il est monté avec une crémaillère basique sans démultiplication, on va donc démultiplier avec la carte et la liaison mécanique: rapport 15/64 avec une courroie crantée et action du moteur 200 pas/tour au 1/4 de pas. J'obtiens 800 pas moteurs par tour, multipliés par 4.27 soit 3413 pas de moteur par tour de molette. Je n'ai pas mis de micromètre, mais avec environ 6mm de diamètre pour le pignon de crémaillère, chaque pas donne un déplacement d'environ 0.005 mm. C'est plus que la précision mécanique de la crémaillère plastique qui branle un peu dans le manche, et c'est 1000 fois mieux que mes gros doigts. 65535 pas moteurs donnent un peu plus de 19 tours de molette, impossible on casse tout avant :-) Le setup est bon.

2) Mon imageur est une FLT 132. Là il y a un crayford x10 mais les contraintes de focus sont aussi plus élevées. Je mets la carte en 1/2 pas, toujours avec des moteurs 200 pas/tour. J'ai une démultiplication plus grande, j'ai pris le parti à titre expérimental d'acheter la plus grosse courronne chez HPC (69-Dardilly). Je me retrouve avec 400 pas par tour, et une démultiplication mécanique de 5.47, soit 2187 pas par tour de molette x10! Avec 65535 pas moteurs, j'ai donc presque 30 tours de molette fine, ou trois tours de molette normale, pour faire mon focus. Et ca passe juste, je focalise aux environs de la position 58000, parce que la démultiplication est trop élevée. Une approximation donnerait: rouleau du crayford 8mm, développement 25.13mm, soit 2.51mm par molette x10, et donc 0.0011 mm par pas. Et encore on est en demi pas moteur! Donc setup à revoir, une telle démultiplication ne se justifie pas.

Christophe.

Partager ce message


Lien à poster
Partager sur d’autres sites
Pour les fournitures:

- MCU, LCD et cartes I/O: http://www.mikroe.com/eng/home/index/ On peut acheter chez LEXTRONIC ou MOUSER leurs produits à des prix variables :-)

- Compilateur: je travaille en pascal, c'est chez ME aussi et c'est payant, mais je donne les .HEX et .ASM résultants avec les sources;

- Pour les transmissions: HPC à http://www.hpceurope.com, cher mais dispo et rapide;

- Pour les moteurs: SELECTRONIC qui ont une série d'adorables micromoteurs pas à pas hybrides de 23mm de coté, parfaits pour nos micromécanismes;

- Pour les boitiers et les boutons, j'aime bien MOUSER http://www.mouser.com qui livre en 48h porte à porte même depuis les USA;

Bon, quand mon FAI se réveillera je posterai des photos du projet en cours!

Christophe.

Partager ce message


Lien à poster
Partager sur d’autres sites
Ha je vois, j'étais à côté de la plaque. En fait, finalement on fait quasimment la même chose. Ceci dit, bien que le gros de la partie Hardware soit fini et la partie software presque finie (manque plus qu'à implémenter la procédure de compensation de température) je n'ai pas encore réalisé le couplage mécanique. Mon moteur ( de Selectronic aussi d'ailleurs) a 400 pas par tour et je le couplerai à la démultiplication x10 de mon focuser. Du coup justement, je me demandais si il était nécessaire de démultiplier encore plus. Avec mon C9.25, à pleine focale ça peut devenir critique. Mais, je me sens pas trop de travailler en fraction de pas, ça demanderait de garder le moteur alimenté en permanence pour qu'il tienne sa position, ce qui le fera chauffer fortement et consommera pas mal de jus sur ma batterie. Je préfère ajouter une démultiplication supplémentaire, genre du 1:3 avec deux poulies, quitte à travailler plus lentement.

Partager ce message


Lien à poster
Partager sur d’autres sites
Cela tombe bien.

A ce prix la, je peux envisager la commande de 2 moteurs pas à pas
pour le réglage à distance et dans le confort des vis de collimation.

C'est tout bon.

Merci Christophe.

Partager ce message


Lien à poster
Partager sur d’autres sites
Bon alors puisque ça marche, on va reprendre :-)

Donc tout le monde sait l'intérêt des focusers à moteurs: précision du déplacement par fraction de tour minuscule, répétabilité, automatisation, absence de contact humain aléatoire...

Ainsi est né "LibreFocus!" voici quelques mois, parce que d'une part n'avais pas forcément le budget pour un "double RoboFocus", et parce qu'en tant qu'ingénieur tout défi technique était bon a relever :-)

Soyons clair: dans ma démarche de développement j'ai acheté des composants pour essayer différents combinaisons et valider la meilleure, et du coup je peux concevoir différents modèles de LibreFocus. Je choisirai celle qui sera la plus utile, à ma pomme ainsi qu'à d'autres.

1) La carte MCU:

Le Micro Controler Unit, c'est la carte qui porte l'électronique programmable choisie. Mikroelektronika que j'ai choisi comme fournisseur en produit beaucoup, mais pour les AVR 8 bits de chez Atmel on peut retenir 4 tailles différentes et ignorer la série XMega à 100 pattes.

Eh bien vous pouvez me croire: les 4 cartes qui sont sur la photo on TOUTES les mêmes fonctions, TOUTES la même puissance/capacité et sont TOUTES compatibles avec le même code.

On trouvera principalement une différence de ports d'I/O: 4x8bits pour la grande, 3x8bits pour la suivante, 2x8Bits pour la suivante et 1,5x8bits pour la dernière. Quelques timers et CAN varient, mais sans usage ici.

On constate que les deux dernières sont des candidates parfaites pour de minuscules boitiers d'une taille de boite d'alumette, avec un USB d'un coté et un connecteur moteur de l'autre, et peu de boutons.

Les deux grandes cartes en revanche pourront recevoir un LCD et même piloter DEUX moteurs, l'un en manuel+distant et l'autre en manuel, puisqu'aucun protocole à ma connaissance ne permet de commander plus d'un moteur par port (USB)Serial unique. (Heuuu si: le protocole sériel LibreFocus! permet de commander 16 moteurs par un seul port (USB)Serial, mais je ne sais pas programmer un driver ASCOM, donc ça reste une curiosité technique).

2) Les périphériques:

La carte MCU seule ne fera rien de tangible. Pour commander les moteurs, et c'est une force du système de "kit" de Mikroelektronika, il existe des petites cartes assez élaborées directement connectables sur les cartes MCU.

Ces petites cartes sont quand même équipées d'un CI 3967 qui permet la commande en fraction de pas avec régulation de courant, ainsi que l'inhibition du courant moteur ou de la logique de séquence. Avec une limite de 750mA par bobine, on est au double ou au triple de ce qui est requis avec les moteurs choisis.

Sur la photo apparait un LCD 2x16 "Negative Red", un truc rigoureusement introuvable dans le commerce électronique de détail. C'est pourtant la seule couleur qui convient à nos pov'zyeux d'astrams, et en cherchant bien je l'ai trouvé aux USA pour un prix modique, envion 10 dollars. Ce LCD est aussi connecté à la carte MCU par un petit circuit et une nappe directement fournie chez Mikroelektronika, si bien que là encore on se rapproche plus du LEGO que de l'électronique amateure.

3) Lorsque tout est assemblé:

Voici l'ensemble quand tout ce beau monde est assemblé, bien à plat sur une table sans mise en coffret. On distingue l'adaptateur de programmation USB, qui permet directement d'injecter à chaque fois le nouveau code compilé dans le montage sans n'avoir rien à démonter.

4) Les moteurs de chez SELECTRONIC:

Ce sont de minuscules moteurs hybrides 200 pas par tour. Ils font 28x28mm de section carrée, pas 23mm comme j'ai pu l'écrire plus haut qui est l'entraxe des vis. Ils sont léger, largement assez coupleux pour LibreFocus! et s'accomodent fort bien de la commande par un étage chopper en pas fractionnaire. Avec un axe de sortie de 5.0mm j'ai simplement adapté une poulie crantée en résine armée.

J'ai acheté des exemplaires des deux tailles disponibles pour expérimenter.

4) Démarrage de la carte:

Quand la carte démarre, elle se présente, parce qu'elle est bien élevée, comme son papa :-)

5) Quelques photos de la carte en marche:

Ensuite le tableau de bord de LibreFocus! s'affiche et indique les principaux paramètres de fonctionnement.

Ce serait un peu long de détailler ici, mais on voit:

- Les compteurs de position des deux moteurs;
- Les indicateurs de mode de pas;
- Les indicateurs de mode de maintien de courant;
- Les indicateurs d'usage des positions mémorisées par moteur;
- Les indicateurs de direction en cours (un moteur est en rotation...)

Sur la dernière photo, on voit qu'une commande de menu est en cours, qui signifie "Mémoriser la position actuelle du moteur B dans sa mémoire 2".

6) Et on ne rigole pas:

La carte effectue une vérification (checksum+watermark) de son EEPROM de paramètres au démarage et ne vas pas plus loin en cas d'anomalie :-)

Ce genre d'anomalie se produit à chaque reprogrammation du code, et une manip de boutons au RST permet de tout recharger correctement:

Et du coup toutes les mémoires et tous les paramètres utilisateurs sont remplacés par les valeurs par défaut:

Bon, allez, la suite au prochain numéro!

Christophe.

Partager ce message


Lien à poster
Partager sur d’autres sites
trés interessant , j'attends la suite avec impatience.

Partager ce message


Lien à poster
Partager sur d’autres sites
Bonjour
Je réponds également à la question-Je suis interessé.
Pour l'afficheur et son problème d'approvisionnement faut il attendre et faire une commande groupée?
déja Merci pour tout ce travail éffectué.

Partager ce message


Lien à poster
Partager sur d’autres sites
Non, pour l'afficheur maintenant je sais que c'est un "Newhaven" disponible chez MOUSER, donc plus de problèmes. Il suffisait de le touver :-)

Christophe.

Partager ce message


Lien à poster
Partager sur d’autres sites
Bonjour,
il est toujours passionnant de voir de nouveaux projets naître. Petite question : pourquoi ne pas avoir choisi une variante Arduino pour la carte MCU? L'avantage est de pouvoir disposer d'une communauté très active.
Cordialement,

Partager ce message


Lien à poster
Partager sur d’autres sites
Bonjour,

S'il y en a que ça intéresse, pour travailler sur des projets similaires à microcontrôleurs (je pense notamment l'auteur), j'ai tout un tas d'afficheurs en stock que je peux céder pour certains gratuitement (frais de port) :

- Afficheurs 2x24 non rétroéclairés : gratuit (j'en ai tout un tas)
- Afficheurs 2x24 gamme de Tre étendue, rétroéclairés jaune
- Afficheurs graphiques 64x128 gamme de Tre étendue, rétroéclairés Jaune


Vous pouvez me contacter en privé si intéressés.

A bientôt,
Emmanuel

Partager ce message


Lien à poster
Partager sur d’autres sites
Hello !

Bravo pour le projet en cours. c'est un montage sympa.
Même question que Fred pourquoi pas une carte arduino ?

Sinon un capteur de température serait bien venu pour les instruments tel que les lunettes qui on une forte variation de mise au point selon la température.

Bon courage pour la suite cela est sympa et montre qu'il est possible de monter son robotfocus pour pas très chère.

A+

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant