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

Talking Santa Blowmold: 5 βήματα
Talking Santa Blowmold: 5 βήματα

Βίντεο: Talking Santa Blowmold: 5 βήματα

Βίντεο: Talking Santa Blowmold: 5 βήματα
Βίντεο: Какого числа от 1 до 31, родился человек, такая у него и вся жизнь 2024, Ιούλιος
Anonim
Μιλώντας Santa Blowmold
Μιλώντας Santa Blowmold
Μιλώντας Santa Blowmold
Μιλώντας Santa Blowmold

Αυτό το έργο εξηγεί πώς να φτιάξετε μια διακόσμηση που παίζει ένα αρχείο ήχου όταν περνάει κάποιος. Αυτό μπορεί να επιτευχθεί εύκολα με έναν υπολογιστή που μπορεί να εκτελέσει το πρόγραμμα Motion και μια κάμερα κάποιου είδους. Σε αυτήν την περίπτωση χρησιμοποίησα ένα φυσητήρι Άγιου Βασίλη ύψους 20 . Ρύθμιση του Raspeberry PI μου με τη μονάδα κάμερας στο παράθυρο του γκαράζ μου και το έδειξα προς το φυσητήρα Santa. Έκρυψα ένα ηλεκτρικό εξωτερικό ηχείο μέσα στο καλούπι και έτρεξα ένα καλώδιο aux 25ft βαθμολογείται για εξωτερική χρήση από το PI σε αυτό το ηχείο. Ρύθμιση του προγράμματος Motion στο Pi για αναπαραγωγή αρχείου ήχου Ho Santa Ho που ακούγεται από τον Άγιο Βασίλη κάθε φορά που ανιχνεύει κίνηση χρησιμοποιώντας την κάμερα. Είναι πολύ απλό να το κάνετε και έχει καλή διασκέδαση.

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

Προμήθειες

  • Υπολογιστής με εγκατεστημένο το πρόγραμμα Motion

    Χρησιμοποίησα ένα Raspberry PI (RPI) 3 Model B

  • Κάμερα συνδεδεμένη στον υπολογιστή ή κάμερα δικτύου

    • Οποιαδήποτε κάμερα μπορεί να χρησιμοποιήσει το πρόγραμμα Motion
    • Κάμερα USB
    • Κάμερα δικτύου
    • Χρησιμοποίησα αυτήν τη μονάδα κάμερας που συνδέεται απευθείας με το RPI
  • Ηχείο εξωτερικού χώρου

    • Σύνδεση μέσω θύρας aux
    • USB
    • Χρησιμοποίησα αυτό το Sony SRS-XB01
  • Μια διακόσμηση όπως φούσκωμα, οτιδήποτε πραγματικά

    Χρησιμοποίησα φουσκωτό Άγιο Βασίλη πολύ παρόμοιο με αυτό

Βήμα 1: Ρυθμίστε το RPI σας

Ρυθμίστε το RPI σας
Ρυθμίστε το RPI σας

Αυτό το βήμα είναι εδώ κυρίως για αρχάριους. Αυτό το βίντεο εξηγεί πώς να ρυθμίσετε ένα Raspberry PI (RPI) καλύτερα από ό, τι μπορούσα. Θα συνιστούσα επίσης, όπως συμβαίνει στο βίντεο, να συνδέσετε ένα ασύρματο USB, πληκτρολόγιο + ποντίκι και εξωτερική οθόνη για τη ρύθμιση. Μόλις εγκατασταθεί, τρέχω το δικό μου στο γκαράζ μου χωρίς πληκτρολόγιο + ποντίκι και εξωτερική οθόνη, αλλά αφήνω στο wongi WIFi, ώστε να μπορέσω να μπω σε αυτό και να επανεκκινήσω ή/και να κάνω αλλαγές.

Βήμα 2: Συνδέστε την κάμερα σε RPI

Συνδέστε την κάμερα σε RPI
Συνδέστε την κάμερα σε RPI

Ακολουθήστε τις οδηγίες για να ρυθμίσετε την κάμερα για το RPI σας. Χρησιμοποίησα τη μονάδα κάμερας από τις βιομηχανίες Adafruit.

  • Συνδέστε και ασφαλίστε το καλώδιο κορδέλας από τη μονάδα κάμερας στη θύρα της κάμερας μεταξύ της θύρας Ethernet και της θύρας HDMI με τις λεπτές επαφές να βλέπουν στη θύρα HDMI και τη μπλε ταινία να βλέπει στη θύρα Ethernet.
  • Εάν έχετε συνδεδεμένη οθόνη και εκτελείτε το περιβάλλον χρήστη (Xserver) εκτελέστε το εργαλείο διαμόρφωσης Raspberry Pi

    Εάν απομακρύνετε το SSH στο rpi από άλλο υπολογιστή, εκτελέστε rasp -config στο τερματικό σας - το οποίο θα ξεκινήσει μια διεπαφή χρήστη τερματικού

  • Στο Raspberry Config, κάτω από την καρτέλα Interfaces, ενεργοποιήστε την Κάμερα.
  • Αποθηκεύστε και επανεκκινήστε το RPI.
  • Κατά την επανεκκίνηση εκτελέστε την παρακάτω εντολή σε ένα τερματικό, και οι δύο εντοπισμένοι και ενεργοποιημένοι θα πρέπει να επιστρέψουν ως = 1

vgencmode get_camera

Η μονάδα κάμερας PI θα πρέπει να λειτουργεί τώρα

Online οδηγίες

Βήμα 3: Ρύθμιση και δοκιμή ήχου

Ρύθμιση και δοκιμή ήχου
Ρύθμιση και δοκιμή ήχου

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

Το PI OS συνοδεύεται από ένα πρόγραμμα που ονομάζεται aplay, αλλά προτιμώ το πρόγραμμα αναπαραγωγής της διανομής λογισμικού Sox, οπότε αυτές οι οδηγίες εγκαθιστούν το Sox και χρησιμοποιούν την εντολή αναπαραγωγής.

Εγκαταστήστε το Sox

Σε ένα τερματικό στο RPI εκτελέστε την ακόλουθη απάντηση ναι σε τυχόν προτροπές

sudo apt-get install sox

Testχος δοκιμής

Κατεβάστε ένα συμβατό αρχείο ήχου μικρού μεγέθους και αποθηκεύστε το στον υπολογιστή σας. Χρησιμοποίησα το santaho3.mp3 αποθηκευμένο στον αρχικό μου κατάλογο pi. Για να δοκιμάσετε τον ήχο, συνδέστε το ηχείο σας στο RPI και εκτελέστε αυτήν την εντολή:

παίξτε santaho3.mp3

  • Εάν ακούτε το αρχείο ήχου να παίζει στο ηχείο σας, τότε ο ήχος σας λειτουργεί
  • Mayσως χρειαστεί να αλλάξετε εσωτερικά τον ήχο από HDMI σε Αναλογικό.

    Οδηγίες εδώ

  • Εάν χρησιμοποιείτε συσκευή ήχου USB, δημιουργήστε ένα αρχείο στον αρχικό σας κατάλογο που ονομάζεται.asoundrc

    • Βάλτε τα περιεχόμενα παρακάτω σε αυτό και κάντε επανεκκίνηση, ξεκινήστε τη δοκιμή ήχου
    • pcm.! προεπιλογή {

      πληκτρολογήστε hw card 1} ctl.! default {type hw card 1}

Βήμα 4: Ρύθμιση ανίχνευσης κίνησης για αναπαραγωγή αρχείου ήχου

Ρύθμιση ανίχνευσης κίνησης για αναπαραγωγή αρχείου ήχου
Ρύθμιση ανίχνευσης κίνησης για αναπαραγωγή αρχείου ήχου

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

Εγκατάσταση κίνησης

Σε ένα τερματικό στο RPI, εκτελέστε την παρακάτω εντολή απαντώντας ναι σε τυχόν προτροπές, περιμένετε να τελειώσει

sudo apt-get κίνηση εγκατάστασης

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

usermod -a -G ηχητική κίνηση

Διαμόρφωση κίνησης για ανίχνευση

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

Σε ένα τερματικό επεξεργαστείτε το αρχείο /etc/motion/motion.conf ως υπερχρήστης

sudo nano/etc/default/motion

Σε ένα τερματικό επεξεργαστείτε το αρχείο /etc/motion/motion.conf ως υπερχρήστης

sudo nano /etc/motion/motion.conf

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

δαίμονας επάνω

process_id_file /var/run/motion/motion.pid

setup_mode off logfile /var/log/motion/motion.log log_level 6 log_type all videodevice/dev/video0 v4l2_palette 17 είσοδος -1 κανόνας 0 συχνότητα 0 power_line_frequency -1 περιστροφή 0 flip_axis κανένα πλάτος 320 ύψος 240 καρέ 2 ελάχιστο_πλαίσιο_χρόνου 0 netcam_ Keepalive off rtsp_uses_tcp στο mmalcam_name vc.ril.camera auto_brightness off brightness 0 contrast 0 saturation 0 hue 0 roundrobin_frames 1 roundrobin_skip 1 switchfilter off threshold 500 threshold_tune off noise_level 22 noise_tune on despeckle_filter_mement output_pictures off output_debug_pictures off quality 75 picture_type jpeg ffmpeg_output_movies off ffmpeg_output_debug_movies απενεργοποίηση ffmpeg_bps 400000 ffmpeg_variable_bitrate 0 ffmpeg_video_codec_ppempmeppmeppmeppempmeppe_ppemppemppemppemppemppemppempmpp_ppemppempmeppemppemppempme_pfe_pp_mpg_pp_mpge_ppf apshot_interval 0 Locate_motion_mode off Τοποθέτηση_motion_style box text_right%Y-%m-%d / n%T-%q text_changes off text_event%Y%m%d%H%M%S text_double off target_dir/var/lib/motion snapshot_filename%v- %Y%m%d%H%M%S-στιγμιότυπο picture_filename%v-%Y%m%d%H%M%S-%q movie_filename%v-%Y%m%d%H%M%S timelapse_filename % Y% m% d-timelapse ipv6_enabled off stream_port 8481 stream_quality 80 stream_motion off stream_maxrate 1 stream_localhost off stream_limit 0 stream_auth_method 1 stream_authentication: webcontrol_port 8480 webcontrol_localhost off webcontrol_html_output στις webcontrol_authentication: track_type 0 track_auto off track_iomojo_id 0 track_step_angle_x 10 track_step_angle_y 10 track_move_wait 10 track_speed 255 track_stepsize 40 ήσυχο on_event_start/usr/bin/play -q --multi -threaded/var/lib/motion/notify`shuf -i 1-5 -n 1`.mp3 2>/dev/null

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

sudo cp /home/pi/santaho.mp3 /var/lib/motion/mtn_dtct_ntfy.mp3

sudo chown motion /var/lib/motion/mtn_dtct_ntfy.mp3

sudo chmod a+r /var/lib/motion/mtn_dtct_ntfy.mp3

Επανεκκινήστε τη συσκευή RPI. Μόλις ξεκινήσει, τρέξτε

sudo systemctl status motion.service

Η έξοδος πρέπει να περιλαμβάνει μια γραμμή που λέει:

Ενεργό: ενεργό (τρέχει) από τότε

Αν δείτε ότι αυτή η κίνηση τρέχει. Εάν όχι, ελέγξτε το/var/log/motion για λεπτομέρειες. Δοκιμάστε να τρέξετε:

sudo systemctl εκκίνηση κίνησης. υπηρεσία

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

Σχεδόν τελείωσα. Απλώς πρέπει να ελέγξετε αν ανιχνεύεται κίνηση και ο ήχος αναπαράγεται όταν είναι.

Σε ένα τερματικό κάντε τα εξής για να παρακολουθήσετε το συνημμένο κείμενο στο αρχείο καταγραφής

ουρά -f/var/log/κίνηση

Τώρα:

  • Κουνήστε αργά κάτι μπροστά στην κάμερα
  • Το αρχείο καταγραφής πρέπει να εξάγει ότι εντοπίστηκε η κίνηση
  • Ας ελπίσουμε ότι το αρχείο ήχου αναπαράγεται μέσω του ηχείου
  • Εάν ναι, τοποθετήστε το RIP σε ένα παράθυρο με τον φακό της κάμερας στραμμένο προς το σημείο που πρέπει να ανιχνευθεί η κίνηση
  • Τοποθετήστε το εξωτερικό ηχείο μέσα ή κοντά στη διακόσμηση
  • Όταν περνούν οι άνθρωποι θα χαιρετιστούν

Αντιμετώπιση προβλημάτων

Αν τα πράγματα δεν λειτουργούν

  • Ελέγξτε ξανά ότι η κάμερα λειτουργεί εκτελώντας:

    • raspistill -o test.jpg
    • ls -l test-j.webp" />
  • Ελέγξτε ξανά ότι ο ήχος λειτουργεί εκτελώντας

    • play/var/lib/motion/mtn_dtct_ntfy.mp3
    • εάν δεν ακούτε το αρχείο ήχου

      • βεβαιωθείτε ότι η συσκευή εξόδου είναι η ρύθμιση των ηχείων σας (αναλογική ή USB)
      • ελέγξτε την ένταση
      • ελέγξτε ότι τα δικαιώματα στο αρχείο ήχου έχουν 3 'r στη συμβολοσειρά δικαιωμάτων (δηλαδή rw*rw*rw*)
  • Εάν όλα τα άλλα αποτυγχάνουν, πιθανώς η κίνηση δεν έχει ρυθμιστεί σωστά

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

Βήμα 5: Πρόσθετα σχόλια

Πρόσθετα σχόλια
Πρόσθετα σχόλια

Παίξτε τυχαία αρχεία ήχου

Βαρεθείτε τον ίδιο ήχο να παίζει ξανά και ξανά, ανακατέψτε το!

  • Αποθηκεύστε πολλά διαφορετικά αρχεία ήχου με το ίδιο όνομα αλλά μια διαδοχική αριθμητική κατάληξη:

    soundFile1.mp3, soundFile2.mp3, soundFile3.mp3, soundFile4.mp3, soundFile5.mp3,

  • Αλλάξτε την καταχώριση /etc/motion/motion.conf on_event_start ως εξής

    on_event_start play -q -multi -threaded soundFile`shuf -i 1-5 -n 1`.mp3 2>/dev/null

  • Βγείτε και αποθηκεύστε το αρχείο
  • Επανεκκινήστε την υπηρεσία κίνησης

    sudo systemctl επανεκκίνηση motion.service

  • Το μέρος `shuf -i 1-5 -n 1` (αυτά είναι τσιμπούρια) εισάγει έναν τυχαίο αριθμό από το 1 έως το 5 στο όνομα του αρχείου που παίζεται
  • Έτσι, τώρα όταν εντοπιστεί κίνηση, οποιοδήποτε από τα 5 αρχεία ήχου θα παίξει

Μιλώντας αντί για Παίζοντας

Μια άλλη διασκεδαστική συστροφή είναι να ρυθμίσετε ένα κείμενο σε ομιλία και να ζητήσετε από τον υπολογιστή να πει μια πρόταση στους ανθρώπους που περνούν από εκεί. Μου αρέσει να χρησιμοποιώ το MaryTTS ως κινητήρα. Ρυθμίστε και ξεκινήστε τον διακομιστή Mary TTS και αλλάξτε τη γραμμή on_event_start που αναφέρθηκε παραπάνω για να υποβάλετε κάτι για να πείτε στον διακομιστή TTS (δηλ. Marytts/bin/marytts-submit-text "Γεια σου φίλε")

Χρήση δικτύων κάμερας IP (ασύρματη ή με άλλο τρόπο)

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

Bluetooth

Εάν το RPI σας έχει ενσωματωμένο Bluetooth ή έχετε εγκαταστήσει μια συσκευή USB USB, μπορείτε να συνδέσετε το ηχείο μέσω Bluetooth και να απαλλαγείτε από το καλώδιο.

Περιορισμός λήψης κίνησης σε μικρότερη περιοχή

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

Συνιστάται: