Aller au contenu

Roue à filtre manuelle motorisée + arduino


seriousmath

Messages recommandés

Salut la communauté !

 

Je vous propose un tuto que j'ai réalisé pour motoriser une RaF manuelle type Orion, ZWO...

 

http://www.sendbox.fr/53e17fd8bba50a72/RaF_manuelle_Arduino.zip

http://motorisation-raf-arduino.libreh.net

 

Dans le dossier vous trouverez tout:

 

- le tuto d'une 20ene de page

- Driver ascom

- Programme arduino + bibliotheque

- Shema de cablage.

 

Je reste à votre disposition pour tout eventuel renseignement.

 

980179IMG0923.jpg

 

864727IMG0922.jpg

 

208719IMG0921.jpg

 

733988IMG0920.jpg

 

 

++

Modifié par seriousmath
Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

quelques petites questions à propos de l'aimant nécessaire pour le capteur Hall; il faut le prendre de quelle taille pour qu'il rentre dans la roue zwo? Tu l'as collé directement sur la roue? Et quelle précision on a sur la position Home?

Merci beaucoup pour le partage

Cordialement

Pierre

Lien vers le commentaire
Partager sur d’autres sites

Super pratique pour ceux qui restent à la maison

 

Dans n'importe quel cas c'est super pratique !

300€ une RaF motorisée dans le commerce astro

100€ de roue +10€ de composant pour mon système (qui de plus, est hermétique au même titre qu'une RaF du commerce)....

 

l faut le prendre de quelle taille pour qu'il rentre dans la roue zwo

 

le miens est un cylindrique 5mmx4mm

http://www.gotronic.fr/art-aimant-o5-x-4-mm-4089.htm

 

Plus gros ça passerait à l'aise ! Surtout que le capteur hall fait 2x3mm grand max, c'est tout petit...

 

Tu l'as collé directement sur la roue

 

Oui il est collé avec un point de glue 3 sur la roue en direct. La roue est fermé mais je te fais un croquis pour te montrer sa position avec le capteur hall.

p><p>Celui la va détecter la présence de l

 

2/ Capteur hall analogique

J'en ai un aussi mais pas dans la roue (la flemme de modifier mon programme).

Celui ci va détecter la variation de courant dans le capteur.

C'est encore mieux car arrivé proche du capteur tu as une valeur qui va former une sinusoïde donc tu peux dire au programme arduino d’arrêter la roue quand elle arrive à une certaine valeur. Pas besoin de phase d'approche supplémentaire.

 

Dans les 2 cas comme je disais c'est super précis, ca va être la conception mécanique de la roue le plus déterminant.

 

Si les chinois ne percent pas les trous des filtres à valeur d'angle égale la roue ne sera pas positionnée exactement au bon endroit entre le 1er et dernier filtre.

 

J'ai de la chance leur commande numérique fonctionnait bien, sinon il faut mettre un capteur hall analogique par filtre et là, tu place chaque filtre comme tu le souhaite.

 

Je peux te faire une vidéo de ma séquence home et le déplacement des filtres pour que tu te rende compte de la précision.

 

++

Math

Lien vers le commentaire
Partager sur d’autres sites

Merci ;)

 

Pour des aimants pas chers, j'en ai trouvé dans les moteurs brushless HS de mon drone.

Il font 14mm x 4mm X 1,5mm, coupé dans la longueur c'est parfait.

Niveau puissance, je détecte avec le capteur analogique AH3503, une variation entre 2,3V et 5,1V, à un peu moins de 1cm du capteur. Ce qui est très précis.

 

J'ai pas ouvert ma RaF pour intégrer ce capteur et ces aimants mais si un jour j'ai le courage je les rajouterais dans le système car avec 5 aimants je serais au top niveau précision.

Dans l’immédiat le système est parfait à mon gout, quand le courage me viendra, je modifierais tout ça.

 

J'ai fais une vidéo où l'on voit le déplacement entre certains filtres et la fonction home.

Il est sur qu'un comparateur mesurant le positionnement serait plus parlant sur la vidéo mais franchement c'est déjà super précis avec le moteur pas à pas.

Bien plus qu'avec le pion de centrage d'origine et ses 2 mm transversaux de battement :break:

 

 

