Pour que l'Arduino fonctionne et contrôle le moteur pas à pas du star tracker, il lui faut un programme. Il est ci-dessous. Il suffit de le copier dans le logiciel Arduino installé sur un PC puis de le téléverser sur la carte Arduino alors que cette dernière est connectée au PC via son câble.
La
bibliothèque AccelStepper doit être installée préalablement dans le logiciel Arduino du PC. Pour
ce faire, il suffit, dans le Menu « Outils », d'ouvrir
« Gérer les bibliothèques ». On peut alors rechercher
AccelStepper et l'installer.
Voilà le code Arduino :
/*Routine Arduino pour Star Tracker avec moteur pas à pas,
driver de moteur DRV 8825, microstepping à 32 µpas par pas,
utilisation de la bibliothèque de fonctions "accelstepper"
Rotation continue
Voir le blog "Astronomie par les trois bouts" :
https://astronomiebbb.blogspot.com/ */
// Inclut la bibliothèque "AccelStepper" :
#include <AccelStepper.h>
// Définit les connections Arduino destinées au contrôle du moteur pas à pas :
#define dirPin 2
#define stepPin 3
// Définit l'utilisation d'un driver (attribution de 1 au type d'interface) :
#define motorInterfaceType 1
// Définit la connection Arduino destinée au microstepping :
#define M012 4
// Création du moteur dans le code Arduino :
AccelStepper stepper = AccelStepper(motorInterfaceType, stepPin, dirPin);
void setup() {
// Fixe la vitesse maximale du moteur (indispensable) :
stepper.setMaxSpeed(1000);
// Fixe le microstepping :
pinMode (M012, OUTPUT);
digitalWrite (M012, HIGH);
}
void loop() {
// Fixe la vitesse de rotation en nombres de pas par seconde :
stepper.setSpeed(46.924);
// Fait tourner le moteur à la vitesse définie par setSpeed():
stepper.runSpeed();
}