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

Κάμερα παρακολούθησης μπάλας 180 °: 5 βήματα (με εικόνες)
Κάμερα παρακολούθησης μπάλας 180 °: 5 βήματα (με εικόνες)

Βίντεο: Κάμερα παρακολούθησης μπάλας 180 °: 5 βήματα (με εικόνες)

Βίντεο: Κάμερα παρακολούθησης μπάλας 180 °: 5 βήματα (με εικόνες)
Βίντεο: Hikvision 8MP 180° Panoramic Camera with ColorVu 2022 footage | DS-2CD2387G2P-LSU/SL 2024, Νοέμβριος
Anonim
Κάμερα παρακολούθησης μπάλας 180 °
Κάμερα παρακολούθησης μπάλας 180 °

Καλώς ήρθατε στο πρώτο μου έργο! Είμαι ενθουσιασμένος που μοιράζομαι αυτό που έφτιαξα και σας παρουσιάζω τα βήματα για να φτιάξετε τη δική σας κάμερα παρακολούθησης. Αυτό το έργο κατέστη δυνατό με τη χρήση της βιβλιοθήκης OpenCV σε συνδυασμό με την Python.

Βήμα 1: Συγκέντρωση υλικών

  • Raspberry Pi Model B 2 (ή οποιοδήποτε άλλο μοντέλο)
  • L298N H-Bridge Driver Motor
  • Κινητήρας με κιβώτιο ταχυτήτων
  • Κάμερα Web USB
  • Jumper Wires
  • Βίδες μηχανής με καρύδια
  • Gears
  • Εποξειδική / θερμή κόλλα
  • Προαιρετικά: Laser

Βήμα 2: Μηχανική

Μηχανική
Μηχανική
Μηχανική
Μηχανική
Μηχανική
Μηχανική

Χρησιμοποιώντας ένα κομμάτι ξύλου (αυτό που έχω είναι αρκετά χτυπημένο που είναι εντάξει), τοποθετήστε το μοτέρ σε ένα σημείο που δεν είναι στη μέση. Στη συνέχεια, συνδέστε ένα μικρό γρανάζι στον κινητήρα. Η τρύπα στο γρανάζι ίσως χρειαστεί να διευρυνθεί για να χωρέσει πάνω στο εξάρτημα του κινητήρα.

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

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

Το τελευταίο στοιχείο που θα τοποθετηθεί είναι προαιρετικό - για τη γέφυρα L298N H. Αυτό μπορεί να τοποθετηθεί απλά ανοίγοντας τέσσερις οπές στον πίνακα και τοποθετώντας τον πίνακα χρησιμοποιώντας βίδες μηχανής και εξάγωνα παξιμάδια.

Βήμα 3: Καλωδίωση

Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση

Τώρα για να τα συνδέσουμε όλα μαζί. Τα δύο καλώδια του κινητήρα θα συνδεθούν απευθείας με τη γέφυρα L298N σε έναν από τους δύο ακροδέκτες στην αριστερή ή δεξιά πλευρά της πλακέτας (επέλεξα αριστερά). Δύο καλώδια χρειάζονται για να συνδέσουν το 5V και το Ground του L298N με το 5V και το Ground του Raspberry Pi για ισχύ. Στη συνέχεια, χρειάζονται δύο καλώδια άλματος γυναικών-γυναικών για σύνδεση από το L298N στις ακίδες Pi και 17 και 18. Η κάμερα συνδέεται απλά σε μία από τις θύρες USB του Pi. Αυτή είναι όλη η καλωδίωση!

Βήμα 4: Κωδικός

Τώρα για την πιο δύσκολη πτυχή αυτού του έργου.

Χρησιμοποίησα τη βιβλιοθήκη OpenCV με την Python για την παρακολούθηση της μπάλας σε πραγματικό χρόνο. Το πρόγραμμα χρησιμοποιεί επίσης τη βιβλιοθήκη gpiozero που συνοδεύει το Pi για να περιστρέψει τον κινητήρα σύμφωνα με τις συντεταγμένες x της μπάλας που καθορίζει το OpenCV. Ο κώδικας είναι σε θέση να καθορίσει τη θέση της μπάλας με βάση το κίτρινο χρώμα της, το οποίο θα πρέπει να είναι μοναδικό από το παρασκήνιο για να είναι αποτελεσματικό. Ένα χαμηλότερο και ανώτερο εύρος χρωμάτων παρέχεται στο πρόγραμμα για να καθορίσει πού βρίσκεται η μπάλα. Στη συνέχεια, το OpenCV καλεί τη συνάρτηση.inRange () με τις παραμέτρους: του τρέχοντος πλαισίου (από την κάμερα web) και του κάτω και άνω ορίου χρώματος. Αφού καθοριστούν οι συντεταγμένες της μπάλας στο πλαίσιο, το πρόγραμμα λέει στον κινητήρα να γυρίσει αν η μπάλα δεν βρίσκεται στο κέντρο (x συντεταγμένη στο εύρος 240 - 400 σε πλάτος πλάτους 640 pixel). Ο κινητήρας θα γυρίσει περισσότερο αν η μπάλα είναι πιο εκτός κέντρου και θα γυρίσει λιγότερο όταν η μπάλα είναι πιο κοντά στο κέντρο.

Και έτσι λειτουργεί ο κώδικας.

Σημείωση: εάν πρόκειται να χρησιμοποιήσετε τον κωδικό, πρέπει να έχετε εγκαταστήσει το OpenCV. Επίσης, εάν ο κινητήρας στρίψει λάθος, απλώς αντιστρέψτε τα καλώδια που εισέρχονται στο L289N ή αντιστρέψτε τα καλώδια ελέγχου gpio που είναι συνδεδεμένα στο Pi.

Συνιστάται: