جدول المحتويات:

يتحدث سانتا بلومولد: 5 خطوات
يتحدث سانتا بلومولد: 5 خطوات

فيديو: يتحدث سانتا بلومولد: 5 خطوات

فيديو: يتحدث سانتا بلومولد: 5 خطوات
فيديو: Video message from Santa for kids 2015 (EXAMPLE) 2024, يوليو
Anonim
يتحدث سانتا بلومولد
يتحدث سانتا بلومولد
يتحدث سانتا بلومولد
يتحدث سانتا بلومولد

يشرح هذا المشروع كيفية عمل زخرفة تشغل ملفًا صوتيًا عندما يمر شخص ما بجواره. يمكن تحقيق ذلك بسهولة باستخدام جهاز كمبيوتر يمكنه تشغيل برنامج Motion وكاميرا من نوع ما. في هذه الحالة ، استخدمت قالب نفخ بابا نويل بطول 20 بوصة. لقد قمت بإعداد Raspeberry PI الخاص بي مع وحدة الكاميرا في نافذة المرآب ووجهتها نحو سانتا نفخ الهواء. أخفيت مكبر صوت خارجي يعمل بالطاقة داخل القالب ، وقمت بتشغيل سلك aux بطول 25 قدمًا تم تقييمه للاستخدام في الهواء الطلق من PI إلى هذه السماعة. لقد قمت بإعداد برنامج Motion على Pi لتشغيل ملف صوت Ho Ho Ho يبدو سانتا كلما اكتشف حركة باستخدام الكاميرا. إنه أمر بسيط جدًا وهو ممتع.

لشراء المواد المحددة التي استخدمتها هنا من المحتمل أن تكلف حوالي 100 دولار مع الشحن. لن أقضي ذلك في صنع هذا إذا لم يكن لدي بالفعل كل هذه المواد غير مستخدمة. يمكن أن يعمل هذا مع أي جهاز كمبيوتر وأي كاميرات وأي مكبر صوت بحيث يمكن تحقيقه بسعر أرخص بكثير إذا كنت بحاجة إلى شراء هذه الأشياء.

اللوازم

  • جهاز كمبيوتر مثبت عليه برنامج Motion

    لقد استخدمت Raspberry PI (RPI) 3 Model B

  • كاميرا متصلة بالكمبيوتر أو كاميرا شبكة

    • أي كاميرا يمكن لبرنامج Motion استخدامها
    • كاميرا USB
    • كاميرا شبكة
    • لقد استخدمت وحدة الكاميرا هذه التي تتصل مباشرة بـ RPI
  • مكبر صوت في الهواء الطلق

    • الاتصال عبر منفذ aux
    • يو اس بي
    • لقد استخدمت Sony SRS-XB01
  • زخرفة مثل النفخ ، أي شيء حقًا

    لقد استخدمت قالب نفخ سانتا كلوز مشابه جدًا لهذا

الخطوة 1: قم بإعداد RPI

قم بإعداد RPI الخاص بك
قم بإعداد RPI الخاص بك

هذه الخطوة في الغالب للمبتدئين. يشرح هذا الفيديو كيفية إعداد Raspberry PI (RPI) بشكل أفضل مما أستطيع. أوصي أيضًا ، كما هو الحال في الفيديو ، بتوصيل USB لاسلكي ولوحة مفاتيح + ماوس وشاشة خارجية للإعداد. بمجرد الإعداد ، أقوم بتشغيل خاصتي في المرآب الخاص بي بدون لوحة المفاتيح + الماوس والشاشة الخارجية ، لكنني أترك WIFi dongle حتى أتمكن من الدخول إليه وإعادة التشغيل و / أو إجراء تغييرات.

الخطوة 2: إرفاق الكاميرا بـ RPI

إرفاق الكاميرا بـ RPI
إرفاق الكاميرا بـ RPI

اتبع التعليمات لإعداد الكاميرا الخاصة بك لـ RPI. لقد استخدمت وحدة الكاميرا من Adafruit Industries.

  • قم بتوصيل وتأمين كابل الشريط من وحدة الكاميرا في منفذ الكاميرا بين منفذ Ethernet ومنفذ HDMI مع جهات الاتصال الشظية التي تواجه منفذ HDMI والشريط الأزرق الذي يواجه منفذ Ethernet.
  • إذا كانت لديك شاشة متصلة وتقوم بتشغيل واجهة المستخدم (Xserver) ، فقم بتشغيل أداة تكوين Raspberry Pi

    إذا كان SSH البعيد في rpi من كمبيوتر آخر ، فقم بتشغيل rasp-config في جهازك الطرفي - والذي سيبدأ واجهة مستخدم طرفية

  • في Raspberry Config ، ضمن علامة التبويب Interfaces ، قم بتمكين الكاميرا.
  • احفظ وأعد تشغيل RPI.
  • عند إعادة التشغيل ، قم بتشغيل الأمر أدناه في Terminal ، يجب أن يعود كل من المكتشف والممكّن كـ = 1

vgencmode get_camera

يجب أن تعمل وحدة كاميرا PI الخاصة بك الآن

تعليمات عبر الإنترنت

الخطوة 3: إعداد واختبار الصوت

إعداد واختبار الصوت
إعداد واختبار الصوت

في البداية بالنسبة لهذا المشروع ، قمت ببساطة بتشغيل سلك aux من PI إلى مكبر صوت صغير يعمل بالبطارية. حدث أن كان هناك الكثير من الكهرباء الساكنة والبطاريات تنفد بسرعة. بدلاً من ذلك ، قمت بتوصيل جهاز USB يضخم الصوت وقمت بتشغيل سلك aux من منفذ إخراج aux عليه إلى مكبر صوت خارجي مقاوم للعوامل الجوية. أدى هذا إلى إزالة الشحنات الساكنة وكان صوتًا أعلى ولا داعي للقلق بشأن البطاريات. تم التعرف على جهاز USB تلقائيًا بواسطة RPI الخاص بي دون الحاجة إلى تثبيت برنامج التشغيل.

يأتي نظام التشغيل PI مع برنامج يسمى aplay ، لكنني أفضل برنامج تشغيل توزيع برامج Sox ، لذلك تقوم هذه التعليمات بتثبيت Sox واستخدام أمر التشغيل الخاص به.

قم بتثبيت Sox

في محطة على RPI ، قم بتشغيل ما يلي للإجابة بنعم على أي مطالبات

sudo apt-get install sox

اختبار الصوت

قم بتنزيل ملف صوت متوافق بحجم صغير واحفظه على جهاز الكمبيوتر الخاص بك. لقد استخدمت santaho3.mp3 المحفوظة في دليل منزلي pi. لاختبار الصوت ، قم بتوصيل مكبّر الصوت الخاص بك بـ RPI وقم بتشغيل هذا الأمر:

لعبه santaho3.mp3

  • إذا سمعت تشغيل ملف الصوت في مكبر الصوت ، فهذا يعني أن الصوت يعمل
  • قد تضطر إلى تغيير الصوت داخليًا من HDMI إلى تناظري.

    التعليمات هنا

  • إذا كنت تستخدم جهاز صوت USB ، فقم بإنشاء ملف في الدليل الرئيسي الخاص بك يسمى.asoundrc

    • ضع المحتويات أدناه وأعد التشغيل ، وابدأ اختبار الصوت
    • pcm.! الافتراضي {

      اكتب hw card 1} ctl.! default {type hw card 1}

الخطوة 4: إعداد كشف الحركة لتشغيل ملف الصوت

إعداد كشف الحركة لتشغيل ملف الصوت
إعداد كشف الحركة لتشغيل ملف الصوت

يسمح البرنامج المسمى Motion بإعداد كاميرا واحدة أو أكثر لغرض تشغيل أمر عند اكتشاف الحركة في عرض (عروض) الكاميرا. إنه سهل الإعداد إلى حد ما ويعمل بشكل جيد. يمكنه أيضًا تسجيل الملفات عند اكتشاف الحركات ، والسماح بتكوين موقع ويب لكل كاميرا أو موقع ويب واحد لجميع الكاميرات ، وخوادم البث لمشاهدة البث المباشر للكاميرات. يحتاج هذا المشروع فقط إلى القدرة على الكشف عن الأوامر وتشغيلها ، لكنني قمت بإعداد خادم دفق لأتمكن من مشاهدة البث المباشر أيضًا.

قم بتثبيت Motion

في Terminal على RPI ، قم بتشغيل الأمر أدناه للإجابة بنعم على أي مطالبات ، وانتظر حتى ينتهي

sudo apt-get install motion

خذ الوقت الكافي الآن لإضافة مستخدم الحركة المضاف حديثًا إلى المجموعة الصوتية بحيث يكون لديه إذن لتشغيل الصوت عن طريق إدخال الأمر التالي

usermod -a -G audio motion

تكوين الحركة للكشف

سنقوم بتحرير ملف تكوين الحركة لتشغيل ملف الصوت الذي قمنا بتنزيله في خطوة إعداد الصوت عندما يكتشف الحركة على الكاميرا ويبدأ الحركة كخدمة حتى يستمر في القيام بذلك عند إعادة تشغيل RPI.

في الجهاز الطرفي ، قم بتحرير الملف /etc/motion/motion.conf كمستخدم متميز

sudo نانو / الخ / الافتراضي / الحركة

في الجهاز الطرفي ، قم بتحرير الملف /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 Framerate 2 min_frame_time 0 netcam_olerive off netcam rtsp_uses_tcp on mmalcam_name vc.ril.camera auto_brightness off السطوع 0 تباين 0 تشبع 0 hue 0 roundrobin_frames 1 roundrobin_skip 1 switch إيقاف تشغيل التصفية 500 threshold_tune إيقاف الضوضاء_المستوى 22 الضوضاء output_pictures off output_debug_pictures off quality 75 picture_type jpeg ffmpeg_output_movies off ffmpeg_output_debug_movies off ffmpeg_bps 400000 ffmpeg_variable_bitrate 0 ffmpeg_video_codec mp4 ffmpegram_duplicate_codec mp4 ffmpegramesuplicate apshot_interval 0 locate_motion_mode off locate_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-snapshot picture_filename٪ v-٪ Y٪ m٪ d٪ H٪ M٪ S-٪ q movie_filename٪ v-٪ Y٪ m٪ d٪ H٪ M٪ S timelapse_filename ٪ Y٪ م٪ د الوقت الفاصل بين ipv6_enabled من stream_port 8481 stream_quality 80 stream_motion من stream_maxrate 1 stream_localhost من stream_limit 0 stream_auth_method 1 stream_authentication: webcontrol_port 8480 webcontrol_localhost من webcontrol_html_output على webcontrol_authentication: track_type 0 track_auto من 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 - متعدد الخيوط / 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 بدء الحركة. الخدمة

اختبار كشف الحركة وتشغيل الصوت

يكاد ينتهي. تحتاج فقط إلى التحقق مما إذا تم اكتشاف الحركة وتشغيل الصوت عندما يكون كذلك.

في المحطة ، قم بما يلي لمشاهدة النص الملحق بملف السجل

الذيل -f / var / log / motion

حاليا:

  • لوح شيئًا ما أمام الكاميرا ببطء
  • يجب أن يُخرج ملف السجل تلك الحركة التي تم اكتشافها
  • نأمل أن يتم تشغيل ملف الصوت من خلال السماعة
  • إذا كان الأمر كذلك ، ضع RIP في نافذة مع مواجهة عدسة الكاميرا حيث يتم اكتشاف الحركة
  • ضع السماعة الخارجية في الزخرفة أو بالقرب منها
  • عندما يسير الناس بجوارهم سيتم الترحيب بهم

استكشاف الأخطاء وإصلاحها

إذا كانت الأمور لا تعمل

  • تحقق مرة أخرى من عمل الكاميرا عن طريق تنفيذ:

    • raspistill -o test.jpg
    • ls -l test-j.webp" />
  • تحقق مرة أخرى من أن الصوت يعمل عن طريق التنفيذ

    • تشغيل / 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 - صوت متعدد الخيوطملف `shuf -i 1-5 -n 1`.mp3 2> / dev / null

  • اخرج واحفظ الملف
  • أعد تشغيل خدمة الحركة

    sudo systemctl إعادة تشغيل الحركة. الخدمة

  • يُدرج جزء `shuf -i 1-5 -n 1` (تلك علامات العودة) رقمًا عشوائيًا من 1 إلى 5 إيتو اسم الملف الذي يتم تشغيله
  • حتى الآن عند اكتشاف الحركة ، سيتم تشغيل أي ملف من 5 ملفات صوتية

التحدث بدلا من اللعب

هناك ميزة أخرى ممتعة تتمثل في إعداد ميزة تحويل النص إلى كلام وجعل الكمبيوتر ينطق جملة للأشخاص المارة. أحب استخدام MaryTTS كمحرك. قم بإعداد وبدء خادم Mary TTS وتغيير سطر on_event_start المذكور أعلاه لإرسال شيء ما ليقوله لخادم marry tts (مثل marytts / bin / marytts-submit-text "Hello friend")

استخدام كاميرات IP الشبكية (لاسلكية أو غير ذلك)

يمكن لبرنامج الحركة دعم كاميرات IP المتصلة بالشبكة بسهولة باستخدام netcam_url وإعدادات netcam_xxx المختلفة الأخرى. يجب أن يوفر البحث البسيط عبر الإنترنت ما هو مطلوب.

بلوتوث

إذا كان RPI الخاص بك يحتوي على Bluetooth مدمج أو قمت بتثبيت جهاز USB Bluetooth ، فيمكنك توصيل مكبر الصوت عبر Bluetooth والتخلص من السلك.

حدد التقاط الحركة بمنطقة أصغر

إحدى المشاكل التي واجهتها مع هذا الإعداد هي نفخ الشجيرات والأشجار وكذلك أضواء السيارة التي أدت إلى الحركة بسهولة بالغة. يحتوي برنامج الحركة على إعدادات لعدد الإطارات التي يجب تغييرها قبل تشغيل الحركة وحساب الضوضاء واستخدام هذه المساعدة. لم أحاول بعد ، لكنني أعتقد أنني سأحتاج إلى إعدادات تسمح أيضًا بتحديد منطقة معينة من عرض الكاميرا لاكتشاف الحركة. يجب أن يسمح ذلك بتحديد منطقة قريبة من الزخرفة مباشرة لتشغيل ملف الصوت.

موصى به: