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

Arduino - Balance - Balancing Robot - Πώς να φτιάξετε ;: 6 βήματα (με εικόνες)
Arduino - Balance - Balancing Robot - Πώς να φτιάξετε ;: 6 βήματα (με εικόνες)

Βίντεο: Arduino - Balance - Balancing Robot - Πώς να φτιάξετε ;: 6 βήματα (με εικόνες)

Βίντεο: Arduino - Balance - Balancing Robot - Πώς να φτιάξετε ;: 6 βήματα (με εικόνες)
Βίντεο: Minecraft Live 2022 2024, Νοέμβριος
Anonim
Image
Image

Σε αυτό το σεμινάριο θα μάθουμε πώς να φτιάχνουμε ρομπότ εξισορρόπησης (ισορροπίας) Arduino που εξισορροπεί τον εαυτό του. Πρώτα μπορείτε να δείτε το σεμινάριο βίντεο παραπάνω.

Βήμα 1: Απαιτούμενο υλικό

Συναρμολόγηση του ρομπότ
Συναρμολόγηση του ρομπότ

Arduino Board (Uno) -

MPU-6050 GY521 Acc+Gyro-https://bit.ly/2swR0Xo

Σετ μοτέρ DC 6V 210RPM Encoder -

L298N Driver Motor -

Κουμπί εναλλαγής -

M3 Hex Threaded Spacer Screw Nut Set -

Ακρυλικό φύλλο Perspex -

3.7v 18650 Επαναφορτιζόμενος ιόντων λιθίου+φορτιστής-https://bit.ly/2LNZQcl

Μπαταρία 9V -

Jumper Wires -

Gun Glue Gun -

Κιτ και αναλώσιμα Arduino Starter (Προαιρετικά): Arduino Board & SCM Supplies #01 -

Arduino Board & SCM Supplies #02 -

Arduino Basic Learning Starter Kit #01 -

Arduino Basic Learning Starter Kit #02 -

Arduino Basic Learning Starter Kit #03 -

Mega 2560 Starter Kit with Tutorial -

Κιτ μονάδας αισθητήρα για Arduino #01 -

Κιτ μονάδας αισθητήρα για Arduino #02 -

Βήμα 2: Συναρμολόγηση του ρομπότ

Συναρμολόγηση του ρομπότ
Συναρμολόγηση του ρομπότ
Συναρμολόγηση του ρομπότ
Συναρμολόγηση του ρομπότ
Συναρμολόγηση του ρομπότ
Συναρμολόγηση του ρομπότ
  • Τρυπήστε τέσσερις γωνίες από 3 ακρυλικά φύλλα. (Εικόνα 1 και 2)
  • Μεταξύ κάθε ακρυλικού φύλλου θα είναι περίπου 8 καντίμετρα / 3,15 ίντσες. (Εικόνα 3)
  • Διαστάσεις ρομπότ (περίπου) 15cm x 10 cm x 20cm. (Εικόνα 4)
  • Ο κινητήρας DC και οι τροχοί θα τοποθετηθούν στο κέντρο (μεσαία γραμμή) του ρομπότ. (Εικόνα 5)
  • Το L298N Motor Driver θα τοποθετηθεί στο κέντρο του πρώτου ορόφου (μεσαία γραμμή) του ρομπότ. (Εικόνα 6)
  • Ο πίνακας Arduino θα τοποθετηθεί στον δεύτερο όροφο του ρομπότ.
  • Η μονάδα MPU6050 θα τοποθετηθεί στον τελευταίο όροφο του ρομπότ. (Εικόνα 7)

Βήμα 3: Συνδέσεις

Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις

Δοκιμάστε το MPU6050 και βεβαιωθείτε ότι λειτουργεί! Συνδέστε πρώτα το MPU6050 στο Arduino και δοκιμάστε τη σύνδεση χρησιμοποιώντας τους κωδικούς στο παρακάτω σεμινάριο. Το daha πρέπει να εμφανίζεται στη σειριακή οθόνη

Instructables Tutorial - MPU6050 GY521 6 Axis Accelerometer+Gyro

YouTube Tutorial - MPU6050 GY521 6 Axis Accelerometer + Gyro

Η μονάδα L298N μπορεί να παρέχει το +5V που χρειάζεται το Arduino εφόσον η τάση εισόδου του είναι +7 V ή μεγαλύτερη. Ωστόσο, επέλεξα να έχω ξεχωριστή πηγή ισχύος για τον κινητήρα

Βήμα 4: Πώς λειτουργεί η εξισορρόπηση;

Πώς λειτουργεί η εξισορρόπηση
Πώς λειτουργεί η εξισορρόπηση
Πώς λειτουργεί η εξισορρόπηση
Πώς λειτουργεί η εξισορρόπηση
Πώς λειτουργεί η εξισορρόπηση
Πώς λειτουργεί η εξισορρόπηση
  • Για να διατηρηθεί το ρομπότ ισορροπημένο, οι κινητήρες πρέπει να αντισταθμίσουν την πτώση του ρομπότ.
  • Αυτή η ενέργεια απαιτεί ανατροφοδότηση και διορθωτικό στοιχείο.
  • Το στοιχείο ανάδρασης είναι το MPU6050, το οποίο δίνει επιτάχυνση και περιστροφή και στους τρεις άξονες, το οποίο χρησιμοποιείται από το Arduino για να γνωρίζει τον τρέχοντα προσανατολισμό του ρομπότ.
  • Το διορθωτικό στοιχείο είναι ο συνδυασμός κινητήρα και τροχού.
  • Το αυτορυθμιζόμενο ρομπότ είναι ουσιαστικά ένα ανεστραμμένο εκκρεμές.
  • Μπορεί να ισορροπηθεί καλύτερα εάν το κέντρο μάζας είναι υψηλότερο σε σχέση με τους άξονες των τροχών.
  • Αυτός είναι ο λόγος για τον οποίο έχω τοποθετήσει την μπαταρία στην κορυφή.
  • Το ύψος του ρομπότ, ωστόσο, επιλέχθηκε με βάση τη διαθεσιμότητα υλικών.

