انواع محيطهاي برنامه نويسي و امكاناتنرم افزاري در 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 بايك مربع نشان داده مي شود وشماره اي كه معرف مرحله اي خاص از برنامه است داخل آن نوشته مي شود.
نمايش step فعال و غير فعال
Step قرار مي گيرد و در زمان اجراي برنامه مشخص مي كند كه كدام step فعال و كدام غير فعال است.
بديهي است كه دستورات مربوط به step فعال در همان لحظه در حال اجرا شدن است و step غير فعال، كاري انجام نمي دهد.براي نشان دادن وضعيت ابتدايي و در شروع برنامه SFC مي بايست از يك Initial step استفاده كنيم كه نشان دهنده شروع و مرحله آغاز برنامه است ، نماد گرافيكي step Initial يك مربع دو خطي است.
بديهي است كه هر برنامه SFC بايد فقط داراي يك Initial step باشد كه با شروع اجراي،به شكل فعال در خواهد آمد.Initial step در شروع برنامه مورد بعدي كه بايد در مورد آن صحبت شود Transition است كه بصورت يك خط افقي مسير ارتباطي بين دو step را قطع مي كند. شماره مربوط آن در گوشه پايين و سمت راست آن نوشته مي شودو توضيحات لازم را در قسمت راست مي نويسندمانند
لازم بذكر است كه قسمت توضيحات يك بخش آزاد و مجزا است و به هيچ عنوان قسمتي از برنامه محسوب نمي شود و تنها جنبه توضيح براي درك بهتر را دارد.
توابع كنترل پيوسته در PLC ها
در يك PLC با ورودي / خروجي آنالوگ ، پس از دريافت وروديها، عمليات رياضي مناسب روي آنها انجام مي شود و سپس خروجي هاي آنالوگ تعيين مي شوند. قابليت و سطح كنترل بستگي به سرعت و قابليت PLC در انجام عمليات رياضي دارد. دريك فرايند كنترلي ممكن است جملات تناسبي ،انتگرال و مشتق وجود داشته باشند. به عنوان مثال با انجام عمليات زير، كنترل با جمله تناسبي انجام مي شود :
1.مقدار ورودي سنسور را بخوان، مقدار اندازه گيري شده (MV)را با مقدار (SP) مقايسه كن و مقدار خطا (E)را به دست آور. E=SP-MV
2.خطا را در يك ضريب ثابت(بهره سيستم)KP ضرب كن.
3.نتيجه را به مبدل D/A ارسال كن و به مرحله 1 برگرد.
البته در يك كنترل پيوسته براي بهبود پارامترهايي نظير سرعت پاسخ، نوسان و خطاهاي ماندگار لازم است از جملات مشتق و انتگرال نيز استفاده شود. در PLCهايي كه امكان كنترل PID را دارند، معمولاالگوريتم كنترل در حافظه PLCوجود دارد و كاربر تنها ظرايب ورودي / خروجي را معين مي كند. اين الگوريتمها ممكن است به صورت زير برنامه هايي باشند كه در برنامه اصلي فراخواني شوند.البته پياده سازي كنترل PID با نرم افزار زمان زيادي را مي گيرد و سيكل اجراي برنامه را طولاني مي كند. در مواقعي كه طولاني شدن سيكل اجراي برنامه در روند كنترل اخلال ايجاد كند، كنترل PIDبه صورت سخت افزاري انجام مي شود.