Θέλετε να μάθετε ρομποτική αλλά δεν έχετε δεξιότητες προγραμματισμού;  Είναι εύκολο με το γραφικό IDE του Xod και ένα ρομπότ ελεγχόμενο από τον Arduino.

Πώς Xod σας βοηθά να δημιουργήσετε ρομπότ Arduino χωρίς κωδικοποίηση

Διαφήμιση Η ρομποτική Arduino μπορεί να είναι εκφοβιστική εάν δεν έχετε κωδικοποιήσει ποτέ πριν. Ανεξάρτητα από το πόσο μεγάλες είναι οι ιδέες σας εάν δεν μπορείτε να προγραμματίσετε τον μικροελεγκτή σας, το ρομπότ σας δεν πρόκειται να κάνει πολλά. Ευτυχώς, υπάρχουν τρόποι να προγραμματίσετε το Arduino χωρίς να γράψετε μια μόνο γραμμή κώδικα. Σήμερα εξετάζουμε τη βασική ρομποτική χρησιμοποιώντας το Xod, ένα IDE συμβατό με Arduino που βασίζεται

Διαφήμιση

Η ρομποτική Arduino μπορεί να είναι εκφοβιστική εάν δεν έχετε κωδικοποιήσει ποτέ πριν. Ανεξάρτητα από το πόσο μεγάλες είναι οι ιδέες σας εάν δεν μπορείτε να προγραμματίσετε τον μικροελεγκτή σας, το ρομπότ σας δεν πρόκειται να κάνει πολλά.

Ευτυχώς, υπάρχουν τρόποι να προγραμματίσετε το Arduino χωρίς να γράψετε μια μόνο γραμμή κώδικα. Σήμερα εξετάζουμε τη βασική ρομποτική χρησιμοποιώντας το Xod, ένα IDE συμβατό με Arduino που βασίζεται σε κόμβο οπτικού προγραμματισμού με ανοιχτού κώδικα.

Το ρομπότ χωρίς κώδικα

Το σημερινό έργο χρησιμοποιεί μερικά βασικά συστατικά ρομποτικής hobby για να δημιουργήσει ένα πρωτότυπο ενός βραχίονα ρομπότ που ανιχνεύει την απόσταση. Ο συνδυασμός ενός σερβο και ενός υπερηχητικού αισθητήρα απόστασης είναι κοινός στην ρομποτική του χόμπι και θα προσθέσετε μια οθόνη LCD.

Το τελικό έργο θα καταγράψει τις τιμές απόστασης στην οθόνη LCD και θα μετακινήσει το σερβο-βραχίονα ανάλογα με την απόσταση που ανιχνεύει ο ανιχνευτής εμβέλειας.

Με λίγη φαντασία, αυτό είναι ένας βραχίονας ρομπότ που προσπαθεί να σας τραβήξει αν πάρετε πολύ κοντά. Στοιχειωμένος!

Απαιτήσεις υλικού

Όλα τα απαραίτητα στοιχεία για αυτό το έργο

Θα χρειαστείτε :

  1. Πίνακας συμβατό με Arduino (αυτό το έργο χρησιμοποιεί ένα Uno)
  2. 16 × 2 οθόνη LCD
  3. HC-SR04 αισθητήρας απόστασης υπερήχων
  4. Χόμπι σερβο
  5. 10k ποτενσιόμετρο
  6. 220 ohm αντίσταση
  7. 5V τροφοδοτικό
  8. Συρματόπλεγμα και καλώδια σύνδεσης

Υπάρχουν αρκετά συστατικά που απαιτούνται για αυτό το έργο, αλλά κάθε καλό κιτ εκκίνησης Arduino θα πρέπει να έχει όλα όσα χρειάζεστε. Βρήκα ό, τι χρειάζομαι στο κιτ εκκίνησης του Elegoo Uno R3. Εναλλακτικά, όλα τα συστατικά που απαριθμούνται παραπάνω είναι εξαιρετικά φθηνά και διατίθενται σε όλους τους ηλεκτρονικούς λιανοπωλητές.

Ρύθμιση της οθόνης LCD

Fritzing διάγραμμα LCD

Προσθέστε την οθόνη LCD, ποτενσιόμετρο 10k και αντίσταση 220 ohm στο πινάκιο ψωμιού σύμφωνα με το παραπάνω διάγραμμα ψιθυρίσματος.

Η εγκατάσταση μιας οθόνης LCD μπορεί να είναι αρκετά εκφοβιστική την πρώτη φορά που το κάνετε, αλλά συνεχίστε να αναφέρετε το διάγραμμα και θα το πάρετε! Για να το καταστήσω απλούστερο, έχω ρυθμίσει τις ακίδες LCD και Arduino να είναι ακριβώς ίδιες με αυτές του επίσημου εκπαιδευτικού προγράμματος Arduino LCD, οπότε παραπέμπουμε σε αυτό και αν κολλήσετε.

Προσθήκη του αισθητήρα σέρβο και υπερήχων

Τώρα προσθέστε τον υπερηχητικό αισθητήρα HC-SR04 στο πινάκιο. Συνδέστε τους ακροδέκτες VCC και GND στις ράγες 5v και γείωσης του breadboard. Συνδέστε τον ακροδέκτη Trig με τον ακροδέκτη Arduino 7 και τον ακροδέκτη Echo με το 8 .

Διάγραμμα ψεκασμού του αισθητήρα LCD και υπερήχων

Στη συνέχεια, συνδέστε το σερβο. Τα χρώματα καλωδίωσης μπορεί να ποικίλουν εδώ, αλλά γενικά ο κόκκινος συνδέεται με τον ακροδέκτη 5v και το καφέ ή το μαύρο συνδέονται με τον πείρο GND . Η γραμμή δεδομένων, η οποία συνήθως είναι κίτρινη ή πορτοκαλί, συνδέεται με τον ακροδέκτη 10 .

Το πλήρες κύκλωμα ψύξης

Τέλος, συνδέστε τη ράγα εδάφους του breadboard σε έναν από τους πείρους GND του Arduino. Αυτό είναι! Όλοι είστε έτοιμοι.

Λήψη του IDE Xod

Ένα κενό σκίτσο XOD
Προχωρήστε στο Xod.io και κατεβάστε το δωρεάν Xod IDE. Είναι διαθέσιμο για Windows, Mac και Linux. Υπάρχει επίσης μια έκδοση που βασίζεται σε πρόγραμμα περιήγησης, αλλά επειδή δεν μπορείτε να το χρησιμοποιήσετε για να φορτώσετε σκίτσα Arduino, δεν θα λειτουργήσει για αυτό το έργο.

Λήψη: Xod IDE για Windows, Mac και Linux

Αναβοσβήνει με Xod

Όταν ανοίγετε το Xod για πρώτη φορά, θα δείτε το εκπαιδευτικό πρόγραμμα. εναλλακτικά μπορείτε να το ανοίξετε στο μενού Βοήθεια . Ανοίξτε τη συλλογή καλωσορίσματος στο Xod στο πρόγραμμα περιήγησης στα αριστερά και επιλέξτε 101-upload .

Η έκδοση του XOD του σκίτσου Blink

Αυτή η ρύθμιση κόμβου είναι για δοκιμή αν ο κώδικας μεταφορτώνεται με επιτυχία στο Arduino. Λειτουργεί με τον ίδιο τρόπο όπως ένα σκίτσο Blink στο IDE του Arduino. Ο κόμβος ρολογιού δημιουργεί ένα σήμα κάθε δευτερόλεπτο. Αυτό συνδέεται στον κόμβο flip-flop, ο οποίος μετακινείται εμπρός και πίσω μεταξύ αληθούς και ψευδούς κάθε φορά που λαμβάνει το σήμα. Η έξοδος του flip-flop συνδέεται στον κεντρικό κόμβο, σβήνει και ανάβει.

Κάντε κλικ στον κεντρικό κόμβο και θα δείτε τις αλλαγές του παραθύρου του Επιθεωρητή για να εμφανιστούν οι παράμετροί του. Αλλαγή της θύρας στο 13 όπως φαίνεται παραπάνω, με τον ακροδέκτη με μια LED στο αμάξωμα ενός Arduino. Παρατηρήστε ότι το Xod μετατρέπει αυτόματα το 13 σε D13 . Δεν χρειάζεται να πληκτρολογήσετε τον εαυτό σας, αλλά δεν έχει καμία σημασία για αυτό το φροντιστήριο αν το κάνετε!

Για να ελέγξετε εάν λειτουργεί το Arduino σας μέσω USB, κατευθυνθείτε στην επιλογή > Ανέβασμα στο Arduino και επιλέξτε τον σωστό τύπο κάρτας και τη θύρα COM.

Το μενού ανάπτυξης Xod

Εάν δείτε το LED Arduino που αναβοσβήνει, είστε καλό να πάτε! Αν όχι, ελέγξτε τον αριθμό του σκάφους και της θύρας και δοκιμάστε ξανά πριν συνεχίσετε.

Προγραμματισμός της οθόνης LCD

Συνήθως, θα βρεθούμε στη μακρά διαδικασία κωδικοποίησης τώρα, αλλά από τη στιγμή που χρησιμοποιούμε το Xod, δεν θα γράφουμε κανένα. Στο πρόγραμμα περιήγησης του έργου, επιλέξτε κείμενο-lcd-16 × 2 -θα το βρείτε κάτω από το xod / common-hardware . Σύρετε το στο πρόγραμμα και χρησιμοποιήστε τον Επιθεωρητή για να το ρυθμίσετε με τις ακίδες όπως φαίνεται.

Ρύθμιση κόμβου LCD σε XOD

Το L1 είναι η πρώτη γραμμή της οθόνης LCD, και η L2 είναι η δεύτερη, τώρα έχουμε σκληρό κώδικα "Hello World" για να ελέγξουμε ότι όλα λειτουργούν. Αναπτύξτε το πρόγραμμά σας στο Arduino για να το δείτε. Αν το κείμενό σας είναι δύσκολο να δει, προσπαθήστε να γυρίσετε το ποτενσιόμετρο 10k για να ρυθμίσετε την αντίθεση της οθόνης LCD.

LCD που δείχνει ένα Hello World

Τώρα για να ρυθμίσετε τον αισθητήρα απόστασης και να το συζητήσετε με την οθόνη LCD.

Ανίχνευση απόστασης

Σύρετε τον κόμβο της περιοχής hc-sr04-υπερήχων στο έργο σας και ρυθμίστε τις ακίδες TRIG και ECHO στις 7 και 8 για να ταιριάζει με τον τρόπο με τον οποίο το ρυθμίσατε νωρίτερα.

Ρύθμιση του αισθητήρα εύρους τιμών στο XOD

Θα βρείτε τον κονδυλωτό κόμβο κάτω από το xod / core στο πρόγραμμα περιήγησης του έργου. Σύρετε το μεταξύ του κόμβου αισθητήρα υπερήχων και του κόμβου LCD. Θα χρησιμοποιήσετε αυτό για να συγκολλήσετε (που είναι μια φανταστική λέξη για συνδυασμό) την ανάγνωση του αισθητήρα εύρους με κάποιο δικό σας κείμενο.

Αυτή η εικόνα δείχνει τι συμβαίνει. Η έξοδος Dm από τον κόμβο αισθητήρα εύρους είναι συνδεδεμένη στο IN2 και μπορείτε να δείτε ότι ο Επιθεωρητής το επισημαίνει ως συνδεδεμένο . Πληκτρολογήστε "Απόσταση:" στο πλαίσιο IN1 . Τώρα, συνδέστε την έξοδο του κονδυλωτού κόμβου με το L1 του κόμβου LCD.

Κοντινό πλάνο στον κονδυλωμένο κόμβο XOD

Αποθηκεύστε και αναπτύξτε το τροποποιημένο πρόγραμμα. Η πάνω γραμμή της οθόνης LCD δείχνει τώρα την ένδειξη από τον αισθητήρα εύρους τιμών!

Οθόνη LCD που δείχνει δεδομένα εμβέλειας

Εγκατάσταση Servo

Για να πάρετε το σερβο απαιτείται τρία μέρη, οπότε ας τα περάσουμε ένα προς ένα. Αρχίστε σύροντας έναν κόμβο χάρτη-κλιπ από το xod / math στο πρόγραμμά σας. Αυτός ο κόμβος λαμβάνει πληροφορίες από την έξοδο Dm του κόμβου του αισθητήρα εύρους τιμών και τις αντιστοιχεί στις τιμές που κατανοεί ο σερβο.

Το πλήρες δέντρο του Servo κόμβου
Τα Smin και Smax αντιπροσωπεύουν το ελάχιστο και το μέγιστο εύρος για την ενεργοποίηση του σερβο, στην περίπτωση αυτή μεταξύ 5 και 20cm. Αυτές οι τιμές χαρτογραφούνται σε Tmin και Tmax, οι οποίες έχουν οριστεί ως 0 και 1 ως η ελάχιστη και η μέγιστη θέση σερβομηχανισμού.

XOD κόμβος χάρτη-κλιπ

Ο κόμβος εξασθένισης κάτω από το xod / core λαμβάνει την τιμή εξόδου του κόμβου του κλιπ χαρτογράφησης και τον εξομαλύνει με καθορισμένο ρυθμό . Αυτό αποτρέπει τυχόν ανεπιθύμητη μετακίνηση σερβιρίσματος. Ένα ποσοστό 2 είναι μια καλή ισορροπία, αλλά μπορείτε να δοκιμάσετε διαφορετικές τιμές εδώ για να κάνετε τον σερβο αντιδράσει γρηγορότερα και πιο αργά.

Ο κόμβος FAD ξεθωριάζει

Τέλος, ο εξυπηρετητής, ο οποίος θα βρείτε κάτω από το xod-dev / servo, παίρνει την τιμή εξόδου από τον κόμβο εξασθένισης. Αλλάξτε τη θύρα στο 10 . Μπορείτε να αφήσετε το UPD συνεχώς, όπως θέλουμε να ενημερώνουμε συνεχώς τον σερβο με βάση τον αισθητήρα εύρους τιμών.

Εξυπηρετητή κόμβου XOD
Αποθηκεύστε το σενάριό σας και αναπτύξτε το στο board Arduino. Ο βραχίονας του ρομπότ σας έχει τελειώσει!

Δοκιμάζοντας το

Gif του τελικού έργου
Τώρα, όταν βάζετε κάτι κοντά στον αισθητήρα εμβέλειας, η οθόνη LCD καταγράφει την απόσταση και το σερβο κινείται αναλογικά με την απόσταση που εντοπίζεται. Όλα αυτά χωρίς κανένα κωδικό.

Το πλήρες δέντρο κόμβων
Το πλήρες δέντρο κόμβου δείχνει πόσο απλό είναι να δημιουργήσετε σύνθετα προγράμματα στο Xod. Αν αντιμετωπίζετε προβλήματα, ελέγξτε προσεκτικά τόσο το κύκλωμά σας όσο και κάθε κόμβο για σφάλματα.

Ο μη-κώδικας Arduino Robot

Το Xod επιτρέπει σε οποιονδήποτε να προγραμματίσει πίνακες Arduino, ανεξάρτητα από την κωδικοποίηση γνώσης. Το Xod λειτουργεί ακόμα και με την εφαρμογή Blynk DIY IoT, καθιστώντας μια πλήρη δυνατότητα δωρεάν DIY smart home πραγματική δυνατότητα.

Ακόμη και με εργαλεία όπως το Xod, η μάθηση για τον κώδικα είναι σημαντική για τα έργα DIY. Ευτυχώς, μπορείτε να μάθετε κώδικα στο smartphone σας Θέλετε να μάθετε βασικό κώδικα; Δοκιμάστε 5 εφαρμογές κωδικοποίησης σε Bite-Sized στον ελεύθερο χρόνο σας Θέλετε να μάθετε βασικό κώδικα; Δοκιμάστε τις εφαρμογές κωδικοποίησης 5 Bite-μεγέθους στον ελεύθερο χρόνο σας Θέλετε να μάθετε βασική κωδικοποίηση αλλά έχετε λίγο χρόνο; Αυτές οι εφαρμογές κωδικοποίησης μεγέθους μπουκιάς θα διαρκέσουν λίγα λεπτά από την ημέρα σας. Διαβάστε περισσότερα για να πάρετε τα βασικά!

Εξερευνήστε περισσότερα σχετικά με: Arduino, Ολοκληρωμένο περιβάλλον ανάπτυξης, ρομποτική.