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

Φωνητική κάμερα με χρήση Raspberry Pi: 6 βήματα
Φωνητική κάμερα με χρήση Raspberry Pi: 6 βήματα

Βίντεο: Φωνητική κάμερα με χρήση Raspberry Pi: 6 βήματα

Βίντεο: Φωνητική κάμερα με χρήση Raspberry Pi: 6 βήματα
Βίντεο: Πώς να χρησιμοποιήσετε το Bixby 2024, Ιούλιος
Anonim
Φωνητική κάμερα που χρησιμοποιεί Raspberry Pi
Φωνητική κάμερα που χρησιμοποιεί Raspberry Pi

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

Βήμα 1: Οδηγός υλικού

Οδηγός υλικού
Οδηγός υλικού

Το VDC έχει σχεδιαστεί στο Raspberry Pi (Μοντέλο Β) και απαιτεί πρόσθετο υλικό, όπως προσαρμογέα wifi (προαιρετικό) και μικρόφωνο USB. Το προτεινόμενο υλικό υποδεικνύεται παρακάτω με συνδέσμους για περισσότερες λεπτομέρειες. Μπορείτε να δοκιμάσετε ελαφρώς διαφορετικές μάρκες/προδιαγραφές υλικού. Το VDC δεν σχετίζεται με κανέναν από τους συνδεδεμένους προμηθευτές υλικού.

Η πλήρης λίστα

  1. Raspberry Pi Model B
  2. Picamera
  3. Μίνι μικρόφωνο USB
  4. Κάρτα SD
  5. Καλώδιο Ethernet
  6. Προσαρμογέας Mini-USB (προαιρετικό)
  7. Micro USB - φορτιστής τοίχου
  8. Ηχεία που λειτουργούν μέσω της υποδοχής ήχου Raspberry Pi (πιθανότατα πρέπει να είναι αυτόνομα)

Ο κατάλογος επαληθευμένων περιφερειακών Raspberry Pi μπορεί να είναι χρήσιμος για την εύρεση υποκατάστατων προϊόντων που προτείνονται παραπάνω.

Συνέλευση

Η συναρμολόγηση των απαιτούμενων εξαρτημάτων είναι απλή. Τοποθετήστε το μικρόφωνο, την κάρτα SD, τον ασύρματο προσαρμογέα (αν έχετε), το καλώδιο micro-USB, το καλώδιο ethernet και τα ηχεία στο Raspberry Pi. Ο προσαρμογέας φόρτισης τοίχου USB συνιστάται για τροφοδοσία, ως αυτόνομη συσκευή.

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

Σύνδεση στο Internet

Όπως αναφέρθηκε παραπάνω, ο ασύρματος προσαρμογέας είναι προαιρετικός. Λειτουργεί μια χαρά σε ενσύρματη σύνδεση (μέσω ethernet), ώστε να μπορείτε να επιλέξετε μεταξύ των δύο ρυθμίσεων ανάλογα με το τι λειτουργεί καλύτερα για εσάς.

Βήμα 2: Εγκατάσταση λειτουργικού συστήματος στο Raspberry Pi

Εγκατάσταση λειτουργικού συστήματος στο Raspberry Pi
Εγκατάσταση λειτουργικού συστήματος στο Raspberry Pi

Εισαγωγή

Το Raspberry Pi είναι ένας μικροεπεξεργαστής μεγέθους πιστωτικής κάρτας που διατίθεται σε διαφορετικά μοντέλα με διαφορετική ταχύτητα επεξεργασίας ξεκινώντας από 700 MHz. Είτε έχετε μοντέλο Β ή μοντέλο Β+, είτε την πολύ παλιά έκδοση, η διαδικασία εγκατάστασης παραμένει η ίδια. Άτομα που έχουν ελέγξει τον επίσημο ιστότοπο του Raspberry Pi, ίσως τους έχουν δει να προτείνουν το λειτουργικό σύστημα "NOOBS" ή "NOOBS LITE" (γνωστό και ως "OS") για αρχάριους. Αλλά η χρήση του Pi είναι πολύ εύκολη και από αρχάριος, κάποιος θα γίνει επαγγελματίας σε χρόνο μηδέν. Έτσι, είναι καλύτερο να πάμε με το πιο ισχυρό και αποδοτικό λειτουργικό σύστημα, το Raspbian. Ο κύριος λόγος για τον οποίο το Raspbian είναι εξαιρετικά δημοφιλές είναι ότι διαθέτει χιλιάδες προκατασκευασμένες βιβλιοθήκες για την εκτέλεση πολλών εργασιών και τη βελτιστοποίηση του λειτουργικού συστήματος. Αυτό δημιουργεί ένα τεράστιο πλεονέκτημα κατά τη δημιουργία εφαρμογών.

Λήψη Raspbian και Image Writer

Κατεβάστε την τελευταία έκδοση του Raspbian από εδώ. Μπορείτε να το κατεβάσετε απευθείας ή μέσω των torrents.

Σελίδα Raspbian

Σύνδεσμος λήψης Raspbian OS

Θα χρειαστείτε έναν συντάκτη εικόνας για να γράψετε το ληφθέν λειτουργικό σύστημα στην κάρτα SD (κάρτα micro SD σε περίπτωση μοντέλου Raspberry Pi B+). Κατεβάστε λοιπόν το "win32 disk imager" από εδώ.

Γράφοντας την εικόνα

Τοποθετήστε την κάρτα SD στον φορητό υπολογιστή/υπολογιστή και εκτελέστε το πρόγραμμα εγγραφής εικόνας. Μόλις ανοίξει, περιηγηθείτε και επιλέξτε το αρχείο εικόνας Raspbian που έχετε κατεβάσει. Επιλέξτε τη σωστή συσκευή, δηλαδή τη μονάδα δίσκου που αντιπροσωπεύει την κάρτα SD. Εάν η επιλεγμένη μονάδα δίσκου (ή συσκευή) είναι διαφορετική από την κάρτα SD, τότε η άλλη επιλεγμένη μονάδα θα καταστραφεί. Οπότε να προσέχεις.

Στη συνέχεια, κάντε κλικ στο κουμπί "Γράψτε" στο κάτω μέρος. Για παράδειγμα, δείτε την παρακάτω εικόνα, όπου η μονάδα κάρτας SD (ή micro SD) αντιπροσωπεύεται από το γράμμα "G: \"

Μόλις ολοκληρωθεί η εγγραφή, βγάλτε την κάρτα SD και τοποθετήστε την στο Raspberry Pi και ενεργοποιήστε την. Θα πρέπει να ξεκινήσει να ξεκινά.

Ρύθμιση του Pi

Λάβετε υπόψη ότι μετά την εκκίνηση του Pi, ενδέχεται να υπάρχουν καταστάσεις όταν θα ζητηθούν τα διαπιστευτήρια του χρήστη, όπως το "όνομα χρήστη" και ο κωδικός πρόσβασης. Το Raspberry Pi έρχεται με ένα προεπιλεγμένο όνομα χρήστη και κωδικό πρόσβασης και έτσι το χρησιμοποιείτε πάντα όποτε σας ζητηθεί. Τα διαπιστευτήρια είναι:

Είσοδος: pi

κωδικός πρόσβασης: βατόμουρο

Όταν το Pi έχει εκκινήσει για πρώτη φορά, θα πρέπει να εμφανιστεί μια οθόνη διαμόρφωσης που ονομάζεται "Επιλογές εγκατάστασης" και θα μοιάζει με την παρακάτω εικόνα.

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

sudo raspi-config

Μόλις εκτελέσετε αυτήν την εντολή, θα εμφανιστεί η οθόνη "Επιλογές εγκατάστασης" όπως φαίνεται στην παραπάνω εικόνα.

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

Το πρώτο πράγμα που πρέπει να κάνετε:

επιλέξτε την πρώτη επιλογή στη λίστα του παραθύρου επιλογών ρύθμισης, δηλαδή επιλέξτε το

Αναπτύξτε το σύστημα αρχείων

επιλογή και πατήστε το πλήκτρο εισαγωγής. Το κάνουμε αυτό για να αξιοποιήσουμε όλο τον χώρο που υπάρχει στην κάρτα SD ως πλήρες διαμέρισμα. Το μόνο που κάνει είναι να επεκτείνουμε το λειτουργικό σύστημα ώστε να χωρέσει ολόκληρο το χώρο στην κάρτα SD, η οποία μπορεί στη συνέχεια να χρησιμοποιηθεί ως μνήμη αποθήκευσης για το Pi. Το δεύτερο πράγμα που πρέπει να κάνετε:

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

Στο "παράθυρο επιλογής εκκίνησης", επιλέξτε τη δεύτερη επιλογή, δηλαδή "Desktop Log in as user 'pi' in the graphical desktop" και πατήστε το κουμπί εισαγωγής. Μόλις τελειώσετε, θα επιστρέψετε στη σελίδα "Επιλογές ρύθμισης", αν όχι, επιλέξτε το κουμπί "ΟΚ" στο κάτω μέρος αυτού του παραθύρου και θα επιστρέψετε στο προηγούμενο παράθυρο. Το κάνουμε αυτό επειδή θέλουμε να ξεκινήσουμε στο περιβάλλον επιφάνειας εργασίας που είμαστε εξοικειωμένοι. Εάν δεν κάνουμε αυτό το βήμα, τότε το Raspberry Pi εκκινείται σε τερματικό κάθε φορά χωρίς επιλογές GUI. Μόλις ολοκληρωθούν και τα δύο βήματα, επιλέξτε το κουμπί "Τέλος" στο κάτω μέρος της σελίδας και θα επανεκκινηθεί αυτόματα. Εάν όχι, χρησιμοποιήστε την ακόλουθη εντολή στο τερματικό για επανεκκίνηση.

sudo επανεκκίνηση

Ενημέρωση υλικολογισμικού

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

Μόλις είστε στην επιφάνεια εργασίας, ανοίξτε ένα τερματικό και εισαγάγετε την ακόλουθη εντολή για να ενημερώσετε το υλικολογισμικό του Pi.

sudo rpi-ενημέρωση

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

εδώ είναι ο διαθέσιμος σύνδεσμος βίντεο:

Εγκατάσταση και διαμόρφωση του λειτουργικού συστήματος Raspbian Jessie στο Raspberry Pi (κάντε κλικ στο σύνδεσμο)

Βήμα 3: Ρυθμίστε το VNC στο Raspberry Pi για απομακρυσμένο έλεγχο

Ρυθμίστε το VNC στο Raspberry Pi για απομακρυσμένο έλεγχο
Ρυθμίστε το VNC στο Raspberry Pi για απομακρυσμένο έλεγχο

VNC (Υπολογισμός εικονικού δικτύου)

Μερικές φορές δεν είναι βολικό να εργαστείτε απευθείας στο Raspberry Pi. Maybeσως θα θέλατε να το δουλέψετε από άλλη συσκευή με τηλεχειριστήριο.

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

Θα δείτε την επιφάνεια εργασίας του Raspberry Pi μέσα σε ένα παράθυρο στον υπολογιστή ή την κινητή συσκευή σας. Θα μπορείτε να το ελέγξετε σαν να εργάζεστε στο ίδιο το Raspberry Pi.

Το VNC Connect από το RealVNC περιλαμβάνεται στο Raspbian. Αποτελείται τόσο από τον διακομιστή VNC, ο οποίος σας επιτρέπει να ελέγχετε το Raspberry Pi από απόσταση, όσο και το VNC Viewer, το οποίο σας επιτρέπει να ελέγχετε απομακρυσμένους επιτραπέζιους υπολογιστές από το Raspberry Pi, εάν το θέλετε.

Πρέπει να ενεργοποιήσετε τον διακομιστή VNC προτού μπορέσετε να τον χρησιμοποιήσετε: οι οδηγίες για αυτό δίνονται παρακάτω. Από προεπιλογή, ο διακομιστής VNC σάς δίνει απομακρυσμένη πρόσβαση στη γραφική επιφάνεια εργασίας που εκτελείται στο Raspberry Pi σας, σαν να κάθεστε μπροστά του.

Ενεργοποίηση διακομιστή VNC

Στο Raspberry Pi, εκτελέστε τις ακόλουθες εντολές για να βεβαιωθείτε ότι έχετε την πιο πρόσφατη έκδοση του VNC Connect:

sudo apt-get ενημέρωση

sudo apt-get install realvnc-vnc-server realvnc-vnc-viewer

Τώρα ενεργοποιήστε τον διακομιστή VNC. Μπορείτε να το κάνετε αυτό γραφικά ή στη γραμμή εντολών.

Ενεργοποίηση γραφικού διακομιστή VNC

Στο Raspberry Pi, κάντε εκκίνηση στη γραφική επιφάνεια εργασίας.

Επιλέξτε Μενού> Προτιμήσεις> Διαμόρφωση Raspberry Pi> Διεπαφές.

Βεβαιωθείτε ότι το VNC είναι ενεργοποιημένο. Ενεργοποίηση του διακομιστή VNC στη γραμμή εντολών

Μπορείτε να ενεργοποιήσετε τον διακομιστή VNC στη γραμμή εντολών χρησιμοποιώντας το raspi-config:

sudo raspi-config

Τώρα, ενεργοποιήστε τον διακομιστή VNC κάνοντας τα εξής:

Μεταβείτε στις Επιλογές διασύνδεσης

Κάντε κύλιση προς τα κάτω και επιλέξτε VNC> Ναι. Σύνδεση στο Raspberry Pi με το VNC Viewer

Υπάρχουν δύο τρόποι σύνδεσης με το Raspberry Pi. Μπορείτε να χρησιμοποιήσετε το ένα ή και τα δύο, ανάλογα με το τι σας ταιριάζει καλύτερα.

Δημιουργία άμεσης σύνδεσης

Οι άμεσες συνδέσεις είναι γρήγορες και απλές, αρκεί να συνδεθείτε στο ίδιο ιδιωτικό τοπικό δίκτυο με το Raspberry Pi. Για παράδειγμα, αυτό μπορεί να είναι ενσύρματο ή ασύρματο δίκτυο στο σπίτι, στο σχολείο ή στο γραφείο).

Στο Raspberry Pi (χρησιμοποιώντας παράθυρο τερματικού ή μέσω SSH) χρησιμοποιήστε αυτές τις οδηγίες ή εκτελέστε ifconfig για να ανακαλύψετε την ιδιωτική σας διεύθυνση IP.

ifconfig

Στη συσκευή που θα χρησιμοποιήσετε για να αναλάβετε τον έλεγχο, κάντε λήψη του VNC Viewer. Για καλύτερα αποτελέσματα, χρησιμοποιήστε τη συμβατή εφαρμογή από το RealVNC.

Εισαγάγετε την ιδιωτική διεύθυνση IP του Raspberry Pi στο VNC Viewer:

Δημιουργία σύνδεσης cloud

Έχετε το δικαίωμα να χρησιμοποιήσετε δωρεάν την υπηρεσία cloud του RealVNC, υπό την προϋπόθεση ότι η απομακρυσμένη πρόσβαση είναι μόνο για εκπαιδευτικούς ή μη εμπορικούς σκοπούς.

Οι συνδέσεις cloud είναι βολικές και κρυπτογραφημένες από άκρο σε άκρο. Συνιστώνται ιδιαίτερα για σύνδεση στο Raspberry Pi μέσω διαδικτύου. Δεν υπάρχει αναμόρφωση τείχους προστασίας ή δρομολογητή και δεν χρειάζεται να γνωρίζετε τη διεύθυνση IP του Raspberry Pi ή να παρέχετε μια στατική.

Εγγραφείτε για λογαριασμό RealVNC εδώ: είναι δωρεάν και διαρκεί μόνο λίγα δευτερόλεπτα.

Στο Raspberry Pi, συνδεθείτε στον διακομιστή VNC χρησιμοποιώντας τα νέα διαπιστευτήρια του λογαριασμού σας RealVNC:

Στη συσκευή που θα χρησιμοποιήσετε για να αναλάβετε τον έλεγχο, κάντε λήψη του VNC Viewer. Πρέπει να χρησιμοποιήσετε τη συμβατή εφαρμογή από το RealVNC

Συνδεθείτε στο VNC Viewer χρησιμοποιώντας τα ίδια διαπιστευτήρια λογαριασμού RealVNC και, στη συνέχεια, πατήστε ή κάντε κλικ για να συνδεθείτε στο Raspberry Pi:

Έλεγχος ταυτότητας σε διακομιστή VNC

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

Εάν συνδέεστε από τη συμβατή εφαρμογή VNC Viewer από το RealVNC, εισαγάγετε το όνομα χρήστη και τον κωδικό πρόσβασης που χρησιμοποιείτε συνήθως για να συνδεθείτε στο λογαριασμό χρήστη σας στο Raspberry Pi. Από προεπιλογή, αυτά τα διαπιστευτήρια είναι pi και βατόμουρο.

Εάν συνδέεστε από μια εφαρμογή προβολής που δεν είναι RealVNC, θα πρέπει πρώτα να υποβαθμίσετε το σχήμα ελέγχου ταυτότητας του διακομιστή VNC, να καθορίσετε έναν κωδικό πρόσβασης μοναδικό για τον διακομιστή VNC και, στη συνέχεια, να τον εισαγάγετε. Για να το κάνετε αυτό, ανοίξτε το παράθυρο διαλόγου VNC Server στο Raspberry Pi, επιλέξτε Μενού> Επιλογές> Ασφάλεια, και επιλέξτε κωδικό πρόσβασης VNC από τον έλεγχο ταυτότητας.

Για να ενεργοποιήσετε αυτήν τη λειτουργία:

Στο Raspberry Pi, ανοίξτε το παράθυρο διαλόγου VNC Server.

Μεταβείτε στο Μενού> Επιλογές> Αντιμετώπιση προβλημάτων και επιλέξτε Ενεργοποίηση πειραματικής λειτουργίας άμεσης λήψης.

Στη συσκευή που θα χρησιμοποιήσετε για να αναλάβετε τον έλεγχο, εκτελέστε το VNC Viewer και συνδεθείτε.

Σημείωση: Οι υπάρχουσες συνδέσεις πρέπει να επανεκκινήσουν για να ισχύσουν αυτές οι αλλαγές.

Εάν η απόδοση φαίνεται μειωμένη, δοκιμάστε αυτά τα βήματα αντιμετώπισης προβλημάτων ή ενημερώστε το RealVNC.

Δημιουργία εικονικής επιφάνειας εργασίας

Εάν το Raspberry Pi σας είναι ακέφαλο (δηλαδή δεν είναι συνδεδεμένο σε οθόνη) ή ελέγχει ένα ρομπότ, είναι απίθανο να λειτουργεί γραφική επιφάνεια εργασίας.

Ο διακομιστής VNC μπορεί να δημιουργήσει μια εικονική επιφάνεια εργασίας για εσάς, δίνοντάς σας γραφική απομακρυσμένη πρόσβαση κατόπιν αιτήματος. Αυτή η εικονική επιφάνεια εργασίας υπάρχει μόνο στη μνήμη του Raspberry Pi:

Για να δημιουργήσετε και να συνδεθείτε σε μια εικονική επιφάνεια εργασίας:

Στο Raspberry Pi (χρησιμοποιώντας τερματικό ή μέσω SSH), εκτελέστε διακομιστή vnc. Σημειώστε τη διεύθυνση IP/τον αριθμό εμφάνισης που θα εκτυπώσει ο διακομιστής VNC στο τερματικό σας (π.χ. 192.167. **. **).

Στη συσκευή που θα χρησιμοποιήσετε για τον έλεγχο, εισαγάγετε αυτές τις πληροφορίες στο VNC Viewer. Για να καταστρέψετε μια εικονική επιφάνεια εργασίας, εκτελέστε την ακόλουθη εντολή:

vncserver -kill:

Αυτό θα διακόψει επίσης τυχόν υπάρχουσες συνδέσεις με αυτήν την εικονική επιφάνεια εργασίας.

Βήμα 4: Διαμόρφωση κάμερας

Διαμόρφωση κάμερας
Διαμόρφωση κάμερας

Ρύθμιση του υλικού της κάμερας

Προειδοποίηση: Οι κάμερες είναι ευαίσθητες στις στατικές. Γειώστε τον εαυτό σας πριν χειριστείτε το PCB. Μια βρύση νεροχύτη ή παρόμοια θα πρέπει να αρκεί αν δεν έχετε ιμάντα γείωσης.

Ο πίνακας κάμερας προσαρτάται στο Raspberry Pi μέσω καλωδίου κορδέλας 15 κατευθύνσεων. Υπάρχουν μόνο δύο συνδέσεις: το καλώδιο κορδέλας πρέπει να συνδεθεί στο PCB της κάμερας και στο ίδιο το Raspberry Pi. Πρέπει να πάρετε το καλώδιο σωστά, διαφορετικά η κάμερα δεν θα λειτουργήσει. Στο PCB της κάμερας, το μπλε υπόστρωμα στο καλώδιο θα πρέπει να βλέπει μακριά από το PCB και στο Raspberry Pi θα πρέπει να βλέπει προς τη σύνδεση Ethernet (ή όπου θα ήταν η υποδοχή Ethernet εάν χρησιμοποιείτε μοντέλο Α).

Παρόλο που οι σύνδεσμοι στο PCB και το Pi είναι διαφορετικοί, λειτουργούν με παρόμοιο τρόπο. Στο ίδιο το Raspberry Pi, τραβήξτε προς τα πάνω τις γλωττίδες σε κάθε άκρο του συνδέσμου. Θα πρέπει να γλιστράει εύκολα και να μπορεί να περιστρέφεται ελαφρώς. Εισάγετε πλήρως το καλώδιο της κορδέλας στην υποδοχή, διασφαλίζοντας ότι είναι ευθεία και, στη συνέχεια, πιέστε απαλά προς τα κάτω τις γλωττίδες για να το στερεώσετε στη θέση του. Ο σύνδεσμος PCB της κάμερας απαιτεί επίσης να τραβήξετε τις γλωττίδες μακριά από την πλακέτα, να εισαγάγετε απαλά το καλώδιο και μετά να σπρώξετε τις γλωττίδες προς τα πίσω. Η υποδοχή PCB μπορεί να είναι λίγο πιο αμήχανη από αυτήν στο ίδιο το Pi.

Ρύθμιση του λογισμικού της κάμερας

Εκτελέστε τις ακόλουθες οδηγίες στη γραμμή εντολών για λήψη και εγκατάσταση του πιο πρόσφατου πυρήνα, υλικολογισμικού GPU και εφαρμογών. Θα χρειαστείτε σύνδεση στο διαδίκτυο για να λειτουργήσει σωστά.

sudo apt-get ενημέρωση

sudo apt-get αναβάθμιση

Τώρα πρέπει να ενεργοποιήσετε την υποστήριξη κάμερας χρησιμοποιώντας το

raspi-config

πρόγραμμα που θα έχετε χρησιμοποιήσει κατά την πρώτη εγκατάσταση του Raspberry Pi.

sudo raspi-config

Χρησιμοποιήστε τα πλήκτρα δρομέα για να μετακινηθείτε στην επιλογή κάμερας και επιλέξτε «ενεργοποίηση». Κατά την έξοδο από το raspi-config, θα ζητήσει επανεκκίνηση. Η επιλογή ενεργοποίησης θα διασφαλίσει ότι κατά την επανεκκίνηση θα εκτελείται το σωστό υλικολογισμικό GPU με το πρόγραμμα οδήγησης της κάμερας και θα συντονίζεται, και η διαίρεση μνήμης GPU είναι αρκετή για να επιτρέψει στην κάμερα να αποκτήσει αρκετή μνήμη για να λειτουργεί σωστά.

Εάν δεν είναι ενεργοποιημένο, ενεργοποιήστε το και επανεκκινήστε το Pi σας για να ξεκινήσετε

Για να ελέγξετε ότι το σύστημα είναι εγκατεστημένο και λειτουργεί, δοκιμάστε την ακόλουθη εντολή:

raspistill -v -o test.jpg

Η οθόνη πρέπει να εμφανίζει μια προεπισκόπηση πέντε δευτερολέπτων από την κάμερα και στη συνέχεια να τραβάει μια φωτογραφία, αποθηκευμένη στο αρχείο test.jpg, ενώ εμφανίζει διάφορα ενημερωτικά μηνύματα.

RASPIVID

