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

Micro: bit MU Vision Sensor - Object Tracking: 7 Βήματα
Micro: bit MU Vision Sensor - Object Tracking: 7 Βήματα

Βίντεο: Micro: bit MU Vision Sensor - Object Tracking: 7 Βήματα

Βίντεο: Micro: bit MU Vision Sensor - Object Tracking: 7 Βήματα
Βίντεο: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Ιούλιος
Anonim
Micro: bit MU Vision Sensor - Object Tracking
Micro: bit MU Vision Sensor - Object Tracking

Έτσι σε αυτό το διδακτικό θα αρχίσουμε να προγραμματίζουμε το Smart Car που κατασκευάζουμε σε αυτό το διδακτικό και στο οποίο έχουμε εγκαταστήσει έναν αισθητήρα οπτικής MU σε αυτό το εκπαιδευτικό.

Θα προγραμματίσουμε το micro: bit με απλή παρακολούθηση αντικειμένων, έτσι ώστε ο αισθητήρας MU να μπορεί να παρακολουθεί κάρτες κίνησης.

Προμήθειες

Υλικά

1 x Micro: bit

1 x Κινητήρας: bit

1 x αισθητήρας όρασης MU

Βάση κάμερας 1 x 2 αξόνων

4 βίδες M3 x 30

6 βίδες M3 x 6

6 x M3 Spacer

10 x Μ3 παξιμάδια

1 x τροχός τροχού

2 x Έξυπνοι κινητήρες αυτοκινήτων

2 x κινητήρας TT130

2 x Τροχοί για τον κινητήρα TT130

Μπαταρία 1 x 9 volt + κάτοχος μπαταρίας

Λίγο σύρμα. Σε δύο διαφορετικά χρώματα αν είναι δυνατόν

Κόντρα πλακέ 4 mm (πρέπει να κάνει 170 x 125 mm)

Ένα μικρό κομμάτι ταινίας διπλής όψης

Ταινία Velcro (γάντζος και βρόχος)

Ζεστή κόλλα

Εργαλεία:

Κατσαβίδια

Συγκόλληση

Σίδερο

Κόφτης καλωδίων

Λέιζερ

Πυροβόλο θερμής κόλλας

Τρυπάνι

Τρυπάνια 2,5 και 3 mm

Βήμα 1: Ρύθμιση του αισθητήρα MU

Ρύθμιση του αισθητήρα MU
Ρύθμιση του αισθητήρα MU

Πριν ξεκινήσουμε να συνδέουμε οτιδήποτε θέλουμε να ρυθμίσουμε σωστά τον αισθητήρα.

Ο αισθητήρας Mu Vision διαθέτει 4 διακόπτες. Τα δύο στα αριστερά αποφασίζουν τη λειτουργία εξόδου του και τα δύο δεξιά αποφασίζουν τη διεύθυνσή του.

Δεδομένου ότι θέλουμε η διεύθυνση να είναι 00, θα πρέπει να απενεργοποιηθούν και οι δύο διακόπτες στα δεξιά.

Οι διαφορετικοί τρόποι εξόδου είναι:

00 UART

01 I2C

10 Μεταφορά δεδομένων Wifi

11 Μετάδοση εικόνας Wifi

Θέλουμε να λειτουργούμε σε λειτουργία I2C, οπότε οι δύο διακόπτες πρέπει να είναι ενεργοποιημένοι στο 01, οπότε ο περισσότερος αριστερός θα πρέπει να είναι απενεργοποιημένος και ο άλλος να είναι ενεργοποιημένος.

Βήμα 2: Καλωδίωση του αισθητήρα MU

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

Αισθητήρας Mu -> Πίνακας Breakout

SDA -> pin 20

SCL -> pin 19

G -> Ground

V -> 3,3-5V

Βήμα 3: Καλωδίωση της βάσης κάμερας

Καλωδίωση της βάσης κάμερας
Καλωδίωση της βάσης κάμερας

Ο σερβοκινητήρας που ελέγχει την οριζόντια κίνηση πρέπει να συνδεθεί με τον πείρο 13 και ο σερβοκινητήρας που ελέγχει την κάθετη κίνηση πρέπει να συνδεθεί με τον πείρο 14.

Βήμα 4: Λήψη της επέκτασης

Λήψη της επέκτασης
Λήψη της επέκτασης
Λήψη της επέκτασης
Λήψη της επέκτασης
Λήψη της επέκτασης
Λήψη της επέκτασης

Πρώτα πηγαίνουμε στον επεξεργαστή Makecode και ξεκινάμε ένα νέο έργο. Στη συνέχεια πηγαίνουμε στο "Advanced" και επιλέγουμε "Extensions". Να γνωρίζετε ότι δεδομένου ότι είμαι Δανός, αυτά τα κουμπιά έχουν ελαφρώς διαφορετικά ονόματα στις εικόνες. Στις επεκτάσεις ψάχνουμε για "Muvision" και επιλέγουμε το μόνο αποτέλεσμα που έχουμε.

Βήμα 5: Έναρξη σύνδεσης και ενεργοποίηση του αλγορίθμου

Έναρξη σύνδεσης και ενεργοποίηση του αλγορίθμου
Έναρξη σύνδεσης και ενεργοποίηση του αλγορίθμου

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

Το πρώτο πορτοκαλί μέρος του κώδικα αρχικοποιεί τη σύνδεση I2C.

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

Η εμφάνιση των αριθμών χρησιμοποιείται για τον προβληματισμό. Εάν το micro: bit δεν μετράει έως τρία κατά την εκτέλεση του προγράμματος, ελέγξτε ότι τα καλώδια του αισθητήρα όρασης MU είναι σωστά συνδεδεμένα στις σωστές ακίδες.

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

Βήμα 6: Το πρόγραμμα

Το πρόγραμμα
Το πρόγραμμα

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

Το πρώτο εξωτερικό μπλοκ "IF" ελέγχει εάν ο αισθητήρας MU μπορεί να εντοπίσει τυχόν κάρτες κυκλοφορίας. Εάν μπορεί, τότε προχωράμε στις δύο προτάσεις "IF" στο εσωτερικό.

Η πρώτη δήλωση "IF" ελέγχει την κάθετη τοποθέτηση της κάρτας που εντοπίστηκε στο οπτικό πεδίο. Εάν μια κάρτα τοποθετηθεί στο κέντρο του οπτικού πεδίου, τότε θα λάβουμε την τιμή 50 από τον αλγόριθμο κάθετης τιμής. Τώρα η κάρτα να είναι ακριβώς στη μέση είναι κάτι σπάνιο. Πρέπει να χτυπήσουμε με μεγάλη ακρίβεια, οπότε αν πάμε με 50 ως τη μόνη τιμή όπου η κάμερα πρέπει να κάτσει ακίνητη, τότε θα κινείται λίγο πολύ όλη την ώρα. Αντ 'αυτού, υπολογίζουμε οτιδήποτε μεταξύ 45 και 55 ως στη μέση. Αν λοιπόν η κάθετη τοποθέτηση των καρτών είναι κάτω από 45, τότε μετακινούμε την κάμερα λίγο προς τα κάτω, αλλάζοντας την κατακόρυφη μεταβλητή κατά +1. Με τον ίδιο τρόπο μετακινούμε λίγο την κάμερα αν η κατακόρυφη τοποθέτηση είναι πάνω από 55, αλλάζοντας την κατακόρυφη μεταβλητή κατά -1. Μπορεί να μου φαίνεται περίεργο που η κάμερα ανεβαίνει, όταν ανεβάζουμε τη μεταβλητή και κατεβαίνουμε όταν η μεταβλητή ανεβαίνει, αλλά έτσι τοποθετείται ο κινητήρας.

Η δεύτερη πρόταση "IF" κάνει το ίδιο ακριβώς, αλλά για την οριζόντια θέση. Έτσι, όταν η κάρτα κυκλοφορίας είναι πολύ δεξιά από το οπτικό πεδίο, τότε η κάμερα θα μετακινηθεί προς τα δεξιά και όταν είναι πολύ προς τα αριστερά του πεδίου της οπτικής, τότε η κάμερα θα μετακινηθεί προς τα αριστερά.

Μπορείτε να βρείτε το πρόγραμμα εδώ.

Βήμα 7: Ολοκληρώθηκε

Τώρα ανεβάστε το πρόγραμμά σας στο Smart Car και δοκιμάστε το.

Μπορείτε να αυξήσετε το πόσο γρήγορα αντιδρά η κάμερα στην κίνηση αυξάνοντας την αλλαγή των μεταβλητών σε 2 ή 3 αντί για 1. Μπορείτε επίσης να προσπαθήσετε να μειώσετε πόσο μεγάλο μέρος του πεδίου είναι στη μέση. Προσπαθήστε να το κάνετε από 47 έως 53.

Συνιστάται: