مقدمه
ماشینآلات صنعتی معمولاً مجموعهای از سنسورها، عملگرها، موتورها، شیرهای برقی، درایوها و تجهیزات جانبی هستند که باید با ترتیب و منطق مشخصی با یکدیگر کار کنند. با افزایش تعداد تجهیزات و پیچیدگی فرآیند، کنترل پراکنده یا مبتنی بر مدارهای ساده میتواند توسعه، عیبیابی و نگهداری ماشین را دشوار کند.
در یک معماری مبتنی بر PLC و HMI، PLC مسئول اجرای منطق کنترلی، توالی عملکرد، پردازش سیگنالها، اینترلاکها و مدیریت وضعیت ماشین است و HMI رابط میان اپراتور و سیستم کنترل را فراهم میکند. این جداسازی وظایف یکی از الگوهای متداول معماری کنترل ماشین است.
هدف این راهکار صرفاً روشن و خاموش کردن خروجیها نیست؛ بلکه ایجاد یک ساختار کنترلی قابل فهم، قابل عیبیابی و قابل توسعه برای ماشین است.
مسئله صنعتی
در بسیاری از ماشینآلات، عملکرد صحیح یک تجهیز به وضعیت چند تجهیز دیگر وابسته است.
برای مثال، راهاندازی یک موتور ممکن است تنها زمانی مجاز باشد که حفاظ ماشین بسته باشد، فشار هوای مورد نیاز برقرار باشد، تجهیز بعدی آماده باشد، هیچ Fault فعالی وجود نداشته باشد و ماشین در حالت کاری مناسب قرار گرفته باشد.
با افزایش این وابستگیها، سیستم کنترل باید بتواند بهصورت مشخص پاسخ دهد:
- ماشین اکنون در چه وضعیتی قرار دارد؟
- چه مرحلهای از سیکل در حال اجراست؟
- چه شرایطی اجازه شروع مرحله بعد را میدهد؟
- چه چیزی مانع ادامه عملکرد شده است؟
- کدام خطا نیازمند مداخله اپراتور است؟
- پس از رفع خطا، ماشین چگونه باید به وضعیت قابل اجرا بازگردد؟
استفاده صحیح از Permissive، Interlock، Fault و Sequence باعث میشود این روابط در برنامه کنترل ساختار مشخصی داشته باشند.
معماری پیشنهادی

یک معماری عمومی برای اتوماسیون ماشین میتواند به شکل زیر در نظر گرفته شود:
Field Devices ← PLC / Controller ← Control Logic ← HMI ← Operator
در سطح Field، سنسورها و تجهیزات اندازهگیری وضعیت فیزیکی ماشین را دریافت میکنند و عملگرهایی مانند موتور، شیر، کنتاکتور، VFD یا Servo فرمانهای سیستم کنترل را اجرا میکنند.
PLC اطلاعات ورودی را پردازش کرده و بر اساس حالت کاری، درخواستها، شرایط مجاز، اینترلاکها و توالی تعریفشده، فرمان مناسب را تولید میکند.
HMI نیز وضعیت ماشین، پارامترها، فرمانهای اپراتور، آلارمها و اطلاعات تشخیصی را نمایش میدهد.
در طراحی مناسب، تصمیمهای کنترلی اصلی نباید صرفاً در HMI قرار گیرند؛ کنترل ماشین و شرایط لازم برای اجرای فرمانها باید در لایه کنترل مدیریت شوند.
اجزای اصلی سیستم
بسته به نوع و پیچیدگی ماشین، این راهکار میتواند شامل تجهیزات زیر باشد:
PLC / Controller
اجرای منطق کنترلی و مدیریت وضعیت ماشین.
HMI
نمایش وضعیت، دریافت فرمان اپراتور، تنظیم پارامترها و نمایش خطاها.
Digital & Analog I/O
دریافت سیگنال سنسورها و کنترل تجهیزات خروجی.
Sensors
تشخیص موقعیت، حضور قطعه، فشار، دما، سطح، سرعت یا سایر پارامترهای فرآیند.
Actuators
شیرهای برقی، کنتاکتورها، رلهها، موتورهای الکتریکی و سایر تجهیزات اجرایی.
VFD / Servo Drive
کنترل سرعت یا حرکت در کاربردهایی که ماشین به کنترل دقیقتر موتور نیاز دارد.
Industrial Communication
ارتباط PLC با HMI، Drive، Remote I/O یا سایر کنترلرها در صورت نیاز.
منطق عملکرد ماشین
برنامه PLC بهتر است بهجای مجموعهای از فرمانهای پراکنده، بر اساس ساختار مشخصی توسعه داده شود.
برای یک ماشین معمولی میتوان لایههایی مانند موارد زیر داشت:
Inputs ← Operating Modes ← Requests ← Permissives ← Interlocks ← Sequence ← Faults & Alarms ← Outputs ← HMI Status
این ساختار الزاماً برای همه PLCها و همه ماشینها یکسان نیست، اما جداسازی مسئولیتها باعث میشود برنامه در زمان راهاندازی و عیبیابی قابل فهمتر باشد. معماریهای صنعتی مدرن نیز معمولاً وظایفی مانند Mode Handling، Alarm Handling، Auto Logic، Output Logic و Interlocking را از یکدیگر تفکیک میکنند.
حالتهای کاری
بسته به ماشین میتوان حالتهای مختلفی تعریف کرد، اما معمولاً حداقل دو حالت اصلی اهمیت دارند:
Manual
اپراتور میتواند تجهیزات مشخصی را برای تست، تنظیم یا نگهداری بهصورت مستقل کنترل کند.
Manual به معنی حذف اینترلاکهای ضروری نیست؛ محدودیتهایی که برای جلوگیری از شرایط خطرناک یا آسیب تجهیز لازم هستند باید مطابق طراحی سیستم همچنان اعمال شوند.
Automatic
PLC سیکل ماشین را بر اساس توالی تعریفشده اجرا میکند و انتقال از هر مرحله به مرحله بعد تنها پس از برآورده شدن شرایط مربوط انجام میشود.
برای ماشینهای پیچیدهتر میتوان وضعیتهایی مانند Setup، Maintenance، Homing یا Recovery را نیز در نظر گرفت.
Sequence Control
در ماشینهایی که چند عملیات پشت سر هم انجام میشوند، توالی عملکرد یکی از مهمترین بخشهای برنامه PLC است.
یک سیکل ساده میتواند چنین ساختاری داشته باشد:
Ready ← Start ← Position ← Process ← Verify ← Complete
در هر مرحله PLC باید مشخص کند:
- چه خروجیهایی فعال شوند؛
- چه Feedbackهایی انتظار میروند؛
- چه زمانی مرحله کامل محسوب میشود؛
- چه شرایطی اجرای مرحله بعد را مجاز میکند؛
- و در صورت دریافت نکردن Feedback مورد انتظار چه واکنشی انجام شود.
برای سیکلهای پیچیده، استفاده از ساختارهای State/Step میتواند تشخیص وضعیت جاری و علت توقف سیکل را سادهتر کند.
Interlock و Permissive
هر فرمانی الزاماً نباید در هر شرایطی قابل اجرا باشد.
Permissive شرایطی را مشخص میکند که برای اجازه اجرای یک عملیات باید برقرار باشند.
Interlock میتواند اجرای یک عملیات را در شرایط مشخص متوقف یا مسدود کند.
برای مثال، فرمان Start یک موتور ممکن است به وضعیت آماده Drive، شرایط فرآیند و وضعیت تجهیزات مرتبط وابسته باشد.
Interlockها بخش مهمی از معماری کنترل هستند، اما منطق کنترلی عادی PLC جایگزین طراحی و تجهیزات Safety-rated نیست. الزامات ایمنی ماشین باید جداگانه و مطابق ارزیابی ریسک و استانداردهای قابل اعمال طراحی و اعتبارسنجی شوند.
مدیریت Fault و Alarm
یک سیستم کنترل مناسب نباید فقط ماشین را در زمان بروز مشکل متوقف کند؛ باید تا حد امکان علت توقف را نیز برای اپراتور قابل تشخیص کند.
نمونه شرایط قابل پایش:
- عدم دریافت Feedback مورد انتظار
- خطای Drive
- Timeout یک مرحله
- قطع ارتباط با تجهیز
- وضعیت غیرمجاز سنسورها
- خارج شدن پارامتر فرآیند از محدوده تعریفشده
آلارم باید علاوه بر اطلاعرسانی به اپراتور، با منطق Sequence و Fault Handling هماهنگ باشد. برای مثال، اگر یک حرکت در زمان مورد انتظار کامل نشود، سیستم میتواند ادامه Sequence را متوقف کرده و علت را روی HMI نمایش دهد.
طراحی HMI
HMI در این معماری صرفاً مجموعهای از کلیدهای Start و Stop نیست.
یک رابط مناسب میتواند اطلاعاتی مانند موارد زیر را در اختیار اپراتور قرار دهد:
- وضعیت کلی ماشین
- Mode فعال
- مرحله جاری Sequence
- وضعیت تجهیزات اصلی
- مقادیر و Setpointها
- Alarm و Fault
- شرایط Ready / Not Ready
- صفحات Manual Control
- اطلاعات تشخیصی
همچنین بهتر است Command و Feedback از یکدیگر تفکیک شوند؛ ارسال فرمان به یک موتور لزوماً به معنی تأیید اجرای آن نیست. وضعیت واقعی باید از Feedback مناسب دریافت شود.
ارتباط فرمانهای HMI و PLC نیز باید ساختار مشخصی داشته باشد؛ برای نمونه، حتی روشهای Set/Reset و Press-based برای فرمان HMI مزایا و محدودیتهای متفاوتی دارند.
مزایای این معماری
پیادهسازی صحیح این راهکار میتواند زمینه را برای موارد زیر فراهم کند:
- ساختار منظمتر برنامه کنترل
- عیبیابی سریعتر ماشین
- نمایش واضحتر وضعیت و خطاها
- توسعه آسانتر منطق ماشین
- افزودن تجهیزات و I/Oهای جدید
- ارتباط با Drive و تجهیزات هوشمند
- نگهداری سادهتر نرمافزار
- امکان توسعه مانیتورینگ و ثبت اطلاعات در مراحل بعدی
این راهکار برای چه ماشینهایی مناسب است؟
این معماری میتواند متناسب با نیاز در ماشینآلات مختلف استفاده شود، از جمله:
ماشینآلات بستهبندی، پرکن، میکسر، کانوایر، سیستمهای انتقال مواد، دستگاههای مونتاژ، تجهیزات فرآیندی و بسیاری از ماشینهای مستقل یا نیمهخودکار.
معماری نهایی برای هر ماشین باید بر اساس فرآیند واقعی، تعداد I/O، نوع حرکت، الزامات ایمنی، شبکه ارتباطی و سطح مانیتورینگ مورد نیاز طراحی شود.
جمعبندی
اتوماسیون یک ماشین صنعتی با PLC و HMI فقط انتخاب یک PLC و اتصال چند ورودی و خروجی نیست. کیفیت نهایی سیستم تا حد زیادی به معماری نرمافزار، مدیریت وضعیتها، طراحی Sequence، Interlockها، Fault Handling و نحوه تعامل اپراتور با ماشین وابسته است.
PLCSEA در این نوع راهکار، مسئله را از سطح فرآیند و رفتار ماشین بررسی میکند و سپس معماری کنترل، تجهیزات مورد نیاز و ساختار نرمافزاری متناسب با آن تعریف میشود.

