مشاوره تخصصی ۰۹۱۲ ۰۰۴ ۶۳۷۳
LEARN KNOWLEDGE BASE

دانش فنی اتوماسیون صنعتی

LEARN

آموزش PID در PLC دلتا | تنظیم PID در DVP و WPLSoft

راهنمای عملی PID در PLC دلتا؛ از مفاهیم SV، PV و MV و ضرایب P، I و D تا پیاده‌سازی در WPLSoft، کنترل دما، Tuning، رفع Overshoot و نکات Commissioning.

آموزش PID در PLC دلتا و تنظیم PID در DVP و WPLSoft

کنترل PID یکی از مهم‌ترین روش‌های کنترل در اتوماسیون صنعتی است. هرجا لازم باشد یک متغیر فرآیندی مانند دما، فشار، سرعت، سطح یا دبی با دقت در مقدار مشخصی نگه داشته شود، کنترل PID می‌تواند یکی از گزینه‌های اصلی طراحی سیستم باشد.

PLCهای سری DVP دلتا در مدل‌های پشتیبانی‌شده امکان اجرای کنترل PID را در برنامه PLC فراهم می‌کنند. در چنین سیستمی PLC مقدار واقعی فرآیند را دریافت کرده، آن را با مقدار هدف مقایسه می‌کند و براساس اختلاف میان این دو، خروجی مناسب را محاسبه می‌کند.

اما استفاده صحیح از PID فقط به قرار دادن دستور PID در برنامه محدود نمی‌شود. انتخاب زمان نمونه‌برداری، Scaling ورودی و خروجی، تنظیم ضرایب کنترل، محدودکردن خروجی و بررسی رفتار واقعی سیستم همگی در نتیجه نهایی تأثیر دارند.

در این راهنما ابتدا مفهوم PID را بررسی می‌کنیم و سپس به پیاده‌سازی آن در PLC دلتا، تنظیم پارامترها، مثال کنترل دما، Tuning و عیب‌یابی مشکلات رایج می‌پردازیم.


کنترل PID چیست؟

PID مخفف سه بخش است:

P — Proportional

I — Integral

D — Derivative

کنترلر PID به‌طور پیوسته اختلاف بین مقدار موردنظر و مقدار واقعی سیستم را بررسی می‌کند.

این اختلاف را Error می‌نامیم.

به‌صورت ساده:

Error = Set Value - Process Value

کنترلر با توجه به Error و پارامترهای تنظیم‌شده، خروجی لازم برای نزدیک کردن فرآیند به مقدار هدف را محاسبه می‌کند.


SV، PV و MV در کنترل PID چیست؟

سه اصطلاح مهم در کنترل PID عبارت‌اند از:

SV یا Set Value

مقداری است که می‌خواهیم فرآیند به آن برسد.

مثلاً:

SV = 80°C

یعنی دمای هدف 80 درجه سانتی‌گراد است.


PV یا Process Value

مقدار واقعی اندازه‌گیری‌شده فرآیند است.

مثلاً:

PV = 72°C

یعنی سنسور در حال حاضر دمای 72 درجه را اندازه‌گیری کرده است.


MV یا Manipulated Value

خروجی محاسبه‌شده کنترلر است که برای تغییر وضعیت فرآیند استفاده می‌شود.

در مثال کنترل دما، MV می‌تواند تعیین‌کننده میزان فرمان اعمال‌شده به سیستم گرمایش باشد.

ساختار کلی سیستم:

       SV
        │
        ▼
   ┌─────────┐
PV │   PID   │───► MV ───► Process
──►│Controller│
   └─────────┘
        ▲
        │
      Feedback

Error در PID چیست؟

کنترلر باید بداند سیستم چقدر از مقدار هدف فاصله دارد.

اگر:

SV = 80
PV = 70

باشد، Error برابر است با:

Error = 10

اگر PV به 80 برسد:

Error = 0

هدف کنترلر این است که رفتار خروجی را طوری مدیریت کند که Error به مقدار قابل قبول نزدیک شود، بدون اینکه سیستم دچار نوسان شدید یا رفتار ناپایدار شود.


