فیلترهای میانگین متحرک در حلقههای PLC و DCS: نویز، تأخیر و اعتبارسنجی
فیلترهای میانگین متحرک میتوانند سیگنالهای آنالوگ را آرامتر کنند، اما در کنترل و هشدارها تأخیر ایجاد کنند. بیاموزید که زمان نمونهبرداری، طول پنجره، کیفیت ...
یک روند صافِ متغیر فرایندی میتواند باعث شود یک حلقه کنترل سالم به نظر برسد، در حالی که بیسروصدا اطلاعات موردنیاز کنترلر را به تأخیر میاندازد. فیلتر میانگین متحرک ساده، قابلتوضیح و در برابر برخی انواع نویز مؤثر است، اما هر نمونه اضافی در پنجره، رفتار دینامیکی حلقه را تغییر میدهد.
تصمیم مهندسی این نیست که آیا نمودار فیلترشده بهتر به نظر میرسد یا نه؛ بلکه این است که آیا فیلتر نویز اندازهگیری را بدون پنهانکردن حرکت واقعی فرایند، خرابی تجهیز، شرایط آلارم یا نشانههای اولیه یک اختلال حذف میکند یا نه.

یک DCS میتواند اندازهگیری را در چندین لایه فیلتر کند؛ بنابراین مسیر کامل سیگنال باید مستندسازی شود.
محاسبه ساده است؛ زمانبندی نه
میانگین متحرک یکنواخت، جدیدترین N نمونه را ذخیره میکند، آنها را با هم جمع میکند و بر N تقسیم میکند. با ورود هر نمونه جدید، قدیمیترین نمونه از پنجره خارج میشود. اگر فاصله نمونهبرداری Ts باشد، رفتار فیلتر به هر دو عامل N و Ts وابسته است؛ بنابراین کپیکردن صرفِ N از یک کنترلر دیگر، پاسخ بلادرنگ یکسانی ایجاد نمیکند.
برای سیگنالهایی که بهآرامی تغییر میکنند، میانگین متحرک یکنواخت علّی تقریباً مانند آن عمل میکند که اندازهگیری بهاندازه نصف پنجره تأخیر داشته باشد. یک پله واقعی بلافاصله با دامنه کامل ظاهر نمیشود: خروجی با جایگزینشدن هر مقدار قدیمی با نمونه جدید، در هر مرحله یک-Nامِ پله پیش میرود و تنها پس از پرشدن پنجره با نمونههای پس از پله به مقدار نهایی میرسد.
این رمپ قابلپیشبینی برای سرکوب نویز تصادفی مفید است، اما در اندازهگیریهای سریع فشار، دبی، سرعت یا اندازهگیریهای مرتبط با حفاظت خطرناک است. PID، آلارم، تاریخچهنگار و اپراتور همگی بر اساس بازنمایی دیرتری از فرایند عمل میکنند، مگر اینکه مقدار خام نیز حفظ شود.
طول پنجره باید برحسب زمان بیان شود
ده نمونه که هر یک ثانیه گرفته میشوند، فیلتر کاملاً متفاوتی از ده نمونهای هستند که هر 100 میلیثانیه گرفته میشوند. محرک نمونهبرداری، دوره اجرای وظیفه، طول پنجره، بازه زمانی مؤثر، رفتار مقداردهی اولیه و مقصدی را که مقدار فیلترشده مصرف میکند مستند کنید.
فرض نکنید اسکن برنامه همان فاصله نمونهبرداری است. یک بلوک تابع ممکن است در هر اسکن اجرا شود، اما فقط زمانی نمونه جدیدی را بپذیرد که SampleEnable فعال باشد. یک ماژول کنترل DCS نیز ممکن است دوره اجرای مخصوص خود را داشته باشد که با بهروزرسانی ورودی/خروجی و بهروزرسانی ترانسمیتر متفاوت است.
مستندات دستورالعمل MAVE شرکت Rockwell Automation این تفاوت را بهصراحت بیان میکند: NumberOfSamples گستره را تعیین میکند، SampleEnable زمان ورود نمونه به حافظه را کنترل میکند و بلوک، وضعیت ورودی نامعتبر و اندازه آرایه نامعتبر را گزارش میدهد.
نویز دورهای میتواند حذف شود—و اشتباه تشخیص داده شود
یک میانگین متحرک دارای صفرهای پاسخ فرکانسی با فاصلههای منظم است. هنگامی که پنجره تعداد صحیحی چرخه از یک اغتشاش دورهای پایدار را پوشش دهد، بخشهای مثبت و منفی میتوانند بهشدت یکدیگر را خنثی کنند. به همین دلیل، پنجرهای که عمداً انتخاب شده باشد میتواند ریپل تکرارشونده الکتریکی یا مکانیکی را کاهش دهد.
این نتیجه به معنای حذف همگانی نیست. اگر فرکانس اغتشاش تغییر کند، فاصله نمونهبرداری دچار نوسان شود یا سیگنال پیش از رسیدن به فیلتر دچار علیاسینگ شود، خنثیسازی کاهش مییابد. یک روند صافتر همچنین میتواند مشکلات اتصال زمین، شیلد، لوله ایمپالس، حسگر یا نصب را پنهان کند؛ مشکلاتی که باید از منبع اصلاح شوند.
پیش از افزایش پنجره، سیگنال خام را با یک مرجع مستقل مقایسه کنید و طیف نویز یا دستکم دوره آن را در حوزه زمان بررسی کنید. تأیید کنید که اغتشاش واقعاً نویز است، نه چرخهکردن واقعی فرایند.

اصل میانگین متحرک در پلتفرمهای PLC و DCS یکسان است، اما اجرا و مدیریت خطا به پلتفرم بستگی دارد.
میانگین متحرک و فیلتر مرتبه اول مسائل متفاوتی را حل میکنند
میانگین متحرک یکنواخت، محاسبهای با پنجره محدود است. هر نمونه ذخیرهشده تا زمان خروج از پنجره وزن یکسانی دارد. فیلتر پایینگذر مرتبه اول بازگشتی است: خروجی جدید، طبق یک ثابت زمانی، ورودی اخیر را با خروجی قبلی ترکیب میکند.
میانگین متحرک سابقهای محدود و قابلمشاهده، حذف قوی در فرکانسهای مشخص و پاسخ پلهایای ارائه میدهد که پس از پرشدن پنجره به مقدار نهایی میرسد. فیلتر مرتبه اول به حافظه کمی نیاز دارد و پاسخ نمایی ایجاد میکند، بدون ناچهای دورهای میانگین متحرک.
میانگین متحرک وزندار بین این دو گزینه قرار میگیرد. وزن بیشتر به نمونههای جدیدتر میتواند تأخیر ظاهری را کاهش دهد، اما پاسخ فرکانسی را تغییر میدهد و رفتار را برای کارکنان تعمیر و نگهداری کمتر بدیهی میکند. وزنها باید نرمالسازی، مستندسازی و آزمایش شوند.
انتخاب باید بر اساس اغتشاش و هدف کنترل انجام شود. زمانی از میانگین متحرک استفاده کنید که پنجره محدود معنا داشته باشد یا لازم باشد یک مؤلفه دورهای پایدار تضعیف شود. زمانی از فیلتر مرتبه اول استفاده کنید که پاسخ نمایی و ثابت زمانی مستند با حلقه سازگار باشد. از ناچ یا فیلتر تخصصی دیگر فقط زمانی استفاده کنید که فرکانس تداخل بهاندازه کافی مشخص و پایدار باشد.
از فیلترهای پنهانِ سری پرهیز کنید
یک اندازهگیری ممکن است در ترانسمیتر میرا شود، در ماژول ورودی میانگینگیری شود، در منطق PLC یا DCS دوباره فیلتر شود، در HMI صاف شود و توسط تاریخچهنگار فشرده شود. هر لایه بهتنهایی بیضرر به نظر میرسد، اما زنجیره کامل میتواند تأخیر قابلتوجهی ایجاد کند.
پروندهای از مسیر سیگنال تهیه کنید که ورودی الکتریکی خام، مقیاسبندی و فیلتر ماژول، فیلتر کنترلر، منبع آلارم، متغیر فرایندی PID، مقدار نمایشدادهشده در HMI و تگ تاریخچهنگار را نشان دهد. تعیین کنید کدام مصرفکننده به داده خام، معتبرشده یا فیلترشده نیاز دارد. ابزار تشخیص تعمیر و نگهداری معمولاً باید حتی زمانی که اپراتورها از نمایشگر فیلترشده استفاده میکنند، دسترسی به اندازهگیری خام را حفظ کند.
پیوندهای داخلی به سختافزار Honeywell Experion PKS C300 و سری PLCهای ABB زمینه پلتفرم را فراهم میکنند، اما دسترسپذیری و رفتار فیلتر باید با کنترلر، نرمافزار و محیط اجرای نصبشده بررسی شود.
دادههای بیکیفیت به پاسخ تعریفشده نیاز دارند
میانگین متحرک نباید مدار باز، مقدار خارج از محدوده، نتیجه ارتباطی قدیمی یا مقدار ممیز شناور نامعتبر را به متغیر فرایندی قابلباوری تبدیل کند. کیفیت را جدا از مقدار عددی ذخیره یا منتقل کنید و مشخص کنید بلوک هنگام بدشدن کیفیت چه کاری انجام میدهد.
راهبردهای ممکن شامل نگهداشتن آخرین مقدار فیلترشده خوب، اعلام فوری نامعتبر بودن خروجی، پاککردن پنجره یا مقداردهی اولیه مجدد از نخستین نمونه خوب پس از بازیابی است. انتخاب درست به این بستگی دارد که مقدار برای کنترل، آلارم، نمایش یا گزارشدهی استفاده میشود. این وضعیت باید برای اپراتورها و منطق پاییندستی قابلمشاهده باشد.
مقداردهی اولیه نیز اهمیت دارد. پرکردن آرایه خالی با صفر، یک رمپ کاذب هنگام راهاندازی ایجاد میکند. میانگینگیری افزایشی فقط بر اساس نمونههای معتبر جمعآوریشده تا آن لحظه، سوگیری صفر را حذف میکند، اما در دوره گرمشدن طول پنجره مؤثر را تغییر میدهد. مقداردهی اولیه خروجی با ورودی معتبر فعلی، شروعی بدون ضربه ایجاد میکند، اما در ابتدا هیچ کاهش نویزی فراهم نمیکند. یک رفتار را انتخاب و مستند کنید.
فیلترکردن عملکرد PID و آلارم را تغییر میدهد
افزودن فیلتر، مسیر اندازهگیری مشاهدهشده توسط کنترلر را تغییر میدهد. تیونینگ PID که پیشتر قابلقبول بوده است، با اضافهشدن تأخیر ممکن است کند یا نوسانی شود. کنش مشتقی به نویز اندازهگیری حساستر است، اما فیلترکردن نویز و دستنخورده گذاشتن تیونینگ قبلی، بهطور خودکار ایمن نیست.
پس از تغییر فیلتر، آزمون پاسخ حلقه را در شرایط کنترلشده تکرار کنید. رد اغتشاش، پاسخ نقطه تنظیم، حرکت شیر، فراجهش، زمان آلارم و زمان لازم برای تشخیص یک انحراف واقعی فرایند را بررسی کنید. حلقه را در نرخهای معمول بهرهبرداری، نه فقط در حالت پایدار، ارزیابی کنید.
طراحی آلارم ممکن است به مسیرهای جداگانه خام و فیلترشده نیاز داشته باشد. یک آلارم مزاحم میتواند از منطق تداوم یا تأخیر سود ببرد، در حالی که یک حد حفاظتی ممکن است به داده معتبرشده سریعتری نیاز داشته باشد. نوسان آلارم را با کندکردن بیصدای اندازهگیری کنترلی برای همه مصرفکنندگان حل نکنید.
شواهد اجرا و راهاندازی
برای پیادهسازی سفارشی در PLC، از آرایه محدود یا بافر حلقوی و مجموع جاری استفاده کنید تا سهم قدیمیترین مقدار با جدیدترین مقدار جایگزین شود. از شاخص محافظت کنید، دقت عددی را مشخص کنید و از خطاهای محدوده آرایه جلوگیری کنید. اگر اجرای وظیفه ممکن است قطع شود، تأیید کنید که بافر و مجموع نمیتوانند ناسازگار شوند.
راهاندازی را با مقادیر پایدار شناختهشده، یک پله کنترلشده، وضعیتهای کیفیت نامطلوب، قطع اجرای وظیفه، تغییرات SampleEnable و تغییرات زمان اجرای پنجره در حین کار انجام دهید. روندهای خام و فیلترشده را با مهر زمانی و در یک مقیاس یکسان مقایسه کنید. تأخیر مشاهدهشده و کاهش نویز را ثبت کنید، نه اینکه فیلتر را صرفاً به دلیل صافبودن خط تأیید کنید.
دیدگاه تحریریه: فیلترکردن بخشی از طراحی اندازهگیری است، نه قالببندی ظاهری نمودار روند. بهترین پیادهسازی، مقدار خام، مقدار فیلترشده، کیفیت، فاصله نمونهبرداری و طول پنجره را آشکار میکند تا مهندس دیگری بتواند دقیقاً توضیح دهد کنترلر چه چیزی را—و چه زمانی—میدانسته است.
پرسشهای متداول
میانگین متحرک باید چند نمونه داشته باشد؟
عدد جهانشمولی وجود ندارد. N را همراه با فاصله نمونهبرداری و بر اساس ویژگیهای نویز و سریعترین رویداد واقعی که کنترل یا آلارم باید تشخیص دهد انتخاب کنید، سپس تأخیر حاصل را روی فرایند اعتبارسنجی کنید.
آیا پنجره بزرگتر همیشه کنترل را بهتر میکند؟
خیر. پنجره بزرگتر تغییرات پرفرکانس بیشتری را کاهش میدهد، اما تأخیر اندازهگیری را افزایش میدهد. فیلترکردن بیشازحد میتواند رد اغتشاش را ضعیف کند، آلارمها را به تأخیر بیندازد و باعث شود یک PID درستتیونشده کند به نظر برسد.
آیا باید میرایی ترانسمیتر غیرفعال شود؟
نه بهطور خودکار. همه فیلترهای موجود در زنجیره سیگنال را مستند و برای هرکدام هدفی تعیین کنید. از رویهمگذاری میرایی مستندنشده و فیلتر کنترلر که بیش از مقدار موردنظر تأخیر کلی ایجاد میکنند، پرهیز کنید.
وقتی کیفیت ورودی بد میشود چه باید رخ دهد؟
بلوک باید کیفیت بد را آشکار کند و از یک سیاست تعریفشده برای نگهداشتن، نامعتبرکردن یا مقداردهی اولیه مجدد پیروی کند. ورودی معیوب نباید به یک مقدار فرایندی معتبر و ظاهراً باورپذیر تبدیل شود.
آیا میانگین متحرک برای اندازهگیریهای ایمنی یا تریپ مناسب است؟
فقط در یک معماری اعتبارسنجیشده که تأخیر افزوده و رفتار تشخیصی را بهصراحت مجاز میداند. هرگز نباید فرض کرد فیلترکردن معمولی کنترل، الزامات زمان پاسخ یک عملکرد ایمنی را برآورده میکند.