Το Raspivid είναι το εργαλείο γραμμής εντολών για τη λήψη βίντεο με τη μονάδα κάμερας.

Με τη μονάδα κάμερας συνδεδεμένη και ενεργοποιημένη, εγγράψτε ένα βίντεο χρησιμοποιώντας την ακόλουθη εντολή:

raspivid -o vid.h264

Θυμηθείτε να χρησιμοποιήσετε

-χφ

και

-vf

για αναστροφή της εικόνας εάν απαιτείται, όπως με

raspistill

Αυτό θα αποθηκεύσει ένα αρχείο βίντεο 5 δευτερολέπτων στη διαδρομή που δίνεται εδώ ως vid.h264 (προεπιλεγμένο χρονικό διάστημα).

Καθορίστε τη διάρκεια του βίντεο

Για να καθορίσετε το μήκος του βίντεο που τραβήξατε, περάστε στη σημαία -t με αριθμό χιλιοστών του δευτερολέπτου. Για παράδειγμα:

raspivid -o video.h264 -t 10000

Αυτό θα εγγράψει βίντεο 10 δευτερολέπτων.

Μορφή βίντεο MP4

Το Pi καταγράφει βίντεο ως ακατέργαστη ροή βίντεο H264. Πολλά προγράμματα αναπαραγωγής πολυμέσων θα αρνηθούν να το παίξουν ή θα το παίξουν με λανθασμένη ταχύτητα, εκτός αν είναι «τυλιγμένο» σε κατάλληλη μορφή κοντέινερ όπως το MP4. Ο ευκολότερος τρόπος για να αποκτήσετε ένα αρχείο MP4 από το

καταθλιπτικός

η εντολή χρησιμοποιεί MP4Box.

Εγκαταστήστε το MP4Box με αυτήν την εντολή:

sudo apt -get install -y gpac

Αποτυπώστε το ακατέργαστο βίντεο σας με raspivid και τυλίξτε το σε ένα κοντέινερ MP4 όπως αυτό:

# Λήψη 30 δευτερολέπτων ακατέργαστου βίντεο σε ρυθμό μετάδοσης bit 640x480 και 150kB/s σε αρχείο pivideo.h264:

raspivid -t 30000 -w 640 -h 480 -fps 25 -b 1200000 -p 0, 0, 640, 480 -o pivideo.h264 # Τυλίξτε το ακατέργαστο βίντεο με ένα MP4 δοχείο MP4Box -προσθέστε pivideo.h264 pivideo.mp4 # Κατάργηση το ακατέργαστο αρχείο προέλευσης, αφήνοντας το υπόλοιπο αρχείο pivideo.mp4 να παίξει rm pivideo.h264

Εναλλακτικά, τυλίξτε το MP4 γύρω από την υπάρχουσα εκρηκτική έξοδό σας, όπως αυτό:

MP4Box -προσθέστε βίντεο.h264 βίντεο.mp4

Βήμα 5: Εγκατάσταση και διαμόρφωση

Ακολουθήστε αυτές τις οδηγίες μόνο εάν θέλετε να μεταγλωττίσετε το λογισμικό σας από την αρχή. Αυτά τα παρακάτω βήματα είναι απαραίτητα και συνιστώνται με την ίδια επιτυχία εγκατάστασης στο Raspberry pi.

Εγκατάσταση των εξαρτήσεων

Εγκατάσταση Sphinxbase/Pocketsphinx

Πρώτον, πρέπει να εγκαταστήσετε το Pocketsphinx. Εάν χρησιμοποιείτε Debian Sid (ασταθή) ή Jessie (δοκιμή), μπορείτε απλά να κάνετε:

sudo apt-get ενημέρωση

sudo apt-get install pocketsphinx

Ξεκινήστε εγκαθιστώντας ορισμένες εξαρτήσεις:

sudo apt-get install subversion autoconf libtool automake gfortran g ++ --Ναι

Στη συνέχεια, μεταβείτε στον κατάλογο του σπιτιού σας (ή του Jasper) για να ελέγξετε και να εγκαταστήσετε το CMUCLMTK:

svn co

cd cmuclmtk/

./autogen.sh && make && sudo make install

cd..

Στη συνέχεια, όταν εγκαταλείψετε τον κατάλογο CMUCLTK, κατεβάστε τις ακόλουθες βιβλιοθήκες:

Εγκατάσταση Phonetisaurus, m2m-aligner και MITLM

Για να χρησιμοποιήσετε τον κινητήρα Pocketsphinx STT, πρέπει επίσης να εγκαταστήσετε το MIT Language Modeling Toolkit, m2m-aligner και το Phonetisaurus (και επομένως το OpenFST).

Εάν δεν χρησιμοποιείτε το Debian, εκτελέστε αυτά τα βήματα:

#-πρωτότυπο:

# wget

#-νέος:

wget

wget

wget

wget

Αφαιρέστε τις λήψεις:

tar -xvf m2m-aligner-1.2.tar.gz

tar -xvf openfst -1.3.4.tar.gz

tar -xvf is2013 -conversion.tgz

tar -xvf mitlm -0.4.1.tar.gz

Δημιουργία OpenFST:

cd openfst-1.3.4/

sudo./configure --enable-compact-fsts --enable-const-fsts --enable-far --enable-lookahead-fsts --enable-pdt

time sudo make install # come back μετά από πολύ καιρό

cd..

πραγματικό 66m38.394s

χρήστη 64m42.620s

sys 1m2.150s

df -h /

Μέγεθος συστήματος αρχείων που χρησιμοποιήθηκε Διαθέσιμο Χρήση% Τοποθετήθηκε στο /dev /root 14G 4.4G 8.3G 35% /

Δημιουργία M2M:

cd m2m-aligner-1.2/

sudo make

cd..

Δημιουργία MITLMT:

cd mitlm-0.4.1/

sudo./configure

sudo make install

cd..

Δημιουργήστε το Phonetisaurus:

cd is2013-conversion/phonetisaurus/src

sudo make

CD

Μετακινήστε μερικά από τα μεταγλωττισμένα αρχεία:

sudo cp ~/m2m-aligner-1.2/m2m-aligner/usr/local/bin/m2m-aligner

#-πρωτότυπο:

# sudo cp ~/phonetisaurus-0.7.8/phonetisaurus-g2p/usr/local/bin/phonetisaurus-g2p

#-χρειάζεται να είναι:

sudo cp ~/is2013-conversion/bin/phonetisaurus-g2p/usr/local/bin/phonetisaurus-g2p

Σημειώστε την τροποποιημένη διαδρομή για το εκτελέσιμο.

Αποκτήστε και δημιουργήστε το μοντέλο Phonetisaurus FST

wget

tar -xvf g014b2b.tgz

cd g014b2b/

./compile-fst.sh

cd..

Τέλος, μετονομάστε τον ακόλουθο φάκελο για διευκόλυνση:

mv ~/g014b2b ~/phonetisaurus

Μόλις ολοκληρωθούν οι εγκαταστάσεις, επανεκκινήστε το Pi σας.

Ακολουθώντας τις οδηγίες από το

Πρόσθεσα επίσης το (νέο) αρχείο `/etc/modprobe.d/alsa-base.conf` με αυτό το περιεχόμενο:

# Αυτό ορίζει την τιμή ευρετηρίου των καρτών αλλά δεν αναδιατάσσει.

επιλογές snd_usb_audio index = 0

επιλογές snd_bcm2835 index = 1

# Κάνει την αναδιάταξη.

επιλογές snd slots = snd_usb_audio, snd_bcm2835

για να διασφαλιστεί η σωστή παραγγελία των συσκευών ήχου (δεν είμαι απόλυτα σίγουρος ότι αυτό είναι πραγματικά απαραίτητο, όμως)

Ολοκληρώθηκαν οι εγκαταστάσεις - μερικές εντοπισμός σφαλμάτων στη συνέχεια…

Προσπάθεια εκκίνησης του ίασπη:

pi@AVIV: ~ $./jasper/jasper.py

Traceback (τελευταία κλήση τελευταία):

Αρχείο "./jasper/jasper.py", γραμμή 12, από εισαγωγή πελάτη tts, stt, jasperpath, διάγνωση αρχείου "/home/pi/jasper/client/tts.py", γραμμή 41, κατά την εισαγωγή διαγνωστικού αρχείου "/ home/pi/jasper/client/diagnose.py ", γραμμή 9, στο αρχείο pip.req εισαγωγής" /usr/lib/python2.7/dist-packages/pip/_init_.py ", γραμμή 74, από το pip. vcs import git, mercurial, subversion, bazaar # noqa File "/usr/lib/python2.7/dist-packages/pip/vcs/mercurial.py", γραμμή 9, από το pip.download path_to_url File "/usr/ lib/python2.7/dist-packages/pip/download.py ", γραμμή 25, από request.compat import IncompleteRead ImportError: δεν είναι δυνατή η εισαγωγή ονόματος IncompleteRead

Διορθώθηκε με:

sudo easy_install -U pip

Επόμενο τεύχος:

pi@AVIV: ~ $./jasper/jasper.py

*******************************************************

*JASPER - THE TALKING COMPUTER**(γ) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis**************************** ************************* ΛΑΘΟΣ: root: Παρουσιάστηκε σφάλμα! Traceback (τελευταία κλήση τελευταία): Αρχείο "./jasper/jasper.py", γραμμή 143, στο app = Jasper () Αρχείο "./jasper/jasper.py", γραμμή 88, στο _init_ stt_engine_class = stt.get_engine_by_slug (stt_engine_slug) Αρχείο "/home/pi/jasper/client/stt.py", γραμμή 648, στο get_engine_by_slug "εξαρτήσεις κ.λπ." ") % slug)

ValueError: Η «σφίγγα» του κινητήρα STT δεν είναι διαθέσιμη (λόγω ελλείψεων εξαρτήσεων, ελλείψεων εξαρτήσεων κ.λπ.)

προσπαθεί

sudo apt-get install -y python-pocketsphinx

Διορθώστε τη διαδρομή στο `../ phonetisaurus/g014b2b.fst` για να είναι`/home/pi/phonetisaurus/g014b2b.fst` (στο `

pi@AVIV: ~ $./jasper/jasper.py

*******************************************************

*JASPER - THE TALKING COMPUTER**(γ) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis**************************** ************************* ΛΑΘΟΣ: client.stt: hmm_dir '/usr/local/share/pocketsphinx/model/hmm/en_US/hub4wsj_sc_8k ' δεν υπάρχει! Βεβαιωθείτε ότι έχετε ορίσει το σωστό hmm_dir στο προφίλ σας.

Διορθώστε/ενεργοποιήστε τη διαδρομή για αυτό στο `profile.yml` επίσης:

hmm_dir: '/usr/share/pocketsphinx/model/hmm/el_US/hub4wsj_sc_8k' #προαιρετικά

(σημειώστε την απουσία του "τοπικού" στο μονοπάτι)

Μερική επιτυχία -:

pi@AVIV: ~ $./jasper/jasper.py

*******************************************************

*JASPER - THE TALKING COMPUTER**(γ) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis**************************** ************************* ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Άγνωστες κάρτες PCM.pcm.πίσω ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Άγνωστες κάρτες PCM.pcm.center_lfe ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Άγνωστες κάρτες PCM.pcm.side ALSA lib pcm.c: 2239: (snd_pcm_open_cmen_noupdate) pcm.c: 2239: (snd_pcm_open_noupdate) Άγνωστες κάρτες PCM.pcm.hdmi ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Άγνωστες κάρτες PCM.pcm.modem ALSA lib pcm.c: 2239: (snd_pcm_open_poumpp.modem ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Άγνωστες κάρτες PCM.pcm.phoneline ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Άγνωστες κάρτες PCM.pcm.phoneline ALSA lib pulse.c: 243: (pulse_con: Δεν είναι δυνατή η σύνδεση: Η σύνδεση απορρίφθηκε ALSA lib pulse.c: 243: (pulse_connect) PulseAudio: Δεν είναι δυνατή η σύνδεση: Η σύνδεση απορρίφθηκε Δεν είναι δυνατή η σύνδεση στην υπηρεσία r socket err = Κανένα τέτοιο αρχείο ή κατάλογος Δεν είναι δυνατή η σύνδεση με διακομιστή αιτήματος διακομιστή υποδοχής δεν εκτελείται ή δεν μπορεί να ξεκινήσει Η έκφραση 'paInvalidSampleRate' απέτυχε σε 'src/hostapi/alsa/pa_linux_alsa.c', γραμμή: 2048 Έκφραση 'PaAlsaStreamComponent_InitialConfigure (& self -> capture, inParams, self-> primeBuffers, hwParamsCapture, & realSr) 'απέτυχε σε' src/hostapi/alsa/pa_linux_alsa.c ', line: 2719 Expression' PaAlsaStream_Configure (stream, inputParameters, outputParameter, sampleBat,, & hostBufferSizeMode) 'απέτυχε στο' src/hostapi/alsa/pa_linux_alsa.c ', γραμμή: 2843 Traceback (τελευταία κλήση τελευταία): Αρχείο "./jasper/jasper.py", γραμμή 148, στο app.run () Αρχείο "./jasper/jasper.py", γραμμή 118, σε εκτέλεση συνομιλίας.handleForever () Αρχείο "/home/pi/jasper/client/conversation.py", γραμμή 31, στο όριο handleForever, μεταγραμμένο = self.mic.passiveListen (self.persona) Αρχείο "/home/pi/jasper/client/mic.py", γραμμή 110, σε passiveListen frames_per_buffer = CHUNK) Αρχείο "/usr/lib/python2.7/dist-packages/pyaudio.py", γραμμή 747, σε ανοιχτή ροή = Ροή (αυτο, *args, ** kwargs) Αρχείο "/usr/lib/python2.7/dist -packages/pyaudio.py ", γραμμή 442, στο _init_ self._stream = pa.open (** επιχειρήματα) IOError: [Errno Invalid sample rate] -9997

Εντάξει, ο καθορισμός του RATE και του CHUNK όπως αυτό φαίνεται να προχωρά περαιτέρω:

diff --git a/client/mic.py b/client/mic.py

index 401cddb..dee49fe 100644

--- a/client/mic.py

+++ b/client/mic.py

@@ -93, 8 +93, 8 @@ class Mic:

"""

THRESHOLD_MULTIPLIER = 1,8

- ΤΙΜΗ = 16000

- CHUNK = 1024

+ ΤΙΜΗ = 44100 # 16000

+ CHUNK = 4096 # 1024

# αριθμός δευτερολέπτων για να επιτρέψετε τον καθορισμό του ορίου

THRESHOLD_TIME = 1

Βήμα 6: ΕΞΟΔΟΣ Στιγμιότυπα οθόνης

Συνιστάται: