جدول المحتويات:
- الخطوة 1: اختر سلك Sigal
- الخطوة 2: تمديد السلك إلى لوحة Arduino
- الخطوة الثالثة: تحليل الإشارة
- الخطوة 4: كود تحليل الإشارة الخاص بك
- الخطوة 5: تحديد عامل تصفية
- الخطوة 6: التصفية: الجزء 1
- الخطوة 7: التصفية: الجزء 2
- الخطوة 8: التصفية: الجزء 3
- الخطوة 9: التصفية: الجزء 4
فيديو: استخدم Arduino لعرض عدد دورات المحرك في الدقيقة: 10 خطوات (بالصور)
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:38
سيوضح هذا الدليل كيف استخدمت Arduino UNO R3 وشاشة LCD مقاس 16 × 2 مع I2C وشريط LED لاستخدامه كمقياس لسرعة المحرك وضوء التحول في سيارتي Acura Integra. إنه مكتوب من حيث شخص لديه بعض الخبرة أو التعرض لبرنامج Arduino أو الترميز بشكل عام ، البرنامج الرياضي MATLAB ، وإنشاء أو تعديل الدوائر الكهربائية. في المستقبل ، قد تتم مراجعة هذا ليكون أسهل في الفهم بالنسبة لشخص لديه خبرة قليلة أو معدومة في هذه المواضيع.
الخطوة 1: اختر سلك Sigal
ستحتاج إلى الحصول على إشارة ترتبط بسرعة المحرك. من الممكن إضافة نظام يقيس سرعة المحرك ، لكن من العملي أكثر بكثير الاستفادة من السلك الموجود الذي يحمل معلومات سرعة المحرك. قد يكون لسيارة واحدة مصادر متعددة لهذا ، وقد تختلف بشكل كبير من سنة إلى أخرى على طراز سيارة واحد. من أجل هذا البرنامج التعليمي ، سأستخدم مثال سيارتي ، مسار تم تعديله 2000 Acura Integra LS. لقد وجدت في محركي (B18B1 مع OBD2) وجود جهد كهربائي غير مستخدم يبلغ ارتفاعه 12 فولت وينخفض إلى 0 فولت عند إكمال ثورة كاملة.
الأشياء التي ستساعد في تحديد إشارة سرعة المحرك المحتملة:
- مخطط الأسلاك لسيارتك
- البحث في المنتديات عن سيارتك التي تتضمن إشارات المحرك / وحدة التحكم الإلكترونية
- ميكانيكي ودود من عشاق السيارات
الخطوة 2: تمديد السلك إلى لوحة Arduino
بمجرد اختيار إشارة مناسبة ، ستحتاج إلى تمديدها إلى أي مكان تضع فيه لوحة Arduino. قررت أن أضع سيارتي داخل السيارة حيث كان الراديو ، لذلك قمت بتوجيه السلك الجديد من المحرك ، من خلال حلقة مطاطية في جدار النار ، وإلى منطقة الراديو مباشرة. نظرًا لوجود قدر وفير من الأدلة الإرشادية حول تجريد الأسلاك ولحامها وحمايتها ، فلن أشرح هذه العملية.
الخطوة الثالثة: تحليل الإشارة
هذا هو المكان الذي يمكن أن تتعقد فيه الأمور. سيساعدك وجود فهم عام لتحليل الإشارات وعناصر التحكم في طريقك طويلاً ، ولكن يمكن القيام به بقليل من المعرفة.
على الأرجح لن يقوم سلك الإشارة المختار بإخراج القيمة الدقيقة لسرعة المحرك. ستحتاج إلى تشكيلها وتعديلها لإعطاء العدد الدقيق لعدد دورات المحرك في الدقيقة الذي تريده. نظرًا لحقيقة أن كل سلك إشارة وسيارة مختلفة قد يكون مختلفًا ، من هذه النقطة فصاعدًا ، سأشرح كيف استخدمت إشارة الموقع من الموزع على Integra الخاص بي.
عادة ما تكون إشارتي 12 فولت وتنخفض إلى 0 فولت عند إكمال دورة كاملة واحدة. إذا كنت تعرف الوقت اللازم لإكمال دورة كاملة واحدة ، أو دورة كاملة واحدة ، فيمكن بسهولة ترجمة ذلك إلى ثورات / دقيقة باستخدام بعض المفاهيم الأساسية.
1 / (ثانية لكل دورة) = دورات في الثانية ، أو هرتز
الدورات في الدقيقة = هرتز * 60
الخطوة 4: كود تحليل الإشارة الخاص بك
تتطلب هذه الطريقة الحصول على الوقت الذي تستغرقه إشارة الإدخال لإكمال دورة كاملة واحدة. لحسن الحظ ، يحتوي برنامج Arduino IDE على أمر يقوم بذلك بالضبط ، PulseIn.
سينتظر هذا الأمر حتى تتجاوز الإشارة عتبة ، وتبدأ في العد ، وتتوقف عن العد عند تجاوز العتبة مرة أخرى. هناك بعض التفاصيل التي يجب ملاحظتها عند استخدام الأمر ، لذلك سأقوم بتضمين رابط لمعلومات PulseIn هنا:
سيعيد PulseIn قيمة بالميكروثانية ، ولإبقاء الحسابات بسيطة ، يجب تحويلها على الفور إلى ثوانٍ عادية. باتباع الرياضيات في الخطوة السابقة ، يمكن معادلة هذه المدة الزمنية مباشرة بـ RPM.
ملاحظة: بعد التجربة والخطأ اكتشفت أن الموزع يكمل دورتين لكل دورة واحدة للعمود المرفقي للمحرك ، لذلك قمت ببساطة بتقسيم إجابتي على 2 لحساب ذلك.
الخطوة 5: تحديد عامل تصفية
إذا كنت محظوظًا ، فلن يكون لإشارتك "ضوضاء" (تقلبات) وستكون سرعة محركك دقيقة. في حالتي ، كان هناك الكثير من الضوضاء القادمة من الموزع والتي غالبًا ما كانت تعطي جهدًا بعيدًا عن المتوقع. يتحول هذا إلى قراءات خاطئة جدًا لسرعة المحرك الفعلية. سوف تحتاج إلى تصفية هذه الضوضاء.
بعد بعض تحليل الإشارات ، جاءت جميع الضوضاء تقريبًا بترددات (هرتز) أعلى بكثير مما كان يخرجه المحرك نفسه (وهذا صحيح بالنسبة لمعظم الأنظمة الديناميكية الحقيقية). هذا يعني أن مرشح التمرير المنخفض هو مرشح مثالي للعناية بهذا الأمر.
يسمح مرشح التمرير المنخفض بالمرور للترددات المنخفضة (المرغوبة) ويقلل من الترددات العالية (غير المرغوب فيها).
الخطوة 6: التصفية: الجزء 1
يمكن تصميم الفلتر يدويًا ، ولكن استخدام MATLAB سيزيد من سرعة ذلك بشكل كبير إذا كان لديك وصول إلى البرنامج.
يمكن معادلة مرشح التمرير المنخفض بوظيفة النقل (أو جزء) في مجال لابلاس (مجال التردد). سيتم ضرب تردد الإدخال في هذا الكسر ويكون الإخراج عبارة عن إشارة مصفاة تحتوي فقط على المعلومات التي تريد استخدامها.
المتغير الوحيد في الوظيفة هو تاو. Tau تساوي 1 / Omega ، حيث تمثل Omega تردد القطع الذي تريده (يجب أن يكون بالتقدير الدائري في الثانية). تردد القطع هو الحد الذي ستتم فيه إزالة الترددات الأعلى منه مع الاحتفاظ بالترددات الأقل منها.
لقد قمت بضبط تردد القطع الذي يساوي RPM لن يصل محركي أبدًا (990 RPM أو 165 Hz). تُظهر الرسوم البيانية FFT تقريبًا الترددات التي كانت تحملها إشارتي الأولية والترددات التي خرجت من الفلتر.
الخطوة 7: التصفية: الجزء 2
هنا تم استخدام MATLAB مرة أخرى من أجل الوقت. يتم تحديد تردد القطع ، ومن ذلك يتم عرض وظيفة النقل الناتجة. ضع في اعتبارك أن هذا الجزء ينطبق فقط على مجال لابلاس ولا يمكن استخدامه مباشرة على وحدة تحكم صغيرة تعتمد على الوقت مثل Arduino UNO R3.
الخطوة 8: التصفية: الجزء 3
يحتوي MATLAB على أمر يحول وظيفة مستمرة (مجال تردد) إلى وظيفة منفصلة (مجال زمني). سيوفر إخراج هذا الأمر معادلة يمكن دمجها بسهولة في كود Arduino IDE.
الخطوة 9: التصفية: الجزء 4
في رسم Arduino ، قم بتضمين المتغيرين u و y قبل الإعداد. يحدد الأمر float ببساطة كيفية تخزين المتغير للبيانات (أشياء مثل القيمة القصوى والأرقام العشرية وما إلى ذلك …) وسيتم توفير رابط لمزيد من المعلومات حول هذا هنا: https://www.arduino.cc/reference/en/language / فاريا …
في الحلقة حيث يتم التحويل من الإشارة الأولية إلى سرعة المحرك ، قم بتضمين المتغير u والمعادلة المتعددة y. هناك طرق متعددة لاستخدام هذا ، ولكن يجب تعيين المتغير u مساويًا لإشارة الإدخال الخام التي يتم قياسها ، وسيكون المتغير y هو القيمة التي تمت تصفيتها.
موصى به:
عدد المعجبين على Facebook: 5 خطوات (بالصور)
عدد المعجبين على Facebook: تحديث: 26.09.2019 - الوقت يمر بسرعة وتغير التكنولوجيا. منذ أن أنشأت هذا المشروع ، قام Facebook بتغيير واجهات برمجة التطبيقات وإعداد التطبيق. لذلك انتهت صلاحية خطوة إنشاء تطبيق Facebook. اليوم لم يعد بإمكاني الوصول أو الفرصة لمتابعة هذه الخطوة
المحرك التعريفي ذو الملف الواحد / المحرك الكهربائي: 6 خطوات
المحرك الحثي ذو الملف الواحد / المحرك الكهربائي: في هذا المشروع ، سنقوم بصنع محرك تحريضي ذو ملف واحد ، يتم استخدام إصدارات أكثر تفصيلاً من هذا المحرك الكهربائي في معظم الأجهزة الحالية البديلة. لا يحتوي محركنا على عزم دوران مرتفع ، فهو يتعلق أكثر بالعمل
التحكم الذاتي في عدد دورات المحرك في الدقيقة باستخدام نظام التغذية الراجعة من مقياس سرعة الدوران القائم على الأشعة تحت الحمراء: 5 خطوات (بالصور)
التحكم الذاتي في عدد دورات المحرك في الدقيقة باستخدام نظام التغذية المرتدة من مقياس سرعة الدوران القائم على الأشعة تحت الحمراء: هناك دائمًا حاجة لأتمتة العملية ، سواء كانت عملية بسيطة / وحشية ، لقد خطرت لي فكرة تنفيذ هذا المشروع من تحدٍ بسيط واجهته أثناء البحث طرق ري / ري قطعة أرضنا الصغيرة مشكلة عدم وجود خط إمداد حالي
كيفية قيادة الكثير من مصابيح LED من عدد قليل من دبابيس متحكم: 6 خطوات (بالصور)
كيفية قيادة الكثير من مصابيح LED من عدد قليل من دبابيس متحكم دقيق: باستخدام حقيقة أن العديد من دبابيس وحدة التحكم الدقيقة لها ثلاث حالات (+ V أو GND أو & quot ؛ مقاومة عالية & quot ؛ ، يمكنك قيادة N * (N-1) من دبابيس N . لذلك ، يمكن للمتحكم الدقيق 8pin الصغير مثل PIC12Fxxx أو ATtiny11 تشغيل 20 مصباحًا من خمسة مصابيح متوفرة
استخدم SSH و XMing لعرض برامج X من كمبيوتر Linux على كمبيوتر يعمل بنظام Windows: 6 خطوات
استخدم SSH و XMing لعرض برامج X من كمبيوتر Linux على كمبيوتر يعمل بنظام Windows: & nbsp ؛ إذا كنت تستخدم Linux في العمل و Windows في المنزل أو العكس ، فقد تحتاج في بعض الأحيان إلى تسجيل الدخول إلى الكمبيوتر في موقعك الآخر ، وتشغيل البرامج. حسنًا ، يمكنك تثبيت خادم X ، وتمكين SSH Tunneling مع عميل SSH الخاص بك ، وواحد