Αισθητήρας Γυροσκοπίου HiTechnic για LEGO Mindstorms NXT

Εισαγωγή

Ο HiTechnic Γυροσκοπικός Αισθητήρας περιλαμβάνει ένα γυροσκοπικό αισθητήρα απλού άξονα που ανιχνεύει την περιστροφή και επιστρέφει μια τιμή που αντιπροσωπεύει τον αριθμό των μοιρών ανά δευτερόλεπτο περιστροφής, επιτρέποντας το NXT να μετρά την πρόσθετη διάσταση της περιστροφής. Ο Γυροσκοπικός Αισθητήρας θα σας επιτρέψει να εντοπίσετε με ακρίβεια την περιστροφή του NXT σας. Ο γυροσκοπικός αισθητήρας επιστρέφει τον αριθμό των μοιρών ανά δευτερόλεπτο περιστροφής και επίσης δείχνει την κατεύθυνση της περιστροφής. Μετρά +/-360° ανά δευτερόλεπτο και κατασκευάζει ρομπότ που μπορούν να ισορροπούν, κολυμπούν, ή να εκτελούν άλλες λειτουργίες όπου η μέτρηση της περιστροφής είναι απαραίτητη.

Ο Γυροσκοπικός Αισθητήρας NXT συνδέται σε μια θύρα εισόδου του NXT  με τη χρήση τυποποιημένου 6-πλού καλωδίου και αξιοποιεί την διεπαφή αναλογικού αισθητήρα. Ο ρυθμός περιστροφής που μπορεί να διαβασεί είναι περίπου μέχρι 300 φορές ανά δευτερόλεπτο.

Ο Αισθητήρας Γυροσκοποίου NXT είναι κατασκευασμένος σε ένα πρότυπη θήκη αισθητήρων Mindstorms για να ταιριάζει με τα υπόλοιπα στοιχεία Mindstorms.

Ο άξονας της μέτρησης είναι στο κατακόρυφο επίπεδο με τον γυροσκοπικό αισθητήρα να τοποθετείται με το μαύρο  καπάκι προς τα επάνω οπώς φαίνεται δίπλα.

Για μια γρήγορη δοκιμή του νέου αισθητήρα σας, τοποθετήστε τον στη θύρα 1 του NXT σας και επιλέξτε  View – Ambient light – Port 1 στην οθόνη του ΝΧΤ. Καθώς περιστρέφετε τον αισθητήρα όπως φαίνεται, θα παρατηρήσετε ότι οι μετρήσεις θα αλλάξουν από την ονομαστική αξία κέντρου 40. Η ταχύτερη περιστροφή του αισθητήρα, θα δόσει μεγαλύτερη απόκλιση από 40. Αυτή είναι μια δοκιμή μόνο και δεν αποτελεί απόδειξη του τρόπου με τον οποίο ο αισθητήρας θα πρέπει να χρησιμοποιείται. Παράδειγμα

Προγραμματισμός

Mindstorms NXT-G

Ο Γυροσκοπικός Αισθητήρας μπορεί να προγραμματιστεί με την χρήση του λογισμικού LEGO Mindstorms NXT-G με την εισαγωγή του μπλοκ Γυροσκοπικός Αισθητήρας. Αυτο και άλλα μπλοκ προγραμματισμού αισθητήρων HiTechnic ειναι διαθέσιμα την σελίδα downloads.

Μπλοκ Γυροσκοπικού Αισθητήρα

Το Μπλοκ Γυροσκοπικού Αισθητήρας παρέχει πρόσβαση στην έξοδο του αισθητήρα και σε άλλα χαρακτηριστικά.

Αυτό το βύσμα συνδέει τον αριθμό της θύρας του ΝΧΤ σας στην οποία είναι συνδεδεμένος  ο αισθητήρας πυξίδας.

  1. Αυτό το βύσμα εισάγει την τιμή σκανδαλισμού.
  2. Αυτό το βύσμα εισάγει την κατάσταση σκανδαλισμού σύγκρισης.
  3. Αυτό το βύσμα εξάγει τον σκανδαλισμό.
  4. Αυτό το βύσμα εισάγει την τιμή αντισταθμησης.
  5. Αυτό το βύσμα εξάγει την μετρούμενη τιμή του ρυθμού περιστροφής.
  6. Αυτό το βύσμα εξάγει μια λογική έξοδο , αληθή ή ψευδή, όταν η τιμή εξόδου και κατάστασης που επιλέγονται από την Σύγκριση (Compare)  πληρούνται.

Gyro Sensor Block Front Panel

  1. Επιλέξτε την Θύρα που είναι συνδεδεμένος ο Αισθητήρας Γυροσκοπίου. Προεπιλεγμενη είναι η Θύρα 3. Μπορείτε να αλλάξετε αυτή την τιμή.
  2. Η τιμή εξόδου του αισθητήρα μπορεί να επηρεασθεί από την θερμοκρασία και εργοστασιακές ανοχές οι οποίες προκαλούν μια μη μηδενική τιμή όταν ο αισθητήρας είναι σταθερός. Για να αντισταθμιστεί αυτό,  μια αντιστάθμιση μηδενισμού ή μια τιμή πόλωσης, που μπορεί να ρυθμίζεται από την είσοδο που λαμβάνεται από τον αισθητήρα όταν αυτός δεν περιστρέφεται.
  3. Μπορείτε να προσαρμόσετε την τιμή Σύγκρισης  στην οποία η έξοδος σκανδαλισμού θα αλλάξει.
  4. Η έξοδος σκανδαλισμού μπορεί να επιλέγεται μεγαλύτερη ή μικρότερη από την επιλογή του τύπου Trigger. Όταν η τιμή εξόδου και κατάστασης που επιλέγονται από την Σύγκριση (Compare)  πληρούνται, αυτό θα προκαλέσει μια λογική έξοδο  αληθή ή ψευδή (Boolean True/False).

Υπολογισμός της τιμής Αντιστάθμισης

Για τον υπολογισμό της τιμής αντιστάθμιση που απαιτείται για το «μηδέν» στην έξοδο του αισθητήρα είναι απαραίτητο να διαβάσετε την τιμή, ενώ ο αισθητήρας είναι απολύτως ακίνητος. Με το NXT-G αυτό μπορεί να γίνει με ανάγνωση και εμφάνιση της εξόδου η οποία μπορεί στη συνέχεια να χρησιμοποιηθεί για να εισέλθει ως αντιστάθμιση ή να έχει το πρόγραμμα υπολογίσει την αντιστάθμιση, όπως φαίνεται στο παρακάτω παράδειγμα προγράμματος.

Μπορείτε να κατεβάσετε τον κώδικα για αυτό το πρόγραμμα και άλλα παραδείγματα απο την σελίδα  downloads .

Άλλα περιβάλλοντα Προγραμματισμού

NXC

Η έξοδος του Αισθητήρα Γυροσκοποίου μπορεί να διαβαστείαπο την NXC  διαβάζοντας τον αισθητήρα οπώς φένεται στο παρακάτω παράδειγμα.

NXC Example code

#define GYRO_PORT IN_3 //Gyro on port 3
#define GYRO_Offset 602 //offset value to apply to the output value

long Gyro_value;

..

Gyrovalue=SensorRaw(GYRO_PORT)-GYRO_Offset;  //read the gyro sensor

..

Περισσότερες πληροφορίες είναι διαθέσιμες στο http://bricxcc.sourceforge.net/nbc/.

RobotC

const tSensors GyroSensor          = (tSensors) S1;   //gyro sensor//

#define offset 598       //offset value may vary depending on sensor & temperature
long Gyro_value;

task main()
{
Gyrovalue=SensorValue(GyroSensor)-offset;  //read the gyro sensor
….

}

Περισσότερες πληροφορίες είναι διαθέσιμες στο http://www-education.rec.ri.cmu.edu/robotc/

Σημειώσεις:

Η τελευταία έκδοση του μπλοκ γυροσκοποίου είναι διαθέσιμη στο www.hitechnic.com. Πηγαίνετε στην σελίδα λήψης για να κατεβάσετε όλα τα τμήματα προγραμματισμού HiTechnic.

Leave a Reply

You must be logged in to post a comment.