كنترل كننده هاي برنامه پذيرProgrammable Logic Controller) PLC)
5 1238332868
PLCاز عبارت Programmable Logic Controller به معناي كنترل كننده قابل برنامه ريزي گرفته شده است.PLC كنترل كننده اي است نرم افزاري كه در قسمت ورودي، اطلاعات را بصورت باينري دريافت و آنها را طبق برنامه اي كه در حافظه اش ذخيره شده پردازش مي نمايد و نتيجه عمليات را نيز از قسمت خروجي به صورت فرمانهايي به گيرنده ها و اجرا كننده هاي فرمان ، ارسال مي كند.
وظيفه PLCقبلا بر عهده مدارهاي فرمان رله اي بود كه استفاده ازآنها در محيط هاي صنعتي جديد منسوخ گرديده است.اولين اشكالي كه در اين مدارها ظاهر مي شودآن است كه با افزايش تعداد رله ها حجم و وزن مدار فرمان بسيار بزرگ شده، همچنين موجب افزايش قيمت آن مي گردد . براي رفع اين اشكال مدارهاي فرمان الكترونيكي ساخته شد ، ولي با وجود اين هنگامي كه تغييري در روند يا عملكرد ماشين صورت مي گيرد لازم است تغييرات بسياري در سخت افزار سيستم كنترل داده شود .
با استفاده از PLC تغيير در روند يا عملكرد ماشين به آساني صورت مي پذيرد، زيرا ديگر لازم نيست سيم كشي ها و سخت افزار سيستم كنترل تغيير كند و تنها كافي است چند سطر برنامه نوشت و به PLCارسال كرد تا كنترل مورد نظر تحقق يابد.
PLC ها سخت افزاري شبيه كامپيوتر دارند، البته با ويژگيهاي خاصي كه مناسب كنترل صنعتي است:
• در مقابل نويز حفاظت شده اند
• ساختار مدولار دارند كه تعويض بخشهاي مختلف آنرا ساده مي سازد
• اتصالات ورودي- خروجي وسطوح سيگنال استاندارد دارند
• زبان برنامه نويسي آنها ساده و سطح بالاست
• تغيير برنامه در هنگام كارآسان است.
2-3 مقايسه سيستمهاي كنترلي مختلف
به طور كلي چهار سيستم كنترلي وجود دارد:
1.سيستمهاي رله اي از قديمي ترين سيستم كنترلي هستند. در اين سيستمها كليه عمليات كنترلي با استفاده از رله ها انجام مي پذيرد.
2.سيستمهاي كنترلي مبني بر مدارهاي منطقي. در اين سيستم ها از دروازه هاي منطقي و تراشه هاي كوچك براي پياده سازي عمليات منطقي استفاده مي شود.
3.كنترل با كامپيو تر شخصي
4.كنترل مبني بر PLC.
در جدول زير انواع سيستمهاي كنترل كننده از جنبه هاي مختلف مقايه شده اند
18
برخي از معايب يا توجهات خاص در بكارگيري سيستمهاي PLC
1.كاربردهايي با برنامه ثابت: شايد استفاده از PLC كه قابليت هاي برنامه ريزي زيادي دارد،در صورت نياز نداشتن به آنهامقرون بصرفه نباشد مانند كنترل كننده هاي غلتكي/دنبالگر.برخي از سازندگان تجهيزات براي كاهش هزينه ها، هنوز از سيستمهاي غلتكي مكانيكي استفاده مي كنند.تغيير كارها غلتك ها بندرت تغيير مي كند بنابراين قابليت تغيير برنامه ريزي PLCها در اينجا جندان اهميت ندارد
2.ملاحظات محل كار: برخي پارامترهاي محيط مانند: دماي بالا،ارتعاشات، تداخلات الكترو مغناطيسي ، عواملي هستند كه كاربرد PLCها را محدود مي كنند.
3.عملكرد ايمن در برابر اشتباه : در سيستمهاي رله اي فشردن كليد توقف، برق مدار را قطع مي كند و همينطور قطع منبع برق، باعث خاموش شدن سيستم مي شود. بعلاوه سيستهاي رله اي هنگام وصل مجدد برق بطور خودكار روشن نمي شوند. البته اين موضوع از طريق برنامه نويسي در مورد PLC نيز قابل اعمال است. اما در بعضي از برنامه هاي PLCممكن است براي متوقف ساختن يك وسيله نياز به اعمال ولتاژ ورودي باشد ، اين گونه سيستمهادر مقابل اشتباه ايمن نيستندالبته اين نقص با افزودن رله هاي حفاظتي به سيستم PLC رفع مي شود.
4.عملكرد مدار ثابت: اگر سيستم مورد نظر هرگز نياز به تغيير نداشته باشد ، يك سيستم كنترل ثابت (مانند غلتك مكانيكي) هزينه كمتري نسبت به PLCخواهد داشت. PLC ها در جاييكه بطور دوره ايي در عمليات تغيير ايجاد مي شود، از كارايي بيشتري بر خوردارند.
برخي ازشركت هاي سازنده PLC:
Siemens, AEG, Smar, ABB, Allen Bradly, Bosch, General Electric, Mitsubishi…
3-3 سخت افزار PLC
قسمتهاي تشكيل دهنده يك سيستم PLCبه صورت زير تقسيم مي شود(شكل1-3)
• واحد منبع تغذيه PS(Power Supply)
• واحد پردازش مركزي CPU
• حافظه
• ماژولهاي ورودي
• ماژولهاي خروجي
• ماژولهاي تغيير شكل سيگنال
• ماژول ارتباط پروسسوري (Communication Processor(CP))
• ماژول رابط (Interface Module(IM))
• بدنه و قفسه ها (Racks and Chassis)

16


17
شكل 1-3:قسمتهاي يك PLC
ماژول منبع تغذيه(PS):منبع تغذيه ولتاژهاي مورد نياز PLC را تامين مي كند. اين منبع معمولا از ولتاژهاي 24Vdc و 110Vacيا 220Vac،ولتاژ 5Vdc را ايجاد مي كند. ماكزيمم جريان قابل دسترسي منطبق با تعداد ماژولها ي خروجي مصرفي است. جهت دستيابي به راندمان بالا معمولا از منابع تغذيه سوئيچينگ استفاده مي شود. براي تغذيه رله ها و محركها (Actuator) معمولا از ولتاژ 24Vdc بصورت مستقيم و بدون هيچ كارت ارتباطي استفاده مي شود.
واحد پردازش مركزي يا CPU:وظيفه اين واحد، دريافت اطلاعات از وروديها، پردازش اين اطلاعات مطابق دستورات برنامه و صدور فرمانهايي است كه به صورت فعال يا غير فعال كردن خروجي ها ظاهر مي شود.
حافظه:در حالت كلي در PLC ها دو نوع حافظه وجود دارد:
• حافظه موقت يا RAM: كه محل نگهداري فلگ ها، تايمر ها، شمارنده ها و برنامه هاي كاربردي كاربر است.
• حافظه دائم (EEPROM , EPROM): كه جهت نگهداري و ذخيره هميشگي برنامه كاربر استفاده مي شود.
در مواردي از RAM هاي CMOSكه باتري پشتيبان دارند استفاده مي شود،بدين ترتيب در صورت قطع برق اطلاعات انها حفظ مي گردد.
ماژولهاي ورودي:ورودي هايي كه در سيستم هاي PLC مورد استفاده قرار مي گيرند در حالت كلي به صورت زير مي باشند:
الف) وروديهاي ديجيتال(Digital Input)
ب) ورودي هاي آنالوگ(Analog Input)
الف) وروديهاي ديجيتال:اين وروديها معمولا بصورت سيگنالهاي 0يا 24ولتdc مي باشند . گاهي براي پردازش به تغيير سطح ولتاژ نياز دارند. معمولا براي انجام اين عمل ماژولهايي خاص در PLC در نظر گرفته مي شود.
جهت حفاظت مدارهاي داخلي PLC از خطرات ناشي از اشكالات بوجود آمده در مدار يا براي جلوگيري از ورود نويزهاي موجود در محيط هاي صنعتي،ارتباط وروديها با مدارت داخلي PLC توسط كوپل كننده هاي نوري انجام مي گيرد. بدليل ايزوله شدن ورودي ها از بقيه اجزاي مدار داخلي PLC ، هرگونه اتصال كوتاه و يا اضافه ولتاژ نمي تواندآسيبي به واحدهاي داخلي PLC وارد آ ورد.
ب)ورودي هاي آنالوگ:اين گونه وروديها در حالت استاندارد
4-20 mA و يا 0-20mA بوده ،مستقيما به ماژول آنا لوگ متصل مي شوند. ماژولهاي ورودي آنالوگ، سيگنالهاي دريافتي پيوسته رابه مقادير ديجيتال تبديل نموده و سپس مقادير ديجيتال حاصل توسطCPU پردازش مي شود.
ماژولهاي خروجي: خروجي هاي استفاده شده در PLCها به دو صورت زيرمي باشند:
الف)خروجيهاي ديجيتال:اين فرمانهاي خروجي به صورت سيگنالهاي 0 تا 24 ولت DCبوده كه در خروجي ظاهر مي شوند. بنابراين هر خروجي از لحاظ منطقي مي تواند مقادير “0” يا “1” را داشته باشد. اين سيگنالها به تقويت كننده هاي قدرت يا مبدل هاي الكتريكي ارسال مي شوند تا مثلا ماشين را به حركت در آ ورند يا آنرا از حركت باز دارند.
ب) خروجيهاي آنالوگ: سطوح ولتاژ و جريان استاندارد خروجي مي تواند يكي از مقادير ،4-20mA ، 0- 20mA باشد. معمولا ماژولهاي خروجي آنالوگ، مقادير ديجيتال پردازش شده توسط CPU را به سيگنالهاي آنالوگ مورد نياز جهت پروسه تحت كنترل تبديل مي نمايند. اين خروجي ها بوسيله واحدي به نام Isolator از ساير قسمتهاي داخلي PLC ايزوله مي شوند. بدين ترتيب مدارت حساس داخلي PLC از خطرات ناشي از امكان بروز اتصالات نا خواسته خارجي محافظت مي گردند.
ماژول تغييرشكل سيگنال: در مواقعي كه سيگنالهاي موجود درمحدوده استانداردنباشند،لازم است از يك ماژول تغيير شكل دهنده استفاده شودتا محدوده سيگنالها را تغيير داده و به محدوده استاندارد تبديل كند.
ماژول ارتباط پروسسوري (CP): اين ماژول ارتباط بين CPU مركزي را با CPU هاي جانبي بر قرار مي سازد.
ماژول رابط (IM): در صورت نياز به اضافه نمودن واحد هاي ديگرورودي و خروجي به PLC يا جهت اتصال پانل اپراتوري و پروگرامر،به PLCاز اين ماژول ارتباطي استفاده مي شود. در صورتي كه چندين PLC بصورت شبكه به يكديگر متصل شوند. از واحد IM جهت ارتباط آنها استفاده مي شود.
ورودي/خروجي دور دست و ارتباط با آنها:
هنگاميكه تعداد زيادي ورودي /خروجي در فاصله اي دوروجود دارد،اتصال مستقيم آنها به PLC نياز به اتصالات زيادي دارد كه مقرون به صرفه نيست،دراين مواقع يك واحدI/O در مكان لازم نصب مي شودوبايك زوج سيم به PLC متصل مي گردد. واحد I/O اطلاعات مربوط به ورودي/خروجي ها را از طريق اتصال سريال به PLC ارسال و دريافت مي كند. باتوجه به اينكه واحد I/O تا PLCممكن است به چند هزار متر برسد،صرفه جويي زيادي در هزينه ها مي شود. در سيستمهاي بزرگ ممكن است چندين PLC وجودداشته باشد كه همگي تحت نظارت يك PLC اصلي عمل مي كنند.معمولا برنامه كنترلي در PLC اصلي اجرا مي شود و PLCهاي ديگر فقط وظيفه ارتباط با واحد هاي I/Oرا به عهده دارند.
4-3 انواع محيطهاي برنامه نويسي و امكانات نرم افزاري در PLC
امروزه استاندارد هاي خاص بيت المللي مثل IEC 1131 براي برنامه نويسي و كار با PLC ها وجود دارد كه اغلب شركت هاي سازنده و طراح PLC كه معمولا نرم افزارهاي مخصوص PLC هاي خودشان را توليد مي كنند. از اين روشهاي استاندارد شده پيروي مي كنند و فقط تفاوتهاي جزيي در نرم افزارهاي آنها به چشم مي خورد كه اكثر آنها هم در اثر تفاوتهاي سخت افزاري سيستم هاي طراحي شده بوجود مي آيند.اما در اين بخش زبانها و محيطهاي مختلف برنامه نويسي به طور مختصر و خلاصه به طور عمومي و كلي مورد بررسي قرار مي گيرد تا در برخورد هاي احتمالي با اين محيطها دچارسردرگمي نشويد.
بطور كلي مي توان زبانها برنامه نويس PLCرا به پنج دسته تقسيم كرد:
• زبان SFC يا Sequential Function Chart Language
• زبان FBD يا Function Block Diagram Language
• زبان LD يا Ladder Diagram Language
• زبان ST يا Structured Text Language
• زبان IL يا Instruction List Language
پنج زبان فوق زبان هاي استاندارد و شناخته شده PLC ها هستند و كمپاني هاي سازنده سخت افزار و نرم افزار PLCها با وجود اختلاف هاي جزيي كه ممكن است در نام يا ظاهر نرم افزار هايشان با نمونه هاي اصلي و جود داشته باشد، همگي بر اساس همين روشهاي استاندارد شده حركت مي كنند.
زبان SFC:
در اين محيط نيز مانند ديگر محيط هاي برنامه نويسي،ابزار هايي وجود دارند كه در ابتدا بايد با آنها آشنا شد، مهمترين ابزارهاي موجود Transition,Initialstep,Step است.
هر Step معرف مرحله اي از روتين كنترلي است كه در آن اتفاقاتي، براساس تعاريف نويسنده برنامه، به وقوع خواهد پيوست، هر step بايك مربع نشان داده مي شود وشماره اي كه معرف مرحله اي خاص از برنامه است داخل آن نوشته مي شود.

19

تعريف عمليات آن مرحله نيز در درون يك مستطيل نوشته مي شود كه به مربع اصلي متصل شده و هر دوي اينها معرف يك مرحله از برنامه هستند.
در هر زمان و هر سيكل اسكن برنامه،step مربوط به آن فعال خواهد شد، براي نشان دادن step هاي فعال و غير فعال از يك دايره كوچك استفاده مي شود كه درون مربع اصلي

20
شكل2-4:نمايش step فعال و غير فعال
Step قرار مي گيرد و در زمان اجراي برنامه مشخص مي كند كه كدام step فعال و كدام غير فعال است.
بديهي است كه دستورات مربوط به step فعال در همان لحظه در حال اجرا شدن است و step غير فعال، كاري انجام نمي دهد.براي نشان دادن وضعيت ابتدايي و در شروع برنامه SFC مي بايست از يك Initial step استفاده كنيم كه نشان دهنده شروع و مرحله آغاز برنامه است ، نماد گرافيكي step Initial يك مربع دو خطي است.
بديهي است كه هر برنامه SFC بايد فقط داراي يك Initial step باشد كه با شروع اجراي،به شكل فعال در خواهد آمد. شكل3-4: Initial step در شروع برنامه
مورد بعدي كه بايد در مورد آن صحبت شود Transition است كه بصورت يك خط افقي مسير ارتباطي بين دو step را قطع مي كند. شماره مربوط آن در گوشه پايين و سمت راست آن نوشته مي شودو توضيحات لازم را در قسمت راست مي نويسندمانند شكل 4-4 .
لازم بذكر است كه قسمت توضيحات يك بخش آزاد و مجزا است و به هيچ عنوان قسمتي از برنامه محسوب نمي شود و تنها جنبه توضيح براي درك بهتر را دارد.

22
شكل4-4:Transition
Transition ها در هر مرحله از برنامه شروط موجود در قسمتهاي قبلي خود را مي بينند و بر آورده شدن و عدم برآورده شدن آن شروط بررسي را مي كنند و بديهي است كه اگر شروط هر مرحله برآورده شده باشد.Transition ها مربوطه اجازه عبور از آن مرحله را صادر مي كند و بالعكس. نكته مهم ديگر خطوط جهت دار براي اتصال stepها و Transition ها و همچنين پرسشهاي جهت دار است. به شكل 5-4 توجه كنيد. خطوط جهت دار در بين stepهاو Transitionها داراي فلش نشان دهنده جهت نيستند. اما براي بر قراري ارتباط سراسري از خارج حلقه شكل اتصال فرق مي كند. براي نشان دادن پرش ازيك Transition به يك step داخل برنامه از يك علامت فلش بهمراه شماره stepمقصد استفاده مي شود. بايد توجه داشت كه اين روش فقط براي پرش ازيك Transition به يك step است نه برعكس.

23
شكل5-4:پرش از يكtransition به يك step
پيش از پرداختن به حالتهاي و اشكال مختلف SFC مي بايست به دو قانون مهم توجه كرد. اين قوانين بسيار مهم هستند و همواره بايد در هنگام برنامه نويسي به آنها توجه كرد:
1.هرگز و در هيچ قسمتي از برنامه دو step بدون وجود Transition، پشت سر هم قرار نمي گيرند.
2. هرگز و در هيچ قسمت از برنامه دو Transition بدون وجود step پشت سر هم قرار نمي گيرند.
24
شكل 6-4: انواع اتصالات بين step و transition

25
شكل 7-4:نمايش چگونگي پرسش ازيكtransition به يك step اين دو شكل از نظر عملكرد كاملا يكسان هستند
حالتهاي مختلف براي اتصال step و Transition
انشعاب تكي و دوتايي: يك stepمي تواند بعداز Transition مربوطه به چند step ديگر متصل شود. اگر اتصال آنها از نوع تكي و ساده باشد، كه بايك خط نشان داده مي شود. بعد از ورود به انشعاب تنها آن step كه بايد فعال شود، فعال شده و برنامه ادامه پيدا مي كند اما اگر اتصال از نوع دوتايي باشد (كه با خطوط دوتايي نشان داده مي شود) پس از ورود به انشعاب ، تمام step ها به شكل موازي فعال خواهند شد.(شكل8-4 ،الف وب)
ماكرو step: ماكرو step يك نماد گرافيكي است كه در بدنه برنامه SFC به كار مي رود و معرف يك برنامه SFC ديگر است كه در انجا فراخواني مي شود. توجه كنيد كه ProcessX يك برنامه SFC ديگراست كه در قسمتي ديگر طراحي و تعريف شده ، داخل هر كدام از STEPها بايد برنامه مورد نظر را با استفاده از روشهاي مناسب برنامه نويسي در SFC نوشت و پس از آن آزمايش ، آن را اجرا كرد.

26
شكل8-4 الف:انشعاب تكي ياSingle Divergence وSingle Convergence

27
زبان FBD:
ابزار هاي موجود در محيط برنامه سازي FBD، كمي با زبانهاي ديگر متفاوت است و مي بايست برخورد متفاوتي با آنها داشت.در اين محيط بسياري از ابزار هاي واقعي به صورت بلاك هاي مختلف در اختيار هستند و فقط كافي است آنها را به شكل مورد نظر كنار هم و در غالب يك پروژه ، قرار داد و از سمت مناسب ، ورودي و خروجيهايشان را بهم متصل كرده و آزمايش كنيم در اينجا به چند بلوك نرم افزاري مهم كه كاربرد وسيع تري نسبت به بقيه دارند اشاره مي شود. اما پيش از آن ذكر چند نكته در مورد كار با اين بلك ها ضروري به نظر مي رسد:
شكل بلاك ها: كليه بلاكها در FBD معرف يك عمليات خاص بين ورودي و خروجي هايشان هستند به شكل زير توجه شود.

28
شكل 9-4 : شكل كلي بلاك ها در FBD
متغير هاي ورودي در برنامه. به پايه هاي ورودي بلاك و متغير هاي خروجي به پايه هاي خروجي بلاك متصل مي شوند و بدين ترتيب مي توان با استفاده از بلاكهاي استاندارد منطقي و امكانات ديگري كه FBD در اختيار مي گذارد روتين كنترلي مورد نظر را پياده سازي كرد.
بلا كهايي كه FBD بعنوان ابزار در دسترس قرار مي دهد، متنوع هستند و از آن جمله مي توان به : فليپ فلاپهاي SR،RS،F-Trig،R-Trig شمارنده هاي CTU،CTD،-CTUDتايمرهاي TON،TOF،TPـسيگنال ژنراتور ياSIG GENـ انواع عملگرهاي منطقي مثل,OR,XOR,ADD،SUB و بسياري عملگرها و توابع ديگر اشاره كرد. به شكل زير توجه شود:

29
شكل 10-4: پرش در FBD
لازم بذكر است كه در محيط برنامه نويسي مي توان بسته به نياز خود توابع جديدي را تعريف و پياده سازي كرد كه در كتابخانه نرم افزاري نگهداري خواهد شد و مي توان در جاي مناسب از آن استفاده كرد.
 زبان LD:
اين زبان بسيار شبيه به دياگرام نردباني قديمي است و تغييرات آن نسبت به مدلهاي قديمي تر ، بسيار جزئي است و اگر به دياگرام نردباني علائمي مثل ورودي، كنتاكت و كويل آشنا باشيد براحتي مي توانيد با اين زبان كار كنيد،شكل 11-4 خلاصه ايي از علايم مورد استفاده در LD است.

31شكل 11-4 :برخي از علايم مورد استفاده در LD
هر كنتاكت در اين روش به يك ورودي و هر كويل به يك متغيير خروجي نسبت داده مي شود.نحوه ارتباط بين ورودي ها و خروجي ها ، دقيقا شبيه به دياگرام نردباني رله اي است ، اما حالتهاي استاندارتري هم براي اين ارتباطات وجود دارد كه در شكل زيرچند مورد از آنها را بررسي مي كنيم:
30شكل12-4: چند مدل استاندارد در LD
زبان ST:
اين زبان شبيه زبانهاي متداول برنامه نويسي مثل پاسكال است و از دستورات حلقه ، شرط و امكانات ديگرزبانهاي سطح پايين كمك مي گيرد.براي افرادي كه بانوع محيط ها ي برنامه نويسي متداول كار كرده اند استفاده از اين زبان راحت تر و مناسب تر است.بعضي از دستورالعمل هاي اين محيط عبارتنداز:
IF, THEN, ELSE, CASE, FOR, WHILE, REPEAT, RETURN
 زبان IL:
اين زبان نيز بي شباهت به زبان اسمبلي نبوده و آشنا بودن به اسمبلي در هنگام كار با اين محيط ، تا حدودي كمك خواهدكرد.بعضي از دستورالعمل هاي اين محيط عبارتند از:
LD, ST, CAL, JMP, RET.ADD, SUB, MUL
همانطور كه در ابتدا ي اين بخش ذكرشد هدف از عنوان كردن اين مطالب به هيچ وجه آموزش برنامه نويسي براي PLC ها نيست بلكه سعي شده تا در هنگام برخورد احتمالي با برنامه هاي PLC دستيابي به هدف كلي ممكن و ميسر باشد.
5-3 توابع كنترل پيوسته در PLC ها
در يك PLC با ورودي / خروجي آنالوگ ، پس از دريافت وروديها، عمليات رياضي مناسب روي آنها انجام مي شود و سپس خروجي هاي آنالوگ تعيين مي شوند. قابليت و سطح كنترل بستگي به سرعت و قابليت PLC در انجام عمليات رياضي دارد. دريك فرايند كنترلي ممكن است جملات تناسبي ،انتگرال و مشتق وجود داشته باشند. به عنوان مثال با انجام عمليات زير، كنترل با جمله تناسبي انجام مي شود :
1.مقدار ورودي سنسور را بخوان، مقدار اندازه گيري شده (MV)را با مقدار (SP) مقايسه كن و مقدار خطا (E)را به دست آور. E=SP-MV
2.خطا را در يك ضريب ثابت(بهره سيستم)KP ضرب كن.
3.نتيجه را به مبدل D/A ارسال كن و به مرحله 1 برگرد.
البته در يك كنترل پيوسته براي بهبود پارامترهايي نظير سرعت پاسخ، نوسان و خطاهاي ماندگار لازم است از جملات مشتق و انتگرال نيز استفاده شود. در PLCهايي كه امكان كنترل PID را دارند، معمولاالگوريتم كنترل در حافظه PLCوجود دارد و كاربر تنها ظرايب ورودي / خروجي را معين مي كند. اين الگوريتمها ممكن است به صورت زير برنامه هايي باشند كه در برنامه اصلي فراخواني شوند.البته پياده سازي كنترل PID با نرم افزار زمان زيادي را مي گيرد و سيكل اجراي برنامه را طولاني مي كند. در مواقعي كه طولاني شدن سيكل اجراي برنامه در روند كنترل اخلال ايجاد كند، كنترل PIDبه صورت سخت افزاري انجام مي شود.
ماژولهاي PID
با توجه به اينكه پياده سازي نرم افزاري زمان زيادي مي گيرد، سازنده هاي PLC ماژولهايي را مي سازند تا كنترل PID را به صورت سخت افزاري انجام دهند. اين ماژول ها ، ورودي/ خروجي آنالوگ دارند و يك پردازنده مستقل در آنها وجود دارد كه عمليات رياضي را انجام مي دهد.اين پردازنده موازي با پردازنده اصلي عمل مي كند و انجام كليه محاسبات PID را به عهده دارد، تنها لازم است پردازنده اصلي پارامترهاي كنترلي را به اين ماژول ارسال كند. ماژول PID پس از هرسيكل اجراي فرايند كنترل، اطلاعات وضعيت خود را در رجيستر هايي از فضاي I/O قرار مي دهد و پردازنده اصلي مي تواند آنها را خوانده و از عملكرد آن ماژول مطلع شود.
علاوه بر عمليات متداول در امر كنترل، معمولا لازم است نوعي پيش پردازش روي اطلاعات ورودي انجام شود،(مانند حذف نوسانات عددي و ناخواسته در اطلاعات ورودي) برخي از PLCها توابع خاصي را براي انجام اين كار دارند. به عنوان نمونه PLC سري GEM 80 از شركت GEM تابعي دارد كه يكنواخت سازي نمايي (مرتبه اول) روي ورودي انجام مي دهد.ثابت زماني اين تابع كه ANALAG(ANALOG LAG) نام دارد قابل برنامه ريزي است، البته استفاده از اين تابع اختياري است.
برنامه ريزي ماژولهاي PID
برنامه ريزي يك ماژول PID بستگي به نوع PLC دارد و ممكن است به استفاده از دياگرام نردباني يا واحد هاي برنامه ريزي خاص انجام شود. در دياگرام نردباني حلقه PID مانند يك تابع خاص تلقي مي شود كه پارامترهاي آن را كاربر تعيين مي كند، همانند يك تايمر كه زمان آنرا كاربر به آن وارد مي نمايد.
پانلهاي برنامه ريزي خاص معمولا منويي دارند كه پارامتر هاي لازم را از كاربر مي پرسد. پارامترهايي را كه مي توان انتخاب كرد عبارتند از : كنترل يك،دو يا سه جمله اي (PID,PI,P)،آدرس نقاط I/O به عنوان ورودي و خروجي، بهره ضرايب ، زمان انتگرال، زمان مشتق و سرعت نمونه برداري وغيره.
ماژول هاي PID معمولا حافظه اي دارند كه داده ها و اطلاعات وضعيت خود را در آن ذخيره مي كنند.پردازنده اصلي به اين داده ها دسترسي دارد و از آنها استفاده مي كند.
كاربرد ماژولهاي PID
الگوريتمهاي كنترلي كه در همه PLCها وجود دارد براي بيشتر كاربردها، كارايي و سرعت كافي را دارد، مثلا براي كنترل سرعت ، تنظيم فشارهيدروليك، كنترل دما، مديريت انرژي و غيره .
در بسياري از فرايندهاي كنترلي لازم است به تعداد زيادي ورودي /خروجي رسيدگي شود، معمولا در يك حلقه كنترلي با تغيير پارامترهاي لازم و بررسي كل فرايند ، پارامترهاي مطلوب جهت كنترل صحيح فرايند به دست مي آيد.
6-3 ارتباط در PLC ها
نياز مبادله اطلاعات بين PLC ها و ساير تجهيزات در يك كارخانه خودكار ، سبب شده است كه امكانات ارتباطي روي همه كنترل كننده ها نصب شود در PLC هاي كوچك سخت افزار و نرم افزارلازم در خود بدنه PLC نصب گردد و در PLC هاي بزرگ ، ماژول هاي ويژه اي جهت ارتباط وجود دارد.
باسهاي ارتباطي براي منظورهاي مختلفي استفاده مي شوند از جمله:
• نمايش داده ها و آلارم ها از طريق VDU يا چاپگر
• ذخيره داده ها در فايلهاي بايگاني(در يك كامپيو تر) تا براي بررسي كارايي فرايند و مديريت اطاعت استفاده شوند.
• ارسال پارامترهاي لازم از طريق اپراتور يا كنترل كننده ناظر به PLC ها
• تغيير برنامه PLCها از طريق كنترل كننده ناظر
• تغيير وضعيت نقاط I/O از طريق يك ترمينال راه دور
• اتصال PLC در يك سلسله مراتب كنترلي كه در آن PLC هاي متعددي وجو دارد.

32
شكل1-6: يك سيستم Redundant با خطوط دوبل اترنت و خطوط دوبل Remote I/O و منابع تغذيه دوبل روي هر Remote I/O
ارتباط سريال:
در PLC ها معمولا براي ارتباط با ساير قسمتها و ارسال و دريافت داده ها ، از خطوط سريال استفاده مي شود، جهت ارتباط سريال استاندارهايي وجود دارد كه مهمترين آن RS 232 ومشتق آن RS 422/423 است.
RS 232 استاندارد ارتباط سريال در فواصل كو تاه است كه براي ارتباط كامپيوتر با تجهيزات جانبي آن نظير چاپگر استفاده مي گردد. اين استاندارد، اتصالات الكتريكي و فيزيكي ،ارتباط بين سيگنالها و روند مبادله اطلاعات را تعريف مي كند. اتصال نوع Dبا 25پايه كاملا متداول است و روي همه كامپيوترها و PLCها نصب مي شود.RS 232 و 422 RS در ارسال يكسان هستند و تفاوت آنها در سطح ولتاژ و سرعت انتقال است.
در ارتباط سريال سه ويژگي وجود دارد كه بايد به آنها توجه كرد: اول سرعت انتقال،يعني تعداد بيت ارسالي در ثانيه و عرض پالس هر بيت. دوم سطح ولتاژهاي منطقي، يعني بيت 1و0 با چه ولتاژي نشان داده مي شود و سوم نحوه همزماني داده ها تا گيرنده بتواند داده ها را به طور صحيح دريافت كند.
فاصله انتقال
استاندارد RS 232 حداكثر طول 30 m را در سرعت 9600bps پيشنهاد مي كند، بخاطر اثر خازني سيمها طول بيشتر از اين مقرون بصرفه نيست. البته در سرعت هاي كمتربا استفاده از كابلهاي مناسب مي توان فاصله را بيشتر كرد.
در صورتي كه فواصل ارتباطي زياد باشد از استانداردهاي ديگر نظير RS 422 و حلقه جريان استفاده مي شود.
حلقه جريان20mA
در اين استاندارد براي ارسال داده ازيك مدار جريان 20 mA استفاده مي شود. اين روش مناسب محيطهاي نويزي و فواصل زياد است. مثلا در سرعت 9600bps مي توان تا فاصله 300m از اين استاندارد استفاده كرد.ارسال و دريافت اطلاعات از طريق يك زوج سيم صورت مي گيرد و معمولا جهت ايزولاسيون الكتريكي از تزويج كننده هاي نوري استفاده مي شود.لازم بذكر است كه اين استاندارد با استاندارد RS 232 انطباق ندارد و اتصال آنها به يكديگر نياز به مدار واسطه مناسب دارد. عيب حلقه جريان 20mA اين است كه براي آن استاندارد مشخصي وجود ارائه نشده است و مانند RS 232 خطوط كنترلي (Handshaking) ندارد.
RS 422/423
اين استاندارد بهبود يافته RS 232 است كه بعضي ازمزاياي حلقه جريان رانيز دارد.
RS 422 براي هرسيگنال دو سيم استفاده مي كند كه به صورت تفاضلي هستند و در نتيجه اطلاعات تا فواصل بيشتري قابل ارسال است.
معمولا هر PLC يك ارتباط RS 232 دارد كه اتصالات مربوط به RS 422 از آن مشتق شده است. براي فواصل كم از RS 232 و براي فواصل زياد ازRS422 استفاده مي شود.

34
شكل2-6: ارتباط PLC ها بايكديگرو با ادوات فيلد بااستفاده از پروتكل فيلد باس(FF)
ارتباط PLC ها-ماژول ها و برنامه ريزي
براي انجام هر ارتباط سريال لازم است پارامترهاي ارتباط مشخص شود. اين پارامترها عبارتنداز:
• قالب بندي داده ها ، شامل بيت شروع و خاتمه، توازن و تعداد بيت داده
اين انتخاب پارامترها ممكن است توسط كليد هايي بر روي سخت افزار PLC و يا توسط نرم افزار انجام شود.
هر PLC مجموعه دستوراتي جهت بر قراري ارتباط با ساير تجهيزات دارد.برنامه ريزي PLC جهت انجام ارتباط با استفاده از دياگرام نردباني و يا يك زبان سطح بالا صورت مي گيرد.
در اين برنامه ريزي به دو نكته بايد توجه نمود:
• نوع،محل و ميزان داده اي كه بايد ارسال شود.
• شروع ارتباط
معمولا بايد اتفاقي رخ دهد تا ارسال داده از جايي به جاي ديگر انجام شود اين اتفاق ممكن است داخلي باشد. مثلا عمل كردن يك كليد، يا اتفاق در جاي ديگر رخ دهد، مثلا PLC يا دستگاه ديگر تقاضاي مبادله اطلاعات نمايد.
دستگاه شروع كننده ارتباط ، با ارسال يك يا چند كاراكتر كنترلي تقاضاي خود را اعلان مي كند. اين كاراكترها بطور معمول كد اسكي هستند. جزئيات مربوط به ارتباط و انتقال داده بستگي به نوع و مدل PLC دارد.
ارتباط بين چندين PLC
وقتي چند PLCقرار است با يك منبع واحد ارتباط داشته باشند، مي توان از يك واحد جمع كننده استفاده كرد.هر PLC كه بخواهدبا PLC اصلي ارتباط برقرار كند، واحد جمع كننده اتصال بين آنها را بر قرار مي كند. البته در صورتي كه لازم باشد جندين ارتباط بين PLCها مختلف بطور همزمان بر قرار شود بهتر است از يك شبكه استفاده گردد. شبكه هاي محلي( (Local Area Network LAN يك را مناسب براي ارتباط بين چند PLC است.
شبكه هاي محلي (LAN)
در شبكه هاي محلي ،كامپيوتر ها و ادوات جانبي آنها در محدوده جغرافيايي مشخصي ( تا فواصل 10km) به هم متصل مي شوند. استفاده از شبكه نسبت به اتصال نقطه به نقطه مزايايي دارد از جمله:
• هر كاميپوتر به تمام داده ها و برنامه در شبكه دسترسي دارد.
• اتصال نقطه به نقطه از نظر هزينه سيم كشي مقرون به صرفه نيست.
• معماري شبكه طوري است كه اتصال كامپيوتر ها به هم انعطاف پذير است.
سرعت انتقال داده معمولا 10 Mbps است.پروتكل هاي متعددي براي شبكه هاي محلي وجود دارد كه اين پروتكل ها در فصل قبل توضيح داده شدند.

35
شكل 3-6:يك شبكه LAN ،با معماريي كه چندين پروتكل شبكه را پشتيباني مي كند
كنترل گسترده:
ارتباط بين كنترل كننده ها باعث مي شود كه يك PLC خاص ، نه تنها كنترل يك دستگاه بخصوص را به عهده داشته باشد. بلكه چندين ايستگاه در يك كارخانه بزرگ را كنترل نمايد. بدين ترتيب يك PLC مي تواند بخشي از ساختار كنترلي سلسله مراتبي باشد:در چنين سيستمي يك كنترل كننده هدايتگر، چندين PLC اي دستگاه هوشمندCNC را سر پرستي مي كند.
در حا ل حاضر براي اتوماسيون كامل كارخانه ها از كنترل سلسله مراتبي استفاده مي شود. براي ايجاد يك كارخانه تمام اتو ماتيك، سيستم ارتباطي و كنترلي وسيعي لازم است . كل داده هاي كارخانه در يك پايگاه داده مديريت جمع آوري مي گردد تا در اسرع وقت در اختيار مديران و برنامه ريزان قرار گيرد،بنابراين ايجاد استاندارد هاي مناسب جهت ارتباط امري ضروري است.