بخش P در PID چیست؟

بخش Proportional متناسب با مقدار Error واکنش نشان می‌دهد.

هرچه خطا بیشتر باشد، اثر بخش P نیز بیشتر می‌شود.

به‌صورت مفهومی:

P ∝ Error

فرض کنید دمای هدف 100 درجه است و دمای واقعی فقط 40 درجه.

اختلاف زیاد است، بنابراین کنترلر باید واکنش قابل‌توجهی نشان دهد.

وقتی دما به 98 درجه می‌رسد، اختلاف بسیار کمتر شده و واکنش تناسبی نیز کاهش پیدا می‌کند.


اگر P خیلی زیاد باشد چه اتفاقی می‌افتد؟

افزایش بیش از حد Gain تناسبی می‌تواند باعث واکنش تند سیستم شود.

نتیجه ممکن است شامل:

  • Overshoot
  • نوسان
  • رفتار ناپایدار

باشد.

مثلاً هدف 80 درجه است اما دما به 90 درجه می‌رسد، سپس پایین می‌آید و دوباره از Setpoint عبور می‌کند.


اگر P خیلی کم باشد چه اتفاقی می‌افتد؟

کنترلر ممکن است بیش از حد آرام واکنش نشان دهد.

در نتیجه:

  • رسیدن به Setpoint طولانی می‌شود.
  • سیستم کند به تغییرات پاسخ می‌دهد.
  • ممکن است Offset باقی بماند.

پس مقدار P نه باید صرفاً «زیاد» باشد و نه «کم»؛ باید متناسب با دینامیک فرآیند تنظیم شود.


بخش I در PID چیست؟

بخش Integral به تجمع Error در طول زمان توجه می‌کند.

فرض کنید سیستم مدت زیادی نزدیک Setpoint مانده اما همچنان کمی خطا دارد:

SV = 80
PV = 77

Error فقط 3 واحد است، ولی اگر این خطا برای مدت طولانی باقی بماند، Integral آن را جمع می‌کند و اثر بیشتری روی خروجی می‌گذارد.

یکی از کاربردهای مهم I، کاهش Steady-State Error است.


اگر Integral بیش از حد قوی باشد چه می‌شود؟

اثر انتگرالی زیاد می‌تواند باعث:

  • Overshoot
  • نوسان
  • پاسخ کند پس از اشباع
  • Integral Windup

شود.

بنابراین افزایش I بدون بررسی رفتار واقعی فرآیند راهکار مناسبی برای سریع‌تر کردن کنترل نیست.


بخش D در PID چیست؟

بخش Derivative به نرخ تغییر Error توجه می‌کند.

به زبان ساده، D فقط نمی‌پرسد:

«چقدر خطا داریم؟»

بلکه بررسی می‌کند:

«خطا با چه سرعتی در حال تغییر است؟»

این رفتار می‌تواند به کنترلر کمک کند تغییرات سریع را بهتر مدیریت کند و در بعضی فرآیندها Overshoot را کاهش دهد.


چرا D همیشه زیاد استفاده نمی‌شود؟

بخش مشتقی نسبت به نویز حساس است.

اگر PV دارای Noise باشد، تغییرات سریع اندازه‌گیری‌شده می‌توانند اثر D را تحت تأثیر قرار دهند.

به همین دلیل در بسیاری از پروژه‌ها ابتدا رفتار P و I تنظیم می‌شود و سپس در صورت نیاز D اضافه یا اصلاح می‌شود.


تفاوت P، PI و PID

همیشه لازم نیست هر سه بخش فعال باشند.

کنترلویژگی کلی
Pساده و سریع، ولی ممکن است خطای ماندگار داشته باشد
PIمناسب بسیاری از فرآیندهای صنعتی
PDدر برخی سیستم‌های دینامیکی کاربرد دارد
PIDکنترل کامل‌تر در صورت تنظیم صحیح

برای بسیاری از فرآیندهای دمایی، استفاده صحیح از PI می‌تواند کافی باشد و الزاماً اضافه کردن D نتیجه را بهتر نمی‌کند.

انتخاب ساختار کنترل باید براساس رفتار واقعی Plant انجام شود.


PID در PLC دلتا چگونه کار می‌کند؟

در PLCهای DVP پشتیبانی‌شده، Delta دستور PID را در مجموعه Application Programming Instructions مستند کرده است. ساختار دقیق دستور، Operandها، Deviceهای مورد استفاده و پارامترهای داخلی باید از Manual مدل PLC بررسی شود.

در سطح مفهومی، PLC به این اطلاعات نیاز دارد:

SV ← مقدار هدف
PV ← مقدار واقعی
PID Parameters ← تنظیمات کنترلر
MV ← خروجی محاسبه‌شده

PLC در هر اجرای مناسب الگوریتم، Error را محاسبه کرده و براساس پارامترهای کنترلر MV جدید را تولید می‌کند.


قبل از نوشتن PID در WPLSoft چه چیزهایی لازم داریم؟

قبل از قرار دادن دستور PID در Ladder باید چهار موضوع مشخص باشد:

۱. PV از کجا می‌آید؟

مثلاً از:

  • ورودی آنالوگ
  • ماژول دما
  • ترانسمیتر فشار
  • شبکه صنعتی
  • ماژول اندازه‌گیری

۲. SV از کجا می‌آید؟

مثلاً:

  • HMI
  • Recipe
  • مقدار ثابت
  • برنامه PLC

۳. MV به چه تجهیزی اعمال می‌شود؟

مثلاً:

  • خروجی آنالوگ
  • PWM
  • SSR
  • Drive
  • Valve

۴. محدوده مهندسی داده‌ها چیست؟

مثلاً:

0...10V
4...20mA
0...100°C
0...100%

بدون پاسخ دقیق به این چهار سؤال، شروع Tuning معمولاً زود است.


Scaling در کنترل PID

یکی از مهم‌ترین قسمت‌های پروژه PID، Scaling صحیح است.

فرض کنید ورودی آنالوگ یک مقدار Raw تولید می‌کند، اما فرآیند واقعی دماست.

مثلاً:

Raw Input → Engineering Value

کنترلر باید بداند عددی که به‌عنوان PV دریافت می‌کند چه معنایی دارد.

اگر SV برحسب درجه سانتی‌گراد تعریف شود اما PV همچنان Raw ADC باشد، مقایسه این دو بدون تبدیل صحیح معنی ندارد.


مثال Scaling

فرض کنیم در طراحی مشخص شده:

Raw 0     → 0°C
Raw 4000  → 100°C

اگر مقدار Raw برابر 2000 باشد، با فرض خطی بودن سیستم:

PV ≈ 50°C

خواهد بود.

این فقط یک مثال آموزشی است. محدوده واقعی Raw و Scaling باید از Manual ماژول مورد استفاده استخراج شود.


Sampling Time در PID چیست؟

PID باید در فواصل زمانی مشخص و قابل پیش‌بینی اجرا شود.

این زمان را معمولاً Sampling Time می‌نامیم.

Sampling Time بسیار مهم است، زیرا بخش‌های Integral و Derivative به زمان وابسته‌اند.

اگر الگوریتم با زمان‌بندی نامناسب اجرا شود، رفتار کنترلر می‌تواند با چیزی که هنگام Tuning انتظار داشته‌ایم متفاوت باشد.


Sampling Time را چقدر قرار دهیم؟

یک عدد ثابت برای تمام سیستم‌ها وجود ندارد.

فرآیند دمایی ممکن است بسیار کند باشد، در حالی که کنترل سرعت یا موقعیت دینامیک بسیار سریع‌تری دارد.

Sampling Time باید با توجه به:

  • سرعت پاسخ فرآیند
  • سنسور
  • Actuator
  • Scan/Task
  • ساختار الگوریتم
  • توصیه Manual

انتخاب شود.


ساخت PID در WPLSoft

