electrical engineering

Mohammad Shahri Farimani

electrical engineering

Mohammad Shahri Farimani

محیط برنامه نویسی گراف ( S7 - Graph ) در Simatic Manager به همراه فیلم آموزشی

محیط S7 - Graph  و زبان برنامه نویسی گراف با ایجاد فانکشن بلاک FB :

تفاوت ایجاد محیط برنامه نویسی گراف با ایجاد Function Block  با روش Sources File  در این است که در روش ایجاد با فانکشن بلاک ( FB ) ، چون Save & Compile می شود اگر Error  داشته باشد ، ذخیره نمی شود، اما در روش Sources  می توانید با وجود داشتن Error ، برنامه را ذخیره کنید و بعد از روی فرصت خطاهای ایجاد شده را برطرف نمایید.

ایجاد محیط S7 - Graph با روش ایجاد فانکشن بلاک ( FB ) :


آشنایی با محیط نرم افزار S7 - Graph :

پس از اجرای برنامه S7 - Graph ، پنجره برنامه به شکلی شبیه زیر ظاهر می شود ، برای توصیف بهتر بخش های این برنامه ، شماره گذاری شده اند ، برنامه در بخش شماره 2 ، ترسیم می شود :


بخش 1 : این بخش که در بالا و نیز سمت چپ ظاهر می شود ، همان نوار ابزار ( Toolbars ) برنامه است ، بخش بالا به دوقسمت Standard و View  تقسیم می شود که در فیلم آموزشی توضیح داده شده است.

بخش 1 در سمت چپ نیز به دو قسمت Sequencer و LAD/FBD تقسیم می شود که این قسمت هم در فیلم آموزشی توضیح داده شده است .

بخش 2 : برنامه کنترل ترتیبی در این بخش ترسیم و نوشته می شود ، وقتی برای اولین مرتبه ، برنامه Graph را باز می کنیم ، معمولاً شامل یک مستطیل به نام Step 1 که با S1  نشان داده می شود و یک خط افقی در زیر آن به نام  Transition 1 که با T1 نشان داده می شود ، می باشد .

بخش 3 : این بخش  Menu Bar برنامه است.

بخش 4 : این بخش Title Bar برنامه است ، نام پروژه ، شماره FB و DB و اطلاعاتی از این قبیل در این بخش نشان داده می شود .

بخش 5 : به این پنجره Overview گفته می شود ، و در آن می توان وضعیت کل Stepها که تشکیل یک Sequencer یا توالی را می دهند ، مشاهده کرد .

بخش 6 : به این پنجره Detail گفته می شود که در پایین برنامه ظاهر می شود و در آن می توان وضعیت متغیرها یا آدرس های استفاده شده را دید و در هنگام ذخیره سازی برنامه ، لیست Errorها و Warningها را در این بخش قابل مشاهده است .

بخش 7 : به این قسمت Status Bar گفته می شود ، وضعیت CPU در حالت Online در این قسمت قابل مشاهده است .


Step  و  Transition : در محیط اصلی S7 - Graph  ، شکل یک Step  و یک Transition نمایش داده می شود .

 مفهوم Step که به صورت یک باکس مستطیل شکل نمایش داده می شود ، مرحله ای است که PLC به آن وارد می شود و در آنجا دستور یا دستورات خاصی را اجرا می کند  ، CPU آنقدر در این مرحله می ماند تا شرایط گذر یا Transition که در زیر Step با یک خط افقی نمایش داده شده ، برآورده شود .

به عنوان مثال در شکل زیر درصورتی CPU از مرحله عبور کرده و  وارد مرحله می شود که سوئیچ I0.0  بسته شود :


دستورات دائمی ( Permanent Instruction ) : دستوراتی هستند که در هر سیکل اسکن ، صرفنظر از اینکه برنامه در کدام Step قرار دارد ، یکبار اجرا می شوند ، دستورات بخش Permanent بالای بلاک ، در ابتدای سیکل اسکن و دستورات Permanent پایین بلاک ، در انتهای سیکل اسکن اجرا می گردند ، دستورات می تواند از نوع condition  یا از نوع Call باشد ، که ازمنوی  Insert ، قسمت Permanent Instruction ، دستورات را می توان انتخاب کرد .

دستورات Permanent قبل از Sequencer :



دستورات Permanent بعد از Sequencer :


بخش Interlock : در این قسمت شرایط Interlock مربوط به Step  نوشته می شود، از شرایط Interlock می توان برای دستورات برنامه نویسی Step استفاده کرد و متناسب با آن دستوراتی را اجرا کرد ، پس از این حیث با شرایط Transition متفاوت است چون Transition فقط شرایط گذر از Step را در برمی گیرد .


بخش Supervision : در این قسمت می توان یک Step را تحت نظارت قرار داد تا به عنوان مثال اگر زمان اجرای آن از حدی بیشتر شد یا کلید خاصی فعال شد ، آلارمی ظاهر شود .



بخش Comment : در این بخش ، توضیحات مربوط به همان Step را می توان نوشت و با بخش Block Comment  که مربوط به توضیحات توالی ( Sequencer ) است ، متفاوت می باشد .

توجــه : می خواهیم برنامه کنترل روشنایی راه پله را که قبلاً به زبان FBD نوشته بودیم را به زبان گراف ، طراحی نماییم ، به‌طوریکه سه عدد لامپ برای روشنایی که از نقطه مختلف کنترل شود ، برای کنترل از سه محل می توان از سه عدد شستی استارت یا سه عدد سنسور بدون تماس ( BERO ) خازنی ، استفاده کرد ، بعد از آنکه یکی از شستی‌های استارت فشرده شود یا یکی از سنسورها ، حضور فردی را حس کند و اکتیو شود ، لامپ‌ها روشن شوند و به مدت 15 ثانیه روشن بمانند، درصورتیکه یکی از شستی استارت  ، از یکی از محل‌های کنترل ،  مجدد فشرده شود و یا یکی از سنسورها ، دوباره  فعال گردد ، دراینصورت مجدد زمان 15 ثانیه شروع شود و لامپ ها روشن شوند .


فیلم آموزشی ایجاد فانکشن بلاک ( FB1 ) و برنامه نویسی به زبان گراف در S7 - Graph  ،  فراخوانی فانکشن بلاک FB1  در بلاک OB1  ، دانلود برنامه و تست برنامه در شبیه ساز(Simulation ) :

پروژه کنترل دمای آب استخر ( اتوماسیون صنعتی ) توسط PLC Siemens STEP7-300 همراه با کلیپ تصویری

کلیپ تصویری آموزشی طراحی پروژه کنترل دمای آب استخر توسط PLC   ,   STEP7-300 و نرم افزار Simatic Manager :

توجــه : می خواهیم برنامه یک پروژه واقعی را طراحی  کرده و در محیط نرم افزار Simatic Manager آن را ،  اجرا کنیم .

پروژه کنترل دمای آب یک استخر می باشد ، که قسمت های مختلف  پروسه را در شکل زیر مشاهده می کنید :


توجــه : همانطور که در شکل فوق ، مشاهده می کنید ، سنسور S1  تعیین سطح آب استخر را اعلام می کند و بعد از آنکه این سنسور ، فعال شد و اعلام کرد که آب در استخر وجود دارد ، سیستم روشن می شود و Pump1 ، آب را از استخر می کشد و از مبدل حرارتی ( Heat_Exchange ) و صافی ( Filter ) عبور داده و مجدد ، آب را به استخر بر می گرداند .

بویلر به طور مستقل کار می کند و دمای آب بویلر روی 90oC تنظیم می باشد.

 سنسور RTD دمای آب استخر را که به طور پیش فرض روی 28 درجه سانتی گراد ( Set_Point=28oC ) تنظیم شده  است ، اندازه گیری می کند ، درصورتیکه دما از 28oC کمتر شود ، آنگاه Pump2 روشن شده و آب خروجی بویلر را وارد سیستم می کند و از مبدل حرارتی  ( Heat_Exchange ) , عبور میدهد تا دمای آب مجدد از 28oC بیشتر شود ، در این حالت ، اگر سنسور ، RTD  ، دمای آب استخر را  بیشتر از 28 درجه سانتیگراد را اندازه‌گیری کند ، آنگاه  Pump2  خاموش می شود و این روند به همین صورت ادامه پیدا می کند .

توجــه مهم : آب خروجی از بویلر که دمای آن زیاد است با آب استخر برخورد نمی کند و فقط در مبدل حرارتی به دلیل آنکه لوله های زیادی وجود دارد و آب گرم بویلر، توسط پمپ شماره2 ،  با عبور از لوله های مبدل حرارتی ، گرمای خود را به لوله های آب سردی که از استخر می آید ، می دهد ، درنتیجه تبادل حرارتی صورت می گیرد .

نکتــه : در این پروسه ، پاسخ سیستم کند است ، یعنی اگر دمای آب استخر 26oC باشد ، یعنی فقط 2oC کمتر از مقدار تعیین شده ( Set_Point = 28oC باشد ، باید مقدار زیادی از آب استخر از تبادلگر حرارتی عبور کند تا دمای آب استخر ، افزایش یابد ، لذا پاسخ سیستم کند است و نیازی به سیستم های دیگر کنترل مانند PID _ Controller نداریم .


توجه : در  زیر ، تعریف متغیرها ، ورودی ها و خروجی ها را داریم و آنها را تحلیل می کنیم :


*** پیکربندی سخت افزار در Simatic Manager : 


*** آدرس  کارت DI / DO :


*** مشخصات و آدرس کارت AI :



*** جدول Symbol  Table و تعیین آدرس های سمبلیک برای متغیرها ، ورودی ها و خروجی های برنامه : 


***ایجاد  دیتا بلاک Data Block ( DB1 ) برای  تعریف Set_Point :



*** برای اینکه PLC هردفعه به DB1 مراجعه نکند ، اطلاعات آن را به OB100 که جزو OBهای راه‌اندازی است ، منتقل می کنیم ، تا در ابتدای اجرای پروژه PLC  اطلاعات آن را بخواند و اجرا کند:




توجــه مهم : علاوه بر فانکشن های سیستمی ( SFC  ) ، خانواده ای از فانکشن ها با عنوان IEC   Function  Blocks وجود دارند که بسیاری از عملیات های پیچیده را ساپورت می کنند ، این فانکشن ها به چهاردسته تقسیم می شوند :

1- Convert که تبدیلی را روی نوع دیتا انجام می دهند .

2- DT که برای عملیات مقایسه تاریخ و زمان بکار می رود .

3- String که برای عملیات روی String کاربرد دارد .

4- Floating  Point  Math برای عملیات روی متغیرهای اعشاری و 32 بیتی ، بکار می رود .

در برنامه پروژه کنترل دمای آب استخر در Network1 در بلاک OB1  از این دسته از فانکشن ها که از نوع Convert می باشد ، برای مقیاس اندازه گیری سنسور RTD ، استفاده می گردد ، به طوریکه در قسمت Program Element ، قسمت منوی درختی Libraries  و سپس قسمت Standard  Library و بعد قسمت TI-S7  Converting  Blocks را انتخاب کرده و درنهایت فانکشن FC105 را انتخاب می کنیم ، مانند شکل های زیر :




*** OB1  را ایجاد می کنیم و برنامه اصلی پروژه را در آن طراحی می کنیم :



*** حالت های مختلف Simulation را در شکل های زیر مشاهده می کنید ( آدرس ورودی ها و خروجی ها را از جدول Symbol Table پیدا کنید )  : 

در شکل زیر ، سنسور S1 فعال و شستی استارت فشرده شده در نتیجه Pump1  ,  Boiler  و Pump2 روشن شده اند :


درشکل زیر ، دما توسط RTD_Scale  مقدار 29oC اندازه گیری شده درنتیجه Pump2 خاموش شده است :


در شکل زیر ، دما توسط RTD_Scale  مقدار 27oC اندازه گیری شده درنتیجه Pump2 روشن شده است :


در شکل زیر ، شستی استپ فشرده شده و Pump1  ,   Boiler  و Pump1 خاموش شده‌اند :


*** برنامه را Monitoring می کنیم ، تا حالت های ورودی و خروجی را بهتر مشاهده کنیم :




طراحی پروژه کنترل دمای آب استخر - PLC , S7-300 , Simatic Manager به همراه فیلم آموزشی

توجــه : می خواهیم برنامه یک پروژه واقعی را طراحی  کرده و در محیط نرم افزار Simatic Manager آن را ،  اجرا کنیم .

پروژه کنترل دمای آب یک استخر می باشد ، که قسمت های مختلف  پروسه را در شکل زیر مشاهده می کنید :


توجــه : همانطور که در شکل فوق ، مشاهده می کنید ، سنسور S1  تعیین سطح آب استخر را اعلام می کند و بعد از آنکه این سنسور ، فعال شد و اعلام کرد که آب در استخر وجود دارد ، سیستم روشن می شود و Pump1 ، آب را از استخر می کشد و از مبدل حرارتی ( Heat_Exchange ) و صافی ( Filter ) عبور داده و مجدد ، آب را به استخر بر می گرداند .

بویلر به طور مستقل کار می کند و دمای آب بویلر روی 90oC تنظیم می باشد.

 سنسور RTD دمای آب استخر را که به طور پیش فرض روی 28 درجه سانتی گراد ( Set_Point=28oC ) تنظیم شده  است ، اندازه گیری می کند ، درصورتیکه دما از 28oC کمتر شود ، آنگاه Pump2 روشن شده و آب خروجی بویلر را وارد سیستم می کند و از مبدل حرارتی  ( Heat_Exchange ) , عبور میدهد تا دمای آب مجدد از 28oC بیشتر شود ، در این حالت ، اگر سنسور ، RTD  ، دمای آب استخر را  بیشتر از 28 درجه سانتیگراد را اندازه‌گیری کند ، آنگاه  Pump2  خاموش می شود و این روند به همین صورت ادامه پیدا می کند .

توجــه مهم : آب خروجی از بویلر که دمای آن زیاد است با آب استخر برخورد نمی کند و فقط در مبدل حرارتی به دلیل آنکه لوله های زیادی وجود دارد و آب گرم بویلر، توسط پمپ شماره2 ،  با عبور از لوله های مبدل حرارتی ، گرمای خود را به لوله های آب سردی که از استخر می آید ، می دهد ، درنتیجه تبادل حرارتی صورت می گیرد .

نکتــه : در این پروسه ، پاسخ سیستم کند است ، یعنی اگر دمای آب استخر 26oC باشد ، یعنی فقط 2oC کمتر از مقدار تعیین شده ( Set_Point = 28oC ) باشد ، باید مقدار زیادی از آب استخر از تبادلگر حرارتی عبور کند تا دمای آب استخر ، افزایش یابد ، لذا پاسخ سیستم کند است و نیازی به سیستم های دیگر کنترل مانند PID _ Controller نداریم .


توجه : در  زیر ، تعریف متغیرها ، ورودی ها و خروجی ها را داریم و آنها را تحلیل می کنیم :


*** پیکربندی سخت افزار در Simatic Manager


*** آدرس  کارت DI / DO :


*** مشخصات و آدرس کارت AI :



*** جدول Symbol  Table و تعیین آدرس های سمبلیک برای متغیرها ، ورودی ها و خروجی های برنامه : 


***ایجاد  دیتا بلاک Data Block ( DB1 ) برای  تعریف Set_Point :



*** برای اینکه PLC هردفعه به DB1 مراجعه نکند ، اطلاعات آن را به OB100 که جزو OBهای راه‌اندازی است ، منتقل می کنیم ، تا در ابتدای اجرای پروژه PLC  اطلاعات آن را بخواند و اجرا کند:




توجــه مهم : علاوه بر فانکشن های سیستمی ( SFC  ) ، خانواده ای از فانکشن ها با عنوان IEC   Function  Blocks وجود دارند که بسیاری از عملیات های پیچیده را ساپورت می کنند ، این فانکشن ها به چهاردسته تقسیم می شوند :

1- Convert که تبدیلی را روی نوع دیتا انجام می دهند .

2- DT که برای عملیات مقایسه تاریخ و زمان بکار می رود .

3- String که برای عملیات روی String کاربرد دارد .

4- Floating  Point  Math برای عملیات روی متغیرهای اعشاری و 32 بیتی ، بکار می رود .

در برنامه پروژه کنترل دمای آب استخر در Network1 در بلاک OB1  از این دسته از فانکشن ها که از نوع Convert می باشد ، برای مقیاس اندازه گیری سنسور RTD ، استفاده می گردد ، به طوریکه در قسمت Program Element ، قسمت منوی درختی Libraries  و سپس قسمت Standard  Library و بعد قسمت TI-S7  Converting  Blocks را انتخاب کرده و درنهایت فانکشن FC105 را انتخاب می کنیم ، مانند شکل های زیر :




*** OB1  را ایجاد می کنیم و برنامه اصلی پروژه را در آن طراحی می کنیم :



*** حالت های مختلف Simulation را در شکل های زیر مشاهده می کنید ( آدرس ورودی ها و خروجی ها را از جدول Symbol Table پیدا کنید )  : 

در شکل زیر ، سنسور S1 فعال و شستی استارت فشرده شده در نتیجه Pump1  ,  Boiler  و Pump2 روشن شده اند :


درشکل زیر ، دما توسط RTD_Scale  مقدار 29oC اندازه گیری شده درنتیجه Pump2 خاموش شده است :


در شکل زیر ، دما توسط RTD_Scale  مقدار 27oC اندازه گیری شده درنتیجه Pump2 روشن شده است :


در شکل زیر ، شستی استپ فشرده شده و Pump1  ,   Boiler  و Pump1 خاموش شده‌اند :


*** برنامه را Monitoring می کنیم ، تا حالت های ورودی و خروجی را بهتر مشاهده کنیم :


فیلم آموزشی طراحی پروژه کنترل دمای آب استخر توسط PLC   ,   STEP7-300 و نرم افزار Simatic Manager :



فیلم آموزشی ایجاد فانکشن بلاک در محیط نرم افزار Simatic Manager , PLC , Step7-300

فیلم آموزشی طراحی راه‌اندازی دو الکتروموتور سه فازه ، یکی پس از دیگری به طور اتوماتیک ، به صورت فانکشن بلاک و فراخوانی بلاک FB1  در بلاک OB1 در محیط نرم افزار Simatic Manager   ,     PLC    ,    Step7 - 300 :

پنوماتیک Pneumatics - فیلم آموزشی استفاده از سیستم پنوماتیک و برنامه نویسی در محیط Simatic Manager

پنوماتیک Pneumatics 

انتقال انرژی در صنعت یک بخش مهم در فرآیند های تولیدی است  و این انتقال می تواند با روش های متفاوتی انجام شود.

روش‌های انتقال انرژی در صنعت عبارتند از : 

1-  انتقال مکانیکی   2- انتقال الکتریکی   3- انتقال توسط سیال جاری تحت فشار


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

در انتقال انرژی به روش الکتریکی از انرژی الکتریکی جریان یافته در سیم ها و کابل ها استفاده می شود که مهم ترین مزیت این روش انتقال سریع در مسافت های طولانی است.


علم پنوماتیک :

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

اکثر سیستم‌های پنوماتیکی به‌کاررفته در صنعت معمولاً با هوای فشرده یا گازهای بی‌اثر فشرده راه‌اندازی می‌شوند؛ مانند کمپرسورهای سیلندری که با موتور الکتریکی راه‌اندازی می‌شوند، موتورهای هوایی، و دیگر تجهیزات. 

هنگامی که نیاز به سیستم‌های ارزان‌قیمت، انعطاف بیشتر یا جایگزین ایمن‌تر برای موتورهای الکتریکی و عملگرها باشد، یک سیستم پنوماتیکی که از طریق شیرهای سلنوئیدی ( شیرهای برقی ) اتومات  یا دستی کنترل می‌شود ،  انتخاب می‌شود.

توجــــه : علم پنوماتیک ، کاربرد زیادی در صنایع دارد ، پنوماتیک یعنی استفاده از هوای فشرده .

این علم از جایگاه ویژه ای برخوردار است و دراکثر صنایع مانند نفت وگاز وپتروشیمی – صناایع هوایی – صنایع فولاد کاغذسازی صنایع چوب و کارخانه قند و ... ،  کاربرد داشته ودارد ، بسیاری از فرآیند های صنایع طراحی اولیه شان بر اساس پنوماتیک بوده و سیستم های کنترلی آنها پنوماتیکی بود .

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

               

مزایای استفاده از سیستم های پنوماتیک :

  • سادگی استفاده از سیستم های پنوماتیک بزرگترین دلیلی است که محبوبیت این سیستم ها را افزایش داده است چراکه با داشتن تجربه ی کمی میتوان طراحی و مونتاژ این سیستم ها را انجام داد.
  • تمیز بودن این سیستم از مزایای آن نسبت به هیدولیک است.
  • ارزان و در دست رس بودن هوا
  • سیستم های پنوماتیک جرقه ایجاد نمی کنند و به این ترتیب کاربرد آن در محیط های انفجاری خطرناک نیست.
  • بازده بالا
  • افزایش نیرو
  • در سیستم های پنوماتیک برخلاف سیستم های هیدرولیک نیازی به خط برگشت سیال نیست، در واقع مخزن اصلی همان هوای آزاد است.
  • نکته ی مهم برای استفاده ی بهینه از سیستم های پنوماتیک انتخاب درست شلنگ ها، سیلندر ها، شیر ها و لوله ها می باشد.

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

    


عناصر پنوماتیکی:

عناصر پنوماتیکی به سه گروه تقسیم می شوند:

۱- عناصر تولیدکننده و کنترل کننده هوا مانند کمپرسورها و و احد مراقبت

۲- عناصر کارساز مانند سیلندرها، موتورها و ابزارها

« عناصرکارساز به عناصری گفته می شود که می تواند باری را تغییر مکان دهد و موجب دوران قسمتی از دستگاه شوند و یا بوسیله آن می توان قطعه ای را سفت و یا پرچکاری نمود که مهمترین آن سیلندر می باشد».

۳- عناصر زمان دهنده مانند شیرها

              


فیلم آموزشی استفاده از سیستم پنوماتیک و برنامه نویسی در محیط Simatic Manager :