Hoi,
is hier iemand die mij kan helpen met een Arduino vraagstuk....
Ik wil een draaischijf gaan maken die wordt aangedreven door een stappenmotor.
Het idee is om een digitale uitgang van een wisseldecoder een puls te latengeven en zo de stappenmotor 1 rail positie te laten draaien.
Het probleem voor nu zit hem in de software te schrijven en dan hoe aan te sluiten.
ik heb de volgende software gevonden maar dan draait de motor constant rechts om.
de knoppen wil ik later dus vervangen voor een puls uit een decoder.
weet echter niet hoe de knoppen aan te sluiten op de arduino
/*
Een library en een paar constantes definiƫren
*/
#include <Stepper.h>
#define STAPPEN_PER_MOTOR_OMWENTELING 32
#define STAPPEN_PER_TOTAAL_OMWENTELING1 2048 // 64 x 32 = 2048 = 1 omwenteling rechtsom
#define STAPPEN_PER_TOTAAL_OMWENTELING2 -1024 // -1024 = 0.5 omwenteling linksom
Stepper small_stepper(
STAPPEN_PER_MOTOR_OMWENTELING,
8,
10,
9,
11); // stapenmotor variabele
int knop1 = 1; // knop aan pin 1
int knop2 = 2; // knop aan pin 2
int toestandknop1 = 0; // knop1 variabele
int toestandknop2 = 0; // knop2 variabele
int TeMakenStappen; // variabele voor aantal stappen
/*
Het programmablok void setup wordt eenmaal beschreven
*/
void setup(){
pinMode(knop1, INPUT); //knop1 is input
pinMode(knop2, INPUT); //knop2 is input
}
/*
Het programmablok void loop herhaalt zich keer op keer
*/
void loop(){
toestandknop1 = digitalRead(knop1); // lees toestand knop1
toestandknop2 = digitalRead(knop2); // lees toestand knop2
if (toestandknop1 == HIGH) {
TeMakenStappen = STAPPEN_PER_TOTAAL_OMWENTELING1 ; // draai 1x rechtsom
small_stepper.setSpeed(500); // zet de snelheid
small_stepper.step(TeMakenStappen); // loop
}else if (toestandknop2 == HIGH) {
TeMakenStappen = STAPPEN_PER_TOTAAL_OMWENTELING2 ; // draai 0,5 keer linksom
small_stepper.setSpeed(500); // zet de snelheid
small_stepper.step(TeMakenStappen); // loop
}
}