"https://www.youtube.com/watch?v=V4JJE5ZBi-8" via YouTube
ERROR: Si vous lisez ce texte, YouTube est hors-ligne ou vous n'avez pas installe Flash

 

je suis toujours à dispo si besoin est ;)

 

++

 

[EDIT] La balise YOUTUBE déconne plein tube sur le forum si jamais lol

Modifié par seriousmath
Lien vers le commentaire
Partager sur d’autres sites

  • 4 semaines plus tard...

Slt Seriousmath,

je viens de finir ton montage électronique, tout est parfait, je n'ai pas encore fait d'adaptation mécanique mais la mesure avec un cadran papier (plan de ma roue) semble correcte : roue Brightstar pour ma part (hé oui je fais des rimes).

Concernant les capteurs analogiques as tu regardé ?

Avec les entrées Analog de l'arduino on peut récupérer une valeur sur 1024 pas donc une bonne précision.

Je vais mettre le nez dedans :rolleyes:

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Sur les vidéos, je vois que la roue tourne assez lentement.

Avez-vous réussi à passer le test de conformité ASCOM ?

 

Dans mon cas, si la roue va trop lentement, le premier test de positionnement échoue (selon la position initiale) et même erreur avec Prism (pas de problème sous MaximDL).

 

Bon ciel

Lien vers le commentaire
Partager sur d’autres sites

Hello

 

Moi je ne trouve pas que c'est lent, mais je n'ai pas d'autres références ! Par contre je constate une "anomalie", si on peut appeler ça comme ça, c'est du passage du "sans filtre" au retour "home" où le moteur repart en sens inverse alors que c'est le step suivant ... Mais peut être trop compliqué et source d'erreur pour le programme ??? :?:

 

Eric :)

Lien vers le commentaire
Partager sur d’autres sites

Par contre je constate une "anomalie", si on peut appeler ça comme ça, c'est du passage du "sans filtre" au retour "home" où le moteur repart en sens inverse alors que c'est le step suivant ... Mais peut être trop compliqué et source d'erreur pour le programme ??? :?:

 

Salut,

 

De mon côté, j'ai géré l'optimisation du déplacement.

Je vous donne mon bout de code, qui a l'air de ne pas trop mal fonctionner pour l'instant. B)

 

// Calculate the number of position changes that needs to be performed to reach the target position
int numberOfPositionChanges = targetPosition - _currentPosition;
int motorDirection = FORWARD;
if (numberOfPositionChanges < 0)
   numberOfPositionChanges += NUMBER_OF_POSITIONS;

// Optimize the move: if the target position is on the other half, go backward
if (2 * numberOfPositionChanges > NUMBER_OF_POSITIONS)
{
   numberOfPositionChanges = NUMBER_OF_POSITIONS - numberOfPositionChanges;
   motorDirection = BACKWARD;
}

// Perform the moves
for (int i = 0; i < numberOfPositionChanges; ++i)
{
   int nextPosition = motorDirection == FORWARD ? _currentPosition + 1 : _currentPosition - 1;
   if (nextPosition < 0)
     nextPosition += NUMBER_OF_POSITIONS;
   bool captorFound = FindNextCaptor(motorDirection, nextPosition % NUMBER_OF_POSITIONS);
   if (!captorFound)
     return false;
}

Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)
Concernant les capteurs analogiques as tu regardé ?

Avec les entrées Analog de l'arduino on peut récupérer une valeur sur 1024 pas donc une bonne précision.

 

Non j'ai placé mon capteur digitale avec déplacement de la roue d'un nombre defini de pas, la precision est excellente ainsi. Et comme a l'initialisation j'ai toujours cet ordre de filtre RVBXY je suis sur d'etre toujours bien en place.

 

Sur les vidéos, je vois que la roue tourne assez lentement.

Avez-vous réussi à passer le test de conformité ASCOM ?

 

La roue mets 5sec entre chaque filtre donc 25 sec maxi pour faire le tour. Si je vais plus vite le moteur décroche.

Pour ascom je n'ai aucun souci une fois les parametres réglés.

Regardes ici elle est mieux

 

Moi je ne trouve pas que c'est lent, mais je n'ai pas d'autres références ! Par contre je constate une "anomalie", si on peut appeler ça comme ça, c'est du passage du "sans filtre" au retour "home" où le moteur repart en sens inverse alors que c'est le step suivant ... Mais peut être trop compliqué et source d'erreur pour le programme ???

 

tout vient de mon code.

 

Je n'ai pas de capteur pour chaque filtre donc dans le code en gros tu as 5 positions qui sont en fait le 0 incrémenté d'une valeur entre chaque filtre donc si tu est sur un filtre le système repart en arrière et ne prend pas le chemin le plus court.

 

De mon côté, j'ai géré l'optimisation du déplacement.

Je vous donne mon bout de code, qui a l'air de ne pas trop mal fonctionner pour l'instant.

 

C'est mon code modifié ou le tiens que tu as crée ? ca m’intéresse grandement. Par contre tu es sur d'utiliser la bibliotheque ACCELSTEPPER ??? jamais vu de fonction type FORWARD dans cette bliblio

 

 

Bon sinon j'ai noté un petit bug dans le système a chaque connexion d'un port usb, la roue s'initialise.

Il faut donc pour ca schématiquement câbler 2 nouveaux composants.

 

pin RESET arduino --> interupteur 2 positions ON/OFF --> condo 470µF 25V (borne -) --> condo borne + --> +5V arduino

 

Ce petit câblage empêche la réinitialisation intempestive.

 

++

Modifié par seriousmath
Lien vers le commentaire
Partager sur d’autres sites

Hello

 

J"ai revu la vidéo, et il y a 5 sec d'un filtre à l'autre, mais si on passe plusieurs filtres, le moteur prend de la vitesse est le temps total est moindre. Par exemple du "vide" au retour "home", j'ai compté 15 sec ! Pas mal ! :)

 

Eric

Lien vers le commentaire
Partager sur d’autres sites

effectivement tu as tout a fait raison !

 

C'est l'avantage de la bibliothèque ACCELSTEPPER, il y a un paramètre d’accélération que j'ai complètement omis de prendre en compte si tu fais le tour complet...

 

Je peux même réduire je suis sur mais comme disais j'ai des risques de décrochage.

Lien vers le commentaire
Partager sur d’autres sites

Bonjour à tous,

 

C'est mon code modifié ou le tiens que tu as crée ? ca m’intéresse grandement. Par contre tu es sur d'utiliser la bibliotheque ACCELSTEPPER ??? jamais vu de fonction type FORWARD dans cette bliblio

 

Il s'agit de mon propre code.

 

Les constantes FORWARD et BACKWARD sont définies par la librairie AFMotor. Au passage, mon moteur est un moteur à courant continu (un capteur optique repère la position de chacun des filtres).

 

Le moteur pas à pas était trop lent et le test ASCOM "Conform" donnait toujours un timeout.

 

 

Bon ciel

Lien vers le commentaire
Partager sur d’autres sites

Bonjour

J’ai réalisé le montage, cela fonctionne très bien. Sauf un détail important, je pense m’orienter vers une roue à filtre à 9 positions. J’ai modifié le code de l’arduino mais c’est le driver qui me bloque aujourd’hui.

Pouvez-vous modifier le code pour rendre le nombre de filtre paramétrable.

 

 

Dans la version simulation d’ascom, il est possible de le définir, il me semble que c’est via les « Class » ?

 

Il y a aussi la notion du temps « time out » de réglable. Voir Photo

 

 

 

Pouvez-vous me dire aussi la version de VB ?

 

 

Merci d’avance

5aa58406e3cf1_2016-05-2918_00_29-Paramtres_Rouefiltresmotorise.png.3f0b4236466da52a66152a46fa9f5ee1.png

Lien vers le commentaire
Partager sur d’autres sites

  • 4 semaines plus tard...
Posté (modifié)

pour le driver ASCOM je ne sais pas si je pourrais le modifier.

 

Comme je disais les codes VB et Arduino ne sont pas de moi.

 

Je vais essayer de te modifier ca, pour le code Arduino je pense que c'est facilement faisaible.

 

Il suffit de rajouter dans la fonction LOOP des lignes pour les filtres manquants

 

else if (cmd=="FILTERX") MoveFilter(X);

 

et dans la fonction Movefilter à la fin du programme les CASE corresponds

 

       case X:                  // DEPLACEMENT FILTER XX
analogWrite(LEDverte,0);  
analogWrite(LEDrouge,1023);
stepper1.setAcceleration(Acceleration);
stepper1.setMaxSpeed(Vitesse); 
stepper1.run();
stepper1.runToNewPosition(CurrentFilter * DistanceFiltre);  
stepper1.disableOutputs();
analogWrite(LEDrouge,0);
delay(750);
analogWrite(LEDverte,1023);
stepper1.disableOutputs();
Serial.print(CurrentFilter); Serial.println("#");
break;

 

C'est ainsi que j'ai procédé pour rajouter la fonction HOME sur le programme d'origine.

 

Pour le code ascom je vais essayer de regarder mais pas sur qu'il faille le modifier.

 

voila un tuto de 30min pour modifier le code ASCOM ;-)

Modifié par seriousmath
Lien vers le commentaire
Partager sur d’autres sites

Salut

 

Merci du retour, j’ai reussi (je ne sais pas trop comment). Mais j’ai changé le code de l’arduino et du driver. J’ai installé un VB gratuit 30 Jours, je ne peux plus donc éditer le code

 

J’ai donc une dll avec ça dedans en « dur » :

 

Private fwNames As String() = New String(8) {"Red", "Green", "Blue", "Ha", "OIII", "SII", "None", "None", "None"}

 

Je ne sais pas trop si c’est bien de l’écrire en dur sachant que normalement c’est au soft de faire l’association de potion/type de filtre.

Arff, je ne maitrise pas encore cette partie là

 

 

 

Code arduino

 

 

 

#include <AccelStepper.h>

 

 

// PARAMETRE DE VITESSE DU PORT COM

int VitessePortCom = 9600; // Modifier ici votre vitesse du port COM

 

// PARAMETRE DE VITESSE ET ACCELERATION PENDANT CHANGEMENT LE DE FILTRE A REGLER SUIVANT VOTRE SYSTEME

int Vitesse = 1000; // Vitesse de rotation maxi de la roue, ne pas aller trop haut sinon loupé de pas ou decrochage du moteur

int Acceleration = 500; // Acceleration de la roue, ne pas aller trop haut sinon loupé de pas ou decrochage du moteur

int DistanceFiltre = 6250; // Distance entre chaque filtre à tester pour trouver la bonne valeur.

 

//PARAMETRES DU HOME A REGLER SUIVANT VOTRE SYSTEME

 

// ON RECULE LA RAF POUR S'ECARTER EVENTUELLEMENT DU CAPTEUR HALL (environ 1,5 emplacement)

int Recul = 9375; // distance de recul de la roue = 1 filtre + 1/2 filtre

int VitesseRecul = 1000; // vitesse de rotation à laquelle la roue va reculer

int AccelRecul = 500; // vitesse accelaration pendant la phase de recul

 

//ENSUITE ON VA TOURNER POUR ALLER CHERCHER LE CAPTEUR HALL MAIS PAS A VITESSE MAX

int Rotation = -32500; // Grande valeur qui fait faire plus de 1,5 tours à la roue

int VitRotat = 1000; // Vitesse de deplacement jusqu'au capteur Hall, y aller doucement.

int AccelRotat = 500; // Accelaration jusqu'au capteur hall, y aller doucement

 

//UNE FOIS LA ROUE ARRETEE DEVANT LE CAPTEUR HALL, ON VA SE DEPLACER JUSQU'AU FILTRE N°1 TOUT DOUCEMENT

int Distance = -1875; // Distance à parcourir pour placer la roue sur le filtre 1 après arrêt sur le capteur à effet hall. Dependra de la position de votre capteur hall

int VitApproche = 500; // vitesse d'approche vers position 0 (filtre 1) tres lente

 

 

// !!!!!! POUR LA BONNE EXECUTUON DU PROGRAMME, NE RIEN MODIFIER A PARTIR DE CE POINT !!!!!

 

int CurrentFilter = 0;

const byte homepin = A2;

byte hBval;

#define HALFSTEP 8

#define LEDrouge A3

#define LEDverte A1

// Motor pin definitions

#define motorPin1 8 // IN1 on UL2003

#define motorPin2 9 // IN2 on UL2003

#define motorPin3 10 // IN3 on UL2003

#define motorPin4 11 // IN4 on UL2003

AccelStepper stepper1(HALFSTEP, motorPin1, motorPin3, motorPin2, motorPin4);

 

 

void setup() {

Serial.flush();

Serial.begin(VitessePortCom);

pinMode(homepin, INPUT);

flashLED();

Home();

}

 

void loop() {

String cmd;

if (Serial.available() >0) {

cmd = Serial.readStringUntil('#');

if (cmd=="GETFILTER") {

Serial.print(CurrentFilter); Serial.println("#");

}

else if (cmd=="FILTER0") MoveFilter(0);

else if (cmd=="FILTER1") MoveFilter(1);

else if (cmd=="FILTER2") MoveFilter(2);

else if (cmd=="FILTER3") MoveFilter(3);

else if (cmd=="FILTER4") MoveFilter(4);

else if (cmd=="FILTER5") MoveFilter(5);

else if (cmd=="FILTER6") MoveFilter(6);

else if (cmd=="FILTER7") MoveFilter(7);

else if (cmd=="FILTER8") MoveFilter(8);

else if (cmd=="FILTER9") Home();

}

}

 

void Home() {

analogWrite(LEDverte,1023);

analogWrite(LEDrouge,1023);

stepper1.setAcceleration(AccelRecul);

stepper1.setMaxSpeed(VitesseRecul);

stepper1.run();

stepper1.runToNewPosition(Recul);

hBval = digitalRead(homepin);

while (hBval == HIGH){

stepper1.run();

stepper1.moveTo(Rotation);

stepper1.setAcceleration(AccelRotat);

stepper1.setMaxSpeed(VitRotat);

stepper1.run();

hBval = digitalRead(homepin);}

stepper1.setCurrentPosition(0);

Approche();

Serial.println("Homing ok filtre 1 en place");

MoveFilter(0);

}

 

void Approche() {

stepper1.setMaxSpeed(VitApproche);

stepper1.run();

stepper1.runToNewPosition(Distance);

stepper1.setCurrentPosition(0);

flashLED();

}

 

void flashLED() {

analogWrite(LEDverte,1023);

analogWrite(LEDrouge,1023);

delay(250);

analogWrite(LEDverte,0);

analogWrite(LEDrouge,0);

delay(250);

analogWrite(LEDverte,1023);

analogWrite(LEDrouge,1023);

delay(500);

analogWrite(LEDverte,0);

analogWrite(LEDrouge,0);

}

 

void MoveFilter(int pos)

{

CurrentFilter = pos;

switch (CurrentFilter)

{

case 0: // DEPLACEMENT FILTER 1

analogWrite(LEDverte,0);

analogWrite(LEDrouge,1023);

stepper1.setAcceleration(Acceleration);

stepper1.setMaxSpeed(Vitesse);

stepper1.run();

stepper1.runToNewPosition(CurrentFilter * DistanceFiltre);

stepper1.disableOutputs();

analogWrite(LEDrouge,0);

delay(750);

analogWrite(LEDverte,1023);

stepper1.disableOutputs();

Serial.print(CurrentFilter); Serial.println("#");

break;

 

case 1: // DEPLACEMENT FILTER 2

analogWrite(LEDverte,0);

analogWrite(LEDrouge,1023);

stepper1.setAcceleration(Acceleration);

stepper1.setMaxSpeed(Vitesse);

stepper1.run();

stepper1.runToNewPosition(CurrentFilter * DistanceFiltre);

stepper1.disableOutputs();

analogWrite(LEDrouge,0);

delay(750);

analogWrite(LEDverte,1023);

stepper1.disableOutputs();

Serial.print(CurrentFilter); Serial.println("#");

break;

 

case 2: // DEPLACEMENT FILTER 3

analogWrite(LEDverte,0);

analogWrite(LEDrouge,1023);

stepper1.setAcceleration(Acceleration);

stepper1.setMaxSpeed(Vitesse);

stepper1.run();

stepper1.runToNewPosition(CurrentFilter * DistanceFiltre);

stepper1.disableOutputs();

analogWrite(LEDrouge,0);

delay(750);

analogWrite(LEDverte,1023);

stepper1.disableOutputs();

Serial.print(CurrentFilter); Serial.println("#");

break;

 

case 3: // // DEPLACEMENT FILTER 4

analogWrite(LEDverte,0);

analogWrite(LEDrouge,1023);

stepper1.setAcceleration(Acceleration);

stepper1.setMaxSpeed(Vitesse);

stepper1.run();

stepper1.runToNewPosition(CurrentFilter * DistanceFiltre);

stepper1.disableOutputs();

analogWrite(LEDrouge,0);

delay(750);

analogWrite(LEDverte,1023);

stepper1.disableOutputs();

Serial.print(CurrentFilter); Serial.println("#");

break;

 

case 4: // DEPLACEMENT FILTER 5

analogWrite(LEDverte,0);

analogWrite(LEDrouge,1023);

stepper1.setAcceleration(Acceleration);

stepper1.setMaxSpeed(Vitesse);

stepper1.run();

stepper1.runToNewPosition(CurrentFilter * DistanceFiltre);

stepper1.disableOutputs();

analogWrite(LEDrouge,0);

delay(750);

analogWrite(LEDverte,1023);

stepper1.disableOutputs();

Serial.print(CurrentFilter); Serial.println("#");

break;

 

case 5: // DEPLACEMENT FILTER 6

analogWrite(LEDverte,0);

analogWrite(LEDrouge,1023);

stepper1.setAcceleration(Acceleration);

stepper1.setMaxSpeed(Vitesse);

stepper1.run();

stepper1.runToNewPosition(CurrentFilter * DistanceFiltre);

stepper1.disableOutputs();

analogWrite(LEDrouge,0);

delay(750);

analogWrite(LEDverte,1023);

stepper1.disableOutputs();

Serial.print(CurrentFilter); Serial.println("#");

break;

 

case 6: // DEPLACEMENT FILTER 7

analogWrite(LEDverte,0);

analogWrite(LEDrouge,1023);

stepper1.setAcceleration(Acceleration);

stepper1.setMaxSpeed(Vitesse);

stepper1.run();

stepper1.runToNewPosition(CurrentFilter * DistanceFiltre);

stepper1.disableOutputs();

analogWrite(LEDrouge,0);

delay(750);

analogWrite(LEDverte,1023);

stepper1.disableOutputs();

Serial.print(CurrentFilter); Serial.println("#");

break;

 

case 7: // DEPLACEMENT FILTER 8

analogWrite(LEDverte,0);

analogWrite(LEDrouge,1023);

stepper1.setAcceleration(Acceleration);

stepper1.setMaxSpeed(Vitesse);

stepper1.run();

stepper1.runToNewPosition(CurrentFilter * DistanceFiltre);

stepper1.disableOutputs();

analogWrite(LEDrouge,0);

delay(750);

analogWrite(LEDverte,1023);

stepper1.disableOutputs();

Serial.print(CurrentFilter); Serial.println("#");

break;

 

case 8: // DEPLACEMENT FILTER 9

analogWrite(LEDverte,0);

analogWrite(LEDrouge,1023);

stepper1.setAcceleration(Acceleration);

stepper1.setMaxSpeed(Vitesse);

stepper1.run();

stepper1.runToNewPosition(CurrentFilter * DistanceFiltre);

stepper1.disableOutputs();

analogWrite(LEDrouge,0);

delay(750);

analogWrite(LEDverte,1023);

stepper1.disableOutputs();

Serial.print(CurrentFilter); Serial.println("#");

break;

}

}

 

 

 

 

Driver

 

#Region "IFilterWheel Implementation"

Private fwOffsets As Integer() = New Integer(8) {0, 0, 0, 0, 0, 0, 0, 0, 0} 'class level variable to hold focus offsets

Private fwNames As String() = New String(8) {"Red", "Green", "Blue", "Ha", "OIII", "SII", "None", "None", "None"} 'class level variable to hold the filter names

Private fwPosition As String = 0 'class level variable to retain the current filterwheel position

Lien vers le commentaire
Partager sur d’autres sites

  • 3 semaines plus tard...

Slt,

j'ai fini le montage mécanique de ma roue je regarde de près le code , une interrogation : pourquoi as tu utilisé un switch case plutôt qu'une fonction passant le n° de filtre en paramètres ?

 

