- Απαιτούμενα συστατικά:
- Δημιουργία διεπαφής για ρομπότ χρησιμοποιώντας την εφαρμογή RemoteXY:
- Διάγραμμα κυκλώματος και επεξήγηση:
- Επεξήγηση κώδικα:
- Πώς να το εκτελέσετε:
Σε αυτό το άρθρο, θα ελέγξουμε το Ρομπότ Αυτοκίνητο μέσω του αισθητήρα G του κινητού μας τηλεφώνου και θα μπορείτε να μετακινήσετε το Ρομπότ μόνο γέρνοντας το τηλέφωνο. Θα χρησιμοποιήσουμε επίσης την εφαρμογή Arduino και RemoteXY για αυτό το ελεγχόμενο ρομπότ G-Sensor. Η εφαρμογή RemoteXY χρησιμοποιείται για τη δημιουργία της διεπαφής στο έξυπνο τηλέφωνο για τον έλεγχο του ρομπότ. Θα προσθέσουμε το χειριστήριο στη διεπαφή, έτσι ώστε το ρομπότ να μπορεί επίσης να ελεγχθεί από το Joystick καθώς και με κλίση του τηλεφώνου.
Ο αισθητήρας G-Sensor ή Gravity είναι βασικά Accelerometer σε έξυπνο τηλέφωνο που χρησιμοποιείται για τον έλεγχο του προσανατολισμού της οθόνης του τηλεφώνου. Το επιταχυνσιόμετρο ανιχνεύει τις κατευθύνσεις X, Y, Z της βαρυτικής δύναμης και περιστρέφει την οθόνη σύμφωνα με την ευθυγράμμιση του τηλεφώνου. Στις μέρες μας, πιο ευαίσθητος και ακριβής αισθητήρας Γυροσκοπίου χρησιμοποιείται στα κινητά για να αποφασίζει τον προσανατολισμό της Οθόνης. Στο Έργο μας, το ρομποτικό αυτοκίνητο θα κινείται, σύμφωνα με την κατεύθυνση προς την οποία γέρνει το τηλέφωνο, όπως όταν γέρνουμε το τηλέφωνο προς τα εμπρός, τότε το αυτοκίνητο θα κινηθεί προς τα εμπρός και το γέρνουμε προς τα κάτω και το αυτοκίνητο θα κινηθεί προς τα πίσω. Αυτό είναι ίδιο όπως όταν παίζουμε μερικά παιχνίδια αυτοκινήτου στο Mobile, χρησιμοποιούν επίσης τον αισθητήρα G για να μετακινήσουν το αυτοκίνητο ανάλογα. Ελέγξτε το βίντεο στο τέλος, ελέγξτε επίσης τα υπόλοιπα Έργα Ρομποτικής εδώ.
Απαιτούμενα συστατικά:
- Δίχρωμο σασί αυτοκινήτου ρομπότ
- Arduino UNO
- Ελεγκτής κινητήρα L298N
- Η μονάδα Bluetooth HC-06 (το HC-05 θα λειτουργήσει επίσης)
- Τροφοδοσία ή κυψέλες
- Σύνδεση καλωδίων
Δημιουργία διεπαφής για ρομπότ χρησιμοποιώντας την εφαρμογή RemoteXY:
Για τη δημιουργία της διεπαφής για τον έλεγχο του Robot Car χρησιμοποιώντας την εφαρμογή RemoteXY, θα πρέπει να μεταβείτε στον ακόλουθο σύνδεσμο
remotexy.com/en/editor/ Η ιστοσελίδα θα μοιάζει με αυτήν
Στη συνέχεια, από την αριστερή πλευρά της οθόνης, σηκώστε το κουμπί διακόπτη και το χειριστήριο και τοποθετήστε το στη διεπαφή του κινητού. Το κουμπί θα ανάψει το φως στον ακροδέκτη 13 που συνδέεται εσωτερικά στο Arduino και το χειριστήριο θα μετακινήσει το ρομπότ. Η ιστοσελίδα μετά την τοποθέτηση του διακόπτη και του μοχλού θα μοιάζει με αυτό.
Τότε θα πρέπει να τοποθετήσουμε το κουμπί ενεργοποίησης / απενεργοποίησης του αισθητήρα G μαζί με το χειριστήριο, έτσι ώστε να μπορούμε να μετακινήσουμε το Ρομπότ Αυτοκίνητο γέρνοντας το τηλέφωνο προς τα αριστερά, δεξιά, πάνω και κάτω. Χρησιμοποιώντας αυτό το κουμπί μπορούμε να ενεργοποιήσουμε και να απενεργοποιήσουμε τον αισθητήρα G, όταν ο αισθητήρας G είναι απενεργοποιημένος Το αυτοκίνητο μπορεί να ελεγχθεί μετακινώντας το Joystick. Έτσι, για να τοποθετήσετε το κουμπί ενεργοποίησης / απενεργοποίησης του αισθητήρα G, κάντε κλικ στο χειριστήριο που τοποθετήσατε στη διεπαφή και στην αριστερή πλευρά θα υπάρχει μια ενότητα ιδιοτήτων, στο τέλος θα υπάρχει επιλογή τοποθέτησης του κουμπιού αισθητήρα G κοντά στο χειριστήριο, οπότε τοποθετήστε το κουμπί αισθητήρα G όπου θέλετε. Η ιστοσελίδα μετά από αυτό θα μοιάζει με αυτήν.
Μετά από αυτό, κάντε κλικ στο κουμπί "Λήψη πηγαίου κώδικα" και αποθηκεύστε τον στον υπολογιστή σας. Κατεβάστε τη βιβλιοθήκη από εδώ και αποθηκεύστε τη στο φάκελο της βιβλιοθήκης Arduino. Μεταγλωττίστε τον ληφθέντα κώδικα για να βεβαιωθείτε ότι δεν υπάρχουν σφάλματα. Αυτός δεν είναι ο κωδικός που θα τρέξει το ρομπότ, αλλά θα βοηθήσει στη χρήση της εφαρμογής με το Arduino. Πραγματοποιήστε λήψη της εφαρμογής από εδώ ή μεταβείτε στο Play Store και κατεβάστε την εφαρμογή RemoteXY από εκεί για το Android Smart Phone σας.
Διάγραμμα κυκλώματος και επεξήγηση:
Πρώτα απ 'όλα, θα συνδέσουμε τον ελεγκτή κινητήρα L298N με το Arduino. Συνδέστε τον πείρο ENA και ENB του ελεγκτή κινητήρα στον πείρο Arduino 12 και 11 αντίστοιχα. Αυτές οι δύο ακίδες είναι για τον έλεγχο PWM του κινητήρα. Χρησιμοποιώντας αυτές τις καρφίτσες, μπορούμε να αυξήσουμε ή να μειώσουμε την ταχύτητα του αυτοκινήτου. Στη συνέχεια, συνδέστε τα IN1, IN2, IN3 και IN4 στις ακίδες Arduino 10, 9, 8 και 7 αντίστοιχα. Αυτές οι ακίδες περιστρέφουν τους κινητήρες και προς τις δύο κατευθύνσεις (δεξιόστροφα και αριστερόστροφα).
Για να τροφοδοτήσετε τον κινητήρα, συνδέστε το θετικό και το αρνητικό της μπαταρίας στα 12V και τη γείωση του ελεγκτή του κινητήρα. Στη συνέχεια, συνδέστε το 5V και τη γείωση από τον ελεγκτή του κινητήρα στο Arduino Vin και τη γείωση.
Στη συνέχεια θα συνδέσουμε τη μονάδα Bluetooth HC-06 με το arduino. Εάν έχετε HC-05, τότε θα λειτουργήσει επίσης. Συνδέστε το VCC και τη γείωση της μονάδας Bluetooth στο 5V και τη γείωση του Arduino. Στη συνέχεια, συνδέστε τον ακροδέκτη TX της μονάδας Bluetooth στον ακροδέκτη 2 του Arduino και τον ακροδέκτη RX στον ακροδέκτη 3 του Arduino. Ελέγξτε επίσης το Bluetooth Controlled Toy Car χρησιμοποιώντας το Arduino για να μάθετε περισσότερα σχετικά με τη χρήση Bluetooth με το Arduino.
Επεξήγηση κώδικα:
Ο πλήρης κωδικός Arduino για αυτό το κινητό ελεγχόμενο ρομπότ αυτοκινήτου δίνεται παρακάτω στην ενότητα Κωδικός, εδώ θα καταλάβουμε πώς λειτουργεί αυτός ο κώδικας.
Πρώτα απ 'όλα, έχουμε συμπεριλάβει τις βιβλιοθήκες για λογισμικό Serial και RemoteXY. Η βιβλιοθήκη RemoteXY θα μας βοηθήσει στη ρύθμιση της εφαρμογής με το Arduino, μέσω της οποίας θα ελέγξουμε το ρομπότ. Μετά από αυτό, έχουμε ορίσει τους ακροδέκτες για τη μονάδα Bluetooth, το TX από τη μονάδα Bluetooth είναι συνδεδεμένο στον ακροδέκτη 2 του Arduino που είναι ο ακροδέκτης RX του Arduino και το RX από τη μονάδα Bluetooth είναι συνδεδεμένο στον ακροδέκτη 3 του Arduino το οποίο είναι ο ακροδέκτης TX του Arduino και ορίστε το ρυθμό baud της μονάδας Bluetooth σε 9600.
# καθορισμός REMOTEXY_MODE__SOFTWARESERIAL #include
Ο ακόλουθος κωδικός θα αυξήσει ή θα μειώσει την ταχύτητα του κινητήρα. Όταν το χειριστήριο θα είναι στο κέντρο, η ταχύτητα θα είναι μηδενική και όταν θα είναι προς τα εμπρός τότε η ταχύτητα θα αυξηθεί από μηδέν σε 100. Η ταχύτητα θα μειωθεί από 0 σε -100 όταν το αυτοκίνητο θα κινηθεί στο αντίστροφη κατεύθυνση. Το αυτοκίνητο μπορεί επίσης να μετακινηθεί συγκεκριμένη ταχύτητα, αυτό μπορεί να γίνει δίνοντας το σήμα PWM. Το σήμα pwm θα δοθεί στους κινητήρες σύμφωνα με την περιστροφή του χειριστηρίου.
εάν (ταχύτητα_ κινητήρα> 100) ταχύτητα_ κινητήρα = 100; εάν (ταχύτητα_ κινητήρα <-100) ταχύτητα_ κινητήρα = -100; if (motor_speed> 0) {digitalWrite (δείκτης, ΥΨΗΛΟΣ); digitalWrite (δείκτης, LOW); analogWrite (δείκτης, ταχύτητα_ κινητήρα * 2.55); } αλλιώς εάν (motor_speed <0) {digitalWrite (δείκτης, LOW); digitalWrite (δείκτης, ΥΨΗΛΟΣ); analogWrite (δείκτης, (-motor_speed) * 2.55); } αλλιώς {digitalWrite (δείκτης, LOW); digitalWrite (δείκτης, LOW); analogWrite (δείκτης, 0); }
Στον ακόλουθο κώδικα, έχουμε ορίσει τη λειτουργία που θα καλείται κάθε φορά που θα μετακινήσουμε το χειριστήριο στην εφαρμογή. Όταν ενεργοποιήσουμε τον διακόπτη στην εφαρμογή, τότε η λογική 1 θα δοθεί στον ακροδέκτη 13 του Arduino που ενεργοποιεί τον πείρο LED. Κατά τη μετακίνηση του ρομποτικού αυτοκινήτου προς τα εμπρός και προς τα πίσω, θα καλείται η λειτουργία Speed .
void loop () {RemoteXY_Handler (); digitalWrite (ledpin, (RemoteXY.switch_1 == 0); LOW: HIGH); Ταχύτητα (first_motor, RemoteXY.joystick_1_y - RemoteXY.joystick_1_x); Ταχύτητα (second_motor, RemoteXY.joystick_1_y + RemoteXY.joystick_1_x); }
Πώς να το εκτελέσετε:
Προσθέστε τη βιβλιοθήκη του RemoteXY στις βιβλιοθήκες Arduino και ανεβάστε τον κωδικό στο Arduino IDE. Στη συνέχεια, κατεβάστε την εφαρμογή στο κινητό σας τηλέφωνο και, στη συνέχεια, ενεργοποιήστε το Bluetooth. Η διεπαφή της εφαρμογής θα μοιάζει με αυτό
Στη συνέχεια, μεταβείτε στο Bluetooth και ενεργοποιήστε το Bluetooth εκεί. Αφού το ενεργοποιήσετε, θα σας δείξει τις συσκευές Bluetooth. Επιλέξτε τη μονάδα Bluetooth HC-06 από εκεί, θα σας μεταφέρει στη διεπαφή, από όπου μπορείτε να ελέγξετε το Robot Car.
Έτσι μπορούμε να χρησιμοποιήσουμε τον αισθητήρα βαρύτητας μέσα στο κινητό μας τηλέφωνο για να μετακινήσουμε το ρομπότ. Μπορείτε να πειραματιστείτε περαιτέρω και να βρείτε πιο ενδιαφέρουσα χρήση του αισθητήρα G για τον έλεγχο των εξωτερικών πραγμάτων με τη διασύνδεση ενός Μικροκόρλερ μεταξύ (όπως το Arduino).