در WPLSoft می‌توان دستورهای Application را در Ladder وارد کرد. Manual رسمی DVP توضیح می‌دهد که در WPLSoft لازم نیست API Number دستورها حفظ شود و نرم‌افزار امکان انتخاب Instruction از فهرست را فراهم می‌کند.

برای یک پروژه PID، روند کلی به شکل زیر است:

Read Sensor
    ↓
Scale PV
    ↓
Read / Set SV
    ↓
Execute PID
    ↓
Limit MV
    ↓
Drive Output
    ↓
Monitor Process

این ساختار از نوشتن مستقیم PID بدون آماده‌سازی ورودی و خروجی بهتر است.


مثال عملی: کنترل دما با PID در PLC دلتا

یک هیتر صنعتی را در نظر بگیریم.

هدف:

نگه داشتن دما روی 80°C

سیستم شامل:

  • سنسور دما
  • PLC Delta
  • بخش اندازه‌گیری دما
  • هیتر
  • تجهیز سوئیچینگ/کنترل مناسب
  • HMI برای Setpoint

است.


مرحله اول: خواندن دما

PLC مقدار سنسور را دریافت می‌کند.

فرض کنیم پس از Scaling:

PV = 65.0°C

و اپراتور روی HMI تنظیم کرده:

SV = 80.0°C

پس کنترلر می‌بیند که دمای واقعی پایین‌تر از هدف است.


مرحله دوم: اجرای PID

PID براساس:

SV
PV
P
I
D
Sampling Time

مقدار خروجی را محاسبه می‌کند.

فرض کنیم نتیجه به‌صورت مهندسی معادل:

MV = 70%

باشد.

این به معنی آن نیست که الزاماً یک خروجی فیزیکی PLC باید «70 درصد ولتاژ» تولید کند.

MV باید براساس نوع Actuator به فرمان مناسب تبدیل شود.


تبدیل MV به خروجی واقعی

نحوه استفاده از MV به سخت‌افزار بستگی دارد.

اگر خروجی آنالوگ داریم، ممکن است MV به محدوده خروجی آنالوگ Scale شود.

اگر هیتر از طریق SSR کنترل می‌شود، ممکن است از Time-Proportioning یا روش کنترلی متناسب با طراحی سخت‌افزار استفاده شود.

اگر Drive داریم، MV ممکن است به Frequency Reference تبدیل شود.

پس:

PID Output ≠ Physical Output

تا زمانی که Mapping و Scaling مناسب تعریف نشده باشد.


Output Limit چرا مهم است؟

فرض کنید الگوریتم PID مقداری خارج از محدوده فیزیکی Actuator تولید کند.

اگر سیستم فقط محدوده:

0...100%

را می‌پذیرد، باید خروجی به محدوده مجاز محدود شود.

مثلاً:

MV < 0    → MV = 0
MV > 100  → MV = 100

محدودکردن خروجی علاوه بر حفاظت منطقی، در مدیریت رفتار Integral نیز اهمیت دارد.


Integral Windup چیست؟

فرض کنید دمای هدف بسیار بالاتر از مقدار فعلی است و خروجی مدت زیادی روی 100% قرار دارد.

در همین زمان بخش Integral ممکن است Error را همچنان انباشته کند.

وقتی فرآیند به Setpoint نزدیک می‌شود، Integral انباشته‌شده می‌تواند باعث شود خروجی دیر کاهش پیدا کند و سیستم Overshoot شدیدی داشته باشد.

این پدیده Integral Windup نامیده می‌شود.

روش کنترل آن به الگوریتم و قابلیت‌های Controller بستگی دارد، اما در طراحی حرفه‌ای باید موضوع Output Saturation و رفتار Integral بررسی شود.


Tuning PID چیست؟

PID Tuning یعنی انتخاب پارامترهایی که کنترلر با آن‌ها رفتار مناسب داشته باشد.

هدف فقط سریع رسیدن به Setpoint نیست.

یک Tuning مناسب باید میان موارد زیر تعادل ایجاد کند:

  • Rise Time
  • Overshoot
  • Settling Time
  • Steady-State Error
  • Stability
  • Noise Sensitivity

روش ساده بررسی PID در Commissioning

در پروژه واقعی بهتر است Tuning مرحله‌ای انجام شود.

ابتدا مشخص کنید سیستم در Manual Mode رفتار صحیح دارد.

سنسور باید درست خوانده شود.

Scaling باید درست باشد.

Actuator باید در جهت صحیح عمل کند.

محدوده خروجی باید صحیح باشد.

بعد می‌توان کنترل Closed Loop را بررسی کرد.

این ترتیب اهمیت زیادی دارد؛ PID نمی‌تواند سیم‌بندی یا Scaling اشتباه را اصلاح کند.


اگر PID نوسان می‌کند چه کنیم؟

Oscillation می‌تواند دلایل مختلفی داشته باشد.

مواردی که باید بررسی شوند:

  • Gain بیش از حد
  • Integral بیش از حد قوی
  • Sampling نامناسب
  • Delay زیاد فرآیند
  • Noise سنسور
  • Resolution پایین
  • Actuator نامناسب
  • Deadband یا Backlash

پس هر نوسانی الزاماً با کم‌کردن یک پارامتر حل نمی‌شود.

ابتدا باید علت رفتار مشخص شود.


Overshoot چیست؟

اگر:

SV = 80°C

باشد و سیستم پس از افزایش دما به:

92°C

برسد و سپس برگردد، Overshoot قابل‌توجهی داریم.

دلایل احتمالی می‌تواند شامل:

  • کنترل بیش از حد تهاجمی
  • Integral زیاد
  • تأخیر حرارتی
  • Inertia فرآیند
  • محل نامناسب سنسور

باشد.

در سیستم حرارتی، حتی اگر خروجی هیتر خاموش شود، انرژی ذخیره‌شده می‌تواند برای مدتی دما را بالا ببرد.

بنابراین Tuning باید فیزیک واقعی سیستم را هم در نظر بگیرد.


اگر PID خیلی کند است چه کنیم؟

پاسخ کند می‌تواند ناشی از:

  • Gain کم
  • تنظیم Integral نامناسب
  • محدودیت خروجی
  • ظرفیت ناکافی Actuator
  • Sampling نامناسب
  • فرآیند ذاتاً کند

باشد.

قبل از تغییر PID بررسی کنید آیا Actuator اصلاً توان کافی برای رسیدن به Setpoint دارد یا نه.

نرم‌افزار نمی‌تواند کمبود توان فیزیکی سیستم را جبران کند.


نویز سنسور چه اثری روی PID دارد؟

Noise در PV مستقیماً وارد حلقه کنترل می‌شود.

بخش D مخصوصاً می‌تواند نسبت به تغییرات سریع حساس باشد.

برای مثال اگر دما در واقع تقریباً ثابت باشد اما PV چنین تغییر کند:

79.8
80.2
79.7
80.3
79.9

کنترلر تغییراتی می‌بیند که الزاماً مربوط به تغییر واقعی فرآیند نیست.

راهکار می‌تواند شامل بررسی:

  • سیم‌کشی سنسور
  • Shielding
  • Grounding
  • فیلتر مناسب
  • کیفیت Transmitter
  • طراحی ورودی آنالوگ

باشد.

قبل از فیلتر نرم‌افزاری، علت Noise را پیدا کنید.


Manual Mode و Auto Mode

در پروژه صنعتی داشتن دو Mode بسیار مفید است:

Manual

اپراتور یا تکنسین مستقیماً خروجی را برای تست کنترل می‌کند.

Auto

PID خروجی را محاسبه می‌کند.

اما تغییر بین Manual و Auto باید با دقت طراحی شود.

اگر خروجی Manual روی 30% باشد و PID هنگام ورود به Auto ناگهان 90% درخواست کند، Process می‌تواند شوک بزرگی دریافت کند.

طراحی انتقال نرم بین Modeها یا Bumpless Transfer در سیستم‌های حساس اهمیت دارد.


Auto-Tuning چیست؟

برخی کنترلرها یا ماژول‌های Delta قابلیت Auto-Tuning دارند، اما نباید این قابلیت را به تمام PLCها و تمام پیاده‌سازی‌های PID تعمیم داد.

برای مثال Delta در مستندات DVP-04TC توضیح می‌دهد که PID این ماژول از طریق Registerهای خاص فعال می‌شود، پارامترهای Kp، Ki و Kd در Registerهای مشخص قرار می‌گیرند و Register دیگری برای PID Mode و Auto-Tuning استفاده می‌شود. این ساختار مخصوص آن محصول است و نباید به PID عمومی CPUهای DVP تعمیم داده شود.

بنابراین اگر قصد Auto-Tuning دارید، ابتدا بررسی کنید سخت‌افزار مورد استفاده واقعاً چنین قابلیتی دارد یا خیر.


تفاوت PID داخل CPU و PID ماژول دما

این دو را نباید یکی بدانیم.

در یک حالت، دستور PID داخل برنامه CPU اجرا می‌شود:

Sensor → PLC Program → PID → Output

در حالت دیگر ممکن است یک ماژول تخصصی دما خودش قابلیت PID داشته باشد:

Temperature Module
       ↓
 Internal PID
       ↓
 Control Output

هر معماری مزایا و محدودیت‌های خودش را دارد.

انتخاب باید براساس:

  • تعداد Loopها
  • نوع سنسور
  • سرعت فرآیند
  • سخت‌افزار موجود
  • دقت موردنیاز
  • معماری پروژه

انجام شود.


آیا PID را می‌توان در Simulator WPLSoft تست کرد؟

این نکته برای مقاله ما بسیار مهم است:

خیر؛ نباید عملکرد واقعی PID را براساس Simulator تأیید کنیم.

Delta در FAQ رسمی WPLSoft و ISPSoft اعلام کرده است Simulator از دستور PID پشتیبانی نمی‌کند. Delta همچنین تأکید می‌کند نتیجه Simulator الزاماً دقیقاً مشابه اجرای PLC واقعی نیست و برنامه باید قبل از بهره‌برداری روی PLC واقعی تست شود.

پس برای PID:

Write Program
↓
Check Logic
↓
Download to Real PLC
↓
Monitor PV/SV/MV
↓
Tune
↓
Commission

مسیر مطمئن‌تری است.


مانیتور کردن PID در WPLSoft

هنگام Commissioning بهتر است حداقل این مقادیر هم‌زمان قابل مشاهده باشند:

SV
PV
Error
MV
PID Enable
Manual/Auto
Alarm

اگر امکان Trend یا ثبت داده دارید، مشاهده نمودار PV و MV اطلاعات بسیار بیشتری نسبت به نگاه کردن به یک عدد لحظه‌ای می‌دهد.

مثلاً می‌توان دید:

  • PV چقدر سریع بالا می‌رود؟
  • Overshoot چقدر است؟
  • چه زمانی MV کاهش پیدا می‌کند؟
  • آیا نوسان Periodic وجود دارد؟
  • Settling Time چقدر است؟

این اطلاعات برای Tuning بسیار ارزشمند هستند.


مثال State برای کنترل PID

در پروژه واقعی بهتر است PID بدون هیچ Condition دائماً فعال نباشد.

می‌توان منطق را به حالت‌هایی مانند زیر تقسیم کرد:

STOP
 ↓
READY
 ↓
PID RUN
 ↓
FAULT

در حالت Fault ممکن است لازم باشد PID غیرفعال شود و خروجی به وضعیت امن منتقل شود.

نوع Safe State کاملاً به فرآیند وابسته است.

مثلاً رفتار امن یک Heater با رفتار امن یک Pump یا Pressure Valve یکسان نیست.


Interlockها را به PID نسپارید

PID وظیفه کنترل Process را دارد؛ جایگزین Interlock و Safety Logic نیست.

برای یک Heater ممکن است مواردی مانند:

  • Over Temperature
  • Sensor Fault
  • Fan Feedback
  • Flow Confirmation
  • Emergency Stop

به‌صورت مستقل بررسی شوند.

حتی اگر PID خروجی 100% درخواست کند، Interlock باید بتواند در شرایط غیرمجاز فرمان را قطع کند.


PID برای چه کاربردهایی مناسب است؟

PID در بسیاری از فرآیندهای صنعتی کاربرد دارد، از جمله:

کنترل دما

کوره، مخزن، هیتر، Extruder و فرآیندهای حرارتی.

کنترل فشار

سیستم‌های پمپ، کمپرسور و فرآیندهای پنوماتیک یا هیدرولیک.

کنترل دبی

با استفاده از Flow Transmitter و Actuator مناسب.

کنترل سطح

در برخی فرآیندهای مخزن که نیاز به کنترل پیوسته دارند.

کنترل سرعت

در معماری‌هایی که Feedback مناسب و سخت‌افزار موردنیاز وجود دارد.

اما صرفاً چون یک Variable آنالوگ داریم، الزاماً PID بهترین روش کنترل نیست.


PID بهتر است یا ON/OFF؟

برای بعضی فرآیندهای ساده، کنترل ON/OFF کاملاً کافی است.

مثلاً:

Temperature < 78 → Heater ON
Temperature > 82 → Heater OFF

این کنترل ساده است و یک Deadband ایجاد می‌کند.

اما اگر نیاز به:

  • دقت بیشتر
  • تغییرات نرم‌تر
  • کاهش Overshoot
  • کنترل پیوسته

داشته باشیم، PID می‌تواند مناسب‌تر باشد.

پس پیچیده‌تر بودن PID به معنی بهتر بودن آن برای تمام پروژه‌ها نیست.


اشتباهات رایج هنگام تنظیم PID در PLC دلتا

کپی کردن Kp، Ki و Kd از یک دستگاه دیگر

پارامترهای PID به Process وابسته‌اند.

اعداد مناسب برای یک Heater کوچک ممکن است برای یک مخزن بزرگ کاملاً نامناسب باشند.


Tuning قبل از Scaling

اگر PV درست نباشد، هیچ Tuning معتبری نداریم.


نادیده گرفتن Sampling Time

پارامترهای PID و زمان اجرای الگوریتم به یکدیگر مرتبط‌اند.


تست نکردن Actuator در Manual

قبل از فعال کردن Auto باید مطمئن شویم خروجی فیزیکی در جهت و محدوده صحیح عمل می‌کند.


نداشتن Output Limit

خروجی باید با محدودیت‌های واقعی سیستم سازگار باشد.


نادیده گرفتن Sensor Fault

اگر سنسور قطع شود و PV نامعتبر باشد، PID نباید بدون تصمیم منطقی به کار ادامه دهد.


استفاده از Simulator برای تأیید PID

Simulator WPLSoft/ISPSoft از دستور PID پشتیبانی نمی‌کند.


چک‌لیست راه‌اندازی PID

قبل از فعال کردن Auto Mode این موارد را بررسی کنید:

Sensor

آیا مقدار واقعی را درست اندازه می‌گیرد؟

Scaling

آیا Raw Value به Engineering Unit درست تبدیل شده؟

Setpoint

آیا محدوده SV منطقی و محدود شده است؟

Actuator

آیا Manual Output درست کار می‌کند؟

Direction

آیا افزایش MV فرآیند را در جهت مورد انتظار تغییر می‌دهد؟

Sampling

آیا زمان اجرای PID مناسب است؟

Limits

آیا خروجی محدود شده است؟

Interlocks

آیا Faultها مستقل از PID کنترل می‌شوند؟

Trend

آیا امکان مشاهده PV/SV/MV هنگام Tuning وجود دارد؟

بعد از این بررسی‌ها Tuning معنی پیدا می‌کند.


سوالات متداول PID در PLC دلتا

PID چیست؟

PID یک الگوریتم کنترل Feedback است که با استفاده از بخش‌های Proportional، Integral و Derivative تلاش می‌کند مقدار واقعی فرآیند را به مقدار هدف نزدیک کند.

SV و PV در PID چیست؟

SV مقدار هدف و PV مقدار واقعی اندازه‌گیری‌شده فرآیند است.

MV چیست؟

MV خروجی محاسبه‌شده کنترلر است که بعداً متناسب با سخت‌افزار به فرمان Actuator تبدیل می‌شود.

آیا PLCهای DVP دلتا دستور PID دارند؟

دستور PID در Programming Manual خانواده‌های پشتیبانی‌شده DVP مستند شده است. سازگاری، Operandها و جزئیات دقیق باید برای مدل PLC مورد استفاده از Manual بررسی شود.

آیا PID را می‌توان با WPLSoft برنامه‌نویسی کرد؟

برای PLCهای DVP سازگار می‌توان Application Instructionهای مربوط را در WPLSoft استفاده کرد. Manual رسمی DVP نیز نحوه کار با Application Instructions در WPLSoft را توضیح می‌دهد.

آیا Simulator WPLSoft دستور PID را اجرا می‌کند؟

خیر. Delta دستور PID را در فهرست Instructionهای پشتیبانی‌نشده توسط Simulator قرار داده است.

آیا همیشه باید Kp، Ki و Kd را فعال کنیم؟

خیر. براساس رفتار Process ممکن است P، PI یا PID مناسب باشد.

چرا PID نوسان می‌کند؟

Gain نامناسب، Integral قوی، Sampling نامناسب، تأخیر Process، نویز سنسور و خصوصیات Actuator از دلایل احتمالی هستند.

چرا دما از Setpoint عبور می‌کند؟

Overshoot می‌تواند ناشی از Tuning تهاجمی، Integral، تأخیر حرارتی یا Inertia سیستم باشد.

آیا Auto-Tuning در PLC دلتا وجود دارد؟

در بعضی محصولات Delta قابلیت Auto-Tuning وجود دارد. برای نمونه DVP-04TC دارای تنظیمات مشخص برای PID و Auto-Tuning است، اما این قابلیت و روش تنظیم را نباید به همه CPUها یا ماژول‌ها تعمیم داد.


جمع‌بندی

پیاده‌سازی موفق PID در PLC دلتا فقط به استفاده از یک Instruction محدود نمی‌شود.

یک حلقه کنترل مناسب از چند بخش تشکیل شده است:

Sensor
  ↓
Scaling
  ↓
PV ─────┐
        │
SV ──► PID
        │
        ▼
       MV
        ↓
Output / Actuator
        ↓
     Process
        │
        └──── Feedback

اگر سنسور، Scaling یا Actuator مشکل داشته باشد، تغییر پارامترهای PID راه‌حل اصلی نیست.

پس ترتیب صحیح کار اهمیت زیادی دارد:

ابتدا سخت‌افزار و Scaling ← سپس Manual Mode ← بعد PID ← سپس Tuning ← و در نهایت Commissioning.

همچنین پارامترهای PID را نباید بدون بررسی از پروژه دیگری کپی کرد. رفتار هر Process به ظرفیت، تأخیر، سنسور، Actuator و شرایط مکانیکی یا حرارتی خودش وابسته است.

در PLCهای DVP نیز برای Syntax دقیق دستور PID، محدوده Operandها و پارامترهای آن باید Programming Manual همان PLC مرجع نهایی باشد. Manual رسمی Delta دستور PID و مجموعه Application Instructions این خانواده را مستند کرده است.

برای طراحی و برنامه‌نویسی حلقه‌های کنترل، راه‌اندازی PLC و عیب‌یابی سیستم‌های اتوماسیون می‌توانید از بخش خدمات مهندسی PLCSEA استفاده کنید و آموزش‌های بیشتر را در دانشنامه PLCSEA بخوانید.

سوالی دارید؟

اگر در انتخاب یا پیاده‌سازی سیستم‌های اتوماسیون نیاز به راهنمایی دارید، با ما تماس بگیرید.

تماس با ما