Je pensais aussi implémenter le comptage des pas moteurs à partir de la pos initiale afin que en fonction du choix de filtre on fasse un CW ou un CCW (en fonction de la distance à parcourir ex F4 passer direct à F1 sans se taper le 2 - 3 en reverse puisque chaque filtre dispose d'une coordonnée en pas depuis le home)

Merci de ton aide

A+

Lien vers le commentaire
Partager sur d’autres sites

J'adore ! Super tuto ! :) Merci bcp !

 

Petite astuce pour fixer 2plaques de plastique : colle super glue + bicarbonate de sodium .

(mettre d'abord la glue, et soupoudrer de bicarbonate) Sa marche vraiment très bien, sa créer une sorte de plastique. Un coup de ponçage, et de peinture, et c'est nickel !

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Roue finalisée, quelques problèmes sur les logiciel SGPro et autres avec le pilote ASCOM.

Aucun pb en ASCOM sous Firecapture ...pour les autres pas de problèmes de votre coté ?

:be:

 

PS : l'algo de positionnement fonctionne mais je suis resté au séquentiel car ma roue chinoise est usinée avec les pieds ...les écarts inter filtres sont irréguliers (4 et 5 dans les choux)

 

Je vais plonger dans le driver ASCOM voir ce qui cloche :wub:

 

Roue terminée, réécriture du Driver ASCOM avec l'aide précieuse de Florian06 que je remercie ici B)

Testée sous les logiciels en version limitée SGP, PRISM, Nebulosity il me reste encore du temps de test :)

A+

Modifié par Raphael_OD
Lien vers le commentaire
Partager sur d’autres sites

  • 2 années plus tard...

Bonsoir à tous,

 

Je me présente, je m'appelle Raymond, je pratique un petit peu l'astronomie et je suis un peu bricoleur. Je suis à la Réunion.

J'ai trouvé ce post sur la fabrication d'une roue à filtre motorisé et cela m'a permis d'en fabriquer une de a à z ( boitier, carrousel, montage électronique,...). Ma roue fonctionne bien. Je remercie seriousmath et vous tous pour ce super bricolage.

Mais voilà! le driver ASCOM fourni dans le tuto ne fonctionne pas car c'est un driver 32bits. (message d'erreur que me renvoi ASCOM) .Je suis un peu malheureux de cette situation, car j'ai travaillé fort pour me fabriquer cette RAF.

Quelqu'un aurait-il ce driver en 64 bits et surtout serait-il possible de me le fournir? Je n'y comprends rien en programmation... je ne pourrais jamais réécrire un driver...

 

Lien vers le commentaire
Partager sur d’autres sites

On devrait créer un sujet pour l'entre-aide d'écriture de drivers ASCOM, que ce soit roue à filtre, focuser, ou autres.

 

Je fais pas mal de bricolage moi aussi, mais quand il s'agit d'écrire des drivers ça devient très abstrait, avec toutes les classes, librairies ou je sais pas quoi...

C'est ce qui limite toutes mes idées 😕

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir à tous,

 

Je reviens sur mon problème de driver. Je pense avoir trouvé une porte de secours. En effet, ma RAF se laisse piloter par ascom et mon soft Firecapture. J'ai simplement changé la version 64 bits de firecapture par une de 32 bits, et là, Bingo!!!! (jusqu'à maintenant, reste à voir avec d'autre softs...). Voilà, si cela peu aider d'autres qui comme moi sont un peu largué par la programmation.

Mais c'est vrai qu'il va falloir que je m'y mette...je vais commencer par l'arduino ( un petit kit starter ne va pas tarder à arriver dans ma boite à lettres)...

 

A bientôt et bon ciel.

raymi

Lien vers le commentaire
Partager sur d’autres sites

  • 3 années plus tard...
  • 9 mois plus tard...

Bonjour, à mon tour de remonter ce post!

Je souhaite faire ce genre de montage mais plus aucun lien ne fonctionne.

Auriez vous les documents d'origine pour me permettre de démarrer ?

Et voire les mises à jour vu que je comprends qu'il y a un souci avec les drivers...

Merci 😁

Samuel 

Lien vers le commentaire
Partager sur d’autres sites

Rejoignez la conversation !

Vous pouvez répondre maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous pour poster avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.