OPC مخفف OLE for Process Control است.قبل از صحبت در مورد OPC چیست لازم است کمی با OLE آشنا شوید .از فناوری OLE برای برقراری ارتباط و تبادل اطلاعات میان چند نرم افزار استفاده میشود.
به عنوان مثال میتوان اطلاعات Excel را در Word صدا زد و استفاده کرد.
و اما OPC چیست ، در واقع نوع صنعتی OLE می باشد که میتوان از آن در کنترل کننده هایی مانند PLC در هر محیط برنامه نویسی استفاده کرد.
اوپی سی مجموعه ای از توابع استانداردی است که در کتابخانه های نرم افزار OPC server جمع آوری شده است.
اين استاندارد بر مبناي تكنولوژي OLE/DCOM شركت Microsoft تعريف شده است.
هدف از تعريف او پی سی ، افزايش كارآيي و استاندارد نمودن ارتباط ميان منابع داده ( دستگاههايي كه متغيرهاي پروسه را اندازه گيري و جمع آوري مي كنند ) و مصرف كنندگان داده ( مراكز نمايش و كنترل پروسه ) مي باشد .
اين استاندارد مستقل از محيط سخت افزاري منبع داده و درايورهاي آن عمل مي كند و امكان سازگار كردن سخت افزارها و نرم افزارها را در محيط هاي صنعتي و اتوماسيون امكان پذير مي نمايد .
با توجه به فراوانی برند ها و تامین کنندگان مختلف تجهیزات اتوماسیون در یک دستگاه یا واحد صنعتی، بکارگیری روشی یکسان و استاندارد برای برقراری ارتباط بین این تجهیزات با نرم افزار های مانیتورینگ الزامی است.
نرم افزار های OPC Server وظیفه بر قراری این ارتباط را بر عهده دارند.
تا طراح و یا برنامه نویس فارق از پروتکل های سخت افزاری و نرم افزاری به توسعه و طراحی سیستم مانیتورینگ و کنترلی بپردازد.
یا از نرم افزار هایی که بدین منظور تولید شده اند استفاده نماید.
تمام استانداردهای OPC براساس سازوکار مدل Client/Server است.
همان طور که از نام آن برمی آید، این مدل نمایانگر شیوه ارتباط بین دو برنامه است، که Client می بایست یک درخواست سرویس به برنامه server بدهد، و server است که پاسخ درخواست را آماده و ارسال می کند.
در واقع به صورت یک مبدل پروتکل عمل می کند.
به این ترتیب که ابتدا با تجهیزات Field از جمله PLC ها ، RTU ها و BCU ها ارتباط برقرار نموده و اطلاعات مربوط به سیگنالهای آنها را می خواند سپس پروتکل آن را به OPC تبدیل می نماید.
نرم افزار OPC Client به وسیله تکنولوژی COM یا DCOM با نرم افززار OPC SERVER ارتباط برقرار نموده و اطلاعات مورد نیاز خود را طبق برنامه ای که برای آن پیکر بندی شده دریافت میکند.
لازم به ذکر است که هر OPC SERVER دارای یک Class identification (CLSID) و یک Program Identification (Prog ID) می باشد.
موسسه OPCFoundation چندید نوع OPC که هریک برای مقاصد مختلف به کار می روند را در بازه های زمانی مختلف ارائه نموده است. این انواع به صورت زیر است :
متدوالترین نوع OPC چیست ، متدوالترین نوع OPC DA ،OPCمی باشد و وظیفه آن برقراری یک ارتباط بین تجهیزات fieldمانند PLCها و HMI ها می باشد.
این نوع ساده ترین نوع او پی سی می باشد. دراین نوع سه مشخصه یک سیگنال بین سرور و کلاینت جابجا می شود.
OPS DA دارای سه نسخه 1 ، 2 و 3 میبباشد. در هر نسخه بهبود هایی در ورژن جدید صورت گرفته است.
و لزومی ندارد که در دو قسمت سرور و کلاینت دارای یک ورژن باشند برای مثال یک او پی سی سرور با نسخه DA3 توسط یک او پی سی کلاینت با نسخه DA 1 قابل دسترسی میباشد.
این نوع او پی سی برای انتقال اطلاعات بین دو اوپی سی سرور استفاده میشود.
این نوع OPC کاملا مشابه OPC DA می باشد اما در این حالت افزون بر اینکه اطلاعات به صورت Real time بین سرور و کلاینت رد و بدل می شود، در دیتابیسی که خود OPCدارد ذخیره می گردد.
این نوع اوپی سی دارای دو بخش Real time و database می باشد.
در این حالت کلیه آلارم ها و رویدادهای فرآیند تحت کنترل را می توان توسط این او پی سی خوانده و در اختیار hmi و یا هر نرم افزار دیگری که وظیفه آنالیز را بر عهده دارد، قرار داد.
همچنین این اطلاعات به فرمت مناسب توسط خود او پی سی آرشیو می شود و در صورت نیاز بازخوانی و یا انتقال داده می شود.
این نوع به منظور انتقال اطلاعات بین سرور و کلاینت از DCOM وCOM مایکروسافت استفاده نمیکند، به همین خاطر وابسته به پلتفرم ویندوز نمی باشد.
همچنین در این حالت اطلاعات به صورت فایلهای xml رد و بدل می شوند.
این نوع OPC چیست کلیه ویزگیهای او پی سی های قبلی را دارد.
به علاوه کاملا backward compatible می باشد. در این حالت ارتباط سرور و کلاینت به صورت service oriented می باشد که دیگر نیازی به استفاده از DCOM نیست درنتیجه امنیت سیستم بسیار بالاتر می رود.
همچنین به صورت اماده نیز می توان آن را در RTU ها و یا PLC ها نیز استفاده نمود به دلیل اینکه مستقل از سیستم عامل است.
COM مخفف Componet object model و تکنولوژی مایکروسافت برای پیاده سازی توزیع شده برنامه های کاربردی یا قطعات تشکیل دهنده آنهاست.
DCOM مخفف Componet object model distributed و راهکار مایکروسافت برای پیاده سازی توزیع شده برنامه های کاربردی با بستر شبکه ای است.
COM تکنولوژی هست برای فراهم کردن رابط برنامه نویسی شی گرا و مستقل از زبان در سیستم عامل ویندوزتا از این طریق بخش های مختلف برنامه ها بتوانند با هم ارتباط برقرار کنند،حتی اگر زبان های برنامه نویسی استفاده شده برای هر یک از آنها متفاوت باشد.
فرق COM و DLL های معمولی ویندوز در این هست که هر چند DLL ها مستقل از زبان برنامه نویسی هستند،ولی قادر به رد و بدل کردن اشیاء نیستند.
در واقع DLL ها نمیتوانند رابط برنامه نویسی شی گرا ارائه کنند و فقط قادر به اشتراک گذاشتن توابع هستند.
تکنولوژی های مهمی بر پایه COM شکل گرفتند،مثلا OLE و ACTIVEX که در زبان های برنامه نویسی مختلف استفاده می شوند.
از معایب DCOM این هست که یک استاندارد اختصاصی محسوب می شود و نه یک استاندارد با، و فقط هم در پلت فرم های ویندوز پشتیبانی میشود،در نتیجه اگر بخشی ازنرم افزار بر روی سیستمی غیر ویندوزی مستقر باشد و یا قرار باشد یک سیستم غیر ویندوزی با اتصال به یک سیستم ویندوزی به تبادل اطلاعات با نرم افزار ما بپردازد نمیشود از DCOM برای این امر استفاده کرد.
یکی دیگر از مشکلات این تکنولوژی پیچیدگی زیاد آن میباشد.هم در یادگیری،هم در پیچیدگی در نصب و راه اندازی آن بر روی سیستم ها مقصد.
Redundancy در سیستم های OPC چیست
مواقعی که او پی سی رابط بین تجهیزات Field و نرم افزار HMI می باشد استفاده از Redundancy در سطح او پی سی کاملا ضروری است.
در این حالت OPC server ها بر روی دو کامپیوتر Run می شوند و در صورتی که یکی از آنها دچار مشکل گردید OPC Server دیگر وارد مدار میشود.
با استفاده از تکنولوژی OPC Tunneling اطلاعات بین سرور و کلاینت تحت پروتکل خاصی منتقل میشود. مزایای Tunneling عبارتند از:
در حال حاضر با توجه به مزایای متعدد پروتکل او پی سی و پشتیبانی کمپانی های بزرگی مانند Siemens ، ABB ، YOKOGAWA ، Schneider electric ، General electric و… شرکت های بسیاری را بر آن داشته است که نرم افزار های مختص OPC طراحی کنند.
برخی از این کمپانی های بزرگ همراه با نرم افزار های HMI یا SCCADA خود OPC اختصاصی شرکت خود را تولید میکنند.