موضوع مقاله : آشنایی با OPC SERVER و FATEK OPC
چکیده مقاله :
گسترش و گستردگی سیستم های اتوماسیون در صنایع مختلف اعم از صنایع فرآیند محور مانند نفت، گاز، پتروشیمی و فولاد و صنایع batch مانند مونتاژ و تولید خودرو، مونتاژ و تولید قطعات پلاستیک و … استفاده از نرم افزارهای مانیتورینگ، کنترل و مدیریت سیستم اتوماسیون را در بر داشته است.
با توجه به فراوانی برندها و تامین کننده گان مختلف تجهیزات اتوماسیون در یک دستگاه یا واحد صنعتی، بکار گیری روشی یکسان و استاندارد برای برقراری ارتباط این تجهیزات با نرم افزار مانیتورینگ الزامی است. نرم افزارهای OPC Server وظیفه برقراری این ارتباط را بر عهده دارند تا طراح یا برنامه نویس فارغ از پروتکل ها ی نرم افزاری و سخت افزاری به توسعه و طراحی سیستم مانیتورینگ و کنترل خود بپردازد یا از نرم افزار های که بدین منظور تولید شده اند استفاده نماید. OPC Server
در این مقاله نگاهی کوتاه به مبانی OPC Server و همچنین نرم افزار های OPC Server محصول شرکتFATEK خواهیم داشت.
مقدمه:
OPC در بدو پیدایش مخفف OLE for Process Control در بستر Windows بود که از سال 1122 به بعد آنرا بصورت Open Prosses Control نامگذاری کردند. OPC مجموعه ای از توابع استاندارد است که در کتابخانه نرم افزار OPC Server که همان فایل DLL می باشد جمع آوری شده است. این توابع را می توان روی نرم افزاری دیگر که نقش Client را دارد برای تبادل داده با OPC Server صدا زد. برنامه Client که این توابع در آن صدا زده (Call) می شود می تواند هر محیط برنامه نویسی مانند VB ، VC++ و… که مایکروسافت آنرا پشتیبانی می کند، باشد.
کلمه OLE که در نامگذاری OPC از آن استفاده شد مخفف “Object Linking and Embedding” است و معرف فناوری از شرکت مایکروسافت می باشد. از این فناوری برای برقراری ارتباط و تبادل داده بین دو یا چند نرم افزار استفاده می شود بعنوان مثال می توان نرم افزار Excel را بعنوان یک شیء یا Object در محیط نرم افزار Word یا AutoCAD صدا زد و به تبادل اطلاعات پرداخت. OPC در واقع نوع صنعتی OLE می باشد که کنترلرهایی مانند PLC را همانند شیء یا Object می توان در هر محیط برنامه نویسی استانداردی بکار برد.
OPC بصورت ActiveX با فرمت OCX ،DLL و EXE برای ارتباط نرم افزاری در محیط های برنامه نویسی ویژوال مثل VB در دسترس است. بنابراین نرم افزار Client که در محیط ویژوال توسعه داده می شود وابسته به برند خاصی از تجهیزات اتوماسیون نمی باشد و تحت یک برنامه یکسان ارتباطات با انواع وسایل مختلف امکان پذیر است. در شکل زیر دو سیستم مورد مقایسه قرار گرفته اند، در سیستم قدیمی که فاقد OPC است در سمت Client برای ارتباط با تجهیزات اتوماسیون لازم است نرم افزارهای کاربردی مختلف نصب شود ولی در سیستم مبتنی بر OPC فقط یک نرم افزار کاربردی کافی می باشد. در این روش Client نیاز ندارد که تجهیزات اتوماسیون را بصورت مستقیم ببیند و ارتباط با آنها از طریق Object های پیش بینی شده در OPC فراهم می گردد.
بدین روش ارتباط تجهیزات روی فیلد مانند PLC ، DCS و تجهیزات هوشمند با سیستم های HMI ، SCADA و حتی سیستمهای بالا دستی همانند ERP (Enterprise Resource Planning ) یا (Manufacturing Resource Planning ) MRP فراهم می گردد. تاریخچه OPC به سال 2991 باز میگردد، در این سال برخی از کمپانی های بزرگ که در زمینه اتوماسیون صنعتی فعالیت می کردند کنسرسیومی تشکیل دادند تا نسبت به تهیه استانداردی برای سیستم های کنترل فرآیند مانند HMI و SCADA اقدام کنند. پیش نویس اولیه استاندارد مزبور که بر مبنای فناوری OLE مایکروسافت بود تهیه شد به همین علت آنرا OLE for Process Control نامیدند. این حرکت گام مهمی بعد از استاندارد IEC61131 برای استاندارد سازی کنترل فرآیند بوده است.
ارتباط OPC و برنامه CLIENT
جهت کار با OPC در سمت CLIENT برنامه ای نوشته می شود که بوسیله تکنولوژی COM یا DCOM با نرم افزار OPC SERVER ارتباط بر قرار می کند. برنامه CLIENT و OPC SERVER ممکن است روی یک سیستم باشند که پردازش آنها بصورت موازی انجام می شود. اگر نرم افزار OPC SERVER تکنولوژی DCOM مایکروسافت را پشتیبانی کند، برنامه CLIENT می تواند روی سیستمی دیگر و تحت شبکه به سیستمی که OPC SERVER را اجرا می نماید متصل گردد. به زبان ساده تر نرم افزار های OPC Server وظیفه برقراری ارتباط پایدار و ایمن را بر روی بستر سریال یا شبکه با کنترلرهای سمت فیلد از جمله PLC بر عهده دارند و اطلاعات درون PLC را در قالب شیء یا (OPC Interface) OBJECT در اختیار برنامه نویسان قرار میدهند تا برنامه نویس فارغ از پروتکل های ارتباطی بین تجهیزاتی مانند رایانه و انواع کنترلر مانند PLC به توسعه نرم افزار خود بپردازند. شکل زیر این ارتباط نرم افزاری را نمایش می دهد.
در ارتباط CLIENT با نرم افزار OPC SERVER با دو مفهوم GROUP و ITEM سرو کار داریم. ITEM مشابه بیت حافظه (M,X,Y,S) و رجیستر (DR,R,D,T,C) در PLC می باشد. تعریف ITEM های مورد نیاز درون OPC برای برقراری ارتباط بین نرم افزار CLIENT و PLC ضروری است برای نمونه اگر بدنبال نمایش دمای کوره بصورت نمودار روی کامپیوتر هستیم و این دما درون رجیستر R100 ، PLC قرار دارد باید ITEM R100 درون نرم افزار OPC تعریف شده باشد . CLIENT قابلیت خواندن و نوشتن ITEM های OPC را دارد، ITEM ها زیر مجموعه GROUP قرار می گیرند و می توان چندین GROUP که هر کدام حاوی چندین ITEM است را تعریف نمود. شکل زیر ارتباط رجیستر های PLC که همان ITEM ها هستند را با OPC نشان می دهد.
در برنامه OPC مبتنی بر COM غالبا از تکنیک DDE یا Activex برای انتفال اطلاعات از OPC Server به برنامه CLIENT استفاده می شود و می توان بصورت آنی اطلاعات OPC (رجیستر های PLC) را درون برنامه ای مثل EXCEL مشاهده یا تغییر داد. اما این روش بر خلاف کارکرد ساده یک ضعف بزرگ نیز دارد و آن اینکه اطلاعات OPC قابل نشر درون شبکه کامپیوتری نبوده و نرم افزار CLIENT و OPC باید روی یک سیستم نصب و اجرا می شدند. اما با پیدایش و توسعه تکنولوژی DCOM این مشکل برطرف گردید، بدین صورت که نرم افزارهای CLIENT میتوانند از طریق شبکه (اینترنت، اترنت و..) به سیستم یا کامپیوتری که نرم افزار OPC روی آن اجرا می شود متصل گردند و رجیستر های PLC را مشاهده و تغییر دهند. با توسعه اتوماسیون صنعتی و به تبع آن تنوع شرکت های تولید کننده تجهیزات اتوماسیون، بنیاد جهانی OPC روشی استاندارد برای برقراری ارتباط بین نرم افزار های CLIENT و OPC ارائه کرد تا نرم افزارهای کنترل و مانیتورینگ بعنوان CLIENT بتوانند به OPC متصل شوند. از جمله نرم افزارهای کنترل و مانیتورینگ می توان به IX Developer از شرکت Beijer Electronic ، Labview از شرکت National Instrument ، Wincc و PCS از شرکت Siemens اشاره کرد. بدین ترتیب نیاز طراحان سیستمهای اتوماسیون به برنامه نویسی برای ارتباط گرفتن با OPC برطرف گردید . بعد از فراگیر شدن OPC و استاندارد شدن ارتباط آن با نرم افزارهای کنترل و مانیتورینگ، کم کم نقش تکنولوژی OLE مایکروسافت برای طراحان سیستم اتوماسیون کمرنگ شد و شاید به همین دلیل باشد که نام OPC را از مخفف OLE for Process Control به Open Process Control تغییر دادند. شکل زیر ارتباط بین نرم افزار کنترل و مانیتورینگ، OPC و فیلد را نمایش می دهد.
OPC از لحاظ کاربری و کاربرد، به چند دسته
OPC XMLDA (XML Data Access) ·
OPC HDA (Historical Data access) ·
OPC Complex Data ·
OPC DX (Data exchange) ·
OPC DA (Data Access) ·
OPC AE (Alarms & Events) ·
تقسیم و از مهم ترین آن ها می توان به OPC DA و OPC AE اشاره کرد.
: (OPC-DA)Data Access
این OPC در مواردی که باید داده های فرآیندی نمایش داده شوند یا کنترل گردند به کار می رود. داده های فرآیند توسط سنسورها و ترنسمیترها تولید و در PLC پردازش می گردند OPC-DA . این داده ها را آدرس دهی می نماید. Client یا مشتری اصلی این نوع OPC معمولا سیستم های HMI هستند. نرم افزار FACON Server این نوع OPC را بر روی انواع FATEK PLC توسط پروتکل FATEK پشتیبانی می کند. شکل زیر نمایی از کارکرد این نرم افزار را نمایش می دهد.
این نرم افزار قابلیت ارتباط با تمامی PLC های FATEK را دارد و می توان روی بسترهای سریال (RS232-RS485) ، اترنت ، اینترنت (UDP،TCP) و مودم و توسط خط تلفن (Dial Up) با PLC ارتباط برقرار نمود و تمامی ریجستر های FATEK اعم از رجیستر های 16 و 32 بیتی مانند ورودی و خروجی آنالوگ، ورودی و خروجی های دیجیتال را همانند یک HMI آدرس دهی نمود. این نرم افزار بر پایه تکنولوژی COM بوده و از طریق ActiveX Control و DDE Server با برنامه های CLIENT ارتباط می گیرد. به زبان ساده تر برای برقراری ارتباط این نرم افزار با نرم افزارهای مانیتورینگ نیاز به کد نویسی می باشد. این نرم افزار رایگان بوده و از سایت WWW.FATEK.COM برای انواع سیستم عامل از جمله ویندوز 8 قابل دریافت می باشد.
OPC-AE(Alarm & Event ) :
تغییراتی که درفرآیند صورت می پذیرد رخداد یا Event نامیده می شوند که نیاز به ثبت دارند مانند شروع یا پایان پروسه تولید. آلارم هاشرایط غیر طبیعی فرآیند هستند که وقتی اتفاق می افتند باید مورد توجه قرار گیرند. OPC-AE می تواند آلارم ها و رخداد ها را جمع آوری کرده و به آنها پیغام نسبت بدهد. سیستم های ثبت آلارم و رخداد از مشتریان این نوع OPC هستند.هسته نرم افزاری این قبیل OPC از دوبخش RUN-TIME که همانند OPC-DA می باشد و یک بانک اطلاعاتی تشکیل شده است. اطلاعات فرآیند تحت کنترل یا پروسه، درون یک بانک اطلاعاتی ذخیره می گردد و توسط ابزار های گزارش گیری (REPORT) و یا پرس وجو (Query) می توان به نشر این اطالاعات یا پردازش آنها پرداخت. نرم افزار FATEK OPC SERVER قابلیت پشتیبانی از هر دو نوع OPC را دارد و می تواند تحت پروتکل FATEK به تمامPLC های این شرکت متصل گردد. این نرم افزار در دو نوع سریال و شبکه توسعه داده شده است و با استفاده از تکنولوژی DCOM مایکروسافت ، Client ها این قابلیت را دارند که از هر کجای شبکه به این OPC Server متصل شوند. شکل زیر این نوع ارتباط و ارتباط این نرم افزار با PLC را نمایش می دهد.
این نرم افزار علاوه بر پشتیبانی OPC-EA یعنی ثبت آلارم و رخداد قابلیت پردازش اطلاعات و ثبت اطلاعات درون بانک اطلاعاتی را دارا می باشد و می تواند به نرم افزار های مانیتورینگ و اسکادا همانند iX Developer ، LabViwe و WinCC یا هر نرم افزار مشابه لینک شود. توابع ریاضی که درون این نرم افزار تعبیه شده کار برنامه نویس را برای توسعه نرم افزار CLIENT بسیار ساده می کند. شکل زیر نمایی از کارکرد این نرم افزار را نشان می هد.
نرم افزار FATEK OPC SERVER دارای قفل نرم افزاری می باشد و هر قفل نرم افزاری این نرم افزار را برای یک سیستم فعال می کند هر دو نسخه سریال و شبکه این نرم افزار را می توان از سایت FATEK دانلود کرد.