Πίνακας περιεχομένων:

Δημιουργία τηλεχειριζόμενου ρομπότ Arduino Self Balancing: B-robot EVO: 8 βήματα
Δημιουργία τηλεχειριζόμενου ρομπότ Arduino Self Balancing: B-robot EVO: 8 βήματα

Βίντεο: Δημιουργία τηλεχειριζόμενου ρομπότ Arduino Self Balancing: B-robot EVO: 8 βήματα

Βίντεο: Δημιουργία τηλεχειριζόμενου ρομπότ Arduino Self Balancing: B-robot EVO: 8 βήματα
Βίντεο: Дейл Дакерти: Мы -- создатели 2024, Νοέμβριος
Anonim
Image
Image
Δημιουργία τηλεχειριζόμενου ρομπότ Arduino Self Balancing: B-robot EVO
Δημιουργία τηλεχειριζόμενου ρομπότ Arduino Self Balancing: B-robot EVO
Δημιουργία τηλεχειριζόμενου ρομπότ Arduino Self Balancing: B-robot EVO
Δημιουργία τηλεχειριζόμενου ρομπότ Arduino Self Balancing: B-robot EVO

Ακολουθήστε περισσότερα από τον συγγραφέα:

Pybot: Python + 3D Printed Robotic Arm
Pybot: Python + 3D Printed Robotic Arm
Pybot: Python + 3D Printed Robotic Arm
Pybot: Python + 3D Printed Robotic Arm
Απλή μηχανοκίνητη περιστρεφόμενη οθόνη (βασισμένη σε Arduino + ελεγχόμενη από το smartphone σας)
Απλή μηχανοκίνητη περιστρεφόμενη οθόνη (βασισμένη σε Arduino + ελεγχόμενη από το smartphone σας)
Απλή μηχανοκίνητη περιστρεφόμενη οθόνη (βασισμένη σε Arduino + ελεγχόμενη από το smartphone σας)
Απλή μηχανοκίνητη περιστρεφόμενη οθόνη (βασισμένη σε Arduino + ελεγχόμενη από το smartphone σας)
Robotic Arm Gripper
Robotic Arm Gripper
Robotic Arm Gripper
Robotic Arm Gripper

Σχετικά: Αγαπάμε τα ρομπότ, το DIY και την αστεία επιστήμη. Το JJROBOTS στοχεύει να φέρει τα ρομποτικά έργα Open πιο κοντά στους ανθρώπους παρέχοντας υλικό, καλή τεκμηρίωση, οδηγίες κατασκευής+κώδικα, πληροφορίες "πώς λειτουργεί" … Περισσότερα για jjrobots »

------------------------------------------------

ΕΝΗΜΕΡΩΣΗ: υπάρχει μια νέα και βελτιωμένη έκδοση αυτού του ρομπότ εδώ: Το B-robot EVO, με νέες δυνατότητες

------------------------------------------------

Πώς λειτουργεί;

Το B-ROBOT EVO είναι ένα τηλεκατευθυνόμενο ρομπότ arduino με εξισορρόπηση που δημιουργήθηκε με τρισδιάστατα εκτυπωμένα μέρη. Με δύο μόνο τροχούς, το B-ROBOT είναι σε θέση να διατηρεί την ισορροπία του συνεχώς χρησιμοποιώντας τους εσωτερικούς του αισθητήρες και οδηγώντας τους κινητήρες. Μπορείτε να ελέγξετε το Ρομπότ σας, κάνοντάς το να κινείται ή να περιστρέφεται, στέλνοντας εντολές μέσω Smartphone, Tablet ή PC ενώ διατηρεί την ισορροπία του.

Αυτό το αυτορυθμιζόμενο ρομπότ διαβάζει τους αδρανειακούς αισθητήρες του (επιταχυνσιόμετρα και γυροσκόπια ενσωματωμένα στο τσιπ MPU6000) 200 φορές ανά δευτερόλεπτο. Υπολογίζει τη στάση του (γωνία σε σχέση με τον ορίζοντα) και συγκρίνει αυτήν τη γωνία με τη γωνία -στόχο (0º εάν θέλει να διατηρήσει την ισορροπία χωρίς κίνηση, ή θετική ή αρνητική γωνία αν θέλει να προχωρήσει προς τα πίσω ή προς τα πίσω). Χρησιμοποιώντας τη διαφορά μεταξύ της γωνίας στόχου (ας πούμε 0º) και της πραγματικής γωνίας (ας πούμε 3º) οδηγεί ένα Σύστημα Ελέγχου για να στείλει τις σωστές εντολές στους κινητήρες για να διατηρήσει την ισορροπία του. Οι εντολές προς τους κινητήρες είναι επιταχύνσεις. Για παράδειγμα, εάν το ρομπότ έχει κλίση προς τα εμπρός (η γωνία του ρομπότ είναι 3º), τότε στέλνει μια εντολή στους κινητήρες να επιταχύνουν προς τα εμπρός έως ότου η γωνία αυτή μειωθεί στο μηδέν για να διατηρηθεί η ισορροπία.

Βήμα 1: Λίγο περισσότερο σε βάθος…

Λίγο περισσότερο σε βάθος…
Λίγο περισσότερο σε βάθος…
Λίγο περισσότερο σε βάθος…
Λίγο περισσότερο σε βάθος…
Λίγο περισσότερο σε βάθος…
Λίγο περισσότερο σε βάθος…

Το φυσικό πρόβλημα που λύνει το B-ROBOT ονομάζεται ανεστραμμένο εκκρεμές. Αυτός είναι ο ίδιος μηχανισμός που χρειάζεστε για να ισορροπήσετε μια ομπρέλα πάνω από το χέρι σας. Το σημείο περιστροφής βρίσκεται κάτω από το κέντρο μάζας του αντικειμένου. Περισσότερες πληροφορίες για το ανεστραμμένο εκκρεμές εδώ. Η μαθηματική λύση στο πρόβλημα δεν είναι εύκολη, αλλά δεν χρειάζεται να την καταλάβουμε για να λύσουμε το πρόβλημα ισορροπίας του ρομπότ μας. Αυτό που πρέπει να γνωρίζουμε είναι πώς πρέπει να κάνουμε για να αποκαταστήσουμε την ισορροπία του ρομπότ, ώστε να μπορέσουμε να εφαρμόσουμε έναν Αλγόριθμο Ελέγχου για την επίλυση του προβλήματος.

Ένα Σύστημα Ελέγχου είναι πολύ χρήσιμο στη Ρομποτική (βιομηχανικός αυτοματισμός). Βασικά είναι ένας κώδικας που λαμβάνει πληροφορίες από αισθητήρες και εντολές στόχου ως εισόδους και δημιουργεί, κατά συνέπεια, σήματα εξόδου που οδηγούν τους ενεργοποιητές ρομπότ (οι κινητήρες στο παράδειγμά μας) προκειμένου να ρυθμίσουν το σύστημα. Χρησιμοποιούμε έναν ελεγκτή PID (Proportional + Derivative + Integral). Αυτός ο τύπος ελέγχου έχει 3 σταθερές για την προσαρμογή των kP, kD, kI. Από τη Wikipedia: «Ένας ελεγκτής PID υπολογίζει μια τιμή« σφάλματος »ως τη διαφορά μεταξύ μιας μετρημένης [Εισόδου] και ενός επιθυμητού σημείου ρύθμισης. Ο ελεγκτής προσπαθεί να ελαχιστοποιήσει το σφάλμα προσαρμόζοντας [μια έξοδο]. " Έτσι, λέτε στο PID τι πρέπει να μετρήσει (το "Input"), πού θέλετε να είναι αυτή η μέτρηση (το "Setpoint",) και τη μεταβλητή που θέλετε να προσαρμόσετε για να συμβεί αυτό (η "Έξοδος".)

Το PID στη συνέχεια προσαρμόζει την έξοδο προσπαθώντας να κάνει την είσοδο ίση με το σημείο ρύθμισης. Για αναφορά, μια δεξαμενή νερού που θέλουμε να γεμίσουμε μέχρι ένα επίπεδο, το Input, Setpoint και Output θα είναι το επίπεδο σύμφωνα με τον αισθητήρα στάθμης νερού, την επιθυμητή στάθμη νερού και το νερό που αντλείται στη δεξαμενή. Το kP είναι το αναλογικό μέρος και είναι το κύριο μέρος του στοιχείου ελέγχου, αυτό το τμήμα είναι ανάλογο με το σφάλμα. Το kD είναι το Παράγωγο μέρος και εφαρμόζεται στο παράγωγο του σφάλματος. Αυτό το μέρος εξαρτάται από τη δυναμική του συστήματος (εξαρτάται από το ρομπότ, τους κινητήρες βάρους, αδράνειες…). Το τελευταίο, το kI εφαρμόζεται στο ολοκλήρωμα του σφάλματος και χρησιμοποιείται για τη μείωση των σταθερών σφαλμάτων, είναι σαν μια επένδυση στην τελική έξοδο (σκεφτείτε στα κουμπιά επένδυσης στο τιμόνι του αυτοκινήτου RC για να κάνετε το αυτοκίνητο να πάει εντελώς ευθεία, kI αφαιρεί την αντιστάθμιση μεταξύ του απαιτούμενου στόχου και της πραγματικής τιμής).

Στο B-ROBOT η εντολή διεύθυνσης από τον χρήστη προστίθεται στην έξοδο των κινητήρων (ο ένας κινητήρας με θετικό πρόσημο και ο άλλος με αρνητικό πρόσημο). Για παράδειγμα, εάν ο χρήστης στείλει την εντολή διεύθυνσης 6 για να στρίψει προς τα δεξιά (από -10 έως 10) πρέπει να προσθέσουμε 6 στην αριστερή τιμή κινητήρα και να αφαιρέσουμε 6 από το δεξί κινητήρα. Εάν το ρομπότ δεν κινείται προς τα εμπρός ή προς τα πίσω, το αποτέλεσμα της εντολής διεύθυνσης είναι ένα γύρισμα του ρομπότ

Βήμα 2: Τι γίνεται με το τηλεχειριστήριο;

"φόρτωση =" τεμπέλης"

Συνιστάται: