PLC (Programmable Logic Controller) হলো একটি বিশেষ ধরনের ডিজিটাল কম্পিউটার, যা শিল্প স্বয়ংক্রিয়তার (industrial automation) ক্ষেত্রে ব্যবহৃত হয়। এটি মেশিন বা বিভিন্ন প্রক্রিয়া নিয়ন্ত্রণ করতে ব্যবহৃত হয়। PLC ইনপুট ডিভাইস যেমন সেন্সর থেকে ডেটা সংগ্রহ করে এবং সেটি বিশ্লেষণ করে আউটপুট ডিভাইস (যেমন মোটর, লাইট বা অ্যাকচুয়েটর) নিয়ন্ত্রণ করে।
PLC-এর কিছু মূল বৈশিষ্ট্য:
– **মজবুততা:** এটি কঠোর শিল্প পরিবেশেও নির্ভরযোগ্যভাবে কাজ করার জন্য ডিজাইন করা হয়েছে।
– **রিয়েল-টাইম অপারেশন:** PLC দ্রুত ইনপুট এবং আউটপুট প্রক্রিয়া করতে সক্ষম, সাধারণত মিলিসেকেন্ডের মধ্যে।
– **নমনীয়তা:** PLC পুনরায় প্রোগ্রাম করা যায় এবং বিভিন্ন মেশিন বা প্রক্রিয়া নিয়ন্ত্রণে সহজেই ব্যবহার করা যায়।
– **মডুলার ডিজাইন:** এটি সাধারণত মডুলার, যার ফলে সহজেই ইনপুট, আউটপুট, বা অন্যান্য কম্পোনেন্ট যোগ বা বাদ দেওয়া যায়।
বাজারে বিভিন্ন জনপ্রিয় পিএলসি (PLC) ব্র্যান্ড রয়েছে। কয়েকটি পরিচিত ব্র্যান্ডের নাম নিচে দেওয়া হলো:
1. Siemens -Siemens-এর S7 সিরিজের পিএলসি সারা বিশ্বে খুবই জনপ্রিয় এবং বিভিন্ন শিল্পে ব্যবহৃত হয়।
2. Allen-Bradley (Rockwell Automation)-Allen-Bradley-এর ControlLogix এবং CompactLogix পিএলসি সিস্টেমগুলি ব্যাপকভাবে ব্যবহৃত হয়, বিশেষ করে উত্তর আমেরিকায়।
3. Mitsubishi Electric -Mitsubishi-এর MELSEC সিরিজটি শিল্প ক্ষেত্রের স্বয়ংক্রিয়তা এবং প্রক্রিয়া নিয়ন্ত্রণের জন্য পরিচিত।
4. Schneider Electric- Schneider-এর Modicon সিরিজ পিএলসি প্রযুক্তির অগ্রণী এবং এর বিভিন্ন মডেল বিভিন্ন শিল্পে ব্যবহৃত হয়।
5. Omron – Omron পিএলসি প্রায়শই ছোট থেকে মাঝারি আকারের স্বয়ংক্রিয় প্রকল্পগুলিতে ব্যবহৃত হয়।
6. ABB- ABB পিএলসি বিভিন্ন প্রকারের অটোমেশন এবং প্রক্রিয়া নিয়ন্ত্রণে ব্যবহৃত হয়, বিশেষত বিদ্যুৎ এবং শক্তি শিল্পে।
7. Delta- Delta Electronics পিএলসি বেশ কাস্টমাইজেবল এবং ছোট ও মাঝারি আকারের স্বয়ংক্রিয় প্রকল্পে ব্যবহার করা হয়।
8. Bosch Rexroth- Bosch Rexroth-এর পিএলসি সিস্টেমগুলি মেশিন এবং কারখানার অটোমেশন ক্ষেত্রে ব্যবহৃত হয়।
এই ব্র্যান্ডগুলো বিভিন্ন প্রয়োজন অনুযায়ী পিএলসি সরবরাহ করে, যেমন প্রক্রিয়ার আকার, পরিবেশের ধরন, এবং বিশেষ প্রয়োজন।
পিএলসি প্রোগ্রাম করার জন্য বিভিন্ন ব্র্যান্ডের নিজস্ব সফটওয়্যার রয়েছে। প্রতিটি ব্র্যান্ডের পিএলসি তাদের নিজস্ব সফটওয়্যার ব্যবহার করে প্রোগ্রাম করা হয়। কয়েকটি জনপ্রিয় পিএলসি প্রোগ্রামিং সফটওয়্যার নিচে দেওয়া হলো:
1. **Siemens – TIA Portal (Totally Integrated Automation Portal)** – Siemens পিএলসি প্রোগ্রামিংয়ের জন্য TIA Portal সবচেয়ে বেশি ব্যবহৃত হয়। এটি S7-1200, S7-1500, এবং S7-300/400 পিএলসি মডেলের জন্য ব্যবহৃত হয়।
2. **Allen-Bradley – RSLogix / Studio 5000** – Allen-Bradley পিএলসিগুলির জন্য RSLogix 500 এবং Studio 5000 সবচেয়ে বেশি ব্যবহৃত হয়। ControlLogix এবং CompactLogix পিএলসিগুলির জন্য Studio 5000 ব্যবহার করা হয়।
3. **Mitsubishi – GX Works / GX Developer** – Mitsubishi পিএলসিগুলির জন্য GX Works এবং GX Developer সফটওয়্যার ব্যবহার করা হয়। MELSEC সিরিজের পিএলসি প্রোগ্রামিংয়ের জন্য এটি ব্যবহার করা হয়।
4. **Schneider Electric – EcoStruxure Control Expert (Unity Pro)** – Schneider Electric-এর Modicon পিএলসির জন্য EcoStruxure Control Expert (পূর্বে Unity Pro) সফটওয়্যার ব্যবহার করা হয়।
5. **Omron – CX-Programmer / Sysmac Studio** – Omron পিএলসিগুলির জন্য CX-Programmer এবং Sysmac Studio সফটওয়্যার ব্যবহৃত হয়। Sysmac Studio সাধারণত উন্নত এবং বড় স্কেল প্রকল্পের জন্য ব্যবহার করা হয়।
6. **Delta – WPLSoft / ISPSoft** – Delta Electronics-এর পিএলসিগুলির জন্য WPLSoft এবং ISPSoft সফটওয়্যার ব্যবহার করা হয়। WPLSoft ছোট প্রজেক্টের জন্য এবং ISPSoft বড় প্রজেক্টের জন্য উপযোগী।
7. **ABB – Automation Builder** – ABB-এর পিএলসি প্রোগ্রামিংয়ের জন্য Automation Builder সফটওয়্যার ব্যবহৃত হয়। এটি AC500 পিএলসি মডেলের জন্য প্রয়োগ করা হয়।
8. **Bosch Rexroth – IndraWorks** – Bosch Rexroth পিএলসির জন্য IndraWorks সফটওয়্যার ব্যবহার করা হয়। এটি মেশিন অটোমেশন প্রক্রিয়ার জন্য উপযোগী।
প্রতিটি পিএলসি সফটওয়্যার সাধারণত IEC 61131-3 স্ট্যান্ডার্ড অনুসরণ করে, যেখানে ল্যাডার ডায়াগ্রাম (Ladder Diagram), ফাংশন ব্লক ডায়াগ্রাম (Function Block Diagram), এবং স্ট্রাকচার্ড টেক্সট (Structured Text) এর মতো বিভিন্ন প্রোগ্রামিং ভাষা ব্যবহৃত হয়।
ল্যাডার ডায়াগ্রাম (Ladder Diagram) একটি গ্রাফিক্যাল প্রোগ্রামিং ভাষা যা পিএলসি (Programmable Logic Controller) প্রোগ্রামিংয়ে ব্যবহৃত হয়। এটি বৈদ্যুতিক নিয়ন্ত্রণ সার্কিটের জন্য বিশেষভাবে তৈরি করা হয়েছে এবং দেখতে একটি মইয়ের (ladder) মতো, যেখানে উল্লম্ব লাইনগুলো পাওয়ার লাইন এবং অনুভূমিক রংগুলো লজিকের প্রতিনিধিত্ব করে।
### ল্যাডার ডায়াগ্রামের মূল উপাদান:
1. **রেইলস (Rails):** – ল্যাডারের দুটি উল্লম্ব লাইন, যা পাওয়ার সাপ্লাইয়ের নির্দেশ করে। এগুলো লজিক ফ্লো বোঝাতে ব্যবহৃত হয়।
2. **রং (Rungs):** – অনুভূমিক রেখাগুলি লজিক্যাল অপারেশনের নির্দেশ করে। প্রতিটি রংয়ের মধ্যে ইনপুট এবং আউটপুট উপাদান থাকে, যা শর্ত এবং ক্রিয়াকলাপ পরিচালনা করে।
3. **কন্টাক্ট (Contacts):** – ইনপুট ডিভাইস বা শর্তের প্রতিনিধিত্ব করে। এটি সাধারণত সেন্সর, সুইচ বা অন্যান্য ইনপুটের সঙ্গে যুক্ত থাকে। কন্টাক্ট দুটি ধরনের হতে পারে:
– **Normally Open (NO):** শর্ত পূরণ হলে চালু হয়।
– **Normally Closed (NC):** শর্ত পূরণ না হলে চালু থাকে।
4. **কয়েল (Coil):** – আউটপুট ডিভাইসের প্রতিনিধিত্ব করে, যেমন মোটর, লাইট বা অন্যান্য অ্যাকচুয়েটর। কন্টাক্টের শর্ত পূরণ হলে কয়েল সক্রিয় হয়।
5. **টাইমার এবং কাউন্টার:** – টাইমার এবং কাউন্টার ল্যাডার ডায়াগ্রামে বিলম্ব বা গননার কাজ সম্পন্ন করতে ব্যবহৃত হয়।
একটি সাধারণ ল্যাডার ডায়াগ্রামে একটি সুইচ এবং একটি লাইট যুক্ত করা হতে পারে। যদি সুইচ চাপ দেওয়া হয়, তাহলে লাইটটি চালু হবে। এটি এমনভাবে কাজ করে যেন একটি বৈদ্যুতিক সার্কিটের লজিক চিত্রিত হয়েছে, যেখানে সুইচটি ইনপুট এবং লাইটটি আউটপুট হিসাবে কাজ করে।
ল্যাডার ডায়াগ্রামকে সহজে বোঝা যায় এবং এটি ঐতিহ্যবাহী বৈদ্যুতিক কন্ট্রোল সিস্টেমের ডিজাইনের উপর ভিত্তি করে তৈরি হয়েছে, এজন্য এটি পিএলসি প্রোগ্রামিংয়ে ব্যাপকভাবে ব্যবহৃত হয়।
ফাংশন ব্লক (Function Block) হল একটি প্রোগ্রামিং ইউনিট, যা সাধারণত পিএলসি প্রোগ্রামিংয়ে ব্যবহৃত হয়। এটি পূর্বনির্ধারিত বা কাস্টম তৈরি করা লজিক্যাল ফাংশনকে একটি ব্লকের আকারে উপস্থাপন করে। এই ব্লকের ইনপুট ও আউটপুট থাকে, এবং এর মাধ্যমে জটিল প্রক্রিয়া সহজভাবে প্রোগ্রাম করা যায়।
ফাংশন ব্লকগুলি **ফাংশন ব্লক ডায়াগ্রাম (Function Block Diagram)** বা **এফবিডি (FBD)** ভাষায় লেখা হয়, যা একটি ভিজ্যুয়াল প্রোগ্রামিং ভাষা। এতে বিভিন্ন ব্লক একসাথে সংযুক্ত করে লজিক তৈরি করা হয়। এটি বিশেষত অটোমেশন এবং নিয়ন্ত্রণ ব্যবস্থা প্রোগ্রামিংয়ে ব্যবহৃত হয়।
### ফাংশন ব্লকের মূল বৈশিষ্ট্য:
1. **ইনপুট এবং আউটপুট:** – প্রতিটি ফাংশন ব্লক এক বা একাধিক ইনপুট নেয় এবং একটি আউটপুট প্রদান করে। উদাহরণস্বরূপ, একটি টাইমার ব্লক তার ইনপুট হিসেবে সময় গ্রহণ করে এবং নির্দিষ্ট সময় শেষে আউটপুট প্রদান করে।
2. **রিইউজেবল (Reusable):** – একবার একটি ফাংশন ব্লক তৈরি করলে সেটি একাধিক স্থানে পুনরায় ব্যবহার করা যায়, ফলে জটিল লজিক তৈরি করা সহজ হয়।
3. **প্রিসেট ফাংশন:** – পিএলসি প্রোগ্রামিং সফটওয়্যারে অনেক প্রিসেট ফাংশন ব্লক দেওয়া থাকে, যেমন:
– **টাইমার (Timer):** নির্দিষ্ট সময় ধরে কোনো কাজ চালু বা বন্ধ করতে ব্যবহৃত হয়।
– **কাউন্টার (Counter):** কোনোকিছু গোনা বা ট্র্যাক করতে ব্যবহৃত হয়।
– **গাণিতিক ফাংশন (Mathematical Functions):** যোগ, বিয়োগ, গুণ, ভাগ ইত্যাদি গাণিতিক কাজ করতে ব্যবহৃত হয়।
4. **কাস্টম ফাংশন ব্লক:** – ব্যবহারকারীরা নিজেরা ফাংশন ব্লক তৈরি করতে পারেন, যা তাদের নির্দিষ্ট প্রয়োজনের জন্য ব্যবহৃত হতে পারে। একবার কাস্টম ফাংশন ব্লক তৈরি করা হলে, সেটি বিভিন্ন প্রোগ্রামে পুনরায় ব্যবহার করা যায়।
### উদাহরণ: একটি ফাংশন ব্লক হতে পারে একটি **ট্রিগার ফাংশন** (Trigger Function), যা একটি নির্দিষ্ট শর্ত পূরণ হলে আউটপুট প্রদান করে। ইনপুট হিসেবে একটি সেন্সরের ডেটা এবং আউটপুট হিসেবে একটি মোটর নিয়ন্ত্রণ করা যেতে পারে। যদি সেন্সরের মান নির্দিষ্ট সীমা অতিক্রম করে, তাহলে মোটরটি চালু হবে।
### সুবিধা:
– **সহজে বুঝতে পারা ও ব্যবহার:** ভিজ্যুয়াল পদ্ধতির মাধ্যমে লজিক ডিজাইন করা হয়, যা অনেক ব্যবহারকারী সহজেই বুঝতে পারে।
– **রিইউজেবিলিটি:** একবার তৈরি করা ফাংশন ব্লক বারবার ব্যবহার করা যায়, ফলে সময় সাশ্রয় হয়।
– **কমপ্লেক্স লজিক হ্যান্ডলিং:** জটিল লজিক সহজভাবে এবং কার্যকরভাবে প্রোগ্রাম করা যায়।
ফাংশন ব্লকগুলি জটিল অটোমেশন প্রক্রিয়া সহজ করার জন্য একটি শক্তিশালী হাতিয়ার হিসেবে কাজ করে।