چاپ کردن این صفحه

آشنایی مقدماتی با پروتکل OPC

07 آبان 1398
نویسنده 

OPC یک استاندارد برای تبادل داده ایمن و مطمئن در اتوماسیون صنعتی می باشد. OPC مستقل از پلتفرم عمل می کند و تبادل داده بین سازندگان مختلف را به طور یکپارچه تضمین می کند. بنیاد OPC (OPC Foundation) مسئول توسعه و نگهداری این استاندارد است.

استاندارد OPC (Open Process Control)مجموعه ای از خصوصیات (Specification)می باشد که توسط سازندگان صنعتی و توسعه دهندگان نرم افزار ایجاد شده اند. این Specificationها واسط سرور با کلاینت و سرور با سرور را تعریف می کنند مثل دسترسی به داده ها، مانیتورینگ آلارم، دسترسی به تاریخچه و کاربرد های دیگر.

اولین بار این استاندارد در سال  1996 توسط بازیگران اصلی اتوماسیون صنعتی و مایکروسافت منتشر شد و هدف آن خلاصه کردن پروتکل های PLC نظیر Modbus وProfibus  به یک اینترفیس استاندارد برای برقراری ارتباط با سیستم های SCADA/HMI بود. در این سال کارخانه های بزرگی که در زمینه ی اتوماسیون صنعتی فعالیت می کردند کنسرسیومی تشکیل دادند که تا نسبت به تشکیل استانداردهایی برای سیستم های کنترل فرایند HMI , MRP اقدام کنند. این استاندارد که بر مبنای فناوری OLE مایکروسافت بود به همین خاطر آن را OLE for Process Control نامیدند که از سال ۲۰۱۱ به بعد به Open Process Control تغییر نام پیدا کرد. OPC مجموعه ای از توابع استانداردی است که در کتابخانه های نرم افزار OPC server جمع آوری شده است. این توابع را می توان بر روی نرم افزارهای دیگر که نقش Client را دارند در OPC سرور صدا زد. در واقع OPC بعد از توسعه در صنایع مانند کارخانجات، اتوماسیون ساختمان و بسیاری صنایع دیگر راه خود را باز کرد. در سال های اخیر استاندارد OPC به پرکاربرد ترین ارتباط همه کاره در اتوماسیون صنعتی بدل شده است.

OPC ابتدا با پروتکل های دسترسی به دادها DA ، مانیتورینگ آلارم AE ، دسترسی به تاریخچه  HDA شروع به کار کرد. با پیشرفت سیستم های کنترل این پروتکل ها پاسخگوی نیازهای مهندسان نبود و این بود که استاندارد OPC UA معرفی شد.

اصول کار OPC

OPC یک ارتباط سرور کلاینت است به این معنا که در یک ارتباط یک یا چند سرور دارید که منتظر درخواست چند کلاینت هستند. به محض اینکه سرور درخواستی از کلاینت می بیند پاسخ آن را می دهد و پس از آن به حالت استندبای(آماده به کار) می رود. همچنین کلاینت می تواند به سرور دستور بدهد که تغییرات را مرتبا به کلاینت بفرستد. در استاندارد OPC این کلاینت است که تصمیم می گیرد چه زمانی و چه دیتایی را سرور با سیستم های پایین دستی تبادل کند.

برای کار با OPC در سمت Client باید برنامه ای نوشته شود که به وسیله تکنولوژی COM یا DCOM با برنامه OPC server ارتباط برقرار نمایند. برنامه CLIENT و OPC SERVER ممکن است روی یک سیستم باشند که پردازش آن ها به صورت موازی انجام شود. اگر نرم افزار OPC SERVER تکنولوژی DCOM مایکروسافت را پشتیبانی کند برنامه Client می تواند در سیستم دیگری تحت شبکه به سیستمی که OPC SERVER را اجرا نماید متصل شود.

پروتکل های OPC و انواع آن

پروتکل های OPC کلاسیک هیچ نقطه اشتراکی با هم ندارند برای مثال سیگنال مقدار DA هیچ ارتباطی با HAD ندارد. در حال حاضر OPC کلاسیک شامل پروتکل های زیر می باشد:

  • DA(Data access)
  • AE(Alarm & Events)
  • HDA(Historical Data Access)
  • XMLDA (XML Data Access)
  • DX(Data eXchange)

هر کدام از پروتکل های گفته شده دستورات خواندن و نوشتن خود را دارند. قدیمی ترین و کاربردی ترین پروتکل DA می باشد.

OPC Unified Architecture(UA)

مهم ترین تفاوت بین OPC Classic و OPC UA اینست که وابستگی به تکنولوژی OLE یا DCOM مایکروسافت ندارد و این باعث می شود OPC UA روی سیستم عامل های Linux , MAC OS هم راه اندازی شود. تفاوت دیگر اینست که در OPC UA امکان استفاده از ساختارها یا  مدل ها می باشد یعنی می توان تگ ها را گروه بندی کرد و به آن ها اسم داد و این کار کردن با تگ ها را آسان تر می کند.

مبحث OPC بسیار مفصل است و انشالله سعی می کنیم در پست های بعدی جزئیات بیشتری را با مثال عملی بیان کنیم.

لازم به ذکر است گروه فنی مهندسی اتوسیستم بصورت تخصصی کلیه نرم افزارهای OPC Server مطرح دنیا مانند Matrikon و KepWare را ارائه می کند. برای تهیه این نرم افزارها به فروشگاه آنلاین ما مراجعه فرمایید.

منبع:

https://www.novotek.com

https://opcfoundation.org

احمد پوراسکندری

احمد پوراسکندری، دانش آموخته کارشناسی برق گرایش کنترل از دانشگاه هرمزگان و شاغل در پتروشیمی امیرکبیر به عنوان کارشناس کنترل سیستم و ابزاردقیق

نویسنده گروه فنی مهندسی اتوسیستم

آخرین‌ها از احمد پوراسکندری

موارد مرتبط