Βηµατικός Κινητήρας (step motor) Βασική δοµή Βηµατικού κινητήρα και διαφορές τους από τους DC κινητήρες Κινητήρες κατασκευασµένοι για να κινούνται κατά περιστροφικά βήµατα. Ιδανικοί για εφαρµογές ελέγχου θέσης χαµηλής ισχύος δεν απαιτούν σύστηµα κλειστού βρόγχου. Υπάρχει Ροπή συγκράτησης (holding torque) στην επιθυµητή γωνία Step motor Βασική ιδεά Στάτης ηλεκτροµαγνήτες Κανόνας δεξιού χεριού Ρότορας Ο τρόπος περιέλιξης παίζει ρόλο στην πολικότητα του µαγνητικού πεδίου http://www.youtube.com/watch?v=xlzcgqmzkwu&feature=player_embedded 37 Αρχή λειτουργίας Βηµατικού κινητήρα Οι βηµατικοί κινητήρες είναι είτε διπολικοί, απαιτώντας έτσι δυο πηγές ενέργειας ή µια πηγή µε δυνατότητα αλλαγής της πολικότητας, είτε µονοπολικοί, απαιτώντας µόνο µια πηγή. Τροφοδοτούνται από πηγές DC και χρειάζονται ψηφιακά κυκλώµατα για την εκκίνηση των διαδικασιών ενεργοποίησης των πηνίων, ώστε να περιστραφεί ο κινητήρας. Η ανάδραση δεν είναι πάντα απαραίτητη, αλλά η χρήση ενός κωδικοποιητή, ή κάποιου άλλου αισθητή θέσης µπορεί να εξασφαλίσει ακρίβεια στις εφαρµογές, που ο ακριβής έλεγχος θέσης αποτελεί βασική προϋπόθεση. Το πλεονέκτηµα της λειτουργίας χωρίς ανάδραση είναι, ότι δε χρειάζεται το σύστηµα ελέγχου κλειστού βρόχου. Γενικά οι βηµατικοί κινητήρες αποδίδουν λιγότερο από 1 hp (746 W) µε αποτέλεσµα να χρησιµοποιούνται µόνο σε εφαρµογές ελέγχου θέσης χαµηλής ισχύος. 38 Αρχή λειτουργίας Βηµατικού κινητήρα Οι βηµατικοί κινητήρες έχουν τα εξής χαρακτηριστικά λειτουργίας: µπορούν να περιστραφούν και στις δυο κατευθύνσεις, να κινηθούν µε ακρίβεια κατά συγκεκριµένη γωνία, να διατηρήσουν ροπή συγκράτησης υπό µηδενική ταχύτητα και να ελεγχθούν µε ψηφιακά κυκλώµατα. Η ακριβής κίνηση τους κατά βήµατα (steps) συγκεκριµένης γωνίας, γίνεται µε την εφαρµογή ψηφιακών παλµών σε ένα ηλεκτρικό κύκλωµα οδήγησης. Ο αριθµός και ο ρυθµός των παλµών ελέγχουν τη θέση και την ταχύτητα του άξονα του κινητήρα. Γενικά οι βηµατικοί κινητήρες κατασκευάζονται µε δυνατότητα 12, 24, 72, 144, 180 και 200 βηµάτων ανά πλήρη περιστροφή, που σηµαίνει ότι ο άξονας περιστρέφεται 30, 15, 5, 2.5, 2 και 1.8 ανά βήµα. Εάν υπάρχει ανάγκη ακριβέστερης κίνησης, είναι δυνατό να σχεδιαστούν κυκλώµατα µικρο-βηµατισµού (micro-stepping), που να επιτρέπουν πολύ περισσότερα βήµατα ανά περιστροφή ο αριθµός µπορεί να φθάνει, ή και να ξεπερνά τα 10000 steps/rev. 39 Ένας βηµατικός κινητήρας, που διατίθεται στο εµπόριο, αποτελείται από έναν µεγάλο αριθµό πόλων, που καθορίζει έναν αντίστοιχα µεγάλο αριθµό θέσεων ισορροπίας του κινητήρα. Στην περίπτωση ενός βηµατικού κινητήρα µόνιµου µαγνήτη, ο στάτορας αποτελείται από πόλους µε περιέλιξη, ενώ οι πόλοι του ρότορα είναι µόνιµοι µαγνήτες. Η διέγερση διαφορετικών συνδυασµών περιελίξεων µετακινεί και σταθεροποιεί τον ρότορα σε διαφορετικές θέσεις. Για να κατανοήσετε την κατά βήµατα περιστροφή ενός βηµατικού κινητήρα, θεωρήστε µια απλή διάταξη, η οποία αποτελείται από τέσσερις πόλους στάτορα και έναν ρότορα µόνιµου µαγνήτη, όπως φαίνεται στο σχήµα 2. Στο βήµα 0 ο ρότορας είναι σε ισορροπία, διότι οι αντίθετοι πόλοι του στάτορα και του ρότορα είναι απέναντι και έλκονται. Ο κινητήρας µπορεί να µείνει σ αυτή τη θέση και να ανταπεξέλθει σε ροπή, της οποίας η µέγιστη τιµή ονοµάζεται ροπή συγκράτησης (holding torque), εφόσον οι πολικότητες των πηνίων του στάτορα δε µεταβληθούν. Σε περίπτωση αλλαγής της πολικότητας του στάτη (βήµα 0 βήµα 1), εφαρµόζεται ροπή στον ρότορα, αναγκάζοντάς τον να κινηθεί στην ωρολογιακή διεύθυνση κατά 90, σε µια νέα θέση ισορροπίας (βήµα 1-step 1). Όταν µεταβληθούν ξανά οι πολικότητες του στάτορα (βήµα 1 βήµα 2), τότε ο ρότορας υπόκειται σε ροπή, που τον µεταφέρει στο βήµα 2. Αλλάζοντας διαδοχικά τις πολικότητες µ αυτό τον τρόπο, ο ρότορας µπορεί να µετακινηθεί σε διαδοχικές θέσεις ισορροπίας στην ωρολογιακή φορά. Η αντιωρολογιακή κίνηση µπορεί να επιτευχθεί αλλάζοντας τις πολικότητες στην αντίθετη κατεύθυνση. Η ροπή του κινητήρα συνδέεται άµεσα µε τη ισχύ του µαγνητικού πεδίου των πόλων και του ρότορα. 40
Αρχή λειτουργίας Βηµατικού κινητήρα: Βηματισμός*με*ενεργοποίηση*μίας*φάσης Αρχή λειτουργίας Βηµατικού κινητήρα: Βηματισμός*με*ενεργοποίηση*δύο*φάσεων 41 42 Αρχή λειτουργίας Βηµατικού κινητήρα: Βηματισμός*μισού*βήματος Δύο Βασικές κατηγορίες Βηµατικών κινητήρων Μονοπολικός βηµατικός κινητήρας Μονοπολικοί βηµατικοί κινητήρες Απαιτούν µία πηγή τροφοδοσίας Έχουν 6 ή 5 ακροδέκτες όταν η µεσαίες λήψεις των πηνίων είναι βραχυκυκλωµένες Διπολικοί κινητήρες Απαιτούν δύο πηγές τροφοδοσίας Έχουν 4 ακροδέκτες Διπολικός βηµατικός κινητήρας Μείωση του βήµατος από 90 ο σε 45 ο Η επιλογή µεταξύ της χρήσης µονοπολικού ή διπολικού κινητήρα εξαρτάται από την απλότητα του κυκλώµατος οδήγησης και από την απόδοση ισχύος. Οι διπολικοί κινητήρες δίδουν περί το 30% µεγαλύτερη ροπή από τους µονοπολικούς του ίδιου µεγέθους. Αυτό οφείλεται στο ότι στους µονοπολικούς κινητήρες ενεργοποιείται κάθε φορά µόνο το µισό τύλιγµα. Αντίθετα ένας διπολικός κινητήρας ενεργοποιεί κάθε φορά ολόκληρο το τύλιγµα. Για την οδήγηση των διπολικών κινητήρων απαιτείται πιο περίπλοκο κύκλωµα ελέγχου από τους µονοπολικούς κινητήρες µε αποτέλεσµα την αύξηση του κόστος της εφαρµογής. 43 44
Οδήγηση'Μονοπολικού'βηματικού'κινητήρα'' Βηματικός'κινητήρας' 'σε'λειτουργία' Τα τυλίγµατα και η τοµή µονοπολικού κινητήρα. Ο ρότορας είναι µόνιµος µαγνήτης Απαιτείται µόνο µία τάση τροφοδοσίας Βήµατα οδήγησης µονοπολικού κινητήρα http://www.youtube.com/watch?v=vxxnpjbxg3m http://www.probotix.com/stepper_motors/unipolar_bipolar/ Αρ. Βήµατος Q1 Q2 Q3 Q4 1 ON OFF ON OFF 2 OFF ON ON OFF 3 OFF ON OFF ON 4 ON OFF OFF ON 5 ON OFF ON OFF Το κύκλωµα και η διαδοχή βηµάτων µονοπολικού κινητήρα µε ταυτόχρονη ενεργοποίηση δύο φάσεων. Τα χρώµατα των καλωδίων δεν είναι τυποποιηµένα. 45 (Darlington Array) Αρ. Βήµατος Q1 Q2 Q3 Q4 1 ON OFF ON OFF 2 OFF ON ON OFF 3 OFF ON OFF ON 4 ON OFF OFF ON 5 ON OFF ON OFF 46 Οδήγηση µονοπολικού βηµατικού κινητήρα Διαµόρφωση οδήγησής τεσσάρων καλωδίων µε το ολοκληρωµένο ULN2004-3 ή ULN2803 (Darlington Array) Βιβλιοθήκη του Arduino για βηµατικούς κινητήρες (Stepper Library) Συναρτήσεις της βιβλιοθήκης Stepper Stepper my_stepper( value1, pin1, pin2 ) my_stepper( value1, pin1, pin2, pin3, pin4 ) in1 in2 in3 in4 Αρ. Βήµατος Q1 Q2 Q3 Q4 my_stepper.setspeed(value2) my_stepper.step(value3) 1 ON OFF ON OFF 2 OFF ON ON OFF 3 OFF ON OFF ON 4 ON OFF OFF ON 5 ON OFF ON OFF Stepper : Ορισµός τύπου συνάρτησης για βηµατικούς κινητήρες. my_stepper : Το όνοµα που θέλω για την συνάρτηση περιγραφής του βηµατικού κινητήρα π.χ. my_stepper1, my_stepper2 Οι αριθµοί των ορισµάτων στην συνάρτηση my_stepper εξαρτάται από τον τρόπο καλωδίωσης του κινητήρα (σύνδεση δύο ή τεσσάρων καλωδίων) value1: Όρισµα που αντιστοιχεί στον αριθµός των βηµάτων για µια πλήρη περιστροφή του κινητήρα setspeed( ) : Συνάρτηση που ορίζει την ταχύτητα περιστροφής value2 σε rpm. Προσοχή, δεν γίνεται εκκίνηση του κινητήρα µε την κλήση της συνάρτησης απλά ορίζετε η ταχύτητα που θα έχει όταν κινείτε. Step( ) : Συνάρτηση που κινεί τον βηµατικό κινητήρα κατά value3 βήµατα µε ταχύτητα που ορίστηκε από την value2. Προσοχή, κατά την εκτέλεση της ο µικροελεγκτής δεν εκτελεί τις επόµενες εντολές δηλαδή, περιµένει µέχρι να ολοκληρωθεί η κίνηση. Για παράδειγµα αν ορίσουµε την ταχύτητα σε 1 rpm και εκτελέσουµε την συνάρτηση Step(100) για ένα κινητήρα 100 βηµάτων τότε ο χρόνος εκτέλεσης της θα είναι 1 min. Συνιστάται να κρατάµε την ταχύτητα υψηλή και να εκτελούµε µικρό αριθµό βηµάτων σε κάθε κλήση της step( ) 47 48
Παράδειγµα 1 οδήγησης βηµατικού κινητήρα (µονοπολικό ή διπολικό) Παράδειγµα 2 οδήγησης βηµατικού κινητήρα (µονοπολικό ή διπολικό) Το παρακάτω πρόγραµµα οδηγεί ένα µονοπολικό (ή διπολικό βηµατικό) κινητήρα περιστρέφοντάς τον µε περιοδική εναλλαγή της φοράς περιστροφής του κάθε 500msec. Ο κινητήρας συνδέεται στους ακροδέκτες 8, 9 (πηνίο 1), 10 και 11 (πηνίο 2) του µικροελεγκτή. Στο παρακάτω πρόγραµµά ρυθµίζουµε την κίνηση ενός βηµατικού κινητήρα ανάλογα µε την περιστροφή του ποτενσιοµέτρου που είναι συνδεδεµένο στην θύρα Α0 του µικροελεγκτή Figure 3: Potentiometer schematic symbol 49 50 50 Σύνδεση µε τον Arduino για το παράδειγµα 2 To ολοκληρωµένο ULN2803A είναι αντίστοιχο των ULN2004-3 Διπολικός βηµατικός κινητήρας Τα τυλίγµατα και η τοµή διπολικού κινητήρα. Ο ρότορας είναι µόνιµος µαγνήτης. Απαιτούνται δύο διαφορετικές τάσεις τροφοδοσίας. Για την παραγωγή κίνησης απαιτείται περιοδικά η αναστροφή της τάσης στα άκρα των τυλιγµάτων 1a-1b και 2a-2b Για την οδήγηση διπολικού κινητήρα χρησιµοποιούνται συνήθως H-Γέφυρες ώστε να αποφύγουµε την χρήση δεύτερης πηγής τροφοδοσίας διότι η εναλλαγή της φοράς γίνεται µε την ενεργοποίηση κατάλληλων τρανζίστορ Βήµατα οδήγησης διπολικού κινητήρα 51 52
Κύκλωµα οδήγηση Διπολικού βηµατικού κινητήρα µε το ολοκληρωµένο L293D και τον Arduino Διπολικός Μονοπολικός Ίδιο κύκλωµα οδήγησης, η µόνη αλλαγή είναι η ύπαρξη µεσαίων λήψεων στα πηνία που Vcc τοποθετούνται στην τάση οδήγησης του βηµ ατικού κινητήρα. Κύκλωµα οδήγησης Μονοπολικού βηµατικού κινητήρα µε το ολοκληρωµένο L293D Είσοδοι από Arduino Διαµόρφωση οδήγησής τεσσάρων καλωδίων Vcc +5V +5V N, NE PACKAGE (TOP VIEW) 1,2EN 1 ή 0 1A 1Y HEAT SINK AND GROUND 2Y 1 ή 0 2A V CC2 1 2 3 4 GN 13 5 D 12 6 11 7 8 16 15 14 10 9 V CC1 4A 4Y HEAT SINK AND GROUND 3Y 3A 3,4EN +5V 1A 1,2EN 2A 2 1 7 3 6 1Y 2Y Pin 2 Pin 7 Pin 15 Pin 10 3A 3,4EN 4A 10 9 15 11 14 3Y 4Y Σε αυτό το κύκλωµα το EN είναι µόνιµα στα 5 volts Ίδιο κύκλωµα µε αυτό του διπολικού κινητήρα απλά δεν υπάρχουν οι µεσαίες λήψεις στα πηνία ΒΒ και ΑΑ 53 54 Κύκλωµα οδήγηση Διπολικού βηµατικού κινητήρα µε το ολοκληρωµένο L298 από το motor shield Summary' Operating*Voltage* 5V*to*12V* Motor*controller* L298P,*Drives*2*DC*motors*or*1*stepper*motor* Max*current* 2A*per*channel*or*4A*max*(with*external*power*supply)* Current*sensing* 1.65V/A,*AD*converter*in*3V3*for*max*current*2A* Free*running*stop*and*brake*function* * * Function Channel-A Channel-B Direction Digital12 Digital13 Speed,(PWM) Digital3 Digital11 Brake Digital9 Digital8 Current,Sensing Analog0 Analog1 #include <Stepper.h> #define STEPS 100 // change this to the number of steps on your motor // create an instance of the stepper class, specifying // the number of steps of the motor and the pins it's // attached to Stepper stepper(steps, 12, 13); int previous = 0; // the previous reading from the analog input void setup() { stepper.setspeed(30); // set the speed of the motor to 30 RPMs } void loop() { int val = analogread(2); // move a number of steps equal to the change in the // sensor reading stepper.step(val - previous); // remember the previous value of the sensor previous = val; } 55 Διπολικός βηµατικός κινητήρας Οι βηµατικοί κινητήρες και τα κυκλώµατα οδήγησής τους διαιρούνται σε δύο βασικές κατηγορίες στα διπολικά και στα µονοπολικά. Οι κινητήρες που διαθέτουν 4 καλώδια σύνδεσης µε την τροφοδοσία είναι διπολικοί. Το ρεύµα ρέει στα πηνία των διπολικών κινητήρων σε αµφότερες τις διευθύνσεις. Έτσι, απαιτείται κάθε φορά η αλλαγή της πολικότητας στα άκρα των τυλιγµάτων. Οι βηµατικοί διπολικοί κινητήρες µπορούν να συνδεθούν µε διάφορους τρόπους καθιστώντας τους έτσι πιο ευέλικτους από τους µονοπολικούς. Οι διπολικοί κινητήρες διαθέτουν δύο τυλίγµατα και 4 καλώδια για τη σύνδεση µε την τροφοδοσία (τα 1a, 1b, 2a, 2b). Σε αντίθεση µε τους µονοπολικούς κινητήρες δεν διαθέτουν µεσαία λήψη στο τύλιγµα. Επειδή δεν υπάρχει µεσαία λήψη στο τύλιγµα, το ρεύµα περνάει µέσα από ολόκληρο αντί µέσα από το µισό τύλιγµα παράγοντας έτσι µεγαλύτερη ροπή από αυτήν των µονοπολικών κινητήρων του ιδίου µεγέθους. Το µειονέκτηµά τους είναι η απαίτηση της χρησιµοποίησης πολυπλοκότερων κυκλωµάτων οδήγησης. Ως κυκλώµατα οδήγησης για την αλλαγή της πολικότητας στους ακροδέκτες χρησιµοποιούνται κυκλώµατα γνωστά ως γέφυρα H-bridge (Σχήµα 21.41). Το ρεύµα ρέει µέσα από το αριστερό τύλιγµα όταν άγουν τα τρανζίστορ Q1 και Q4 ενώ τα Q2 και Q3 βρίσκονται σε αποκοπή. Η ροή του ρεύµατος στο ίδιο τύλιγµα αλλάζει φορά όταν άγουν τα τρανζίστορ Q2 και Q3, ενώ τα Q1 και Q4 βρίσκονται σε αποκοπή. Ιδιαίτερη προσοχή χρειάζεται κατά την οδήγηση του κινητήρα, ώστε να µην έλθουν σε αγωγιµότητα ταυτόχρονα και τα 4 τρανζίστορ. Με τον ίδιο τρόπο οδηγούνται τα τρανζίστορ Q5, Q6, Q7 και Q8 56
Τρόποι'σύνδεσης'και'διαφορές'στην'λειτουργία' Μονοπολικός'βηματικός'κινητήρας'2/2 Οι µονοπολικοί βηµατικοί κινητήρες αποτελούνται από δύο τυλίγµατα µε µεσαία λήψη. Αυτή η µεσαία λήψη είτε µεταφέρεται για κάθε τύλιγµα εξωτερικά ως καλώδιο σύνδεσης, είτε συνδέονται οι δύο µεσαίες λήψεις εσωτερικά και εξωτερικά µεταφέρεται ένα καλώδιο σύνδεσης. Έτσι, οι µονοπολικοί κινητήρες διαθέτουν είτε 5 είτε 6 αγωγούς σύνδεσης µε την τροφοδοσία. Συνήθως, συνδέονται τα άκρα των τυλιγµάτων διαδοχικά µε την τάση τροφοδοσίας και οι µεσαίες λήψεις σταθερά µε το µηδέν. Τα µονοπολικά κυκλώµατα οδήγησης µπορούν να στέλνουν ρεύµα διά µέσου των τυλιγµάτων µόνο σε µια διεύθυνση. Με τη χρησιµοποίηση µονοπολικών κυκλωµάτων οδήγησης επιτυγχάνονται υψηλότερες ταχύτητες. Οι µονοπολικοί κινητήρες διαθέτουν δύο τυλίγµατα σε έναν πόλο µε τέτοιο τρόπο ώστε όταν ενεργοποιείται το ένα κύκλωµα να δηµιουργείται ένας µαγνητικός βόρειος πόλος, ενώ όταν ενεργοποιείται το άλλο κύκλωµα δηµιουργείται ένας µαγνητικός νότιος πόλος. Η ροή του ρεύµατος διά µέσου ενός τυλίγµατος είναι πάντοτε η ίδια και δεν αλλάζει φορά. Με τον τρόπο αυτό απλουστεύεται το κύκλωµα οδήγησης. Όµως, η ροπή είναι κατά 30% µικρότερη από αυτήν του διπολικού τυλίγµατος. Στην πραγµατικότητα τροφοδοτείται κάθε φορά µόνο το µισό πηνίο του κάθε ενός τυλίγµατος του πόλου. 5 8 57 Σύνοψη 58 Πλεονεκτήµατα και Μειονεκτήµατα βηµατικών κινητήρων Πλεονεκτήµατα των βηµατικών κινητήρων: Το σφάλµα δεν είναι συσωρευτικό. Παρέχουν σχετικά µεγάλη ακρίβεια κίνησης ακόµη και όταν πρόκειται για έλεγχο ανοικτού βρόγχου Ο έλεγχος είναι σχετικά φθηνός, αφού λόγω του ανοικτού βρόγχου δεν απαιτείται πρόσθετος εξοπλισµός όπως αισθητήρια και άλλα ηλεκτρονικά στοιχεία απαραίτητα για τον έλεγχο Συνοψίζοντας, Οι βηµατικοί κινητήρες λειτουργούν σε ανοικτό βρόγχο, ενώ οι περισσότεροι κινητήρες συνεχούς DC λειτουργούν σε κλειστό βρόγχο Οι βηµατικοί κινητήρες ελέγχονται εύκολα µε µικροεπεξεργαστή, ή µε µικροελεγκτή. Όµως λογικά και ηλεκτρονικά κυκλώµατα οδήγησης είναι λίγο περίπλοκα. Επειδή δεν διαθέτουν καρβουνάκια, δεν σχηµατίζονται σπινθήρες και αιχµές τάσεις όπως στους αναλογικούς Η ακρίβειά τους περιορίζεται στο µέγεθος του βήµατος σε αντίθεση µε τους αναλογικούς κινητήρες Αν ένας βηµατικός κινητήρας υπερφορτισθεί µπορεί να µην αντιδράσει καθόλου και έτσι να µη γίνει αντιληπτό το σφάλµα αυτό λόγω του ανοικτού βρόγχου Δεν παρουσιάζουν σοβαρά προβλήµατα σταθερότητας ακόµη και σε ανοικτό βρόγχο Οδηγούνται πολύ εύκολα από µικροεπεξεργαστή/ µικροελεγκτή Μειονεκτήµατα των βηµατικών κινητήρων: Συγκρινόµενοι µε τους DC προσφέρουν χαµηλή ροπή Συγκρινόµενοι µε τους DC έχουν περιορισµένη ταχύτητα Οι κινητήρες DC έχουν ταχύτερη απόκριση συγκρινόµενοι µε τους Βηµατικούς κινητήρες Λόγω της βηµατικής κίνησης παρουσιάζουν µεγάλες δονήσεις Αν χαθεί ένα βήµα µπορούν να προκύψουν µεγάλα σφάλµατα σε ανοικτό βρόγχο Είναι σχετικά ακριβοί Είναι πιο ογκώδεις 59 60