المراقبة بالفيديو غير المهنية للشقة مسلية وغير مكلفة

منذ اللحظة التي حصلت فيها على نظام إنذار GSM في شقتي على أهبة الاستعداد ، حصلت على فكرة أنه سيكون من الجميل أن يكون لديك "عيون" في غيابي في الشقة إذا تم تشغيل أجهزة استشعار التنبيه (أو ربما كان الإنذار كاذبًا؟). نظرًا لأنني مهندس في مجال تكنولوجيا المعلومات ، لم يكن هناك أي شك في أي حل احترافي في شكل مسجل ومجموعة من الكاميرات - فقط كل شيء بنفسي. كما تقرر تحديد الميزانية على الفور للحد ، وإذا كان المشروع ناجحًا ، فكر بالفعل في مزيد من التحسين والتحديث.

حديد


بادئ ذي بدء ، نختار الحديد. "العيون" تعني الكاميرا ، ولا يوجد أي مكان. ثم يطرح السؤال عما يجب فعله بالصورة المستلمة - لتخزينها ونقلها إلى مكان ما ، إلخ. لذلك فكرت في جهاز توجيه متصل عبر UPS بمودم 4G لقناة إنترنت مستقرة يصعب وضعها في السرقة المحتملة.

في العمل ، كنا نستخدم بنجاح أجهزة التوجيه مع منافذ ZyXel Keenetic USB لعدة سنوات (خاصة طراز Giga2 القديم بالفعل). بعد أن "قام ثمل" مطوري البرامج الثابتة بشيء مثل OPKG (مدير الحزم) ، أصبح من الممكن تحويل جهاز التوجيه الخاص بي إلى كمبيوتر شخصي مع لينكس بأكبر إمكانيات ، والتي قررت استخدامها لغرضي. إجمالاً ، لدي بالفعل جهاز كمبيوتر في المنزل مزود بمودم 4G متصل ، ولم يكن لدي سوى "العيون" - وهي كاميرا USB. تذكر أنني اشتريت كاميرا ويب لوجيتك C270 لوالدي قبل ثلاث أو أربع سنوات لتواصلهم مع أقاربهم من خلال سكايب على جهاز كمبيوتر وأنهم الآن يتواصلون بالفعل من خلال جهاز لوحي - لقد طلبت الكاميرا منهم. بالمناسبة ، يوجد مؤشر LED على اللوحة الأمامية للكاميرا يوضح ما إذا كانت الكاميرا تعمل أم لا - في المستقبل تبين أنها مريحة جدًا لتحديد تشغيل نظام مراقبة الفيديو بصريًا.


إقران وتكوين الحديد


لذا هناك حديد. وما لا يمكن إلا أن نفرح - بينما نحن في حدود الميزانية.
يوجد منفذين USB على جهاز التوجيه الخاص بي ، أحدهما مشغول بالفعل بمودم 4G USB. سنستخدم الثانية عن طريق لصق كاميرا لوجيتك C270 هناك. لكي يعمل الموجه مع الكاميرا ، يجب عليك أولاً تثبيت مكون OPKG على جهاز التوجيه (في هذا المكون ، نضع جميع علامات الاختيار باستثناء "وحدات Kernel لدعم موالفات USB DVB"). ولكن هناك مشكلة - لكي يعمل OPKG في جهاز التوجيه ، فأنت بحاجة إلى مساحة على القرص (غيغابايت كافية للعيون) ، ولكن أين يمكنني الحصول عليه ، لأن كلا منفذي USB على جهاز التوجيه مأخوذان بالفعل؟ كان هناك حلان محتملان - إما محور USB مع محرك أقراص USB محمول (أول شيء يتبادر إلى الذهن على الفور) ، أو حقيقة أنه يمكنك وضع بطاقة microSD في مودم 4G USB الخاص بي. وذهبت المودم على الفور إلى بطاقة microSD البطيئة القديمة التي تبلغ 8 غيغابايت الموجودة في المنزل. ترك نظام الملفات على بطاقة NTFS (على الرغم من أنه ينصح بشدة EXT2 أو EXT3). قم بإنشاء مجلد التثبيت وتحميل صورة Entware المطلوبة إليه.

ثم ننتقل إلى لوحة إدارة الموجه ، علامة التبويب OPKG ، حدد بطاقة الذاكرة الخاصة بنا ، في السطر كتابة "initrc script"

/opt/etc/init.d/rc.unslung 

وانقر فوق تطبيق .
بعد تثبيت OPKG ، يتمسك عميل SSH (أستخدم برنامج المعجون على جهازي المحمول مع Windows) بجهاز التوجيه ويقوم بتشغيل الأوامر التالية لتحديث OPKG:

 opkg update opkg upgrade 

بشكل افتراضي ، على SSH ، تكون كلمة مرور الجذر نشطة (أو zyxel ، اعتمادًا على إصدار البرنامج الثابت). يوصى بشدة بتغيير كلمة المرور باستخدام الأمر passwd .

البرمجيات


بعد ذلك ، قم بتثبيت برنامج الحركة.

 opkg install motion 

إنها هي التي ستعمل مع الكاميرا الخاصة بنا ، وتحلل التغيير في الصورة وتوجه جهاز التوجيه إلى أين ترسل الصورة المستلمة. ملف إعدادات برنامج الحركة هو \ etc \ motion \ motion.conf ، وتحريره نقوم بتغيير الإعدادات التي نحتاجها. بادئ ذي بدء ، قمت بتعيين الحد الأقصى للدقة التي تدعمها الكاميرا إلى 1280x720 ، وقمت بتدويرها 180 درجة (كان الأمر أكثر ملاءمة بالنسبة لي لتعيين الكاميرا رأسًا على عقب) ، وتسجيل إطارين في الثانية.

 rotate 180 width 1280 height 720 framerate 2 

لم أكن أرى الحاجة إلى تسجيل دفق الفيديو بأكمله وبثه على الإنترنت ، لذلك قمت بتعيين حركة لتسجيل الفيديو ونقله فقط إذا تغيرت الصورة. في عملية تكوين الحركة ، أصبح من الواضح أنه لا يدعم وضع MJPEG مع الكاميرا الخاصة بي ، ولكنه يدعم فقط وضع YUYV - ونتيجة لذلك ، فإن نتيجة العمل ليست تسلسل فيديو ، ولكن فقط سلسلة من صور JPEG.

 v4l2_palette 15 

لقد قمت أيضًا بتكوين الحركة بحيث يتم نسخ نسخة من الصور إلى خادم FTP خارجي.

 on_picture_save wput ftp://login:pass@XX.29.136.XX %f 

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

يوصى بشدة بتغيير كلمة مرور تسجيل الدخول للاتصال بالكاميرا.

 stream_authentication login:pass 

بعد كل الإعدادات ، ابحث في المتصفح عن النتيجة على:

 IP:8081 


إنتباه! إذا لم تشاهد أي صورة في المتصفح ، فيجب الانتباه إلى إصدار البرامج الثابتة Keenetic. من المفترض أنه بدءًا من إصدار البرنامج الثابت 2.11.A.4.0-1 ، لا يتم تحميل وحدات الفيديو بشكل افتراضي ، لذلك تحتاج إلى تحميلها في "أقلام" SSH أو إضافتها إلى البرنامج النصي لبدء التشغيل:

 /opt/sbin/insmod /lib/modules/3.4.113/i2c-core.ko /opt/sbin/insmod /lib/modules/3.4.113/i2c-dev.ko /opt/sbin/insmod /lib/modules/3.4.113/videodev.ko /opt/sbin/insmod /lib/modules/3.4.113/videobuf2-core.ko /opt/sbin/insmod /lib/modules/3.4.113/videobuf2-memops.ko /opt/sbin/insmod /lib/modules/3.4.113/videobuf2-vmalloc.ko /opt/sbin/insmod /lib/modules/3.4.113/v4l2-common.ko /opt/sbin/insmod /lib/modules/3.4.113/uvcvideo.ko 

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

الإدارة


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


تشغيل الحركة من خلال SSH:

 /opt/etc/init.d/K99motion restart 

استكمال الحركة من خلال SSH:

 /opt/etc/init.d/K99motion stop 

ولكن كان هناك صيد آخر: عنوان IP "رمادي" على مودم 4G الخاص بي. من خلال الاتصال بجهاز التوجيه عبر Wi-fi ، يمكنك إيقاف أو تشغيل الحركة دون أي مشاكل. ولكن ماذا لو كنت خارج شبكة Wi-fi لجهاز التوجيه الخاص بك ، وكان جهاز التوجيه الخاص بك يحتوي على عنوان IP "رمادي"؟ لقد وجدت الإنقاذ في شكل VPN. المخطط هو كما يلي - مع جهاز التوجيه المنزلي الخاص بي ، أتعلق بجهاز التوجيه في العمل مع IP ثابت باستخدام عميل PPTP (يتم تثبيت خادم PPTP في العمل على جهاز التوجيه). الآن ، بعد إعادة توجيه منفذ SSH من جهاز التوجيه العامل إلى المنزل ، يمكنني أخيرًا التحكم في الكاميرا عن بُعد من خلال الوصول إلى العنوان الثابت لجهاز التوجيه في العمل من هاتفي الذكي.

لقد حاولت أيضًا أتمتة التحكم باستخدام أداة أتمتة Tasker (لديها عميل SSH منفصل خاص بها) - لمراقبة اتصال الهاتف الذكي بموجه Wi-Fi وتشغيل الحركة أو إيقافها اعتمادًا على ذلك. المنطق هنا هو: الهاتف الذكي متصل بموجه Wi-Fi - لذلك أنا في المنزل - لإيقاف تشغيل الكاميرا. الهاتف الذكي غير متصل بموجه Wi-Fi - لذا لست في المنزل - قم بتشغيل الكاميرا. ولكن بعد التجربة ، رفض هذا الخيار - هناك الكثير من الإيجابيات الزائفة. على سبيل المثال ، أنا في المنزل ، سقط الهاتف الذكي نائمًا ، وفقد جهاز التوجيه الهاتف الذكي ، وتم تشغيل الكاميرا - حسنًا ، وما إلى ذلك. حاليًا ، أستخدم الطريقة اليدوية فقط.

الخلاصة


من حيث المبدأ ، ما أردت من المشروع هو ما حصلت عليه. يمكنني "رؤية" الشقة وقتما أريد ، وفي حالة تشغيل أي إنذار GSM ، يمكنني بالفعل تحديد ما يجب القيام به بعد ذلك. في عملية التنفيذ ، قمت بحل مجموعة من المشاكل ، لكن حلها تسبب في إثارة معينة من المعرفة المكتسبة وتنفيذ الخطة.

Source: https://habr.com/ru/post/ar420005/


All Articles