نظام أمن الوطن GSM يعتمد على Arduino. حول مستشعر الحركة وتوصيله بـ Arduino More في الفيديو

نظام أمن الوطن GSM يعتمد على Arduino.  حول مستشعر الحركة وتوصيله بـ Arduino More في الفيديو
نظام أمن الوطن GSM يعتمد على Arduino. حول مستشعر الحركة وتوصيله بـ Arduino More في الفيديو
سرقة السيارة طوال الوقت العقد الماضيتحتل واحدة من أهم الأماكن في هيكل الجرائم المرتكبة في العالم. هذا لا يرجع إلى الوزن المحدد لهذه الفئة من السرقة بالنسبة إلى المجموعالجرائم ، ما مدى الأهمية النسبية للضرر الناجم عن ارتفاع تكلفة السيارات. أدى ضعف فعالية الإجراءات المتخذة في مجال مكافحة سرقة السيارات بنهاية التسعينيات إلى نشوء مجموعات مستقرة متخصصة في ارتكاب هذه الجرائم وحيازتها. بصماتجريمة منظمة؛ ربما سمعت مصطلح "أعمال السيارات السوداء". موقف السياراتتفقد الدول الأوروبية سنويًا 2٪ من السيارات التي أصبحت موضوعًا لانتهاكات إجرامية. لذا خطرت لي فكرة إنشاء منبه جي إس إم لسيارتي بناءً على اردوينو اونو.

لنبدأ!

من ماذا سنجمع؟

يجب أن نختار قلب نظامنا. في رأيي ، لمثل هذه الإشارات ، لا يوجد شيء أفضل من Arduino Uno. المعيار الرئيسي هو عدد كافٍ من "الدبابيس" والسعر.


الميزات الرئيسية لاردوينو أونو

متحكم - ATmega328
طاقة كهربائية شغالة- 5 فولت
جهد الإدخال (موصى به) - 7-12 فولت
جهد الإدخال (الحد) - 6-20 فولت
إدخال / إخراج رقمي - 14 (يمكن استخدام 6 منها كمخرجات PWM)
المدخلات التناظرية - 6
تيار مستمر من خلال الإدخال / الإخراج - 40 مللي أمبير
تيار مستمر للمخرج 3.3 فولت - 50 مللي أمبير
ذاكرة فلاش - 32 كيلو بايت (ATmega328) منها 0.5 كيلو بايت تستخدم لمحمل الإقلاع
ذاكرة الوصول العشوائي - 2 كيلو بايت (ATmega328)
إيبروم - 1 كيلو بايت (ATmega328)
تردد الساعة - 16 ميجا هرتز


تناسبها!

أنت الآن بحاجة إلى تحديد وحدة gsm ، لأن نظام الإنذار الخاص بنا يجب أن يكون قادرًا على إخطار مالك السيارة. لذا ، أنت بحاجة إلى "google" ... هنا ، جهاز استشعار ممتاز هو SIM800L ، الحجم رائع.


فكرت فيه وطلبته من الصين. ومع ذلك ، لم يكن كل شيء وردية. رفض المستشعر ببساطة تسجيل بطاقة SIM على الشبكة. تمت تجربة كل شيء ممكن - النتيجة صفر.
وجدت أناس لطفاء، الذي قدم لي شيئًا أكثر برودة - Sim900 Shield. الآن هذه بعض الأشياء الجادة. يحتوي The Shield على ميكروفون ومقبس سماعة رأس ، وهو هاتف متكامل.


الميزات الرئيسية لـ Sim900 Shield

4 معايير تردد التشغيل 850/900/1800/1900 ميجا هرتز
GPRS متعدد الفتحات فئة 10/8
محطة متنقلة GPRS فئة ب
يتوافق مع GSM المرحلة 2/2 +
الفئة 4 (2 واط @ 850/900 ميجاهرتز)
الفئة 1 (1 واط @ 1800/1900 ميجا هرتز)
التحكم عبر أوامر AT (أوامر GSM 07.07 و 07.05 و SIMCOM الممتدة)
استهلاك منخفض للطاقة: 1.5 مللي أمبير (وضع السكون)
نطاق درجة حرارة التشغيل: -40 درجة مئوية إلى + 85 درجة مئوية


تناسبها!

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

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


الميزات الرئيسية لـ GY-521 MPU6050

وحدة جيروسكوب ثلاثية المحاور + مقياس تسارع ثلاثي المحاور GY-521 على الرقاقة MPU-6050. يسمح لك بتحديد موضع وحركة جسم ما في الفضاء ، السرعة الزاوية أثناء الدوران. كما أن لديها مستشعر درجة حرارة مدمج. يتم استخدامه في العديد من المروحيات وطرازات الطائرات ، وبناءً على هذه المستشعرات ، يمكنك تجميع نظام التقاط الحركة.

رقاقة - MPU-6050
جهد الإمداد - من 3.5 فولت إلى 6 فولت (تيار مستمر) ؛
نطاق الدوران - ± 250500 1000 2000 درجة / ثانية
نطاق التسارع - ± 2 ± 4 ± 8 ± 16 جرام
واجهة الاتصال - I2C
الحجم - 15 × 20 ملم.
الوزن - 5 غرام


تناسبها!

مستشعر الاهتزاز مفيد أيضًا. فجأة ، سيحاولون فتح السيارة بـ "القوة الغاشمة" ، حسنًا ، أو في ساحة الانتظار ، سوف تلمس سيارة أخرى سيارتك. لنأخذ مستشعر الاهتزاز SW-420 (قابل للتعديل).


الميزات الرئيسية لـ SW-420

جهد الإمداد - 3.3 - 5 فولت
إشارة الخرج - رقمية عالية / منخفضة (عادة مغلقة)
جهاز استشعار مستعمل - SW-420
المقارنة المستخدمة - LM393
الأبعاد - 32x14 مم
بالإضافة إلى ذلك - يوجد مقاومة ضبط.


تناسبها!

برغي وحدة بطاقة الذاكرة SD. دعونا نكتب ملف السجل.


الميزات الرئيسية لوحدة بطاقة ذاكرة SD

تسمح لك الوحدة بتخزين البيانات المطلوبة لتشغيل الجهاز وقراءتها وكتابتها على بطاقة SD استنادًا إلى متحكم دقيق. يعد استخدام الجهاز مناسبًا عند تخزين ملفات تتراوح من عشرات الميجابايت إلى اثنين جيجابايت. تحتوي اللوحة على حاوية بطاقة SD ومثبت طاقة البطاقة وموصل للواجهة وخطوط الطاقة. إذا كنت بحاجة إلى العمل مع الصوت أو الفيديو أو البيانات الحجمية الأخرى ، مثل أحداث التسجيل أو بيانات المستشعر أو تخزين معلومات خادم الويب ، فإن وحدة بطاقة الذاكرة SD الخاصة بـ Arduino ستجعل من الممكن استخدام بطاقة SD لهذه الأغراض. باستخدام الوحدة ، يمكنك دراسة ميزات بطاقة SD.
جهد الإمداد - 5 أو 3.3 فولت
سعة ذاكرة بطاقة SD - حتى 2 جيجا بايت
الأبعاد - ٤٦ × ٣٠ ملم


تناسبها!

وإضافة محرك سيرفو ، عندما يتم تشغيل المستشعرات ، فإن محرك المؤازرة مع DVR سوف يدير ويصور فيديو للحادث. خذ مضاعفات MG996R.


الملامح الرئيسية لمضاعفات MG996R

مستقر و حماية موثوقةمن التلف
- محرك معدني
- محمل كروي مزدوج الصف
- طول السلك 300 مم
- الأبعاد 40x19x43 ملم
- الوزن 55 غرام
- زاوية الدوران: 120 درجة
- سرعة التشغيل: 0.17 ثانية / 60 درجة (4.8 فولت بدون تحميل)
- سرعة التشغيل: 0.13 ثانية / 60 درجة (6 فولت بدون تحميل)
- عزم بدء التشغيل: 9.4 كجم / سم عند إمداد 4.8 فولت
- عزم بدء التشغيل: 11 كجم / سم مع إمداد 6 فولت
- جهد التشغيل: 4.8 - 7.2 فولت
- جميع أجزاء المحرك مصنوعة من المعدن


تناسبها!

جمع

يوجد عدد كبير من المقالات حول توصيل كل مستشعر في Google. وليس لدي رغبة في ابتكار دراجات جديدة ، لذلك سأترك روابط لخيارات بسيطة وعملية.

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

ما هي وحدة اردوينو؟

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

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

هل من الصعب العمل مع الاردوينو؟

تحظى وحدات Arduino بشعبية كبيرة بين العديد من المستخدمين. كان هذا ممكنًا نظرًا لبساطته وإمكانية الوصول إليه.

تتم كتابة برامج إدارة الوحدات النمطية باستخدام لغة C ++ العادية والإضافات في النموذج وظائف بسيطةالسيطرة على عمليات الإدخال / الإخراج على اتصالات الوحدة. بالإضافة إلى ذلك ، يمكن أيضًا استخدام بيئة البرامج المجانية Arduino IDE ، التي تعمل بنظام Windows أو Linux أو Mac OS ، في البرمجة.

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

كيف تصنع منبهًا باستخدام Arduino؟

تتضمن المتطلبات الرئيسية التي يجب أن يفي بها نظام إنذار جي إس إم الذي يعمل بنفسك والذي تم إنشاؤه على Arduino ما يلي:

  • إخطار صاحب الكائن عن الكسر أو الدخول ؛
  • الدعم الأنظمة الخارجيةاكتب صفارات الإنذار الصوتية ، وأضواء الإشارة ؛
  • التحكم في الإنذار عبر الرسائل القصيرة أو الاتصال ؛
  • عملية مستقلة بدون مصدر طاقة خارجي.

لإنشاء منبه ، ستحتاج إلى:

  • وحدة اردوينو
  • مجموعة من أجهزة الاستشعار الوظيفية
  • أو مودم
  • مصدر طاقة مستقل
  • أجهزة تنفيذية خارجية.

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

كيف تعمل؟

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

لتوفير إمكانية إرسال إشارات تحذير إلى مالك المنزل أو الشقة الخاضعة للحراسة ، يتم توصيل وحدة GSM خاصة بوحدة Arduino من خلال لوحة توسعة. يقوم بتثبيت بطاقة SIM من أحد المزودين الاتصال الخلوي.

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

"ملحوظة!

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

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

الموجودات

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

عادةً ما تُستخدم مستشعرات الأشعة تحت الحمراء (IR) لقياس المسافات ، ولكن يمكن أيضًا استخدامها للكشف عن الأشياء. من خلال توصيل العديد من مستشعرات الأشعة تحت الحمراء بـ Arduino ، يمكننا إنشاء إنذار ضد السرقة.

استعراض

عادةً ما تُستخدم مستشعرات الأشعة تحت الحمراء (IR) لقياس المسافات ، ولكن يمكن أيضًا استخدامها للكشف عن الأشياء. تتكون مستشعرات الأشعة تحت الحمراء من مرسل الأشعة تحت الحمراء وجهاز استقبال الأشعة تحت الحمراء. يرسل جهاز الإرسال نبضات الأشعة تحت الحمراءبينما يكتشف المستقبل أي انعكاسات. إذا اكتشف جهاز الاستقبال انعكاسًا ، فهذا يعني أن هناك شيئًا ما أمام المستشعر على مسافة ما. إذا لم يكن هناك انعكاس ، فلا يوجد شيء.

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

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

مستلزمات

  • 2 × مستشعر مسافة الأشعة تحت الحمراء ؛
  • 1 × أردوينو ميجا 2560
  • 1 × الجرس.
  • 1 × زر ؛
  • 1 × 470 أوم المقاوم ؛
  • 1 × الترانزستور NPN ؛
  • صداري.

مخطط الاتصال

تظهر الدائرة لهذا المشروع في الشكل أدناه. يتم توصيل مخرجات جهازي استشعار الأشعة تحت الحمراء بالدبابيس A0 و A1. يتصل الطرفان الآخران بدبابيس 5V و GND. يتم توصيل جرس 12 فولت بالدبوس 3 عبر ترانزستور ويتم توصيل الزر المستخدم لتعطيل الإنذار بالدبوس 4.


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


تثبيت

  1. قم بتوصيل دبابيس 5V و GND بلوحة Arduino بالطاقة ودبابيس GND الخاصة بأجهزة الاستشعار. يمكنك أيضًا إمدادهم بالطاقة الخارجية.
  2. قم بتوصيل دبابيس إخراج المستشعرات بالدبابيس A0 و A1 من لوحة Arduino.
  3. قم بتوصيل دبوس 3 من Arduino بقاعدة الترانزستور من خلال المقاوم 1K.
  4. ضع 12 فولت على مجمع الترانزستور.
  5. قم بتوصيل السلك الموجب للجرس 12 فولت بالباعث والرصاص السالب بالسكة الأرضية.
  6. قم بتوصيل دبوس 4 إلى دبوس 5V عبر زر. لأسباب تتعلق بالسلامة ، من الأفضل دائمًا القيام بذلك من خلال المقاوم الصغير الإضافي لتجنب ارتفاع تدفق التيار.
  7. قم بتوصيل لوحة Arduino بالكمبيوتر عبر كابل USBوتحميل البرنامج على متحكم باستخدام Arduino IDE.
  8. قم بتشغيل لوحة Arduino باستخدام مصدر الطاقة أو البطارية أو كابل USB.

الرمز

جرس كثافة العمليات = 3 ؛ // الدبوس 3 هو الناتج إلى زر الطنان الثابت int pushbutton = 4 ؛ // pin 4 هو إعداد الفراغ لإدخال الزر () (pinMode (الجرس ، الإخراج) ؛ // تعيين الدبوس 3 لإخراج pinMode (زر الضغط ، INPUT) ؛ / / تعيين دبوس 4 للإدخال) حلقة باطلة () (// قراءة إخراج كلا المستشعرين وقارن النتيجة مع قيمة العتبة int sensor1_value = analogRead (A0) ؛ int sensor2_value = analogRead (A1) ؛ if (sensor1_value> 400 || sensor2_value> 400) (while (true) (digitalWrite ( buzzer ، HIGH) ؛ // تمكين المنبه إذا (digitalRead (زر الضغط) == HIGH) كسر ؛)) else (digitalWrite (الجرس ، LOW) ؛ // تعطيل المنبه))

فيديو

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

مستشعر الحركة أو مستشعر الإزاحة - جهاز (جهاز) يكتشف حركة أي أجسام. في كثير من الأحيان يتم استخدام هذه الأجهزة في أنظمة الأمن والإنذار والمراقبة. هناك العديد من عوامل الشكل لهذه المستشعرات ، لكننا سننظر في وحدة مستشعر الحركة للاتصال باللوحات اردوينوومن الشركةروبوتدين. لماذا هذه الشركة بالذات؟ لا أريد الإعلان عن هذا المتجر ومنتجاته ، ولكن تم اختيار منتجات هذا المتجر كعينات معملية نظرًا لجودة عرض منتجاتها للمستهلك النهائي. لذا ، يجتمع - مستشعر الحركة(مستشعر PIR)من RobotDyn:


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

الأساسية تحديدمستشعر الحركة (مستشعر PIR):

منطقة عمل المستشعر: من 3 إلى 7 أمتار

زاوية التتبع: حتى 110 درجة

جهد التشغيل: 4.5 ... 6 فولت

الاستهلاك الحالي: حتى 50uA

ملحوظة:يمكن توسيع الوظيفة القياسية للمستشعر عن طريق توصيل مستشعر الضوء بدبابيس IN و GND ، وبعد ذلك لن يعمل مستشعر الحركة إلا في الظلام.

تهيئة الجهاز.

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

زاوية ومنطقة الكشف.

زاوية الكشف (التتبع) 110 درجة ، نطاق مسافة الكشف من 3 إلى 7 أمتار ، الرسم التوضيحي أدناه يوضح كل ذلك:

تعديل الحساسية (مسافة الكشف) وتأخير الوقت.

يوضح الجدول أدناه التعديلات الرئيسية لمستشعر الحركة ، وعلى اليسار يوجد التحكم في تأخير الوقت ، على التوالي ، في العمود الأيسر وصف للإعدادات الممكنة. يصف العمود الأيمن تعديلات مسافة الاكتشاف.


اتصال المستشعر:

  • مستشعر PIR - اردوينو نانو
  • مستشعر PIR - اردوينو نانو
  • مستشعر PIR - اردوينو نانو
  • مستشعر PIR - لمستشعر الضوء
  • مستشعر PIR - لمستشعر الضوء

يوجد مخطط اتصال نموذجي في الرسم البياني أدناه ، في حالتنا يظهر المستشعر بشكل مشروط من الجانب الخلفي ومتصل بلوحة Arduino Nano.

رسم يوضح عمل مستشعر الحركة (نستخدم البرنامج):

/ * * مستشعر PIR -> Arduino Nano * مستشعر PIR -> Arduino Nano * مستشعر PIR -> Arduino Nano * / void setup () (// إعداد اتصال بشاشة المنفذ Serial.begin (9600) ؛) حلقة فارغة () (// اقرأ قيمة العتبة من المنفذ A0 // عادة ما تكون أعلى من 500 إذا كانت هناك إشارة إذا (analogRead (A0)> 500) (// إشارة من مستشعر الحركة Serial.println ("هناك حركة !!! ") ؛) else (/ / No signal Serial.println (" كل شيء هادئ ... ") ؛))

الرسم هو اختبار عادي لجهاز استشعار الحركة ، وله العديد من النواقص ، مثل:

  1. ممكن ايجابيات مزيفة، يحتاج المستشعر إلى التهيئة الذاتية في غضون دقيقة واحدة.
  2. ربط صارم بشاشة المنفذ ، لا توجد مشغلات إخراج (مرحل ، صفارة إنذار ، LED)
  3. وقت الإشارة عند خرج المستشعر قصير جدًا ؛ عند اكتشاف الحركة ، من الضروري تأخير الإشارة برمجيًا لفترة أطول من الوقت.

من خلال تعقيد الدائرة وتوسيع وظائف المستشعر ، يمكن تجنب العيوب المذكورة أعلاه. للقيام بذلك ، ستحتاج إلى استكمال الدائرة بوحدة ترحيل وتوصيل مصباح عادي 220 فولت من خلال هذه الوحدة. سيتم توصيل وحدة الترحيل نفسها بالدبوس 3 على لوحة Arduino Nano. لذا فإن المفهوم هو:

حان الوقت الآن لتحسين الرسم بشكل طفيف ، والذي اختبر مستشعر الحركة. في المخطط ، سيتم تنفيذ تأخير إيقاف تشغيل الترحيل ، نظرًا لأن مستشعر الحركة نفسه لديه وقت إشارة خرج قصير جدًا عند تشغيله. يقوم البرنامج بتنفيذ تأخير لمدة 10 ثوان عند تشغيل المستشعر. إذا رغبت في ذلك ، يمكن زيادتها أو إنقاصها عن طريق تغيير قيمة المتغير DelayValue. يوجد أدناه رسم وفيديو لعمل الكل دارة مجمعة:

/ * * مستشعر PIR -> Arduino Nano * مستشعر PIR -> Arduino Nano * مستشعر PIR -> Arduino Nano * وحدة الترحيل -> Arduino Nano * / // relout - pin (إشارة الإخراج) لوحدة التتابع const int relout = 3 ؛ // prevMillis - متغير لتخزين وقت دورة مسح البرنامج السابقة // الفاصل الزمني - الفاصل الزمني لعد الثواني حتى يتم إيقاف تشغيل المرحل بدون إشارة طويلة prevMillis = 0 ؛ الفاصل الزمني int = 1000 ؛ // DelayValue - الفترة التي يتم خلالها الاحتفاظ بالترحيل على int DelayValue = 10 ؛ // initSecond - متغير التكرار لحلقة التهيئة int initSecond = 60 ؛ // countDelayOff - عداد الفاصل الزمني ثابت int countDelayOff = 0 ؛ // الزناد - علم تنشيط مستشعر الحركة ثابت منطقي الزناد = خطأ ؛ إعداد باطل () (// إجراء قياسي لتهيئة المنفذ الذي تتصل به وحدة الترحيل // هام !!! - لكي تظل وحدة الترحيل في حالة إيقاف التشغيل في البداية // ولا تعمل أثناء التهيئة ، فأنت بحاجة لكتابة القيمة HIGH إلى منفذ الإدخال / الإخراج // ، سيؤدي ذلك إلى تجنب "النقرات" الخاطئة ، وسيحافظ على // حالة الترحيل كما كانت قبل تشغيل الدائرة بأكملها pinMode (relout ، OUTPUT) ؛ digitalWrite (relout، HIGH) ؛ // كل شيء بسيط هنا - ننتظر حتى نهاية 60 دورة (متغير initSecond) // مدة ثانية واحدة ، خلال هذا الوقت ، يقوم المستشعر "بالتهيئة الذاتية" لـ (int i = 0 ؛ أنا< initSecond; i ++) { delay(1000); } } void loop() { //Считать значение с аналогового порта А0 //Если значение выше 500 if(analogRead(A0) >500) (// اضبط علم مشغل مستشعر الحركة إذا (! التعليمات التالية// حفظ في المتغير curMillis // قيمة المللي ثانية المنقضية منذ // بدء تنفيذ البرنامج بدون إشارة طويلة currMillis = millis () ؛ // قارن مع القيمة السابقة للميلي ثانية // إذا كان الفرق أكبر من الفاصل الزمني المحدد ، ثم: إذا (currMillis - prevMillis> الفاصل الزمني) (// حفظ القيمة الحاليةميلي ثانية للمتغير prevMillis prevMillis = currMillis ؛ // تحقق من عداد التأخير من خلال مقارنته بقيمة الفترة // التي يجب خلالها الاحتفاظ بالترحيل في // on state if (countDelayOff> = DelayValue) (// إذا كانت القيمة متساوية ، فحينئذٍ: // إعادة تعيين مشغل إشارة تنشيط مستشعر الحركة = خطأ ؛ // إعادة تعيين عداد التأخير DelayOff = 0 ؛ // إيقاف تشغيل الترحيل الرقمي (relout ، HIGH) ؛ // إحباط كسر الحلقة ؛) else (// إذا كانت القيمة لا يزال أقل ، // قم بزيادة عداد التأخير بمقدار واحد DelayOff ++ ؛ / / امسك الترحيل على digitalWrite (relout ، LOW) ؛))))

يحتوي البرنامج على الهيكل:

طويلة بدون توقيع prevMillis = 0 ؛

الفاصل الزمني int = 1000 ؛

...

تيار طويل غير موقعة ميليس = ميلي () ؛

إذا (currmillis - prevMillis> الفاصل الزمني)

{

prevMillis = currmillis ؛

....

// عملياتنا محاطة بجسم البناء

....

}

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

حسنًا ، في نهاية المقال مقطع فيديو من المؤلف:

الرجاء تمكين جافا سكريبت للتعليقات للعمل.

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

مراجعة العناصر

تم شراؤها:
1. اللوح أحادي الجانب 5x7 سم: غيتناك- أو الألياف الزجاجية
* - الألياف الزجاجية أفضل بكثير من الجيتناك.
2. الوحدة النمطية Neoway M590 - ، مع هوائي ثنائي الفينيل متعدد الكلور -
3. اردوينو برو ميني "RobotDyn" ATmega168PA 8 ميجا هرتز 3.3 فولت -
4. لوحة التحكم في شحن وتفريغ الليثيوم -

تم الحصول عليها من أنقاض الحضارة:
1. رفوف للوحة ، منشورة من علب الاجهزة - 6 قطع.
2. بطارية ليثيوم مسطحة 1300 مللي أمبير
3. تستخدم الدبابيس لتثبيت الكابل بالحائط
4. ممحاة القرطاسية
5. سلك نحاسسمك 1.5 مم
6. حالة الصك من سوق الراديو المحلي - 1.5$
7. زوج من المصابيح لون مختلف(مأخوذ من مشغل VHS)
8. هوائي وزر بغطاء (مأخوذ من موجه Wi-Fi)
9. كتلة طرفي ذات 4 سنون (مأخوذة من باهتة)
10. موصل الطاقة (مأخوذ من شاحن قديم لـ 18650)
11. موصل ذو 6 سنون (مأخوذ من محرك أقراص DVD)
12. يمكن القصدير (من القهوة على سبيل المثال)

اردوينو برو ميني "RobotDyn" Atmega 168PA 3.3V 8MHz

تحديد:
متحكم: ATmega168PA
جهد التشغيل المباشر:.8 - 5.5 فولت
جهد التشغيل من خلال المثبت 33 جنيها: 3.3 فولت أو 5 فولت (حسب الطراز)
درجة حرارة العمل:-40 درجة مئوية ... 105 درجة مئوية
مساهمة الجهد: 3.35-12 فولت (موديل 3.3 فولت) أو 5-12 فولت (موديل 5 فولت)
المداخل / المخرجات الرقمية: 14 (يمكن استخدام 6 منها كمخرجات PWM: 3 و 5 و 6 و 9 و 10 و 11)
المدخلات التناظرية: 6
عدادات الموقتات:اثنان 8 بت والآخر 16 بت
أوضاع توفير الطاقة: 6
تيار مستمر من خلال الإدخال / الإخراج: 40 مللي أمبير
ذاكرة متنقله: 16 كيلو بايت (2 يستخدم لمحمل الإقلاع)
الرامات " الذاكرة العشوائية في الهواتف والحواسيب: 1 كيلو بايت
إيبروم: 512 بايت
ذاكرة الكتابة / محو الموارد: 10،000 فلاش / 100،000 إيبروم
تردد الساعة: 8 ميجا هرتز (موديل 3.3 فولت) أو 16 ميجا هرتز (موديل 5 فولت)
SPI: 10 (SS) ، 11 (MOSI) ، 12 (MISO) ، 13 (SCK)
I2C: A4 (SDA) و A5 (SCL)
UART TTL: 0 (RX) و 1 (TX)
ورقة البيانات:

وقع الاختيار على هذا atmega بالصدفة. في أحد المنتديات حيث تمت مناقشة المشاريع الموفرة للطاقة ، تلقيت نصيحة في التعليقات لاستخدام الـ 168 atmega بالضبط.
ومع ذلك ، اضطررت إلى العبث للعثور على مثل هذه اللوحة ، نظرًا لأنه في كثير من الأحيان تم غمر كل القطع بـ 328 atmegas بتردد 16 ميجاهرتز ، تعمل من 5 فولت. بالنسبة لمشروعي ، كانت هذه الخصائص زائدة عن الحاجة وغير مريحة منذ البداية ، وأصبح البحث أكثر تعقيدًا.
نتيجة لذلك ، صادفت إصدارًا بقوة 3.3 فولت من Pro Mini على Atmega 168PA على eBay ، وليس نسخة صينية فقط ، ولكن تحت علامة RobotDyn التجارية من مطور روسي. نعم ، أنا أيضًا ، في البداية ، مثلك ، كان لدي القليل من الشك. لكن عبثا. عندما تم تجميع المشروع بالفعل ، قدمت AliExpress تسليمًا إلزاميًا مدفوعًا للسلع الرخيصة (وبعد ذلك بدأ فقدان الطرود في كثير من الأحيان) ، ثم طلبت لاحقًا Pro Mini Atmega168 العادي (بدون PA) 3.3 فولت 8 ميجاهرتز. لقد جربت قليلاً مع أوضاع توفير الطاقة مع كلتا اللوحتين ، وأومض في كل منهما رسمًا خاصًا غمر المتحكم الدقيق في وضع توفير الطاقة الأقصى وهذا ما حدث:
1) Arduino Pro Mini "RobotDyn": ~ 250uA
2) Arduino Pro Mini "بدون اسم":عندما يتم توفير الطاقة لمنظم الجهد (خرج RAW) ويكون مؤشر LED ملحومًا ، يكون الاستهلاك الحالي ~ 3.92 مللي أمبير




- كما تفهم ، فإن الفرق في استهلاك الطاقة يبلغ 16 مرة تقريبًا ، كل ذلك لأن NoName's Moscow Pro Mini يستخدم مجموعة من Atmega168 + ، والتي يأكل MK نفسها منها فقط 20uAالحالي (لقد راجعت هذا بشكل منفصل) ، كل ما تبقى من الشراهة يقع على محول الجهد الخطي AMS1117 - تؤكد ورقة البيانات هذا فقط:


في حالة اللوحة من RobotDyn ، يكون الاتصال مختلفًا إلى حد ما بالفعل - هذا هو Atmega168PA + - تم استخدام مثبت LDO آخر هنا ، والذي تبين أن خصائصه من حيث توفير الطاقة كانت أكثر متعة:


لم أقم بلحامها ، لذلك لا يمكنني تحديد مقدار التيار الذي يستهلكه Atmega168PA شكل نقي. في هذه القضيةلقد اكتفيت ~ 250uAعند تشغيله بواسطة Nokia بطارية ليثيوم. ومع ذلك ، إذا ألغيت AMS1117 مع NoName "من لوحة موسكو ، فإن ATmega168 عادي ، في شكله النقي ، كما قلت أعلاه ، يستهلك 20uA.
يمكن إيقاف تشغيل مصابيح LED الخاصة بالطاقة بشيء حاد. ليست مشكلة. تم لحام المثبت بمجفف شعر. ومع ذلك ، لا يمتلك كل شخص مجفف شعر ومهارات التعامل معه ، لذا فإن كلا الخيارين أعلاه لهما الحق في الوجود.

وحدة Neoway M590E

تحديد:
الترددات: EGSM900 / DCS1800 ثنائي النطاق ، أو GSM850 / 1900 أو رباعي الموجات
حساسية:-107 ديسيبل
قوة قصوىالتحويلات: EGSM900 Class4 (2W) ، DCS1800 Class1 (1W)
تيار الذروة: 2 أ
العمل الحالي: 210 مللي أمبير
النوم الحالي: 2.5 مللي أمبير
درجة حرارة العمل:-40 درجة مئوية ... + 85 درجة مئوية
جهد التشغيل: 3.3 فولت ... 4.5 فولت (موصى به 3.9 فولت)
البروتوكولات: GSM / GPRS Phase2 / 2 + ، TCP / IP ، FTP ، UDP إلخ.
إنترنت:فئة GPRS 10
ورقة البيانات:

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

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

هذه الوحدة متقلبة أيضًا قبل مصدر الطاقة ، حيث إنها تستهلك في الذروة ما يصل إلى 2 أمبير من التيار ، ويبدو أن الصمام الثنائي الذي يأتي مع المجموعة مصمم لخفض الجهد من 5 فولت (وهذا هو سبب كتابته على اللوحة نفسها 5V) إلى 4.2V ، ولكن وفقًا لشكاوى الناس ، فإنه يخلق مشاكل أكثر من نفعه.
لنفترض أنك قمت بالفعل بتجميع هذه الوحدة ، وتم لحام وصلة عبور بدلاً من الصمام الثنائي ، نظرًا لأننا لن نقوم بتزويدها بجهد 5 فولت ، ولكننا سنقوم بتشغيلها مباشرةً من بطارية ليثيوم ، والتي تقع ضمن الجهد المسموح به وهو 3.3 -4.2 فولت.
سيكون من الضروري توصيله بجهاز الكمبيوتر بطريقة أو بأخرى ، والتحقق من قابلية التشغيل. في هذه الحالة ، من الأفضل أن نشتري أنفسنا مقدمًا - من خلالها سنتواصل مع وحدة Arduino واللوحات عبر الواجهة التسلسلية UART (USART).
يظهر الاتصال أدناه في الصورة (لقد رسمته بأفضل ما يمكنني):
مودم TX >>> محول RX
مودم RX<<< TX конвертера
بطارية بلس - مودم بلس
يتم دمج ناقص بطارية الليثيوم مع GND للمودم و GND للمحول
لبدء المودم ، قم بتوصيل خرج BOOT من خلال المقاوم 4.7 kΩ بـ GND


في غضون ذلك ، قم بتشغيل البرنامج على الكمبيوتر. انتبه إلى الإعدادات:
1) حدد منفذ COM الذي يتصل به محول TTL ، في حالتي هو COM4 ، قد يكون جهازك مختلفًا.
2) حدد معدل الباود. (هناك فارق بسيط هنا ، لأن الوحدات نفسها يمكن تكوينها لسرعات مختلفة ، غالبًا 9600 باود أو 115200 باود. هنا تحتاج إلى التحديد تجريبيًا ، واختيار بعض السرعة ، والاتصال ، وإرسال أمر AT ، إذا جاءت الشقوق استجابة ، ثم سيتم إيقاف تشغيله ، وحدد سرعة مختلفة وكرر الأمر حتى تصبح الإجابة على ما يرام).
3) حدد طول الحزمة (في هذه الحالة 8 بت) ، تعطيل بت التكافؤ (بلا) ، بت التوقف (1).
4) تأكد من وضع علامة + CR، وبعد ذلك ستتم إضافة حرف إرجاع إلى أول حرف تلقائيًا إلى كل أمر نرسله إلى الوحدة النمطية في النهاية - لا تفهم الوحدة الأوامر إلا باستخدام هذا الحرف في النهاية.
5) الاتصال ، كل شيء واضح هنا ، تم النقر عليه ويمكننا العمل مع الوحدة.

إذا نقرت على "اتصال" ثم بدأت الوحدة عن طريق تطبيق BOOT من خلال المقاوم 4.7K على الأرض ، فسيتم أولاً عرض الرسالة "MODEM: STARTUP" في الجهاز ، ثم بعد فترة ، الرسالة "+ سيتم عرض PBREADY "، مما يعني أنه تمت قراءة رقم الهاتف. كتاب ، على الرغم من أنه قد يكون فارغًا:

تحت هذا المفسد أوامر AT مع أمثلة

نقوم بطباعة الأمر AT - استجابةً لذلك ، ترسل لنا الوحدة الأمر الخاص بنا ، حيث تم تمكين وضع echo ، و OK:

دعنا نتحقق من حالة المودم باستخدام الأمر AT + CPAS - استجابةً لفريقنا مرة أخرى ، + CPAS: 0 و OK.
0 - يعني أن الوحدة جاهزة للعمل ، ولكن حسب الحالة ، قد تكون هناك أرقام أخرى ، على سبيل المثال ، 3 - مكالمة واردة ، 4 - في وضع الاتصال ، 5 - وضع السكون. لم أتمكن من العثور على أي معلومات عن 1 و 2.

يحدث تغيير معدل نقل البيانات عبر UART باستخدام الأمر AT + IPR = 9600 - هذا إذا كنت بحاجة إلى سرعة 9600. إذا كان البعض الآخر مشابهًا لـ AT + IPR = 19200 على سبيل المثال أو AT + IPR = 115200.

دعنا نتحقق من إشارة الشبكة. يأتي AT + CSQ ، + CSQ كاستجابة: 22.1 - القيمة قبل العلامة العشرية لها نطاق من 0 ... 31 (115 ... 52 ديسيبل) - هذا هو مستوى الإشارة ، وكلما كان ذلك أفضل. لكن 99 يعني غيابها. القيمة بعد الفاصلة العشرية - جودة الإشارة 0 ... 7 - هي عكس ذلك ، فكلما قل الرقم ، كان ذلك أفضل.

دعنا نوقف تشغيل وضع echo عن طريق إرسال الأمر ATE0 حتى لا تتداخل الأوامر المكررة. يتم تشغيل هذا الوضع مرة أخرى باستخدام الأمر ATE1.

عرض إصدار البرنامج الثابت AT + GETVERS



يمكن عرض هذه الأوامر والعديد من الأوامر الأخرى

مزيج المجلس

إذا لم يكن من الصعب لحام Pro Mini بلوحة التجارب ، فإن الوضع مع وحدة GSM يكون أكثر تعقيدًا إلى حد ما ، لأنه. يوجد مشط التلامس الخاص به على جانب واحد فقط ، وإذا كان ملحومًا فقط ، فسيتم تعليق الجانب الآخر من اللوحة في الهواء. ثم ، مرة أخرى ، بالعين ، اضطررت إلى حفر 3 ثقوب إضافية بالقرب من ثلاث زوايا على السبورة. ثم أزيلت القناع عن المناطق المحيطة بكل من الثقوب. للراحة ، قمت بوضع الخيوط المفصولة من المشط على اللوح غير الملحوم (أبيض) ، وبعد تثبيت لوحة وحدة GSM عليها ، يتم لحامها عادةً:

في وقت لاحق ، كان علي عمل ثقب آخر ، في حالتي على الحرف "I" ، حيث يقول "صنع في الصين" ، على حافة اللوحة.


لقد حدث أن جهة الاتصال المضافة ، والتي هي أساسًا GND ، أصبحت قريبة من GND للوحة Pro Mini ، وبالتالي أصبح من الممكن الجمع بين أرضية وحدة GSM و Pro Mini مع قطرة لحام (سلك طويل) في المنتصف وعلى يمينه يوجد Pro Mini الرصاص) - قم بتمييزهم بأسهم. لقد اتضح أنه معوج بالطبع ، لكنه الآن ثابت بشكل آمن:



كان هناك بعض المساحة المتبقية بين الألواح - لقد وضعت لوحة تحكم في شحن تفريغ الليثيوم مع موصل microUSB ملحوم مسبقًا وأسلاك ملحومة فيه.

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



رفوف المجلس

لإصلاح اللوحة داخل العلبة بشكل آمن ، كان عليّ قضاء يومين في التفكير في كيفية تنفيذ ذلك. لم يتم النظر في خيار المادة اللاصقة الذائبة الساخنة لعدة أسباب - يمكن أن تسقط وتشوه ، والأهم من ذلك ، أن التصميم سيكون من الصعب تفكيكه.
توصلت إلى استنتاج مفاده أن الخيار الأبسط والأكثر صحة هنا هو استخدام الرفوف ، وهو ما لم يكن لدي بطبيعة الحال. ومع ذلك ، كان هناك نوعان من أجهزة الشحن التي لا تعمل ، حيث تم قطع رف طويل مع خيط للبراغي. تم نشر كل رف إلى نصفين وتم الانتهاء منه بملف يصل إلى حوالي 9.5 مم - عند هذا الارتفاع يكون للبطارية الموجودة أسفل اللوحة هامشًا كافيًا ، حوالي 2 مم - يتم ذلك حتى لا تلمس جهات الاتصال الملحومة باللوحة مع نصائحهم وحتى يمكن وضع قطعة بينهم رغوة للتثبيت.
بالنسبة لربط اللوحة مباشرة بالعلبة ، فقد قمت هنا بقطع أربعة شرائح من علبة القهوة ، وحفر حفرة في نهاياتها ، ثم قمت بتثبيتها على نفس مسامير التنصت الذاتية التي تم تثبيتها في الرفوف. انظر إلى الصورة أدناه لترى كيف تبدو.
تتمثل الخطوة التالية في تثبيت زوج من الحوامل على الجانب الآخر من اللوحة ، أي من الأعلى ، بحيث عند إغلاق العلبة ، يستقر الغطاء قليلاً على هذه الحوامل ، مما يؤدي إلى تثبيت إضافي. بعد ذلك بقليل ، في ظل هذه الحالة ، صادفت مبنى من تحت إذاعة الدعاية السوفيتية (إذا تم العثور عليها في وقت سابق ، لكنت أخذت كل الرفوف من هنا) ، حيث وجدت ارتفاعات أكثر أو أقل مناسبة ، لكنني قمت أولاً بحفرهم في الوسط باستخدام مثقاب تحت مسامير. ثم قام بقصها وإنهائها أيضًا بملف وإزالة الفائض. هنا حصلت على دقة واحدة - في الصورة يمكنك أن ترى أن أحد الحامل الأبيض مشدود إلى لوحة getinax من الحافة ، والحامل الأبيض الآخر مباشرة إلى لوحة الوحدة ، لأنه. من حافة واحدة ، تغطي لوحة المودم اللوحة السفلية تمامًا ، ومن الحافة المقابلة ، على العكس من ذلك ، ينظر الجزء السفلي إلى الخارج. في الوقت نفسه ، كان لابد من حفر ثقوب إضافية في كلا اللوحين بحيث يمكن أن تمر رؤوس البراغي بحرية.
وأخيرًا ، يبقى التأكد من أن اللوحة دائمًا ما تكون موازية للحالة - الأقواس المستخدمة لإصلاح الأسلاك والكابلات على الحائط تتناسب تمامًا مع هذه الحالة ، لقد قمت مسبقًا بإزالة المسامير منها. الأقواس تتشبث جيدًا باللوحة مع جانبها المقعر بدون أي أجهزة إضافية ، الشيء الوحيد هو على يمين بطاقة SIM ، واتضح أن عرض الحامل مفرط وكان لا بد من صقله أيضًا.
تم تعديل جميع التفاصيل بالعين وتجريبياً ، فيما يلي صورة لكل ما سبق:



موصلات. المصابيح. زر.

منذ نفاد المشط ، اضطررت إلى تفكيك الموصل ذي 6 سنون من لوحة محرك أقراص DVD ، والتي قمت بعد ذلك بلحامها في Pro Mini ، وذلك من أجل راحة وميض اللوحة. في الجوار ، قمت بلحام موصل دائري (Nokiev 3.5mm) لشحن الليثيوم.

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

على الجانب الآخر من اللوحة ، قمت بلحام زر لإعادة ضبط الجهاز واثنين من مصابيح LED لتصحيح أخطاء البرامج الثابتة - مؤشر LED الأحمر متصل بوحدة GSM ، والثاني أخضر متصل بالإخراج العاشر لجهاز Pro Mini - إنه أسهل بالنسبة لي لتصحيح البرنامج.

ترقية البطارية

بطارية Nokian المسطحة من هواتف Nokia ليست أقل شيوعًا من بطارية 18650 ، لكن الكثير يرفضون استخدامها ببساطة بسبب إزعاج توصيل جهات الاتصال التي تغرق في عمق البطارية نفسها. من غير المرغوب لحامها ، لذلك تقرر استخدام الطريقة المقترحة من قبل هؤلاء ، وهي صنع كتلة تلامس من ممحاة القرطاسية وسلك نحاسي (بسمك 1.5 مم).
أولاً ، اخترقت قطعة ممحاة بسلكين بنهايات مجردة سابقًا ، ورأيتها في ملامسات البطارية بحيث تتزامن المسافة بينهما ،
قام بثني النهايات ، وتغليفها بمكواة لحام ، وسحبها قليلاً من الأطراف الطويلة بحيث يتم غرق التلامسات الناتجة في الممحاة.



مثال البطارية:

يمكنك إصلاح الكتلة الطرفية بشريط مطاطي أو لفها بشريط كهربائي أزرق ، وهو ما فعلته في النهاية.

حَشد.

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

عند توصيل الشحن:

إطار. كتلة طرفية خارجية.

تم طرح العلبة في سوق الراديو المحلي مقابل 1.5 دولار تقريبًا ، إذا تمت ترجمتها إلى دولارات ، بحجم 95 × 60 × 25 ملم ، وهو حجم علبة السجائر تقريبًا. لقد قمت بحفر بعض الثقوب فيه. أولاً ، بالنسبة للكتلة الطرفية ذات 4 سنون المأخوذة من باهتة لا يعمل.
لقد قمت بتحرير جهتي التلامس المتطرفين تمامًا من البراغي ذات الحشيات ، وحفرت ثقوبًا لمسامير أطول ، حيث سيتم تثبيت الكتلة الطرفية بالكامل على العلبة. في الحالة نفسها ، بالطبع ، ستكون الفتحتان المتطرفتان كبيرتان ، وسيكون الاثنان الموجودان في المنتصف أصغر - سيكون لديهم جهات اتصال مترابطة من خلالها ، أحدها متصل بـ VCC Pro Mini ، والاتصال الثاني بـ دبوس 2.

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

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

لوحة في علبة بها كبل محول USB-TTL متصل:

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

حسنًا ، تبدو مجمعة بالكامل مع الشحن المتصل كما يلي:

اختبار. كيف تعمل:

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

يتم تنظيم مبدأ التشغيل من خلال مقاطعة خارجية ، حيث يتم إغلاق الدبوس 2 في البداية على VCC وبالتالي يتم الحفاظ على منطقي 1 على الإخراج ، ووحدة التحكم في وضع السكون. بمجرد كسر جهة الاتصال وظهور 0 على الدبوس 2 ، يستيقظ الميكروكونترولر ، ويخفض الدبوس الثالث (الذي يتصل به BOOT الخاص بالمودم من خلال المقاوم) بالأرض - تبدأ الوحدة النمطية ، يقوم MK باستقصاء الوحدة بشكل دوري الجاهزية ، وبمجرد أن تلتقط الشبكة ، فإنها ترسل على الفور مكالمة إلى رقم هاتف المالك المحدد في الرمز. بعد رفض المكالمة ، يتم إيقاف تشغيل الجهاز دون إرسال مكالمات لا نهاية لها أكثر من خطيئة العديد من أجهزة الإنذار الصينية.

معلومة اضافية

#تضمن #تضمن // برنامج مكتبة UART SoftwareSerial gsm (7 ، 6) ؛ // RX (7) ، TX (6) void wakeUp () () // معالج مقاطعة فارغة //////////////////////////// ////////// /////////////// void gsmOFF () (// PORTD | = (1<<3); // ВЫКЛЮЧЕНИЕ МОДУЛЯ _delay_ms(10); // gsm.println("AT+CPWROFF"); // ПЕЧАТАЕМ КОМАНДУ OFF PORTB &=~ (1<<2); // выключить LED 10 } // //========================================= void gsmON(){ // PORTD|=(1<<6); // 6-му порту (TX) назначить 1 PORTD &= ~(1<<3); // ЗАПУСК МОДУЛЯ _delay_ms(10); // while(!gsm.find("+PBREADY")); // ждём прочтения тел. книги PORTB |= (1<<2); // включить LED 10 _delay_ms(100); // while(1){ // gsm.println("AT+CREG?"); // проверяем в сети ли модуль if (gsm.find("0,1")) break; // если сеть есть, выходим из цикла _delay_ms(400); // проверка раз в 0,4 сек } // } // /////////////////////////////////////////// // void sleepNow(){ // функция засыпания ADCSRA = 0x00; // отключить подсистему АЦП (экономия 140 мкА) PORTD&=~(1<<6); // в вывод TX поставить 0 _delay_ms(100); // set_sleep_mode(SLEEP_MODE_PWR_DOWN); // режим сна PWR_DOWN sleep_enable(); // включение сна attachInterrupt(0, wakeUp, LOW); // включить прерывания sleep_mode(); // sleep_disable(); // detachInterrupt(0); // отключить прерывания } void setup(){ gsm.begin(9600); // скорость работы UART DDRD = B01001000; // 3-й и 6-й выводы на выход DDRB |= (1<<2); // вывод 10 на выход gsmON(); // запуск модуля для теста gsmOFF(); // выключаем модуль } void loop(){ if (!(PIND&(1<<2))){ // если на 0-ом прерывании появился 0 gsmON(); gsm.println("ATD+79xxxxxxxxx;"); // отзваниваемся, в ответ приходит OK и CONNECT _delay_ms(100); if (gsm.find("OK")) while(1){ // ожидание сброса вызова gsm.println("AT+CPAS"); // при каждой итерации опрашиваем модуль if (gsm.find("0")) break; // если 0, то выходим из цикла while _delay_ms(100); // проверка раз в 0,1 сек } for (char i=0; i<14; i++){ PORTB|=(1<<2); // LED 10 ON _delay_ms(200); PORTB&=~(1<<2); // LED 10 OFF _delay_ms(200); } gsmOFF(); // выключить модуль _delay_ms(10); while(1); // блокируем программу } else { sleepNow(); // укладываем контроллер спать } }

رسم تخطيطي (بدون لوحة التحكم في الشحن والتفريغ)



الاستنتاجات والأفكار. الخطط.

يتم استخدام المنبه في البلد ، وأنا راضٍ عن العمل ، ومع ذلك ، مع مزيد من الدراسة لـ AVR ، تظهر المزيد والمزيد من الأفكار لمزيد من التعديل. Arduino بأسلاكه ذات اللغة الزائفة أزعجني كثيرًا ، لأنه. كانت هناك لحظة واحدة غير سارة في العمل. عندما استخدمت الوظائف للعمل مع digitalWrite () ؛ الموانئ ؛ أو pinMode () ؛ - ثم يتم تعليق وحدة GSM لسبب ما في كثير من الأحيان. لكن كان من الجدير استبدالها بحيل مثل DDRB | = (1<فقط تشغيل الوصول المباشر إلى المنافذ هو الذي جعل الجهاز يعمل ، كما كان مقصودًا.

لتوفير الطاقة ...
عمل الجهاز المُجمع لمدة أربعة أشهر كاملة دون إعادة الشحن ويستمر في العمل ، على الرغم من أنه من الأصح قول "نوم". يتم التحقق من ذلك عن طريق إعادة تشغيل بسيطة من خلال الزر الأبيض. مع استهلاك طاقة يبلغ 250 μA (من خلال المثبت 33 جنيهًا) وبطارية تبلغ 1430 مللي أمبير تقريبًا ، على الرغم من أنه لا بأس بذلك ، نظرًا لعدم حداثة البطارية ، سنقوم بتقريب ما يصل إلى 1000 مللي أمبير في الساعة ، اتضح أن الجهاز يمكنه النوم لحوالي 5.5 شهر بدون إعادة الشحن. إذا كنت لا تزال تفك تثبيت المثبت ، فيمكن مضاعفة وقت التشغيل بأمان بمقدار 10 مرات. لكن في حالتي ، لا داعي لذلك ، لأنك ما زلت بحاجة إلى إنفاق الرصيد من بطاقة SIM كل ثلاثة أشهر ، وفي نفس الوقت يمكن فحص الجهاز وإعادة شحنه.
مثال توفير الطاقة الوارد في المراجعة بعيد كل البعد عن الحد ، لأن. بناءً على المعلومات الواردة في ورقة البيانات ، من الممكن خفض تردد ساعة وحدة التحكم الدقيقة (ويتم ذلك عن طريق تثبيت الصمامات) إلى 1 ميجاهرتز ، وإذا تم تطبيق جهد 1.8 فولت ، سينخفض ​​الاستهلاك إلى أقل من شريط 1 μA في الوضع النشط. أحمق جدا! ولكن إذا تم تسجيل MK من مولد RC الداخلي ، فستظهر مشكلة أخرى - سيتم انسداد الأثير UART بالقمامة والأخطاء ، خاصةً إذا تم تسخين وحدة التحكم أو تبريدها.

عند الانتهاء...
1) مجموعة الأسلاك العادية المكسورة ليست مريحة للغاية ، أخطط لتجربة مستشعر Hall ومفتاح القصب ، على الرغم من أنهم يقولون عن الأخير أنه غير موثوق به للغاية ، لأن جهات الاتصال الموجودة بداخله يمكن أن تلتصق.
2) سيكون من الجيد إضافة إمكانية تغيير "رقم المالك" بدون مشاركة جهاز كمبيوتر ووميض. هذا بالفعل مع EEPROM يجب أن يعمل.
3) جرب المقاطعات من مؤقت المراقبة ، ولكن ليس فقط من أجل الفضول ، ولكن حتى يستيقظ الميكروكونترولر من تلقاء نفسه بشكل دوري ، وقياس جهد البطارية وإرسال القيمة الناتجة عبر الرسائل القصيرة للتعرف على مدى انخفاض البطارية.
4) يمكن للوحة الشمسية أن تلغي تمامًا الحاجة إلى إعادة شحن الجهاز ، وسيكون هذا صحيحًا بشكل خاص للبطاريات منخفضة السعة.
5) كنت أرغب لفترة طويلة في شراء بطاريات LiFePo4 ، والتي ، وفقًا للمراجعات ، تتسامح عادةً مع الصقيع ، لكن بينما كنت أبحث عن قطعة مناسبة ، كان الربيع قد جاء بالفعل بشكل غير محسوس.
6) العمل على المكون الجمالي

أي جهاز Pro Mini يجب أن أشتريه؟
إذا لم يكن هناك مجفف شعر ، إذاً Pro Mini "RobotDyn" Atmega168PA 3.3V ، التقط مصباح LED بشيء حاد ولديك ~ 250 μA.
إذا كان هناك مجفف شعر ، ثم أي لوحة ، قم بلحام المثبت ومصباح الطاقة - ستحصل على حوالي 20 ميكرو أمبير من الاستهلاك الحالي.

هذا كل شيء في الوقت الحالي ، وآمل أن تكون المراجعة ممتعة ومفيدة.

أخطط لشراء +174 اضافة الى المفضلة أحب الاستعراض +143 +278