বন্ধুরা আমি যখন প্রথম পিএলসি সর্ম্পকে আগ্রহী হই, তখন শিখাবার লোকের অনেক অভাব ছিল। কেউ জানলেও শিখাতে চাইতো না। ভার্সিটিতে আমরা ৪ বন্ধু যখন একই থিসিস গ্রুপে পরলাম আর আমাদের থিসিস সাবজেক্ট পড়লো ”স্টাডি এন্ড ইভালুয়েশন অব্ ইন্ড্রাষ্ট্রিয়াল বোতল ফিলিং সিস্টেম বাই পিএলসি” তখন আমাদের মুখের এক্সপ্রেশন দেখার মত হয়েছিল। একেবারে ছেড়ে দে মা কেঁদে বাচি অবস্থা ।কতজনের কাছে যে দৌড়েছি তার ইয়াত্তা নেই ।যাই হোক নাই হোক আমি আপনাদের পিএলসি প্রোগ্রামিং এর ব্যাবহারিক দিক গুলি নিয়ে আলোচনা করবো মাত্র। যারা পিএলসি কি জানেন না বা একেবারেই শিশু তারা স্বপন ভাইয়ের পি এল সি সম্পর্কে জানুন এই লিংক হতে ঘুরে আসুন। কিশোররা আমার সাথে সামনে চলুন। এবিষয়ে যারা হাফেজি পাশ করেছেন তারা দয়া করে কালটি মারুন (দাঁড়ান !!! যাবার আগে সালাম ও ধন্যবাদ নিতে ভুলবেন না)।
শুরুতে একটু ব্রিফ দেয়ার চেষ্টা করছি, ধৈর্য্য ধরে সাথেই থাকুন
1: প্রোগ্রাম কি?
প্রোগ্রাম হল একটি ভাষায় লিখিত নির্দেশাবলীর একটি সংযুক্ত সিরিজ যা পিএলসি বুঝতে পারে এবং সেই নির্দেশাবলী পালন করে।তিন ধরনের প্রোগ্রামিং ফরমেট আছে। instruction, ladder and SFC/STL style. সব প্রোগ্রামিং টুলস সমস্ত প্রোগ্রামিং ফর্মে কাজ করতে পারে। সাধারণত hand held programming panels শুধুমাত্র instruction format নিয়ে কাজ করে, প্রায়সব graphic প্রোগ্রামিং টুলস instruction (নির্দেশ) ও ladder(মই) উভয় ফরমেটে কাজ করে। এছাড়াও Specialist প্রোগ্রামিং সফটওয়্যার SFC style প্রোগ্রামিং নিয়ে কাজ করার সুযোগ দেবে।
1.1: প্রোগ্রামিংএ ব্যবহৃত মৌলিক ডিভাইস এর রুপরেখা:
ছয়টি মৌলিক প্রোগ্রামিং ডিভাইস আছে। প্রতিটি ডিভাইসের নিজস্ব অনন্য ব্যবহার আছে। দ্রুত এবং সহজে সনাক্তকরনের জন্য প্রতিটি ডিভাইসের একটি একক রেফারেন্স অক্ষর নির্ধারন করা হয়।
- X: এটি পিএলসিতে সরাসরি শারীরিক ইনপুট সনাক্ত করতে ব্যবহার করা হয়।
- Y: এটি পিএলসি থেকে সরাসরি প্রকৃত আউটপুট সনাক্ত করতে ব্যবহার করা হয়।
- T: এটি টাইমিং ডিভাইস চিহ্নিত করতে ব্যবহার করা হয়, যা পিএলসির মধ্যে অন্তর্ভুক্ত করা থাকে।
- C: এটি গননাকারী ডিভাইস চিহ্নিত করতে ব্যবহার করা হয়, যা পিএলসি মধ্যে অন্তর্ভুক্ত করা থাকে।
- M এবং S: এরা পিএলসির মধ্যে অভ্যন্তরীণ অপারেশন পতাকা (operation flags) হিসেবে ব্যবহৃত হয়।
উপরে উল্লিখিত সমস্ত ডিভাইস 'বিট ডিভাইস' নামে পরিচিত । উল্লেখ থাকে যে এই ডিভাইস সমুহের মাত্র দুটি State আছে, চালু বা বন্ধ, 1 অথবা 0.
1.2: কিভাবে Ladder Logic পড়তে হয়:
Ladder logic খুব ঘনিষ্ঠভাবে basic relay logic এর সাথে যুক্ত। contacts ও coils উভয়কেই লোড করে বিভিন্ন কনফিগারেশনে চালিত করা সম্ভব। যাইহোক, মৌলিক নীতি কিন্তু একই । একটি coil সরাসরি পিএলসি আউটপুটকে (উদাঃ. একটি Y ডিভাইস) ড্রাইভ করে অথবা অভ্যন্তরীণ টাইমার, কাউন্টার বা পতাকা (উদাঃ. T, C, M and S devices) কে ড্রাইভ করে। প্রতিটি coil এর কিছু contacts রয়েছে । এই contacts গুলি “normally open” (NO) and “normally closed” (NC) উভয় কনফিগারেশনে available । "normal (Ly)" শব্দটি contacts এর ঐ অবস্থা বোঝায় যখন coil কে এর্নাজাইজ করা হয় না. relay analogy অনুসারে যখন coil OFF থাকে, তখন NO contact এ কোন current flow হয় না, অর্থাৎ , NO contact দ্বারা কোন load এ পাওয়ার সাপ্লাই দিলে সেটি চালু হবে না।অন্যদিকে NC contact দ্বারা current flow হবে এবং কানেক্টেড load চালু হবে। coil সক্রিয় করা হলে পুরো ব্যাপারটি উল্টে যাবে, তখন NO contact দ্বারা current flow হবে এবং NC contact দ্বারা current flow হবে না।
পিএলসির Physical ইনপুট (X devices) এর কোন প্রোগ্রামযোগ্য কয়েল নাই ।এই ডিভাইস শুধুমাত্র দুটি contact ফরম্যাট (NO এবং NC) টাইপে ব্যবহার করা হতে পারে.
উদাহরণ:
নিন্মোক্ত ladder logic প্রোগ্রামকে এভাবে পড়া যায়, কারেন্ট বাম উল্লম্ব লাইন থেকে ডান উল্লম্ব লাইন বরাবব প্রবাহিত হচ্ছে। এই কারেন্ট X0 এবং X1 কন্টাকদ্বয়ের সিরিজের মধ্য দিয়ে প্রবাহিত হয়ে আউটপুট কয়েল Y0 কে অন করবে। উদাহরণে দেখানো হয়েছে, X0 কে সুইচিংঅন করলে আউটপুট Y0 অন হবে। তবে যদি,লিমিট সুইচ X1 সক্রিয় হয়, আউটপুট Y0 অফ হয়ে যাবে . কারণ বাম এবং ডান উলম্ব রেখার মধ্যে সংযোগ বিচ্ছিন্ন হওয়ায় কোন কারেন্ট প্রবাহ থাকবে না.
বাস্তব উদাহরন- ১: দুটি আলাদা পুশ সুইচের মাধ্যমে একটি মটরকে চালু ও বন্ধ করার লেডার প্রোগ্রাম:
ইনপুট : ১. ON পুশবাটন (NO, Green)-----X001
২. OFF পুশবাটন (NO, Red )------X002
আউটপুট: ১. একটি ম্যাগনেটিক কন্টাকটর K1 (coil 24 ভোল্টের) ------Y000
আমাদের মুল টার্গেট হলো ম্যাগনেটিক কন্টাকটর K1 কে ON সুইচ দ্বারা চালু করা আর OFF সুইচ দ্বারা বন্ধ করা। আশা করি চিত্রের মাধ্যমে আপনারা আগেই বুঝে ফেলেছেন কিভাবে সংযোগ দিতে হবে।
এবার লেডার লেখার পালা: আমরা Mitsubishi পিএলসির জন্য লেডার লেখার চেষ্টা করবো। Mitsubishi পিএলসিতে ডিজিটাল ইনপুট এসাইন করা হয় Xxxx দ্বারা আর ডিজিটাল আউটপুট এসাইন করা হয়Yxxx দ্বারা। তাই আমরা দুটি ইনপুটের জন্য যথাক্রমে X001 ও X002 নিলাম আর একটি আউটপুটের জন্য Y000 নিলাম।
প্রথমে GX Developer software ইনষ্টল করে রান করান। এবার যে উইন্ডো আসবে তার ড্রপ ডাউন মেন্যু Project এ যান। Project হতে New Project ক্লিক করি, New Project সাব উইন্ডোতে PLC series (সিলেক্ট করুন) ,PLC type (সিলেক্ট করুন) , Program type (Ladder সিলেক্ট করুন) এবার OK ক্লিক করলে নতুন পেজ ওপেন হবে। এখন টুলবার হতে বিভিন্ন সিম্বল সিলেক্ট করে প্রোগ্রাম লিখা শুরু করি।
উপরের প্রোগ্রাম অনুসারে… ON পুশবাটন (X001) টি যতক্ষন পুশ করে ধরে রাখবেন ঠিক ততক্ষন আউটপুট (Y000) চালু পাবেন। ছেড়ে দিলে আউটপুট অফ হয়ে যাবে। তাহলে আউটপুটকে ধরে রাখার উপায় কি ? দেখুন
একে বলে লেচিং(Latching) বা আউটপুটের মাধ্যমে ইনপুটকে ধরে রাখা।এখানে input Y000 (open contact) এর কোন বাস্তবতা নেই এটি ভার্সুয়ালি কাজ করবে। এখন ON পুশবাটন(X001) একবার চেপে ছেড়ে দিলেও আউটপুট আর বন্ধ হবে না।কারন আউটপুট Y000 চালু হওয়ার সাথে সাথে ইনপুট Y000 কন্টাক পাবে ফলে ইনপুট Y000 এর মাধ্যমে আউটপুট Y000 পাওয়ার পাবে আর আউটপুট বন্ধ হবে না । তাহলে কি একবার চালু হলে আর আউটপুট বন্ধ হবে না? নিচে দেখুন
লেচিংকৃত আউটপুট কে OFF পুশবাটন (X002) চেপে বন্ধ করা যাবে। X002 normally close contact এ আছে । পুশ করলে open হয়ে যাবে তখন আর আউটপুট পা্ওয়ার পাবে না।ফলে আউটপুট বন্ধ হয়ে যাবে।
এভাবে শুধু মোটর কেন যেকোন মেশিনকেও অন অফ করা যাবে। ধন্যবাদ আজ এতটুকুই , আবার আসবো ইনসাল্লাহ……….
আমি যন্ত্রের ডাক্তার। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 12 বছর 1 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 4 টি টিউন ও 4 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 0 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
আমি মনেপ্রানে একজন প্রকৌশলী। ইন্ড্রাষ্ট্রিয়াল অটোমেশনের উপর কাজ করতে পছন্দ করি। পি,এল,সি ও এইচ,এম,আই নিয়ে কিছু কাজ করার অভিজ্বতা হয়েছে।মা বলতো কোন কিছু বিলিয়ে দিলে নাকি অন্য দিক হতে ফেরত আসে।আপনারা কি বলেন?
val0