/* ΓΕΝΙΚΕΣ ΟΔΗΓΙΕΣ Ο κώδικας δεν είναι πλήρης :) Υπάρχουν κενά τα οποία συμπληρώνετε με κριτήριο το τι θέλετε να κάνει η ΔΙΚΗ ΣΑΣ εφαρμογή. Διαβάζετε τις οδηγίες που υπάρχουν μέσα στον κώδικα, κάνουν καλό :) */ // Ο κώδικας που μας βοηθάει να χρησιμοποιήσουμε στο δικό μας πρόγραμμα // έναν βηματικό κινητήρα, βρίσκεται στην βιβλιοθήκη Stepper. Γιαυτό και με // την οδηγία #include που βλέπετε πιο κάτω, λέμε ουσιαστικά στο δικό μας // πρόγραμμα που να πάει να βρει τις εντολές για το μοτεράκι. #include // Σύμφωνα με την βιβλιοθήκη, για να χειριστούμε έναν κινητήρα μέσα στο πρόγραμμά μας, // πρέπει να τον δηλώσουμε αρχικά ως αντικείμενο τύπου Stepper, δηλώνοντας ταυτόχρονα // ποια pins θα χρησιμοποιήσουμε και σε πόσα βήματα θα ολοκληρώνεται μια περιστροφή. int in1Pin = 12; int in2Pin = 11; int in3Pin = 10; int in4Pin = 9; int stepsPerRevolution = 512; // αυτός ο αριθμός εξαρτάται από το συγκεκριμένο // μοντέλο κινητήρα που έχουμε αγοράσει Stepper motor(stepsPerRevolution, in1Pin, in2Pin, in3Pin, in4Pin); int steps; // μεταβλητή στην οποία θα αποθηκεύουμε τo αριθμό των βημάτων // που θέλουμε να προχωρήσει ο κινητήρας void setup() { // Σύμφωνα με την βιβλιοθήκη, τα pins του κινητήρα πρέπει να δηλωθούν // ως έξοδοι pinMode(in1Pin, OUTPUT); pinMode(in2Pin, OUTPUT); pinMode(in3Pin, OUTPUT); pinMode(in4Pin, OUTPUT); // Αν θέλουμε να καθορίσουμε την ταχύτητα περιστροφής, χρησιμοποιούμε την // εντολή setSpeed(). Εδώ προφανώς μπορείτε να αλλάξετε την τιμή. motor.setSpeed(20); // Έναρξη σειριακής επικοινωνίας με το PC για να μπορούμε να // βλέπουμε τιμές αισθητήρων, αλλά και να δίνουμε τιμές από το πληκτρολόγιο. // Μπορεί και να μην χρειαστεί, αλλά ας το έχουμε ως ρύθμιση. Serial.begin (9600); } void loop() { // Για να περιστραφεί ο βηματικός κινητήρας, πρέπει να ορίσουμε το // πλήθος των βημάτων που επιθυμούμε. // Μπορεί να χρησιμοποιηθεί αρνητικός αριθμός βημάτων, για να // αλλάξει η κατεύθυνση περιστροφής. (δοκιμάστε το...) // Στον κώδικα που ακολουθεί, δίνουμε τα επιθυμητά βήματα μέσω του // πληκτρολογίου μας στο Serial Monitor steps = Serial.parseInt(); // Περιστρέφουμε τον κινητήρα με την εντολή step() // και οπωσδήποτε πρέπει να του δώσουμε κάποιο χρόνο (delay) για // να προλάβει να ολοκληρώσει την κίνηση motor.step(steps); delay(100); }