Βήμα 5: Πηγαίος κώδικας και βιβλιοθήκες

Πηγαίος Κώδικας και Βιβλιοθήκες
Πηγαίος Κώδικας και Βιβλιοθήκες
Πηγαίος Κώδικας και Βιβλιοθήκες
Πηγαίος Κώδικας και Βιβλιοθήκες

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

Χρειαζόμαστε τέσσερις εξωτερικές βιβλιοθήκες για να λειτουργήσει το ρομπότ που εξισορροπεί

  • Η βιβλιοθήκη PID διευκολύνει τον υπολογισμό των τιμών P, I και D.
  • Η βιβλιοθήκη LMotorController χρησιμοποιείται για την οδήγηση των δύο κινητήρων με τη μονάδα L298N.
  • Η βιβλιοθήκη I2Cdev και η βιβλιοθήκη MPU6050_6_Axis_MotionApps20 προορίζονται για ανάγνωση δεδομένων από το MPU6050.

Λήψη Βιβλιοθηκών

PID -

LMotorController -

I2Cdev -

MPU6050 -

Λάβετε τον πηγαίο κώδικα -

Τι είναι το PID;

  • Στη θεωρία ελέγχου, η διατήρηση μιας σταθερής μεταβλητής (στην περίπτωση αυτή, η θέση του ρομπότ) χρειάζεται έναν ειδικό ελεγκτή που ονομάζεται PID.
  • P για αναλογικό, I για ολοκλήρωμα και D για παράγωγο. Κάθε μία από αυτές τις παραμέτρους έχει «κέρδη» που συνήθως ονομάζονται Kp, Ki και Kd.
  • Το PID παρέχει διόρθωση μεταξύ της επιθυμητής τιμής (ή εισόδου) και της πραγματικής τιμής (ή εξόδου). Η διαφορά μεταξύ της εισόδου και της εξόδου ονομάζεται "σφάλμα".
  • Ο ελεγκτής PID μειώνει το σφάλμα στη μικρότερη δυνατή τιμή προσαρμόζοντας συνεχώς την έξοδο.
  • Στο ρομπότ μας Arduino με αυτόματη εξισορρόπηση, η είσοδος (η οποία είναι η επιθυμητή κλίση, σε μοίρες) ρυθμίζεται από λογισμικό.
  • Το MPU6050 διαβάζει την τρέχουσα κλίση του ρομπότ και το τροφοδοτεί με τον αλγόριθμο PID που εκτελεί υπολογισμούς για τον έλεγχο του κινητήρα και τη διατήρηση του ρομπότ σε όρθια θέση.

Το PID απαιτεί οι τιμές κέρδους Kp, Ki και Kd να "συντονιστούν" στις βέλτιστες τιμές

Αντ 'αυτού, θα προσαρμόσουμε τις τιμές PID με μη αυτόματο τρόπο

  1. Κάντε Kp, Ki και Kd ίσο με το μηδέν.
  2. Προσαρμογή Kp. Πολύ μικρό Kp θα κάνει το ρομπότ να πέσει (δεν υπάρχει αρκετή διόρθωση). Πάρα πολύ Kp θα κάνει το ρομπότ να πηγαίνει μπρος πίσω. Ένα αρκετά καλό Kp θα κάνει το ρομπότ να πηγαίνει ελαφρά και πίσω (ή να ταλαντεύεται λίγο).
  3. Μόλις οριστεί το Kp, προσαρμόστε το Kd. Μια καλή τιμή Kd θα μειώσει τις ταλαντώσεις μέχρι το ρομπότ να είναι σχεδόν σταθερό. Επίσης, η σωστή ποσότητα Kd θα κρατήσει το ρομπότ όρθιο ακόμα κι αν το σπρώξετε.
  4. Τέλος, ορίστε το Ki. Το ρομπότ θα ταλαντεύεται όταν είναι ενεργοποιημένο ακόμη και αν τα Kp και Kd έχουν ρυθμιστεί αλλά θα σταθεροποιηθεί στο χρόνο. Η σωστή τιμή Ki θα μειώσει το χρόνο που χρειάζεται για να σταθεροποιηθεί το ρομπότ.

Πρόταση για καλύτερα αποτελέσματα

Σας συνιστώ να δημιουργήσετε ένα παρόμοιο πλαίσιο ρομπότ χρησιμοποιώντας τα υλικά που χρησιμοποιούνται σε αυτό το έργο για να κάνετε τον πηγαίο κώδικα για το ρομπότ Balance να λειτουργεί σταθερά και αποτελεσματικά.

Βήμα 6: Για υποστήριξη

Για υποστήριξη
Για υποστήριξη
  • Μπορείτε να εγγραφείτε στο κανάλι μου στο YouTube για περισσότερα σεμινάρια και έργα.
  • Επίσης, μπορείτε να εγγραφείτε για υποστήριξη. Σας ευχαριστώ.

Επίσκεψη στο κανάλι μου στο YouTube -

Συνιστάται: