Friday 12 January 2018

تتحرك من المتوسط - متحكم


بيك ليد متر ليد، بيك متحكم، ومتحرك متوسط ​​Code. Hello الجميع، وشكرا لكم على التحقق من بلدي أولا تعليمات لقد استمتعت رؤية الابداعات الخاصة بك على مر السنين وحب ما كل واحد منكم المساهمة هذا المشروع هو تدور قبالة واحد أن رأيت مؤخرا هنا وأنا بحاجة إلى إعطاء صيحة إلى Bot1398 لأنه أظهر لي في تعليماته التي يمكن أن تستخدم ليد للكشف عن التغيرات في شدة الضوء في البيئة واستخدام هذا لتحويل ليد آخر أو إيقاف تشغيله كنت أعرف أن إذا قمت بتوفير القليل من الطاقة ل ليد فإنه ينبعث ضوء لم أكن أعتقد أنه يمكن استخدامها بطريقة أخرى حول بعد رأيت المصابيح له ضوء استشعار إنستروكتابل كان من المنطقي ولكن أردت أن أرى هذا العمل في الواقع لنفسي. أنا كتابة هذا إنستروكتابل لأن Bot1398 استخدمت اردوينو وأنا لم تستخدمها أبدا ليس لدي شيء ضدهم، ومع ذلك، عندما بدأت باستخدام ميكروكنترولر منذ 3 سنوات كنت أبحث عن السرعة والسلطة لتطبيق معين استقرت على بيك متحكم سلسلة بواسطة رقاقة ومن المدهش ما يمكنك القيام به مع ميكروكنترولر، يمكنك أن تدع خيالك تشغيل البرية ومع البرمجة الإبداعية قليلا تحقيق بالضبط ما تريد هناك عدد من لغات البرمجة هناك كذلك ولكن عندما بدأت أنا أراد السرعة ومعرفة بالضبط ما كان يحدث في كل خطوة، لذلك، اخترت لغة الجمعية لأنه بدا الكثير مثل باسيك التي تعلمت على عب بيسي جر مرة أخرى في 1980 s عندما كنت يكبر هذا هو ما هذا إنستروكتابل يستلزم بيك ميكروكنترولر ولغة التجمع لاستخدام الصمام الثنائي الباعث للضوء ليد للكشف عن كمية الضوء المحيط وعرض القياس العددي لهذا الضوء جنبا إلى جنب مع رسم تخطيطي على شاشة لد. أنا لم تنتج النسخة الأولى من هذا ليد القائم جهاز استشعار الضوء الذي عمل، والمشكلة التي لاحظتها هي أن القيم قفزت قليلا جدا لذلك، بحثت عن حل لهذه المشكلة فكرت في متوسط ​​القيم، ولكن كيف الرياضيات الثنائية هو نوع من الصعب ولكن هناك دائما وسيلة للحصول عليه القيام به كما كنت أبحث عن حلول جئت عبر صفحة كبيرة حول المتوسطات المتحركة وكيفية القيام به على نحو أكثر فعالية حتى أنه حتى ميكروكنترولر 8 بت يمكن التعامل مع بكل سهولة الرابط إلى الصفحة هنا متوسطات متحركة فعالة من الناحية الحاسوبية وهذا يعمل بشكل جيد للغاية يعرض هذا التطبيق المتوسط ​​المتحرك لآخر 256 قراءات خفيفة ويعرض تلك القيمة جنبا إلى جنب مع رسم بياني على شاشة لد يحول رمز المتوسط ​​المتحرك القيم قراءة من ليد من القفز حول الكثير ويعطيك أفضل، نتيجة أكثر دقة بكثير. عندما نعلق ليد إلى متحكم نحن عادة ما تفعل ذلك لإضاءة عنه في هذه الحالة، ومع ذلك، نحن في الواقع تطبيق الجهد الموجب إلى نهاية سلبية من القطب وهذا هو حتى نتمكن من الاستفادة من شيء يسمى السعة الطفيلية تطبيق هذا الجهد الإيجابي سوف بناء موارد تهمة صغيرة على شبكة الإنترنت ويقول واي رقيقة حول 100-200 نانو ثانية في هذا السعة الطفيلية من الصمام التي نستخدمها السعة الفعلية ليست مهمة جدا ولكن ريسوسيس على الانترنت يقول أنه حوالي 10-15 يف سنقوم ثم التبديل دبوس من متحكم تعلق على نهاية سلبية من القطب من مخرجات إلى مدخلات وانتظر تهمة لاستنزاف عندما تهمة المصارف يكفي دبوس الآن قراءة مستوى المنطق 0 أو حالة منخفضة حيث أننا سوف إيقاف الموقت واستخدام هذه القيمة لحساب المتوسط ​​المتحرك وعرض النتائج على الشاشة سنقوم بعد ذلك اتخاذ المزيد من القراءات وعرضها على الشاشة في الفاصل الزمني الذي هو مكتوب في التعليمات البرمجية التجمع في رمز الانتهاء، لقد حددت أن تأخذ قراءة واحدة عن كل 20 أو نحو ذلك ميكروثانية يحدث هذا 50 مرة بحيث يتم عرض نتيجة محدثة على الشاشة تقريبا كل ثانية أو نحو ذلك الوقت الذي يستغرقه للحصول على القراءة سوف تختلف قليلا لأنه يستغرق وقتا أطول لشحن لاستنزاف في بيئة مظلمة وهذا أوكو رس أسرع في البيئات الخفيفة معدل التصريف من السعة ليد يرتبط بطريقة أو بأخرى بشكل مباشر لعدد من الفوتونات أو كمية الضوء ضرب عناصر توليد الضوء ليد أنيق إيسن ر it. Now أن نعرف كيف يعمل، واسمحوا s الانتقال إلى الخطوة 1. الخطوة 1 جمع مكونات وتجميع الدائرة. أولا جمع العناصر التالية سوف تحتاج إلى بناء ليد ليت METER. PIC متحكم أنا استخدم 18F4550 شاشة لد 2x20 أو 2x16 المصابيح أسلاك اللوح مصدر الطاقة. الآن يجب أن تكون قادرا على متابعة التخطيطي لتجميع الدائرة على اللوح أو أي طريقة أخرى أن كنت ترغب في وضع الدوائر الخاصة بك معا هذا واحد هو سهل إلى حد ما ويحتوي على أجزاء صغيرة لم أعلق اثنين من مختلف الخطط، واحد لديه ضوء قياس ليد متصلة اثنين من دبابيس متحكم مختلفة والآخر لديه هذا الصمام مع الكاثود أو نهاية سلبية متصلة دبوس متحكم والأنود أو نهاية إيجابية من ليد متصلة الأرض يبدو هذا إلى الوراء ولكن، ريميبر، ونحن ن أوت باستخدام ليد لإنتاج الضوء، ولكن لقياس ذلك بدلا من ذلك وهذا هو السبب في توصيله بهذه الطريقة في بلدي الصور سترى أن ليد متصلا اثنين من دبابيس من متحكم هذا هو لأنني أردت أن تكون قادرة على استخدام ليد لإنتاج الضوء أيضا، من أجل التحقق للتأكد من أنه يعمل عند بدء تشغيل البرنامج. إذا كنت لا تختار لربط الصمام إلى 2 دبابيس من متحكم سوف تحتاج إلى إبقاء هذا في الاعتبار لأنه للعمل لم أستطع العثور على هذا موثق في أي مكان لذلك أخذت تجريب قليلا للحصول عليه للعمل من أجل أن تكون قادرة على تضيء الصمام كل من دبابيس متحكم تحتاج إلى تعيين كنواتج ثم، لجعل تألق ليد، يمكنك تعيين الأنود أو نهاية إيجابية من ارتفاع ليد بحيث التدفقات الحالية من خلال الصمام لإنتاج الضوء في البداية اعتقدت أنني سوف تحتاج إلى تعيين الكاثود أو نهاية سلبية من الصمام كما إنبوت ولكن هذا لم ينجح. الآن أن لديك كومبونينيتس، ووضعها معا على اللوح عن طريق اتباع التخطيطي تريد لمتابعة عند تجميعها، ينبغي أن تبدو مشابهة إلى حد ما إلى الصور أدناه أنا باستخدام منظم 5 فولت لتوريد 5 فولت إلى السلطة الدائرة أنا استخدام ثؤلول الجدار التي تزود حوالي 9 فولت إلى المنظم. الشاشة لد التي أستخدمها هو عرض نيوهفن نهد C0220AZ فسو فتو كوغ رقاقة على الزجاج السائل الكريستال وحدة العرض اعتدت على استخدام شاشات الكريستال السائل HD44780 أن العديد من الناس الآخرين استخدام يمكنك ديفيناتيلي استخدام شاشات HD44780 دون أي مشكلة وهناك الكثير من شفرة المصدر إلى هناك وجعلها تشغيل عرض نيوهافين ليس لديه شفرة المصدر ولكن يجلس مع ورقة البيانات واستخدام شفرة مصدر HD44780، خرجت مع رمز لجعله يعمل تماما أحب العرض لسبب قليل التباين من السهل جدا لتعيين وحتى الآن لم يكن لدي لتغييره على الإطلاق خلال المواسم المختلفة، فإنه يبقى دائما واضحة وسهلة جدا للقراءة كما أن لديها بصمة أصغر وكان بالضبط ما كنت بحاجة لمشروع ضخم أن أعمل على حيث المتاحة ق وتيرة في قسط فمن أصغر من HD44780 يعرض ولا يزال يعرض 20 حرفا على كل من الخطين وأخيرا، أنها أقل تكلفة من يعرض HD44780 وكذلك اخترت اثنين من هذه حتى من ديجيكي وبسعر فقط من 10 25 كل التحقق منها هنا نيوهيفن شاشة لد في ديجيكي نضع في اعتبارنا أن هذا العرض يتطلب من 3 3 إلى 5 5 فولت حتى تبقى في الاعتبار عند اختيار مصدر الطاقة الخاصة بك يجب أن يتم تشغيل شفرة المصدر التي يتم توفيرها أيضا عرض HD44780 دون أي مشاكل. هذه هي مجرد الطريقة التي أضعها يمكنك وضع المكونات إلى دبابيس ديفنت من متحكم فقط نضع في اعتبارنا التي دبابيس من متحكم كنت الاتصال إلى نهاية الإيجابية والسلبية للضوء الاستشعار الصمام يمكنك أيضا سلك يصل شاشة لد الخاص بك للعمل في وضع 4 بت بدلا من وضع 8 بت كما هو موضح من شأنها أن تتطلب أربع اتصالات أقل في الدائرة ولكن يجعل البرمجة الخاصة بك فقط أكثر تعقيدا قليلا. على الخطوات التالية كتابة بيأر ugram. One من التطبيقات الرئيسية لمجلس اردوينو هو قراءة وتسجيل بيانات الاستشعار على سبيل المثال مراقبين واحد الضغط كل ثانية من اليوم كما معدلات عينة عالية غالبا ما يولد طفرات في الرسوم البيانية واحد يريد أيضا أن يكون متوسط ​​القياسات كما أن القياسات ليست ثابتة في الوقت المناسب ما نحتاج إليه في كثير من الأحيان هو متوسط ​​الجري هذا هو متوسط ​​فترة معينة وقيمة جدا عند القيام بتحليل الاتجاهات. يمكن أن يكون الشكل الأمثل من المتوسط ​​الجاري بواسطة التعليمات البرمجية التي تقوم على المتوسط ​​السابق تشغيل. إذا كان واحد لا يريد استخدام العائمة الرياضيات نقطة - وهذا يأخذ الذاكرة ويقلل السرعة - يمكن للمرء أن تفعل الشيء نفسه تماما في مجال صحيح تقسيم من 256 في رمز العينة هو تحول اليمين 8، وهو أسرع من يقول تقسيم على سبيل المثال 100 هذا ينطبق على كل قوة من 2 كما المفرق واحد فقط يجب أن تأخذ الرعاية مجموع ويغثس يساوي قوة 2 وبالطبع ينبغي للمرء أن تأخذ الرعاية لا يوجد تجاوز وسيطة النظر في استخدام لون غير موقعة إذا كنت بحاجة إلى متوسط ​​تشغيل أكثر دقة، في الخرسانة من القياسات العشرة الأخيرة، تحتاج إلى مصفوفة أو قائمة مرتبطة للاحتفاظ بها هذه الصفيف بمثابة المخزن المؤقت دائري مع كل قياس جديد يتم إزالة أقدم واحد يتم تشغيل المتوسط ​​هو محسوبة كمجموع كل العناصر مقسوما على عدد العناصر في المصفوفة سيكون كود المتوسط ​​التشغيلي شيئا من هذا القبيل. الرجوع من هذا الرمز هو أن الصفيف لعقد جميع القيم يمكن أن تصبح كبيرة جدا إذا كان لديك قياس واحد لكل والثانية وتريد متوسط ​​الجري في الدقيقة تحتاج إلى صفيف من 60 متوسط ​​في الساعة سوف تحتاج إلى صفيف من 3600 أن كان يمكن القيام به بهذه الطريقة على اردوينو كما أن لديها فقط 2K من ذاكرة الوصول العشوائي ولكن من خلال بناء متوسط ​​2 المرحلة ذلك يمكن أن يكون اقترب تماما إخلاء المسؤولية ليس لجميع القياسات في بسويدو code. As هناك حاجة إلى مجموعة ثابتة الداخلية الجديدة لكل وظيفة رونينغافيراج، هذه الصراخ ليتم تنفيذها بوصفها مكتبة class. RunningAverage. مكتبة رونينغافيراج يجعل فئة من الدالة أعلاه بحيث يمكن استخدامها عدة مرات في رسم ويؤدي إلى إزالة وظيفة إضافة و أفغ لتكون أكثر قليلا مرنة على سبيل المثال يمكن للمرء أن يدعو متوسط ​​مرات متعددة دون إضافة شيء يرجى ملاحظة أن كل حالة من فئة يضيف مصفوفة الخاصة بها لإجراء القياسات، وأن هذا يضيف ما يصل إلى استخدام الذاكرة واجهة من الطبقة يتم الاحتفاظ صغيرة قدر الإمكان. ملاحظة مع الإصدار 0 2 أسماء الطرق كلها مصنوعة أكثر وصفية. ويوضح رسم صغير كيف ذلك يمكن استخدام مولد عشوائي يستخدم لتقليد جهاز استشعار. في الإعداد يتم مسح ميرا حتى نتمكن من البدء في إضافة جديدة data. In حلقة أولا يتم إنشاء رقم عشوائي وتحويلها إلى تعويم ليتم إضافتها إلى ميرا ثم تتم طباعة تشغيل إلى المنفذ التسلسلي يمكن للمرء أيضا عرض على بعض لد أو إرسال أكثر من إيثرنت الخ عندما يتم إضافة 300 عنصر يتم مسح ميرا للبدء من جديد مرة أخرى. لإستخدام المكتبة، وجعل مجلد في ليباريز سكيتشبوكباث مع اسم رونينغافيراج ووضع h و ال إعادة اختياريا جعل أمثلة دليل فرعي لوضع العينة app.2011-01-30 الإصدار الأولي.2011-02-28 الثابتة ديستروكتور المفقود في h الملف.2011-02-28 إزالة الافتراضي buildor.2012- - تريمفالو ​​يوفال نافيه وأضاف تريمفالو ​​وجدت على web.2012-11-21 refactored.2012-12-30 وأضاف فيلفالو ريفاكتوريد للنشر .2014-03 وأضاف رمز حماية الذاكرة - إذا لم يتم تخصيص مجموعة الداخلية يصبح حجم 0 هذا هو حل المشكلة الموصوفة هنا. اختبار على نطاق واسع. Template class. RunningAverage h. RunningAverage. As وقد ذكر آخرون، يجب عليك النظر في مرشح استجابة الاندفاع لانهائي إير بدلا من المرشح الاستجابة النبضية محددة فير تستخدم الآن هناك أكثر من ذلك، ولكن للوهلة الأولى يتم تنفيذ مرشحات فير كما والتلوثات الصريحة والمرشحات إير مع المعادلات. المرشح إير معين يمكنني استخدام الكثير في ميكروكنترولر هو القطب واحد مرشح تمريرة منخفضة هذا هو ما يعادل الرقمية للمرشح التناظرية أرسي بسيط بالنسبة لمعظم التطبيقات، وهذه سوف يكون أفضل تشاراكتيريستي كس من عامل تصفية المربع الذي تستخدمه معظم استخدامات عامل تصفية مربع التي واجهتها هي نتيجة لشخص لا تولي اهتماما في فئة معالجة الإشارات الرقمية، وليس نتيجة لاحتياجات خصائص معينة إذا كنت ترغب فقط في تخفيف الترددات العالية التي تعرفها الضوضاء، قطب واحد مرشح تمرير منخفض هو أفضل أفضل طريقة لتنفيذ واحد رقميا في متحكم هو عادة. ملء - فيلت فف جديد - FILT. FILT هو قطعة من حالة بيرسيستانت هذا هو المتغير بيرسيستانت الوحيد لك تحتاج إلى حساب هذا الفلتر جديد هو القيمة الجديدة التي يتم تحديث الفلتر مع هذا التكرار فف هو جزء التصفية الذي يضبط ثقل مرشح انظر إلى هذه الخوارزمية ونرى أن ل فف 0 مرشح هو بلا حدود الثقيلة منذ الإخراج أبدا التغييرات بالنسبة إلى فف 1، فإنه لا يوجد في الواقع أي مرشح على الإطلاق لأن الإخراج يتبع المدخلات هي القيم المفيدة في ما بين الأنظمة الصغيرة التي تختارها فف لتكون 1 2 N بحيث يمكن أن تتضاعف من فف كما أن أر إرتفاع البتات N على سبيل المثال، قد يكون فف 1 16 ويضاعف من فف وبالتالي نوبة صحيحة من 4 بتات وإلا فإن هذا الفلتر يحتاج فقط طرح واحد وإضافة واحدة، على الرغم من أن الأرقام عادة ما تحتاج إلى أن تكون أوسع من قيمة المدخلات أكثر على الدقة العددية في قسم منفصل أدناه. أنا عادة ما تأخذ قراءات أد أسرع بكثير من الحاجة إليها وتطبيق اثنين من هذه المرشحات تتالي هذا هو ما يعادل الرقمية اثنين من المرشحات أرسي في السلسلة، ويخفف بنسبة 12 ديسيبل اوكتاف فوق تردد لفة ومع ذلك، لقراءات أد فإنه عادة ما تكون أكثر أهمية للنظر في مرشح في المجال الزمني من خلال النظر في خطوتها استجابة هذا يخبرك مدى سرعة النظام الخاص بك وسوف نرى تغيير عندما الشيء الذي يقيس التغييرات. لتسهيل تصميم هذه المرشحات التي تعني فقط قطف فف وتحديد عدد منهم لتتالي، وأنا استخدم برنامج فلبيتس قمت بتحديد عدد بت التحول لكل فف في سلسلة متتالية من المرشحات، وأنه يحسب استجابة الخطوة و o قيم ثير في الواقع أنا عادة تشغيل هذا عن طريق بلدي البرنامج النصي المجمع بلوتفيلت هذا يعمل فلتبيتس، مما يجعل ملف كسف، ثم مؤامرات ملف كسف على سبيل المثال، هنا هو نتيجة بلوتفيلت 4 4. معلمات ل بلوتفيلت يعني سيكون هناك اثنين من المرشحات متتالية من النوع الموصوف أعلاه تشير قيم 4 إلى عدد بتات التحول لتحقيق المضاعفة بواسطة فف وبالتالي فإن قيم فف هما 1 16 في هذه الحالة. التتبع الأحمر هو استجابة خطوة الوحدة، وهو الشيء الرئيسي الذي سيبدو على سبيل المثال، هذا يخبرك أنه إذا تغيرت الإدخال على الفور، فإن الإخراج من مرشح مجتمعة يستقر إلى 90 من القيمة الجديدة في 60 التكرارات إذا كنت تهتم حوالي 95 تسوية الوقت ثم عليك أن تنتظر حوالي 73 التكرارات، و 50 وتسوية الوقت فقط 26 التكرارات. تتبع الأخضر يظهر لك الإخراج من واحد ارتفاع السعة الكامل هذا يعطيك بعض فكرة عن الضجيج العشوائي يبدو أن أي عينة واحدة سوف يسبب أكثر من 2 5 تغيير في الإخراج. الزرقاء تتبع هو جي في شعور شخصي ما يفعله هذا الفلتر مع الضوضاء البيضاء هذا ليس اختبار صارم لأنه لا يوجد ضمان ما بالضبط المحتوى كان من الأرقام العشوائية اختار كما المدخلات الضوضاء البيضاء لهذا المدى من بلوتفيلت انها فقط لتعطيك والشعور الخام من كم سوف تكون سحق وكيف سلاسة هو. لوتفيلت، فلبيتبيتس ربما، والكثير من الاشياء المفيدة الأخرى، وخاصة بالنسبة لتطوير البرامج الثابتة الموافقة المسبقة عن علم هو متاح في إصدار برنامج تطوير أدوات الموافقة المسبقة عن علم في بلدي التنزيلات البرمجيات page. Added عن العددية الدقة. أرى من التعليقات والآن إجابة جديدة أن هناك مصلحة في مناقشة عدد من البتات اللازمة لتنفيذ هذا المرشح لاحظ أن ضرب من قبل فف سيخلق لوغ 2 فف بت جديدة تحت النقطة الثنائية على النظم الصغيرة، فف هو وعادة ما يتم اختياره ليكون 1 2 N بحيث يتم تحقيق هذه المضاعفة في الواقع عن طريق التحول الصحيح من N بت. فيلت لذلك عادة عدد صحيح نقطة ثابتة لاحظ أن هذا لا تغيير أي من الرياضيات من وجهة نظر المعالج من عرض على سبيل المثال، إذا كنت تقوم بتصفية 10 بت قراءات م و 4 فف 1 16، فأنت بحاجة 4 بت جزء جزء من 10 بت عدد صحيح م قراءات واحد معظم المعالجات، كنت د القيام 16 بت عدد صحيح العمليات بسبب 10 بت أد قراءات في هذه الحالة، لا يزال بإمكانك القيام بالضبط نفس 16 بت عدد صحيح أوبيرتيونس، ولكن تبدأ مع قراءات أد اليسار تحولت 4 بت المعالج لا يعرف الفرق ولا تحتاج إلى القيام الرياضيات على كامل 16 بت صحيح الأعداد يعمل ما إذا كان يمكنك اعتبارها لتكون 12 4 نقطة ثابتة أو صحيح 16 بت عدد صحيح 16 0 نقطة ثابتة. بصفة عامة، تحتاج إلى إضافة N بت كل مرشح القطب إذا كنت لا تريد إضافة الضوضاء بسبب التمثيل العددي في المثال أعلاه، المرشح الثاني من اثنين يجب أن يكون 10 4 4 18 بت لا تفقد المعلومات في الممارسة العملية على جهاز 8 بت وهذا يعني أنك د استخدام قيم 24 بت من الناحية الفنية فقط القطب الثاني من اثنين سوف تحتاج إلى قيمة أوسع، ولكن لبساطة البرامج الثابتة أنا وعادة ما تستخدم نفس التمثيل، و هناك y نفس الرمز، لجميع أقطاب مرشح. عادة ما أكتب روتين أو ماكرو لتنفيذ عملية القطب فلتر واحد، ثم تطبيق ذلك على كل قطب إذا كان روتين فرعي أو ماكرو يعتمد على ما إذا كانت دورات أو ذاكرة البرنامج أكثر أهمية في ذلك معين المشروع في كلتا الحالتين، وأنا استخدم بعض الدولة الصفر لتمرير جديد في الماكرو روتين، الذي يقوم بتحديث فيلت، ولكن أيضا الأحمال التي في نفس حالة الصفر كان جديد في هذا يجعل من السهل تطبيق أقطاب متعددة منذ تحديث فيلت من قطب واحد هو جديد من المرحلة التالية عندما يكون روتين فرعي، فإنه من المفيد أن يكون مؤشر نقطة إلى فيلت على الطريق في، والذي يتم تحديثه فقط بعد فيلت على الطريق بهذه الطريقة يعمل روتين تلقائيا على مرشحات متتالية في الذاكرة إذا دعا عدة مرات مع ماكرو كنت لا تحتاج إلى مؤشر منذ تمرير في العنوان للعمل على كل التكرار. الموسم أمثلة. هنا مثال على ماكرو كما هو موضح أعلاه ل بيك 18. هنا هو ماكرو مماثل ل بيك 24 أو دسبيك 30 أو 33.Both ث يتم تنفيذ أمثلة إيس كما وحدات الماكرو باستخدام بلدي المسبقة بيك المجمع الذي هو أكثر قدرة من أي من مرافق الماكرو المدمج في. كلاباشيو قضية أخرى كان يجب أن أذكرها هو تنفيذ البرامج الثابتة يمكنك كتابة قطب واحد تمرير منخفض روتين مرشح مرة واحدة، ثم تطبيقه عدة مرات في الواقع أنا عادة كتابة مثل هذا الروتين إلى اتخاذ مؤشر في الذاكرة إلى حالة التصفية، ثم يكون مقدما المؤشر بحيث يمكن استدعاؤها في الخلافة بسهولة لتحقيق مرشحات متعددة القطب أولين لاثروب أبر 20 12 في 15 03.1 شكرا جزيلا على إجاباتك - كل منهم قررت استخدام هذا فلتر إير، ولكن لا يتم استخدام هذا الفلتر كما مرشح لوباس القياسية، لأنني بحاجة إلى متوسط ​​قيم العداد ومقارنتها للكشف عن التغييرات في نطاق معين لأن هذه القيم فان تكون من أبعاد مختلفة جدا اعتمادا على الأجهزة أردت أن تأخذ في المتوسط ​​من أجل أن تكون قادرة على الرد على هذه الأجهزة تغييرات محددة تلقائيا سينسلن 21 مايو 12 في 12 06.If يمكنك العيش مع تقييد قوة اثنين من عدد من العناصر إلى المتوسط ​​أي 2،4،8،16،32 الخ ثم يمكن تقسيم بسهولة وكفاءة على وانخفاض الأداء الجزئي مع عدم وجود تقسيم مخصص لأنه يمكن القيام به كما تحول قليلا كل حق الحق هو قوة واحدة من اثنين على سبيل المثال. The أوب اعتقد انه كان اثنين من المشاكل، وتقسيم في PIC16 والذاكرة لعشاق له حلقة ويوضح هذا الجواب أن تقسيم ليس من الصعب اعترافا أنه لا يعالج مشكلة الذاكرة ولكن نظام سي يسمح إجابات جزئية، ويمكن للمستخدمين اتخاذ شيء من كل إجابة لأنفسهم، أو حتى تحرير والجمع بين إجابات أخرى لأن بعض الإجابات الأخرى تتطلب عملية الانقسام، فإنها هي أيضا غير مكتملة لأنها لا تظهر كيفية تحقيق ذلك بكفاءة على PIC16 مارتن أبريل 20 12 في 13 01.There هو الجواب لمرشح المتوسط ​​المتحرك الحقيقي ويعرف أيضا باسم فلتر بوكسكار مع متطلبات الذاكرة أقل، إذا كنت لا تفكر في التفكير تسمى مرشح المتكامل التكامل مشط سيك والفكرة هي أن لديك تكامل الذي كنت تأخذ الاختلافات على مدى فترة زمنية، وجهاز حفظ الذاكرة الرئيسية هو أنه من خلال تقليص، لا تحتاج إلى تخزين عشية قيمة ري من التكامل ويمكن تنفيذها باستخدام pseudocode. Your التالية المتوسط ​​المتوسط ​​المتحرك الفعال هو ديسيماتيون فاكتور ستاتيزيز ولكن تحتاج فقط للحفاظ على عينات ستاتيزيز من الواضح أنك يمكن أن تحصل على أداء أفضل إذا كان لديك ستيزيز و ديسيماتيونفاكتور هي القوى 2، بحيث القسم و باقي مشغلي استبدالها بواسطة التحولات و ماسك-ands. Postscript أنا أتفق مع أولين أنه يجب عليك دائما النظر مرشحات إر بسيطة قبل مرشح المتوسط ​​المتحرك إذا كنت لا تحتاج إلى ترددات خالية من فلتر علبة التروس، القطب 1 أو 2 القطب مرشح تمريرة منخفضة من المحتمل أن تعمل بشكل جيد. من ناحية أخرى، إذا كنت تصفية لأغراض الإفساد أخذ مدخلات عالية معدل العينة ومتوسط ​​ذلك للاستخدام من قبل عملية منخفضة معدل ثم مرشح سيك قد يكون مجرد ما كنت تبحث عن خاصة إذا كنت تستطيع استخدام ستيزيز 1 وتجنب رينغبوفر تماما مع مجرد واحد قيمة التكامل السابقة. هناك بعض تحليل متعمق من الرياضيات وراء استخدام أول أوردر إير إير تصفية أن أولين لاثروب قد وصفت بالفعل أكثر على معالجة الإشارات الرقمية كومة تبادل يتضمن الكثير من الصور الجميلة المعادلة لهذا فلتر إير هو. هذا يمكن تنفيذها باستخدام الأعداد الصحيحة فقط ولا تقسيم باستخدام التعليمات البرمجية التالية قد تحتاج إلى بعض التصحيح كما أنا كان يكتب من الذاكرة. هذا المرشح يقترب متوسط ​​متحرك من عينات K الأخيرة عن طريق تحديد قيمة ألفا إلى 1 K القيام بذلك في التعليمات البرمجية السابقة عن طريق تحديد بيتس ل LOG2 K، أي لمجموعة K 16 بيتس إلى 4، ل K 4 مجموعة بيتس إلى 2، وما إلى ذلك سوف تحقق من التعليمات البرمجية المدرجة هنا في أقرب وقت وأنا الحصول على تغيير وتعديل هذه الإجابة إذا لزم الأمر. مسألة يونيو 23 12 في 04 04.Here سا واحد القطب منخفض تمرير مرشح المتوسط ​​المتحرك، مع قطع تردد كوتوفريكنسي بسيط جدا، سريع جدا، يعمل كبيرة، وتقريبا لا الذاكرة فوق. ملاحظة جميع المتغيرات لديها نطاق خارج وظيفة مرشح، إلا أن مرت في newInput. Note هذا هو مرشح مرحلة واحدة يمكن أن تتعاقب مراحل متعددة معا لزيادة الحدة المرشح إذا كنت تستخدم أكثر من مرحلة واحدة، سيكون لديك لضبط ديكايفاكتور كما يتعلق قطع التردد لتعويض. وهو واضح كل ما تحتاجه هو هذين الخطين وضعت في أي مكان، فإنها لا تحتاج وظيفة خاصة بهم هذا مرشح لديه وقت التمرير قبل أن يمثل المتوسط ​​المتحرك إشارة الدخل إذا كنت بحاجة إلى تجاوز هذا الوقت المنحدر، يمكنك فقط تهيئة موفينغافيراج إلى القيمة الأولى من نيو إنبوت بدلا من 0، ونأمل أن يكون أولينبوت الأول خارجا. كوتوفريكنسي سامبلريت لديها مجموعة من 0 و 0 5 ديكايفاكتور هو قيمة بين 0 و 1، وعادة ما تكون قريبة من 1.Single الدقة العوامات جيدة بما فيه الكفاية لمعظم الأشياء، وأنا فقط تفضل دوبلز إذا كنت بحاجة إلى التمسك مع الأعداد الصحيحة، يمكنك تحويل عامل ديكايفاكتور والسعة إلى أعداد صحيحة كسرية، حيث يتم تخزين البسط كما عدد صحيح، والمقام هو عدد صحيح من 2 حتى تتمكن من التحول قليلا إلى اليمين كمقام بدلا من الاضطرار إلى تقسيم خلال حلقة تصفية ل على سبيل المثال، إذا ديكايفاكتور 0 99، وتريد استخدام الأعداد الصحيحة، يمكنك تعيين ديكايفاكتور 0 99 65536 64881 ثم في أي وقت تتضاعف من قبل ديكايفاكتور في حلقة تصفية الخاص بك، مجرد تحويل النتيجة 16.For مزيد من المعلومات حول هذا، وهو كتاب ممتاز أن على شبكة الإنترنت، الفصل 19 على الفلاتر المتكررة. PS لالمتوسط ​​المتحرك نموذج، نهجا مختلفا لوضع ديكايفاكتور و أمبليتيودفاكتور التي قد تكون أكثر ملاءمة لاحتياجاتك، دعونا أقول انك تريد السابقة، حوالي 6 بنود متوسط ​​توغ الأثير، والقيام بذلك ديسرتلي، يمكنك د إضافة 6 بنود وتقسيمها 6، حتى تتمكن من تعيين أمبليتيودفاكتور إلى 1 6، و ديكايفاكتور إلى 1 0 - AmplitudeFactor. resp 14 مايو 12 في 22 55.Everyone آخر قد علقت بدقة على الأداة المساعدة من إير مقابل فير، وعلى السلطة من قسم اثنين أنا فقط أود أن أعطي بعض تفاصيل التنفيذ أدناه يعمل بشكل جيد على ميكروكنترولر صغيرة مع عدم وجود فبو هناك S لا الضرب، وإذا حافظت N قوة اثنين، كل قسم هو دورة واحدة بت-shiftting. Basic العازلة الدائري فير الاحتفاظ العازلة تشغيل القيم N الماضية و سوم قيد التشغيل من كافة القيم في المخزن المؤقت في كل مرة يأتي نموذج جديد في طرح أقدم قيمة في المخزن مؤقت من سوم ، واستبدالها بالعينة الجديدة، وإضافة العينة الجديدة إلى سوم، والإخراج سوم N. Modified إير العازلة حلقة الحفاظ على سوم التوالي من القيم N الماضية في كل مرة تأتي عينة جديدة في، سوم - سوم N، إضافة في الجديد عينة، والمخرجات سوم N. أسئلة وأجوبة 28 أغسطس 13 في 13 45. إذا أنا م قراءة الحق، كنت إعادة وصف الدرجة الأولى إير تصفية القيمة التي تعيد طرحها هي t أقدم قيمة التي تسقط، ولكن بدلا من ذلك متوسط ​​القيم السابقة من الدرجة الأولى مرشحات إير يمكن بالتأكيد أن تكون مفيدة، ولكن أنا لست متأكدا ما تقصد عندما تقترح أن الإخراج هو نفسه بالنسبة لجميع الإشارات الدورية في معدل عينة 10KHZ، تغذية موجة مربع 100HZ في مرشح مربع 20 مرحلة سوف تسفر عن إشارة التي ترتفع بشكل موحد ل 20 عينة، يجلس عالية لمدة 30، قطرات بشكل موحد ل 20 عينة، ويجلس منخفضة ل 30 مرشح من الدرجة الأولى سوبيركات أغسطس 28 13 في 15 31.will تسفر عن موجة التي تبدأ بشكل حاد ارتفاع وتدريجيا مستويات قريبة من ولكن ليس عند المدخلات القصوى، ثم يبدأ بشكل حاد السقوط وتدريجيا مستويات قريبة ولكن ليس عند المدخلات الحد الأدنى سلوك مختلف جدا سوبيركات أغسطس 28 13 في 15 32. قضية واحدة هي أن متوسط ​​متحرك بسيط قد أو قد لا تكون مفيدة مع مرشح إير، يمكنك الحصول على مرشح لطيفة مع كالكس قليلة نسبيا منطقة معلومات الطيران التي تصف يمكن أن تعطيك فقط المستطيل في الوقت المناسب - صادقة في التكرار - ويمكنك إدارة تي الفصوص الجانبية قد يكون من المفيد أن رمي في عدد صحيح يتضاعف عدد قليل لجعله لطيفة الطيف التماثل متماثل إذا كنت يمكن أن تدخر القراد على مدار الساعة سكوت سيدمان 29 أغسطس 13 في 13 50. سكوتسيدمان لا تحتاج إلى مضاعفة إذا كان المرء ببساطة كل مرحلة من مراحل معلومات الطيران إما إخراج متوسط ​​المدخلات لتلك المرحلة وقيمتها المخزنة السابقة، ومن ثم تخزين المدخلات إذا كان واحد لديه النطاق الرقمي، يمكن للمرء أن استخدام المجموع بدلا من المتوسط ​​سواء كان ذلك s أفضل من فلتر مربع يعتمد على تطبيق استجابة الخطوة من مرشح مربع مع تأخير كامل من 1ms، على سبيل المثال، سوف يكون d2 دت ارتفاع سيئة عند تغيير المدخلات، ومرة ​​أخرى 1ms في وقت لاحق، ولكن سيكون الحد الأدنى الممكن د دت لمرشح مع مجموع 1ms تأخير سوبيركات أغسطس 29 13 في 15 25. كما قال ميكيسيلكتريكستوف، إذا كنت حقا بحاجة إلى تقليل احتياجات الذاكرة الخاصة بك، وكنت لا تدع رد فعل الاندفاع الخاص بك هو الأسي بدلا من نبض مستطيلة، وأنا سوف تذهب ل أفي تتحرك أسي فلتر الغضب أنا استخدامها على نطاق واسع مع هذا النوع من التصفية، لا تحتاج إلى أي المخزن المؤقت لا تحتاج إلى تخزين N عينات الماضي واحد فقط لذلك، متطلبات الذاكرة الخاصة بك الحصول على خفض من قبل عامل N. Also، لا تحتاج أي تقسيم لذلك فقط مضاعفات إذا كان لديك الوصول إلى الحساب العائمة نقطة، واستخدام مضاعفات نقطة العائمة خلاف ذلك، لا مضاعفات صحيحة والتحولات إلى اليمين ومع ذلك، نحن في عام 2012، وأود أن أوصي لك استخدام المجمعين و مكوس التي تسمح لك للعمل مع أرقام العائمة. بالإضافة إلى كونها أكثر كفاءة الذاكرة وأسرع كنت لا تحتاج إلى تحديث العناصر في أي العازلة دائرية، وأود أن أقول أنه هو أيضا أكثر طبيعية لأن استجابة النبض الأسي يطابق بشكل أفضل الطريقة التي تتصرف بها الطبيعة، في معظم الحالات .20 أبريل 9 في 9 59.One المسألة مع فلتر إير كما لمست تقريبا من قبل أولين و سوبيركات ولكن تجاهلها على ما يبدو من قبل الآخرين هو أن التقريب أسفل يدخل بعض عدم الدقة وربما التحيز اقتطاع بافتراض أن N ط سا من اثنين، ويتم استخدام الحساب الصحيح فقط، والتحول الحق لا القضاء بشكل منهجي على لسبس من العينة الجديدة وهذا يعني أن كم من الوقت يمكن أن تكون سلسلة من أي وقت مضى، فإن متوسط ​​أبدا أن تأخذ تلك في الاعتبار. على سبيل المثال، لنفترض ببطء وتناقص سلسلة 8،8،8 8،7،7،7 7،6،6، وتفترض أن المتوسط ​​هو في الواقع 8 في بداية قبضة 7 عينة سيجلب المتوسط ​​إلى 7، مهما كانت قوة مرشح فقط لعينة واحدة نفسه قصة ل 6، الخ الآن التفكير في عكس سيري ترتفع سيكون متوسط ​​البقاء على 7 إلى الأبد، حتى العينة كبيرة بما فيه الكفاية لجعله تغيير. بطبيعة الحال، يمكنك تصحيح للتحيز عن طريق إضافة 1 2 N 2، ولكن التي فازت حقا حل مشكلة الدقة في هذه الحالة سوف تنخفض سلسلة البقاء إلى الأبد في 8 حتى العينة 8-1 2 N 2 ل N 4 على سبيل المثال، أي عينة فوق الصفر سوف تبقي على المتوسط ​​دون تغيير. أعتقد أن الحل ل والتي من شأنها أن تنطوي على عقد تراكم من لسب فقدت ولكن أنا لم تجعل من بعيد بما فيه الكفاية ليكون رمز جاهزة، وأنا لست متأكدا من أنه لن يضر الطاقة إير في بعض الحالات الأخرى من سلسلة على سبيل المثال ما إذا كان 7،9،7،9 سوف متوسط ​​إلى 8 ثم. أولين، سوف تتتابع مرحلتين أيضا تحتاج إلى بعض التفسير هل يعني عقد اثنين من القيم المتوسطة مع نتيجة الأولى تغذي في الثانية في كل تكرار ما فائدة هذا.

No comments:

Post a Comment