প্রোগ্রামেবল লজিক কন্ট্রোলার

প্রোগ্রামেবল লজিক কন্ট্রোলার বা পিএলসি (ইংরেজি: programmable logic controller বা PLC) হল একটি ডিজিটাল কম্পিউটার যা ইলেকট্রোমেকানিকাল প্রক্রিয়া, যেমন ফ্যাক্টরিতে যন্ত্রপাতি (অ্যাসেম্বলি লাইন, এমিউসমেন্ট রাইডস বা লাইট ফিক্সচার) নিয়ন্ত্রণ হিসাবে, অটোমেশনের জন্য ব্যবহৃত হয়। সংক্ষেপ "পিএলসি" এবং "প্রোগ্রামেবল লজিক কন্ট্রোলার" শব্দটি অ্যালেন-ব্রাডলি কোম্পানির (রকওয়েল অটোমেশন) ট্রেডমার্কে নিবন্ধিত। পিএলসি অনেক শিল্প ও মেশিন ব্যবহার করা হয়। পিএলসি সাধারণ কম্পিউটার থেকে পৃথক, এটি একাধিক ইনপুট এবং আউটপুট ব্যবস্থা, বর্ধিত তাপমাত্রা রেঞ্জ, বৈদ্যুতিক গোলমাল অনাক্রম্যতা এবং কম্পন ও সঙ্ঘর্ষ প্রতিরোধের জন্য নির্মিত হয়েছে। এর মেশিনের সক্রিয়তা নিয়ন্ত্রণের প্রোগ্রাম, সাধারণত ব্যাটারি সমর্থিত বা নন-ভলাটাইল মেমরি মধ্যে সংরক্ষিত হয়ে থাকে। পিএলসি একটি ডিভাইস যার মাধ্যমে অতি সহজেই অন্যান্য যন্ত্র কন্ট্রোল করা যায়, কোনও কোনও ক্ষেত্রে এটি মাইক্রোকন্ট্রোলার বিকল্প হিসাবে কাজ করে। মাইক্রোকন্ট্রোলার এবং পি এল সির মধ্যে পার্থক্য হল, মাইক্রোকন্ট্রোলার জন্য প্রোগ্রাম লেখার প্রয়োজন হয় কিন্তু পিএলসিতে লেডার ডায়াগ্রামের মাধ্যমে কাজটি অতি সহজেই করা যায়। এটি এক প্রকার মাইক্রোপ্রসেসর বেইজ কন্ট্রোল সিস্টেম। এতে একটি প্রোগ্রামেবল মেমরি থাকে এই মেমরিতে বিভিন্ন প্রকার ইন্সট্রাকশন স্টোর করা থাকে, যার মাধ্যমে গাণিতিক লজিক্যাল, টাইমিং, সিকুয়েন্সিং ইত্যাদি কার্যাবলী সম্পাদন করা হয়। এটি মূলত মাইক্রোকন্ট্রোলারের অনুরূপ কাজ করে কিন্তু মাইক্রোকন্ট্রোলারের সাথে এর মূল পার্থক্য হল এটি ইন্ডাস্ট্রিতে হাই পাওয়ার কন্ট্রোলিং সিস্টেমকে কন্ট্রোল করতে ব্যবহৃত হয় অন্যদিকে মাইক্রোকন্ট্রোলার লো পাওয়ার এবং সুক্ষ কন্ট্রোল সিস্টেমকে নিয়ন্ত্রণ করতে ব্যবহৃত হয়। পিএলসি কাজ নির্ভর করে প্রথম ধাপে যে ইনপুট সিগন্যাল দেয়া হবে, তা লেডার ডায়াগ্রামের মাধ্যমে প্রোসেসিং হয়ে দ্বিতীয় ধাপে কাঙ্ক্ষিত আউটপুট সিগন্যাল পাওয়া যাবে,যার মাধ্যমে অতি সহজে অন্যান্য ডিভাইস কন্ট্রোল করা যায়। যে কোন মেশিন আটোমেশন, রাসায়নিক শিল্পকারখানা, নিউক্লিয়ার পাওয়ার জেনারেশন প্লান্ট, হোম অটোমেশন, অটোম্যাটেড শিল্পকারখানাতে ব্যবহার করা হয়। পিএলসি গঠিত হয়েছে তিনটি সেকশন নিয়ে। সেন্ট্রাল প্রোসেসিং ইউনিট, ইনপুট/আউটপুট, এবং পাওয়ার সাপ্লাই। এটি ইনপুট ডিভাইস হতে প্রাপ্ত তথ্যগুলিকে লেডার ডায়াগ্রাম অনুযায়ী আউটপুট ডিভাইসের বিভিন্ন অংশে পাঠায়। এখানে উল্লেখ্য যে, ইনপুট ডিভাইস হতে প্রাপ্ত তথ্যের সাথে সিপিইউ ডায়াগ্রাম অনুযায়ী নিজস্ব কিছু তথ্যও সংযোগ করতে পারে। ইহা সিপিইউ হতে আগত তথ্যগুলিকে রিলে সুইচের মাধ্যমে মেশিনে পাঠায়। এবং মেশিন সেই মোতাবেক কাজ করে থাকে (মেশিনে ব্যবহৃত ডিভাইস অনুযায়ী রিলে ব্যবহার নাও করা লাগতে পারে)। মেশিন কর্মরত অবস্থায় সেন্সর সহ অন্যান্য ডিভাইসের মাধ্যমে পুনরায় ইনপুটে তথ্য প্রদান করতে থাকে। এবং এই ভাবে চক্র ক্রিয়া অটোমেটিক ভাবে চলতে থাকে। এর কাজ হল ইনপুট, অউটপুট এবং সিপিইউ কে প্রয়োজনীয় বিদ্যুৎ সরবরাহ করা। এতে আর্থিং কানেকশন বাঞ্ছনীয়। আর্থিং না থাকলে প্রোগ্রাম ঠিকমত রান নাও করতে পারে, এমনকি ডিলিট হওয়ার সম্ভাবনা রয়েছে। প্রোগ্রাম লিখতে যে সমস্ত জিনিস লাগবে তা হল, পিএলসি প্রোগ্রামিং সফটওয়্যার, পিএলসির সিপিইউ, কম্পিউটার (ডেস্কটপ/ল্যাপটপ) এবং কমুনিকেশন কেবল। প্রথমে সফটওয়্যার কম্পিউটার এ ইন্সটল করে নিতে হবে। সফটওয়্যার হতে হবে পি এল সি এর সমগোত্রীয়। প্রফেশনাল কাজের জন্য এটি পি এল সি কোম্পানি থেকে কিনে নিতে হবে। যে কোন প্রোজেক্ট এর প্রোগ্রামিং শুরু করার পূর্বেই আপনি কি বা কোন টাইপ পি এল সি ব্যবহার করবেন তা নির্ধারণ করে নিতে হবে। এর উপর ভিত্তি করেই প্রোগ্রামিং সফটওয়্যার এবং কমুনিকেশন কেবল সংগ্রহ করতে হবে। ধরুন আপনি মিটসুবিশি কোম্পানির পি এল সি ব্যবহার করবেন এফ এক্স সিরিজের। এই ক্ষেত্রে আপনি কতগুলি ইনপুট আউটপুট ব্যবহার করবেন তা ঠিক করে মডেল সিলেক্ট করবেন। যদি আপনি Mitsubishi Fx 1N- 60MR/MT ব্যবহার করেন তাহলে ৩৬টি ইনপুট এবং ২৪টি আউটপুট ব্যবহার করতে পারবেন। এখানে MR হল রিলে আউটপুট এবং MT ট্রাঞ্জিস্টর আউটপুট। এই মডেলে CPU এবং I/O একসাথে গঠিত। অর্থাৎ আপনি ইচ্ছে করলেই ইনপুট আউটপুট এক্সটেনশন করতে পারবেন না। Modular PLC তে এক্সটেনশন সম্ভব। একটি হল Compact PLC আরেকটি Modular PLC। উইন্ডোজ এক্সপি বেজ যে কোন ডেস্কটপ/ল্যাপটপ ব্যবহার করতে পারেন। ইউ এস বি টু সিরিয়াল কনভার্টার ব্যবহার করলে তার ড্রাইভার সফটওয়্যার ইনিস্টল করে নিতে হবে। তবে পুরানো মডেলের পি এল সির জন্য সরাসরি সিরিয়াল পোর্ট যুক্ত কম্পিউটার ব্যবহার করতে হবে, কোন প্রকার কনভার্টার ছাড়া। এবং উইন্ডোজ ৯৮ বেজ হতে হবে। বাজারে বিভিন্ন প্রকার ক্যাবল পাওয়া যায়, কিন্তু সবই ঠিকমত কাজ করে না। তাই ভালো মানের ক্যাবল এবং কনভার্টার ব্যবহার করাই উত্তম। এবং এটি পি এল সি কম্পানি থেকে নেয়াই ভালো। খরচ কমাতে নিজেই তৈরি করে নিতে পারেন। সেক্ষেত্রে ভালো মানের শিল্ড ওয়ার এবং জেক/কানেক্টর সংগ্রহ করে সঠিকভাবে সংযোগ করতে হবে। প্রথমে কম্পিউটার অন করে সফটওয়্যার রান করতে হবে। নিউ প্রোজেক্ট সিলেক্ট করে তাতে মেশিনের প্রয়োজন অনুযায়ী লেডার ডায়াগ্রাম লিখতে হবে। লেখা শেষ হলে পিএলসি পিসির সাথে কানেকশন করে প্রোগ্রাম ডাউনলোড করতে হবে। লেডার ডায়াগ্রাম করতে বেশ কিছু কন্টাক্ট, কয়েল, টাইমার, কউন্টার ইত্যাদি সেম্বলের প্রয়োজন হয়। সেম্বলগুলো হল, নরমালি ওপেন কন্টাক্ট, নরমালি ক্লোজ কন্টাক্ট, ভারটিক্যল লাইন, হরাইজন্টাল লাইন, নরমালি ওপেন কয়েল, নরমালি ক্লোজ কয়েল এবং পিএলসি ইনিস্ট্রাকশনাল সেম্বল ইত্যাদি। মোটামুটি এই কয়েকটি দিয়েই কাজ করা সম্ভব। এটি একটি বিষয় যে পিএলসি সিপিইউ এর উপর ভিত্তি করে ডিভাইসের নামকরণ করা হয়। এখন একটি প্রশ্ন জাগে যে, সি পি ইউ ভিত্তিক ডিভাইসের কি কি নাম থাকতে পারে। এর সঠিক সমাধান হল, সি পি ইউ ভিত্তিক তার ব্যবহার বিধি বই পড়ে ডিভাইসের নাম এবং ব্যবহার জানতে পারবেন। গুগুলে সার্চ দিলে আশা করি সব বইই পাবেন। আমি আপনাদের সাথে মিটসুবিশি এফ এক্স সিরিজের পি এল সির ডিভাইস নিয়ে আলোচনা করব। লক্ষ্য করবেন অমরন ডিভাইসের নাম এবং মিটসুবিশি ডিভাইসের নাম একই না। অমরন "C" দিয়ে এবং মিটসুবিশি "X" দিয়ে। অভ্যন্তরীণ বিট যেকোনো ফাংশনএ প্রয়োজন হলে তাদের ব্যবহার করা সম্ভব। যখন একটি এম ডিভাইস কয়েল একটিভ হয়, তখন এম ডিভাইস পরিচিতি সক্রিয় হয়ে ওঠে। এম ডিভাইসএ ডেডিকেটেড একটি ফাংশন গ্রুপ আছে। তারা এম৮০০০ ~ এম৮৫১১। এর প্রত্যেকটি ফাংশনের বর্ণনা এফ এক্স এর প্রগ্রামিং মানুয়ালে পাবেন। এদের ব্যবহার করা হয় STL (Initial State) প্রোগ্রামিংএ যা ধাপ, বা লেডার লজিক কোডে সক্রিয়তা ইঙ্গিত আকারে নির্দেশ করে। যদি STL প্রোগ্রামিং ব্যবহৃত হয় না, এই একই পদ্ধতিতে বিট হিসাবে এম বিট ব্যবহার করা যাবে। এটিকে ফল্ট প্রচারক হিসাবে ব্যবহার করা হয়। S900~S999 ব্যবহার করা যাবে ফল্ট নির্দেশক হিসাবে। যাহার ডিটেইল এফ এক্স ম্যানুয়ালে পাবেন। টি ডিভাইস ডিফল্ট টাইমার দ্বারা টাইমার ডিভাইস হয়ে থাকে 100msec বাড়তি, 10msec বাড়তি, অথবা 1msec বাড়তি সময় হয় যা টাইমার ঠিকানার উপর নির্ভর করে। সর্বাধিক টাইমার, তাদের ঠিকানার উপর নির্ভর করে। এবং এদের কিছু non-retentive। অর্থাৎ এরা কখনো বর্তমান সময় ধরে রাখেনা, ইনপুট শর্ত নিয়ে বেস্ত থাকে। T246 এর উপরের গুলি Retentive। এরা এদের ভ্যালু ধরে রাখে রিসেট না হওয়া পর্যন্ত। Retentive টাইমার ইনপুট ঠিকানার উপর নির্ভর করে 100msec অথবা 1msec সময় বেজ হয়ে থাকে। যখন একটা টাইমার যুক্ত প্রিসেট মান টি ডিভাইস কয়েলে একটিভ হয়, সংশ্লিষ্ট টি ডিভাইস কন্টাক্টও তার পরিচিতি হিসাবে সক্রিয় হয়। সব টাইমার 16 বিটের হয়, যার অর্থ সর্বাধিক প্রিসেট হয় +32767. বৈধ প্রিসেটগুলি হল K ভ্যালু এবং D ডাটা রেজিস্টার। একটি 100msec টাইমার এর জন্য সর্বাধিক সময় হয় 3276.7 সেকেন্ড। টাইমারের ভ্যালু বেকাপ থাকে বেকাপ ব্যাটারিতে, তাই ব্যাটারি খারাপ মানের বা ডিস্কানেক্ট হলে টাইমার রিসেট হবে। সি ডিভাইস হল কাউন্টার ডিভাইস। এর আদর্শ হল এটি ধারণক্ষম (Retentive), রিসেট না হওয়া পর্যন্ত এরা কাউন্টার নাম্বার ধরে রাখে। এবং ধরে রাখার কাজটি ব্যাকআপ ব্যাটারি করে থাকে। যখন একটা কাউন্টার যুক্ত প্রিসেট মান সি ডিভাইস কয়েলে একটিভ হয়, সংশ্লিষ্ট সি ডিভাইস কন্টাক্টও তার পরিচিতি হিসাবে সক্রিয় হয়। কাউন্টার 16 বা 32 বিট হতে পারে, যার অর্থ সর্বাধিক গণনা পরিসীমা হয় -32768 থেকে +32767 (16 বিট) বা -2,147,483,648 থেকে 2,147,483,647 (32 বিট)। নেগেটিভ প্রিসেট খুব একটা ব্যবহার করা হয় না। বৈধ প্রিসেটগুলি হল K ভ্যালুএবং D ডাটা রেজিস্টার। সাধারনতঃ তিন ধরনের কাউন্টার হয়ে থাকে। ১৬বিট আপ কাউন্টার, ৩২বিট আপ/ডাউন কাউন্টার এবং ৩২ বিট উচ্চ গতি সম্পন্ন কাউন্টার। উচ্চ গতি সম্পন্ন কাউন্টার আবার তিন ধরনের হয়, ১ ফেজ, ২ ফেজ এবং এ/বি ফেজ কাউন্টার। কাউন্টারের আরও ডিটেইল ম্যানুয়াল থেকে পাবেন। Daniel Kandray, Programmable Automation Technologies, Industrial Press, 2010 আইএসবিএন ৯৭৮-০-৮৩১১-৩৩৪৬-৭, Chapter 8 Introduction to Programmable Logic Controllers উইকিবিশ্ববিদ্যালয়ে Programmable logic controller (basics) সম্পর্কে শেখার উপকরণ রয়েছে কার্লিতে প্রোগ্রামেবল লজিক কন্ট্রোলার (ইংরেজি) PLC vs PAC comparison chart at commons.wikimedia.org PLC Complete Tutorial উইকিমিডিয়া কমন্সে প্রোগ্রামেবল লজিক কন্ট্রোলার সংক্রান্ত মিডিয়া রয়েছে।