AbstractC - en trumma klocka (1 / 5 steg)
Steg 1: Steg 1: bygga din Motor sköld (eller köpa en och hoppa över detta steg)
Placera dina komponenter på brädan lödning. Försök att hitta en bra kombination så att det gör det lättare att löda. Pololus kommer att läggas ovanpå kvinnliga stift: om de bränna, kan du ersätta dem lätt.
Innan fastställande allt, kontrollera att den arduino och pololu plats på stiften.
Kondensatorn går parallellt med 12V-ingång: kondensator + går samman med 12V, kondensator - går till marken.
När allt är på plats, tejpa med maskeringstejp, tillbaka i styrelsen och löda stiften (detta kommer att hålla dem typ av stadigt). Ett bra knep att ha stift lödas rakt är att löda den första stiftet och den sista.
När detta steg är klar, du kommer att behöva löda kablarna pololu drivrutiner: detta är HELVETET och tar evigheter, vara beredd.
Montera din arduino och visualisera var antalet ditt stift. Samma för pololu.
Kolla databladet. Denna sköld, ansluten jag alla micro-stepping stift av pololus till samma arduino stift: 10, 11 och 12. Jag använde stift 2 till 9 för de steg och riktning (Pololu 1: steg - PIN2-, dir - pin3 / / Pololu 2: steg - pin4, dir - stift 5... etc). Återställ och sömn är sammankopplade. Du har två trädgårdar på Pololu, de kan anslutas tillsammans, och sedan till stora marken.
Börja kortsluter en pololu, sedan den andra, det är det enklaste sättet.
Kolla dina anslutningar med en multimeter. Om något går fel, kontrollera att allt som ska anslutas pipa. Kontrollera också att vad ska inte anslutas inte pipa. Förbered ett förstoringsglas!
Ladda upp en enkel kod och ansluta din motors bara för att kolla din motors kör:
#include < AccelStepper.h >
AccelStepper M0(A5, A6, A7);
AccelStepper M0(1, 3, 2), M1 (1, 5, 4), M2 (1, 7, 6), M3 (1, 9, 8); steg, dir
istället för att ringa M1(1,3,2)
AccelStepper M [] = {M0, M1, M2, M3};
int ms1 = 12, ms2 = 11, ms3 = 10; deklarera micro stegmotor stift (alla moduler har samma ms stiften)
void setup() {
pinMode (ms1, produktionen);
pinMode (ms2, produktionen);
pinMode (ms3, produktionen);
MicroStepping i låg gör det möjligt för att bang med mer kraft på trumma
digitalWrite (ms1, låg);
digitalWrite (ms2, låg);
digitalWrite (ms3, låg);
}
Ogiltig loop () {
för (int jag = 0; jag < = 3; i ++) {
fördröjning (1000);
M[i].setMaxSpeed(10000);
M[i].setAcceleration(100000);
M[i].Move(50); avståndet à parcourir (på n'est pas encore parti) / /
medan (M[i].distanceToGo() > 0) {
M[i].Run(); vid avance d'un pas
}
fördröjning (temps); SI la baguette reste un peu sur le tambour / / / /
M[i].Move(-50); avståndet à parcourir (på n'est pas encore parti) / /
medan (M[i].distanceToGo() < 0) {
M[i].Run(); vid avance d'un pas
}
}
}