সোমবার, ৫ জুন, ২০২৩

Timer এবং Counter

LADDER ডায়াগ্রামে টাইমার (Timer) কিভাবে ব্যাবহার করা হয়?

PLC তে টাইমার ব্যাবহৃত হয় সাধারনত কোন টাইম ইন্টারভেলকে’ (Time Interval) পরিমাপ করার জন্যউদাহরণস্বরূপ বলা যায় PLC কন্ট্রোল্ড ট্রাফিক সিগন্যাল, যেখানে টাইমার ব্যাবহৃত হয় নির্দিষ্ট সময় অনুসারে সিগন্যালিং ব্যাবস্থাকে চেঞ্জ করার জন্য PLC র মধ্যেই বিভিন্ন ধরনের টাইমার থাকে, অর্থাৎ Inbuilt থাকে এবং প্রয়োজন অনুসারে সেগুলিকে প্রোগ্রামের মধ্যে ব্যাবহার করা হয় LADDER ডায়াগ্রামে একটি বক্সের দ্বারা সাধারনত টাইমারকে বোঝানো হয়, এবং ওই বক্সের উপরে বা ভিতরে T 5, T 10 ইত্যদি নাম্বার দিয়ে ওই টাইমারটিকে নামকরণ করা হয় তবে কোম্পানির রকমফেরে টাইমার লেখার ধরনেও কিছু রকমফের হয়ে থাকে, এখানে বোঝার সুবিধার জন্য কেবলমাত্র SIEMENS এর তৈরি S7 300 বা S7 400 PLC তে ব্যাবহৃত টাইমারগুলি সম্পর্কে আলোচনা করা হয়েছে অর্থাৎ এখানে ব্যাবহৃত সকল সিম্বল এবং লেখার ধরন শুধুমাত্র SIEMENS এর তৈরি S7300 বা S7400 PLCর জন্যই প্রযোজ্য, অন্যান্য কোম্পানির PLCর টাইমারের সিম্বল এবং লেখার ধরন আলাদা হয়ে থাকে তবে সিম্বল এবং লেখার ধরন যাই হোক না কেন, যে কোন ধরনের টাইমারের বেসিক ওয়ার্কিং প্রিন্সিপাল কিন্তু সকল প্রকারের PLCর ক্ষেত্রেই এক হয় 

 

সব ধরনের টাইমারেই সাধারনত একটি Enable সিগন্যাল থাকে, যা কিনা টাইমারটিকে শুরু হওয়ার নির্দেশ দিয়ে থাকে টাইমারের সিম্বলে সাধারনত S, যার অর্থ Set দিয়ে সেটি বোঝানো হয় এবং টাইমারকে বন্ধ বা রিসেট করার জন্য R অথবা যার অর্থ Reset দিয়ে তা বোঝানো হয়ে থাকেঅর্থাৎ টাইমারের S পয়েন্ট Logic 1 হলে টাইমারটি চালু হবে এবং R পয়েন্ট Logic 1 হলে টাইমারটি রিসেট হয়ে যাবে LADDER ডায়াগ্রামে টাইমারের আউটপুটকে Q দিয়ে বোঝানো হয় এবং সেটি সাধারনত সবসময় Logic 0 হয়েই থাকে এবং সেটি NO এবং NC এই দুই ধরনের লজিকেই বিভিন্ন সার্কিটে ব্যাবহার করা যায় টাইমারের এই Q আউটপুটকে ব্যাবহার করে PLCর কোন কয়েলকে বা আউটপুটকে অ্যাক্টিভেট করা হয়ে থাকেটাইমারের টাইম ভ্যালু কত হবে, তা সাধারনত টাইমারের সিম্বলে TV বা Time Value, এই পয়েন্টে লেখা থাকে সাধারনত টাইম ভ্যালু লেখার জন্য TV পয়েন্টে “S5T#aH_bM_cS_dMS”, এইভাবে লেখা হয় (শুধুমাত্র SIEMENS এর তৈরি PLCর ক্ষেত্রে)এখানে H এর অর্থ Hour বা ঘন্টা, M এর অর্থ Minute, S এর অর্থ Second এবং MSএর অর্থ Milli Second, এবং a,b,c ও d হল নিউম্যারিক ভ্যালু।  S5T# এই লেখাটি দিয়ে শুধুমাত্র  S5 টাইমারকে বোঝানোর জন্য লেখা হয়ে থাকে উদাহরণস্বরূপ কোন টাইমারের টাইম ভ্যালু 5 Minute 3 Second হলে TV পয়েন্টে লেখা হবে S5T#5M_3S কিছু PLCর ক্ষেত্রে আবার টাইমারের সিম্বলের সাথেই সরাসরি টাইম ভ্যালু লেখা হয়ে থাকেনিম্নলিখিত বিভিন্ন প্রকারের টাইমারের ব্যাবহার PLC তে দেখা যায়  

 অন-ডিলে টাইমার (On-Delay Timer)

রিটেন্টিভ অন-ডিলে টাইমার (Retentive On-Delay Timer)

অফ-ডিলে টাইমার (Off-Delay Timer)

পালস টাইমার (Pulse Timer)

এক্সটেন্ডেড পালস টাইমার ( Extended Pulse Timer)

 

অন-ডিলে টাইমার (On-Delay Timer) বা S_ODT

অন-ডিলে টাইমারের অর্থ এই টাইমারের সাহায্যে কোন একটি আউটপুটকে কিছু নির্দিষ্ট সময় পর ON করাএখানে টাইমারটিকে চালু বা Enable করার জন্য একটি Set সিগন্যাল ব্যাবহার করা হয় এবং একটি নির্দিষ্ট সময় পর টাইমারের আউটপুট Q যখন ‘High’ হবে, তখন সেটি PLCর কোন কয়েল বা আউটপুটকে ON করার জন্য ব্যাবহার করা হয়ে থাকে অন-ডিলে টাইমারকে OFF করার জন্য সাধারনত Set সিগন্যালকে OFF করার প্রয়োজন হয়, অথবা টাইমারকে যে কোন অবস্থায় রিসেট করার জন্য R বা Reset সিগন্যাল ব্যাবহার করা হয় LADDER ডায়াগ্রামে অন-ডিলে টাইমারকে S_ODTসিম্বল দিয়ে বোঝানো হয় (SIEMENS এর তৈরি PLCর ক্ষেত্রে)নিচে একটি অন-ডিলে টাইমার ঠিক কিভাবে LADDER ডায়াগ্রামে লেখা হয়, তা দেখানো হয়েছে এবং পাশাপাশি ওই টাইমারের টাইমিং ডায়াগ্রামও দেওয়া হয়েছে

 

উপরের ছবি অনুসারে এখানে যে টাইমারটি ব্যাবহার করা হয়েছে, তার নম্বর হল T5 (PLC র মধ্যে এই ধরনের অনেকগুলি টাইমার ইনবিল্ট দেওয়া থাকে) এবং এটি একটি অন-ডিলে টাইমার (S_ODT সিম্বল দিয়ে বোঝানো হয়েছে) এখানে টাইমারটিকে Enable করার জন্য I 2.3 এই ইনপুটকে Set সিগন্যাল হিসাবে ব্যাবহার করা হয়েছেঅর্থাৎ এই I 2.3 ইনপুট যখন ON বা স্ট্যাটাস Logic 1 হবে তখন T5 টাইমারটি চালু বা Enable হবে এখানে টাইমারটিতে সময় বা Time Value দেওয়া হয়েছে 15 সেকেন্ড (TV তে দেওয়া হয়েছে S5T#15S) এবং টাইমারটি একটি PLC আউটপুট     Q 1.5 কে ON করার জন্য ব্যাবহার করা হয়েছে এই সার্কিট অনুসারে  I 2.3 এই ইনপুটটি যে মুহুর্তে  ON হবে, তৎক্ষণাৎ T5 টাইমারটিও চালু হয়ে যাবে এবং এর 15 সেকেন্ড পর Q এর স্ট্যাটাস ‘High’ হবে, যা কিনা একটি PLC আউটপুট Q 1.5 কে অ্যাক্টিভেট করবে বা স্ট্যাটাস Logic 1 হবে এরপর ওই আউটপুট Q 1.5 ততক্ষনই অ্যাক্টিভেট থাকবে, যতক্ষণ I 2.3 এই ইনপুটটি ON বা Logic 1 থাকবেটাইমারের আউটপুটকে বন্ধ করার জন্য  I 2.3 এই ইনপুটটিকে OFF বা Logic 0 করতে হবেএখন এই আউটপুট Q 1.5 কে ব্যাবহার করে কোন লাইটকে দেরিতে জ্বালানো বা কোন মোটরকে কিছু সময় পরে স্টার্ট করা ইত্যাদি কাজে ব্যাবহার করা যেতে পারে এখানে   I 2.4 ইনপুটকে ব্যাবহার করা হয়েছে টাইমারটিকে রিসেট করার জন্য, অর্থাৎ I 2.4 এর স্ট্যাটাস Logic 1 করা হলে টাইমারটির টাইম ভ্যালু যে কোন অবস্থায় রিসেট হয়ে যাবে এবং সেক্ষেত্রে টাইমারটি পুনরায় প্রথম থেকে টাইম কাউন্ট শুরু করবে যদি ওই অবস্থায় টাইমারের আউটপুট অর্থাৎ Q এর স্ট্যাটাস ‘High’ হয়েও থাকে, তবে তা OFF হয়ে যাবে          

রিটেন্টিভ অন-ডিলে টাইমার (Retentive On-Delay Timer) বা ‘S_ODTS’

রিটেন্টিভ অন-ডিলে টাইমারের কর্মপদ্ধতি অনেকটা অন-ডিলে টাইমারের মতই, শুধুমাত্র এই ধরনের টাইমারের ক্ষেত্রে Enable ইনপুট বন্ধ হয়ে গেলেও টাইমারটি চালু অবস্থায় থাকে এবং টাইমারটির চালু হওয়ার নির্দিষ্ট সময় পর আউটপুট পাওয়া যায়অর্থাৎ রিটেন্টিভ অন-ডিলে টাইমার Enable সিগন্যাল পাওয়ার কিছুক্ষন পর আউটপুটকে ON করে এবং সেটি ততক্ষনই ON থাকে যতক্ষণ না টাইমারটিতে Reset সিগন্যাল পাঠানো হচ্ছে LADDER ডায়াগ্রামে রিটেন্টিভ অন-ডিলে টাইমারকে S_ODTSসিম্বল দিয়ে বোঝানো হয় (SIEMENS এর তৈরি PLCর ক্ষেত্রে)নিচের ছবিতে PLCতে রিটেন্টিভ অন-ডিলে টাইমারকে কিভাবে লেখা হয় তা দেখানো হয়েছে এবং পাশাপাশি টাইমিং ডায়াগ্রামও দেওয়া হয়েছে

  

উপরের ছবি এবং টাইমিং ডায়াগ্রাম অনুসারে রিটেন্টিভ অন-ডিলে টাইমারের ON হওয়ার সিকোসেন্স পূর্বে আলোচনা করা অন-ডিলে টাইমার এর মতইএক্ষেত্রেও টাইমারটির Enable সিগন্যাল  I 2.3 পাওয়ার ঠিক 15 সেকেন্ড পর আউটপুট Q 1.5 অ্যাক্টিভেট হবে (সময়ের হিসাব পূর্বে অন-ডিলে টাইমারের আলোচনার সময় বোঝানো হয়েছে) শুধুমাত্র ব্যাতিক্রম এই ধরনের টাইমারের ক্ষেত্রে Enable সিগন্যাল I 2.3 এই ইনপুটটিকে ON করার পর OFF করে দিলেও, অর্থাৎ ইনপুটের স্ট্যাটাস একবার Logic 1 করার পর টাইম ভ্যালুর পূর্বেই Logic 0 করা হলেও টাইমারটি চালু অবস্থায় থাকে, ফলে 15 সেকেন্ড পর আউটপুউট ON হয়ে যায় এবং PLCর আউটপুট Q 1.5 ও অ্যাক্টিভেট হয়এখন এই সার্কিট অনুসারে টাইমারটিকে Reset বা OFF  করার জন্য  ইনপুট I 2.4 কে ব্যাবহার করা হয়েছে এখন যদি ইনপুট I 2.4 কে অ্যাক্টিভেট বা Logic 1 করা হয়, তবে তৎক্ষণাৎ টাইমারটির আউটপুটও OFF হয়ে যাবে এবং সাথে সাথে PLCর আউটপুট Q 1.5 ও ডি-অ্যাক্টিভেট বা স্ট্যাটাস logic 0  হয়ে যাবে।       

অফ-ডিলে টাইমার (Off-Delay Timer) বা ‘S_OFFDT’

অফ-ডিলে টাইমারের ক্ষেত্রে Enable সিগন্যাল পাওয়ার সঙ্গে সঙ্গেই টাইমারের আউটপুটও ON হয়ে যায়, কিন্তু Enable সিগন্যাল বন্ধ বা OFF করে দিলেও টাইমারটির আউটপুট কিন্তু সঙ্গে সঙ্গে বন্ধ হয়ে যায় না, সেটি টাইমার নির্দেশিত সময় আনুসারে কিছু সময় পর বন্ধ হয়অর্থাৎ অফ-ডিলে টাইমারকে Enable করলে তা সঙ্গে সঙ্গে আউটপুটকেও ON করে, কিন্তু Enable সিগন্যাল বন্ধ করার কিছু সময় পর টাইমারের আউটপুট OFF হয় LADDER ডায়াগ্রামে অফ-ডিলে টাইমারকে S_OFFDTসিম্বল দিয়ে বোঝানো হয় (SIEMENS এর তৈরি PLCর ক্ষেত্রে) নিচের ছবিতে অফ-ডিলে টাইমারকে কিভাবে লেখা হয় তা দেখানো হয়েছে এবং পাশাপাশি টাইমিং ডায়াগ্রামও দেওয়া হয়েছে

   

উপরের ছবি এবং টাইমিং ডায়াগ্রাম অনুসারে অফ-ডিলে টাইমারে ইনপুট I 2.3 কে ON বা Logic 1 করার সঙ্গে সঙ্গেই Q 1.5 এই আউটপুটটিও ON হয়ে যায়, কিন্তু ইনপুট    I 2.3 কে OFF বা Logic 0 করা হলে তৎক্ষণাৎ আউটপুট Q 1.5 এর স্ট্যাটাস Logic 0 বা OFF হবে নাআউটপুটটি অর্থাৎ Q 1.5, ইনপুট I 2.3 কে OFF করার ঠিক 15 সেকেন্ড পর বন্ধ বা OFF হয়ে যাবে (সময়ের হিসাব পূর্বে অন-ডিলে টাইমারের আলোচনার সময় বোঝানো হয়েছে) অর্থাৎ অফ-ডিলে টাইমারে যতক্ষণ Enable ইনপুট উপস্থিত রয়েছে, ততক্ষন টাইমারের টাইম ভ্যালু কাউন্ট বা গোনা শুরু হবে না, কিন্তু যেই মুহুর্তে Enable  সিগন্যালকে  OFF করা হবে, ঠিক সেই মুহুর্তেই টাইমারটির টাইম গোনা (Time Count) শুরু হবে এবং নির্দিষ্ট সময় পৌঁছানোর পরই (এক্ষেত্রে 15  সেকেন্ড) টাইমারের আউটপুট OFF হয়ে যাবে এখানে টাইমারের টাইম ভ্যালুকে যে কোন অবস্থায় রিসেট করার জন্য ইনপুট I 2.4 কে ব্যাবহার করা হয়েছে এক্ষেত্রে ইনপুট I 2.4 কে অ্যাক্টিভেট বা Logic 1 করা হলে টাইমারটির আউটপুটও OFF হয়ে যাবে এবং সাথে সাথে PLCর আউটপুট Q 1.5 ও ডি-অ্যাক্টিভেট বা স্ট্যাটাস logic 0  হয়ে যাবে।       

পালস টাইমার (Pulse Timer) বা ‘S_PULSE’

পালস টাইমারের ক্ষেত্রে Enable সিগন্যাল পাওয়ার সঙ্গে সঙ্গেই টাইমারের আউটপুটও ON হয়ে যায়, কিন্তু এক্ষেত্রে টাইমারের Enable সিগন্যাল উপস্থিত থাকলেও নির্দিষ্ট সময় পর টাইমারের আউটপুট OFF হয়ে যায়LADDER ডায়াগ্রামে পালস টাইমারকে S_PULSE’ সিম্বল দিয়ে বোঝানো হয় (SIEMENS এর তৈরি PLCর ক্ষেত্রে)নিচের ছবিতে পালস টাইমারকে কিভাবে লেখা হয় তা দেখানো হয়েছে এবং পাশাপাশি টাইমিং ডায়াগ্রামও দেওয়া হয়েছে

 

 উপরের ছবি ও টাইমিং ডায়াগ্রাম অনুসারে পালস টাইমারে ইনপুট I 2.3 কে ON বা স্ট্যাটাস Logic 1 করার সঙ্গে সঙ্গেই Q 1.5 এই আউটপুটটিও ON হয়ে যাবে, এবং ইনপুট I 2.3 কে OFF বা স্ট্যাটাস Logic 0 করলে তৎক্ষণাৎ আউটপুট Q 1.5ও OFF হয়ে যাবেকিন্তু এই ধরনের টাইমারের ক্ষেত্রে আউটপুটটি অর্থাৎ Q 1.5, ইনপুট I 2.3 কে ON করে রাখলেও ঠিক 15 সেকেন্ড পর তা বন্ধ বা OFF হয়ে যাবে (সময়ের হিসাব পূর্বে অন-ডিলে টাইমারের আলোচনার সময় বোঝানো হয়েছে) এখানেও টাইমারের টাইম ভ্যালুকে যে কোন অবস্থায় রিসেট করার জন্য ইনপুট I 2.4 কে ব্যাবহার করা হয়েছে এবং সেক্ষেত্রে ইনপুট I 2.4 কে অ্যাক্টিভেট বা Logic 1 করা হলে টাইমারটির আউটপুটও OFF হয়ে যাবে

এক্সটেন্ডেড পালস টাইমার ( Extended Pulse Timer) বা ‘S_PEXT’

এক্সটেন্ডেড পালস টাইমারের কর্মপদ্ধতি অনেকটা পালস টাইমারের মতই, শুধুমাত্র এক্ষেত্রে টাইমারের Enable সিগন্যাল বন্ধ করা হলেও টাইমারের আউটপুট একটি নির্দিষ্ট সময় পরই বন্ধ হয়LADDER ডায়াগ্রামে এক্সটেন্ডেড পালস টাইমারকে S_PEXT’ সিম্বল দিয়ে বোঝানো হয় (SIEMENS এর তৈরি PLCর ক্ষেত্রে)নিচের ছবিতে এক্সটেন্ডেড পালস টাইমারকে PLCতে কিভাবে লেখা হয় তা দেখানো হয়েছে এবং পাশাপাশি টাইমিং ডায়াগ্রামও দেওয়া হয়েছে

 

উপরের ছবি এবং টাইমিং ডায়াগ্রাম অনুসারে এক্সটেন্ডেড পালস টাইমারের ইনপুট   I 2.3 কে ON বা স্ট্যাটাস Logic 1 করার সঙ্গে সঙ্গেই Q 1.5 এই আউটপুটটিও ON হয়ে যাবে, এবং ইনপুট I 2.3 কে OFF বা স্ট্যাটাস Logic 0 করা হলেও তৎক্ষণাৎ আউটপুট Q 1.5 এর স্ট্যাটাস Logic 0 হবে না, সেটি ঠিক 15 সেকেন্ড পর বন্ধ বা OFF হয়ে যাবে অফ ডিলে টাইমারের সাথে এই ধরনের টাইমারের মূল পার্থক্য হল, এক্ষেত্রে আউটপুটটি অর্থাৎ Q 1.5 এর স্ট্যাটাস, ইনপুট I 2.3 কে ON করে রাখলেও ঠিক 15 সেকেন্ড পর OFF বা Logic 0 হয়ে যাবে এখানেও টাইমারের টাইম ভ্যালুকে যে কোন অবস্থায় রিসেট করার জন্য ইনপুট I 2.4 কে ব্যাবহার করা হয়েছে এবং এক্ষেত্রেও ইনপুট I 2.4 কে অ্যাক্টিভেট বা Logic 1 করা হলে টাইমারটির আউটপুটও OFF বা Logic 0 হয়ে যাবে

 

LADDER ডায়াগ্রামে কাউন্টার (Counter) কিভাবে ব্যাবহার করা হয়

কাউন্টার নামটি থেকেই বোঝা যায় এটি ব্যাবহার করা হয় সাধারনত কোন বস্তুকে গোনা বা Count করার জন্যPLC র ক্ষেত্রে এই কাউন্টার সাধারনত কোন সিগন্যালের UP এবং DOWN কাউন্ট করে থাকে যেমন কোন বটলিং প্ল্যান্টে কতগুলি বোতল কনভেয়ারের মধ্যে দিয়ে যাচ্ছে তা কোন সেন্সরের সিগন্যালের মধ্য দিয়ে যদি PLCর কাউন্টারে পাঠানো হয়, তবে কাউন্টার শুধুমাত্র ওই সেন্সরের সিগন্যালের তারতম্য অনুসারে কতগুলি বোতল কনভেয়ারের মধ্য দিয়ে যাচ্ছে, তা গুনতে বা Count করতে সক্ষম কাউন্টারকে সাধারনত দুই ভাবে ব্যাবহার করা হয়ে থাকেপ্রথমটিতে কাউন্টারের ভ্যালু একটি নির্দিষ্ট সংখ্যায় পৌঁছানোর পর কোন একটি ঘটনা বা Event কে সম্পন্ন করা, যেমন পূর্বের উদাহরন অনুসারে বলা যেতে পারে দশটি বোতল গোনার পর সেগুলি প্যাকিং এর জন্য আলাদা করা হবেসেক্ষেত্রে কাউন্টারটি প্রতি দশটি বোতল গোনার পর একটি আউটপুটকে ON করবে যা কিনা বোতলগুলিকে প্যাকিং করার সিগন্যাল হিসাবে গন্য হবে আবার দ্বিতীয় ভাবে কাউন্টারের একটি আউটপুটকে ততক্ষন ON করে রাখা যায়, যতক্ষণ না একটি নির্দিষ্ট সংখ্যার সিগন্যাল ওই কাউন্টারে এসে পৌঁছাচ্ছেনির্দিষ্ট সংখ্যায় পৌঁছানোর পর কাউন্টার ওই আউটপুটকে OFF করে থাকে

PLCতে টাইমারের মতই অনেকগুলি কাউন্টার PLCCPU এর মধ্যেই Inbuilt থাকে এবং শুধুমাত্র প্রয়োজন অনুসারে সেগুলিকে প্রোগ্রামের মধ্যে ব্যাবহার করা হয়LADDER ডায়াগ্রামে একটি বক্সের দ্বারা সাধারনত কাউন্টারকে বোঝানো হয়, এবং ওই বক্সের উপরে C5, C10 ইত্যদি নাম্বার দিয়ে ওই কাউন্টারকে নির্দিষ্ট করা হয় এবং কাউন্টারে পাঠানো ইনপুট সিগন্যালের তারতম্য অর্থাৎ Logic 0 এবং Logic 1 অনুসারে কাউন্ট করা হয়ে থাকে টাইমারের মতই কাউন্টারের ক্ষেত্রেও কোম্পানির প্রকারভেদে LADDER ডায়াগ্রামে কাউন্টারকে বিভিন্নভাবে লেখা বা বর্ননা করা হয়তবে এখানে বোঝার সুবিধার জন্য কেবলমাত্র SIEMENS এর S7300 বা S7400 PLC তে ব্যাবহৃত টাইমারগুলি সম্মন্ধেই আলোচনা করা হয়েছেঅর্থাৎ এখানে ব্যাবহৃত সকল সিম্বল এবং লেখার ধরন শুধুমাত্র SIEMENS এর তৈরি S7300 বা S7400 PLCর জন্যই প্রযোজ্য, অন্যান্য কোম্পানির PLCর কাউন্টারের সিম্বল এবং লেখার ধরন আলাদা হয়ে থাকে তবে সিম্বল এবং লেখার ধরন যাই হোক না কেন, যে কোন ধরনের কাউন্টারের বেসিক ওয়ার্কিং প্রিন্সিপাল কিন্তু সকল প্রকারের PLCর ক্ষেত্রেই এক হয় 

PLCতে কাউন্টারের সাহায্যে Up Count এবং Down Count এই দুই ধরনের কাউন্টিংই করা যেতে পারে এবং এই উদ্দেশ্যে সাধারনত দুই ধরনের কাউন্টার ব্যাবহার করা হয়ে থাকে, এগুলি হল কাউন্ট-আপ কাউন্টার (Count-Up Counter) এবং কাউন্ট-ডাউন কাউন্টার (Count Down Counter)আবার কিছু PLCতে কাউন্ট আপ এবং কাউন্ট ডাউন একই কাউন্টারের মধ্যে ব্যাবহার করা হয় এবং সেক্ষেত্রে ওই PLC তে Count Up/Down কাউন্টার ব্যাবহার করা হয়ে থাকেপরবর্তীতে এই তিন ধরনের কাউন্টার সম্পর্কে আলোচনা করা হল 

 কাউন্ট-আপ কাউন্টার (Count-Up Counter)

LADDER ডায়াগ্রামে কাউন্ট-আপ কাউন্টারকে S_CU দিয়ে বোঝানো হয় (SIEMENS এর তৈরি PLC এর ক্ষেত্রে) নিচে একটি কাউন্ট-আপ কাউন্টারকে LADDER ডায়াগ্রামে কিভাবে লেখা হয় তা দেওয়া হল এবং পাশে টাইমিং ডায়াগ্রাম দেখানো হল  

উপরের ছবি এবং টাইমিং ডায়াগ্রাম অনুসারে এখানে যে কাউন্ট-আপ কাউন্টারটি ব্যাবহার করা হয়েছে সেটির নাম্বার হল C5ইনপুট I 2.3 কে এখানে CU পয়েন্টের সাথে যোগ করা হয়েছে এবং এটি কাউন্টিং সিগন্যালের ইনপুট হিসাবে ধরা হয়েছে, অর্থাৎ ইনপুট   I 2.3 তে আসা প্রতিটি পালসকে অর্থাৎ Logic 0 থেকে Logic 1, কাউন্টারটি গুনতে থাকবে এবং এক্ষেত্রে কাউন্টিং ভ্যালু Up হবে অর্থাৎ কাউন্টারটি প্রতিটি পালসকে একে একে পরপর যোগ করতে থাকবে (টাইমিং ডায়াগ্রাম দ্রষ্টব্য)এখানে কাউন্টারটির PV তে অর্থাৎ Preset Value তে 6 দেওয়া হয়েছে, এর অর্থ কাউন্টারটির ইনপুট I 2.3 তে আসা পালসগুলি গুনতে গুনতে যখন ছয় বা তার বেশী হবে, তখন C5 কাউন্টারটির আউটপুট High হবে অর্থাৎ কাউন্টারের আউটপুট Q অ্যাক্টিভেট হবে এখানে C5  কাউন্টারটির আউটপুট অর্থাৎ Q কে ব্যাবহার করা হয়েছে PLCর আউটপুট Q 1.5 কে অ্যাক্টিভেট বা ON করার জন্য অর্থাৎ কাউন্টারের আউটপুট Q অ্যাক্টিভেট হলে PLCর আউটপুট Q 1.5 এর স্ট্যাটাস Logic 1 হবে 

এখানে ইনপুট  I 2.4 কে S পয়েন্টের সঙ্গে যুক্ত করা হয়েছে অর্থাৎ PLCর এই ইনপুটটি ব্যাবহার করা হয়েছে কাউন্টারটিকে Set করার জন্য কাউন্টারটিকে Set করার অর্থ     I 2.4 এর স্ট্যাটাস Logic 1 হলেই কেবলমাত্র কাউন্টারটি অ্যাক্টিভেট হবে এবং ঠিক ওই অবস্থায় কাউন্টারটি প্রিসেট ভ্যালু অনুসারে (এক্ষেত্রে 6 পর্যন্ত) গোনার জন্য সেট হয়ে যাবে এবং পরবর্তীতে ইনপুট I 2.3 তে আসা প্রতিটি পালসকে ওই কাউন্টার কাউন্ট করা শুরু করবে এখানে আর একটি ইনপুট I 2.5 কে ব্যাবহার করা হয়েছে কাউন্টারটিকে যে কোন অবস্থায় Reset করার জন্যএই রিসেট করার অর্থ ইনপুট     I 2.5 এর ইনপুটকে Logic 1 করা হলে কাউন্টারটির যে কোন অবস্থায় পূর্ববর্তী সকল কাউন্টিং ভ্যালু শূন্য বা Zero হয়ে যাবে বোঝার সুবিধার জন্য কাউন্টারের ডায়াগ্রামের পাশেই একটি কাউন্ট-আপ টাইমিং ডায়াগ্রাম দেওয়া হয়েছে এবং এই টাইমিং ডায়াগ্রামের ক্ষেত্রে কাউন্টারের প্রিসেট-ভ্যালু বা PV কে 6 ধরা হয়েছে 

 কাউন্ট-ডাউন কাউন্টার (Count-Down Counter)

কাউন্ট-ডাউন কাউন্টারের কর্মপদ্ধতি মোটামুটি অনেকটা কাউন্ট-আপ কাউন্টারের মতই, এক্ষেত্রে কাউন্ট-ডাউন কাউন্টারকে LADDER ডায়াগ্রামে S_CD দিয়ে বোঝানো হয় (SIEMENS এর তৈরি PLC এর ক্ষেত্রে) নিচে একটি  LADDER ডায়াগ্রামের সাহায্যে PLCতে কাউন্ট-ডাউন কাউন্টার কিভাবে লেখা হয় তা দেখানো হয়েছে এবং পাশে টাইমিং ডায়াগ্রাম দেওয়া হয়েছে

 

এখানে ইনপুট I 2.3 কে কাউন্টারের CD পয়েন্টের সাথে যুক্ত করা হয়েছেঅর্থাৎ এক্ষেত্রে ইনপুট I 2.3 তে আগত প্রতিটি পালসকে অর্থাৎ Logic 0 থেকে Logic 1 কাউন্ট ডাউন সিগন্যাল হিসাবে গন্য করা হবে এখানে ইনপুট I 2.4  এবং I 2.5 কে এক্ষেত্রে যথাক্রমে Set এবং Reset ইনপুট হিসাবে নেওয়া হয়েছে এবং Q 1.5কে কাউন্টারের আউটপুট সিগন্যাল হিসাবে ধরা হয়েছেকাউন্টারের  Preset Value বা PV তে যে ভ্যালু দেওয়া রয়েছে (এক্ষেত্রে 10), ইনপুট I 2.3তে আগত প্রতিটি পালসের জন্য ওই ভ্যালু থেকে একে একে কাউন্ট ডাউন অর্থাৎ মাইনাস হতে থাকবে এবং যখন ওই ভ্যালু শূন্য বা Zero হয়ে যাবে, তখন কাউন্টারের Q অ্যাক্টিভেট হবে এবং সাথে সাথে PLCর Q 1.5 এর আউটপুটও Logic 1 হবে এখানেও বোঝার সুবিধার জন্য কাউন্টারের ডায়াগ্রামের পাশেই একটি কাউন্ট-ডাউন টাইমিং ডায়াগ্রাম দেওয়া হয়েছে এবং এই টাইমিং ডায়াগ্রামের ক্ষেত্রেও কাউন্টারের প্রিসেট-ভ্যালু বা PVকে 6 ধরা হয়েছে।     

  আপ-ডাউন কাউন্টার (Count Up/Down Counter)

আপ-ডাউন কাউন্টারকে LADDER ডায়াগ্রামে S_CUD দিয়ে বোঝানো হয় (SIEMENS এর তৈরি PLC এর ক্ষেত্রে) নিচে একটি  LADDER ডায়াগ্রামে আপ-ডাউন কাউন্টার কিভাবে লেখা হয় তা দেখানো হল, এবং পাশে টাইমিং ডায়াগ্রাম দেওয়া হল

উপরের ছবি অনুসারে এখানে যে আপ-ডাউন কাউন্টারটি ব্যাবহার করা হয়েছে সেটি হল C5ইনপুট I 2.2 কে এখানে CU বা কাউন্ট-আপ পয়েন্টের সাথে যোগ করা হয়েছে অর্থাৎ ইনপুট I 2.2 তে আসা প্রতিটি পালসকে অর্থাৎ Logic 0 থেকে Logic 1, কাউন্টারটি কাউন্টিং Up হিসাবে গন্য করবেএর অর্থ কাউন্টারটি ইনপুট I 2.2 তে আসা প্রতিটি পালসকে এক একে পরপর যোগ করতে থাকবে ঠিক সেইরকম ইনপুট   I 2.3কে কাউন্টারের CD বা কাউন্ট-ডাউন পয়েন্টের সাথে যুক্ত করা হয়েছেএক্ষেত্রে ইনপুট I 2.3তে আগত প্রতিটি পালসকে অর্থাৎ Logic 0 থেকে Logic 1, কাউন্ট ডাউন সিগন্যাল হিসাবে গন্য করা হবে কাউন্ট আপ এবং কাউন্ট ডাউন সিগন্যালের সম্মিলিত যোগ বিয়োগের ফলে যখন কাউন্টারটি প্রিসেট ভ্যালুতে দেওয়া মানে (এক্ষেত্রে 10) পৌঁছাবে, তখন কাউন্টারের আউটপুট Q অ্যাক্টিভেট হবে, যা কিনা PLCর আউটপুট  Q 1.5 কে অ্যাক্টিভেট করবে বা স্ট্যাটাস Logic 1 হবেএখানে ইনপুট I 2.4 কে S পয়েন্টের সঙ্গে যুক্ত করা হয়েছে অর্থাৎ PLCর এই ইনপুটটি ব্যাবহার করা হয়েছে কাউন্টারটিকে Set করার জন্য এবং ইনপুট I 2.5 কে ব্যাবহার করা হয়েছে কাউন্টারটিকে যে কোন অবস্থায় Reset করার জন্য এক্ষেত্রেও বোঝার সুবিধার জন্য কাউন্টারের ডায়াগ্রামের পাশেই একটি কাউন্ট আপ-ডাউন টাইমিং ডায়াগ্রাম দেওয়া হয়েছে এবং এই টাইমিং ডায়াগ্রামের ক্ষেত্রে কাউন্টারের প্রিসেট-ভ্যালু বা PVকে  এখানে 4 ধরা হয়েছে। 

 

ফান্ডামেন্টালস অফ LADDER প্রোগ্রামিং

LADDER  প্রোগ্রামিং বা ডায়াগ্রাম কি? 

LADDER ডায়াগ্রাম হল একটি গ্রাফিক্যাল প্রোগ্রামিং ল্যাঙ্গুয়েজ যা কিনা কিছু লজিক্যাল অপারেশানকে সিম্বলিক নোটেশানের সাহায্যে বর্ননা করা হয়ে থাকে। LADDER ডায়াগ্রামের সাহায্যে প্রোগ্রামিং করতে হলে প্রধানত কিছু লজিক সিম্বলের ব্যাবহার করা হয় এবং সিরিজ অফ RAIL এবং RUNG এর সাহায্যে প্রোগ্রাম লেখা হয়ে থাকেপ্রথমেই বলে রাখা ভালো এখানে যে LADDER  প্রোগ্রামিং সম্মন্ধে আলোচনা করা হয়েছে, তা মূলত SIEMENS এর তৈরি PLC‘LADDER Language’কে মাথায় রেখে, অর্থাৎ এখানে ব্যাবহৃত বিভিন্ন সিম্বল এবং ডায়াগ্রাম লেখার ধরন অনেকটা SIEMENS এর তৈরি PLCLADDER Diagram এর মত যদিও অন্যান্য কোম্পানিগুলি যেমন ALLEN-BRADLEY, MITSUBISHI, FANUC, DELTA, OMRON ইত্যাদির PLC তে ব্যাবহৃত বিভিন্ন সিম্বল এবং তাদের ‘LADDER Diagram’ লেখার ধরন মোটামুটিভাবে অনেকটা SIEMENS এর মতইতাই এখানে বোঝার সুবিধার জন্য কখনো কখনো অন্য কোম্পানিগুলির সিম্বলও ব্যাবহার করা হয়েছে সুতরাং এখানে দেখানো LADDER ডায়াগ্রাম কোন একটি নির্দিষ্ট কোম্পানির লেখা PLCর মতন হুবহু নাও হতে পারেএখানে প্রথমেই সিম্বলগুলির পরিচিতি দেওয়া হয়েছে এবং পরবর্তীতে ওই সিম্বলগুলি ব্যাবহার করে কিভাবে LADDER প্রোগ্রামিং করা হয় তা উদাহরনের সাহায্যে বোঝানো হয়েছেLADDER প্রোগ্রামিং এর ক্ষেত্রে সাধারনত দুটি প্রধান সিম্বল ব্যাবহার করা হয়, একটি হল কন্টাক্ট (Contact) ও অপরটি কয়েল (Coil) এছাড়াও LADDER প্রোগ্রামিং এ মাঝে মাঝে বিভিন্ন ধরনের ‘Box’ সিম্বল ব্যাবহার করা হয়, এই Box সিম্বল দিয়ে LADDER ডায়াগ্রামে সাধারনত টাইমার, কাউন্টার ইত্যাদিকে বোঝানো হয়। 

LADDER  প্রোগ্রামিং বা ডায়াগ্রাম কিভাবে লেখা হয়?

LADDER প্রোগ্রামিং এ বিভিন্ন ধরনের সিম্বল এবং লজিক্যাল এক্সপ্রেশান যেমন AND, OR, NOT ইত্যাদি ব্যাবহার করা হয়, এবং এই লজিক্যাল এক্সপ্রেশানগুলির সাহায্যে সাধারনত Normally Open অথবা Normally Closed কন্টাক্ট এবং Series অথবা Parallel কানেকশানের বর্ননা করা হয়ে থাকে। LADDER ডায়াগ্রামে সাধারনত দুটি Rail থাকে, একটি ডান দিকে এবং অপরটি বাম দিকে, এবং বিভিন্ন কন্টাক্ট, কয়েল, লজিক্যাল এক্সপ্রেশান ইত্যাদি এই দুটি লাইনের মাঝেই লেখা হয়। লাইনের মাঝে ব্যাবহৃত প্রতিটি কম্পোনেন্ট ইন্টারকানেক্টেড এবং সাথে সাথে দুইদিকের লাইনের সাথে সংযুক্ত থাকে, যাকে কিনা একটি Rung বলা হয়, এবং  এই ধরনের অনেকগুলি Rung এর সমন্বয়ে বা পরপর লিখে একটি সম্পুর্ন PLC প্রোগ্রাম লেখা হয়ে থাকে। LADDER ডায়াগ্রামে ধারনত দুটি principal symbol ফাংশান ব্যাবহার করা হয়ে থাকে, এগুলি হল Contact এবং CoilContact কে সাধারনত ইনপুট এলিমেন্ট হিসাবে ধরা হয় এবং Coil কে আউটপুট এলিমেন্ট হিসাবে দেখানো হয়ে থাকে। এছাড়াও LADDER প্রোগ্রামিং এ বিভিন্ন ধরনের ‘Box’ সিম্বল ব্যাবহার করা হয়, টাইমার, কাউন্টার ইত্যাদিকে বোঝানোর জন্য নিচের ছবিতে LADDER ডায়াগ্রামের একটি কমন ফরম্যাট দেখানো হল।

Ladder ডায়াগ্রামে ব্যাবহৃত বিভিন্ন এলিমেন্ট

নিচের ছবিতে একটি LADDER ডায়াগ্রামে ব্যাবহৃত বিভিন্ন এলিমেন্ট দেখানো হল এবং পরবর্তীতে বিভিন্ন সিম্বলগুলি সম্মন্ধে বিস্তৃত আলোচনা করা হল। 

কন্টাক্ট (Contact)

কন্টাক্ট বলতে একটি সুইচের ইনপুটকে বোঝানো যেতে পারে, যা কিনা বাইরে থেকে অ্যাক্টিভ বা ডি-অ্যাক্টিভ করা যায়, আবার PLC প্রোগ্রামের অন্য কোন এলিমেন্টকেও (আউটপুট, ইন্টার্নাল রিলে ইত্যাদি) কন্টাক্ট হিসাবে ব্যাবহার করা যায় কন্টাক্ট সাধারনত দুই প্রকারের হয়ে থাকে, এদুটি হল নরম্যালি ওপেন (Normally Open) বা NO কন্টাক্ট এবং অপরটি নরম্যালি ক্লোজ (Normally close) বা NC কন্টাক্ট নিচে এই দুই ধরনের কন্টাক্টের ছবি দেওয়া হল 

 

নরম্যালি ওপেন বা NO কন্টাক্টের ক্ষেত্রে যখন ওই কন্টাক্টের স্ট্যাটাস বিট জিরো বা  Logic-0 থাকবে তখন ওই কন্টাক্টের মধ্যে দিয়ে কোন পাওয়ার ফ্লো হবে না, কিন্তু যখন ওই কন্টাক্টের  স্ট্যাটাস বিট ওয়ান হবে বা Logic-1 হবে, তখন ওই কন্টাক্টের মধ্যে দিয়ে পাওয়ার ফ্লো হবেআবার নরম্যালি ক্লোজ বা NC কন্টাক্টের ক্ষেত্রে এই ব্যাপারটি ঠিক বিপরিত অর্থাৎ সেক্ষেত্রে যখন কন্টাক্টের স্ট্যাটাস বিট জিরো বা Logic-0 থাকবে তখন ওই কন্টাক্টের মধ্যে দিয়ে পাওয়ার ফ্লো হতে থাকবে, এবং যখন NC কন্টাক্টের স্ট্যাটাস বিট ওয়ান হবে বা Logic-1 হবে তখন ওই কন্টাক্টের মধ্যে দিয়ে পাওয়ার ফ্লো বন্ধ হয়ে যাবে সাধারনত কন্টাক্টের সিম্বলের ঠিক ওপরেই অ্যাড্রেস লিখে ওই কন্টাক্টটির পরিচিতি দেওয়া হয়ে থাকে  

কয়েল (Coil)

কয়েল বলতে একটি রিলেকে বোঝানো যেতে পারে, যা কিনা উপরে উল্লিখিত কন্টাক্টের সাহায্যে অ্যাক্টিভ হতে পারেঅর্থাৎ PLCতে বিভিন্ন কন্টাক্টের মধ্য দিয়ে একটি কয়েলকে এনার্জাইজ (energize) করা হয়PLCতে যখন কোন কয়েলের আউটপুটের স্ট্যাটাস বিট ওয়ান হয় বা Logic-1 হয়, তখন ওই আউটপুটের সাথে যুক্ত আউটপুট ডিভাইসটি অ্যাক্টিভ হয়ে যায়, এবং  যখন কয়েলের আউটপুটের  স্ট্যাটাস বিট জিরো বা Logic-0 হয়, তখন ওই আউটপুট ডিভাইসটি ডি-অ্যাক্টিভ হয়ে যায় PLC প্রোগ্রামে লজিক্যাল অপারেশানের জন্য এই আউটপুট কয়েলকে আবার কখনো কখনো নরম্যালি ওপেন বা নরম্যালি ক্লোজ কন্টাক্ট হিসাবেও ব্যাবহার করা হয়ে থাকেসাধারনত কয়েলের সিম্বলের ঠিক ওপরেই অ্যাড্রেস লিখে ওই কয়েলের পরিচিতি দেওয়া হয়নিচে কয়েলের সিম্বলের একটি ছবি দেওয়া হল     

বক্স (Boxes)

LADDER প্রোগ্রামিং এ বক্সের সাহায্যে সাধারনত বিভিন্ন ধরনের ফাংশান যেমন, টাইমার, কাউন্টার ইত্যাদিকে বোঝানো হয় টাইমার এবং কাউন্টার আবার বিভিন্ন প্রকারের হতে পারেনিচের ছবিতে বাঁদিকে একটি টাইমার এবং ডানদিকে একটি কাউন্টারের সিম্বলিক ছবি দেওয়া হলপরবর্তি অধ্যায়ে এই টাইমার এবং কাউন্টার সম্পর্কে আলাদাভাবে বিস্তৃত আলোচনা করা হয়েছে

স্পেশাল ইন্সট্রাকশান

কয়েকটি অ্যাডভান্সড PLC এর ক্ষেত্রে সাধারনত নন-বুলিয়ান ভ্যালুর কিছু প্রয়োজনীয় কন্ট্রোল ফাংশান করা হয়ে থাকে, এবং সেক্ষেত্রে দুটি নন-বুলিয়ান ভ্যালুকে বিভিন্ন ডাটা-কম্পারিসন করে একটি বুলিয়ান আউটপুট নেওয়া হয়। আবার কিছু ক্ষেত্রে সরাসরি ম্যাথামেটিক্যাল লজিক সিম্বলও ব্যাবহার করা হয়ে থাকে বিশেষ কিছু ম্যাথামেটিক্যাল অপারেশান এক্সিকিউট করার জন্য। নিচের ছবিতে LADDER ডায়াগ্রামে ব্যাবহৃত কয়েকটি কম্পারিসন ইন্সট্রাকশান এবং কিছু ম্যাথামেটিক্যাল ইন্সট্রাকশান দেখানো হল, যার ব্যাবহার কেবলমাত্র কিছু অ্যাডভান্সড PLC এর ক্ষেত্রেই দেখা যায়

 

কন্টাক্ট ও কয়েলের সাহায্যে  PLC প্রোগ্রাম কিভাবে লেখা হয়?

প্রথমে একটিমাত্র NO কন্টাক্ট ও একটি কয়েলের সাহায্যে LADDER ডায়াগ্রামে PLC প্রোগ্রাম কিভাবে লেখা হয়, তা নিচের ছবিতে দেখানো হল এবং সাথে সাথে ওই প্রোগ্রামের সমার্থক একটি ইলেকট্রিক্যাল সার্কিট দেওয়া হল

উপরের ছবিতে বাঁদিকে একটি ইলেকট্রিক্যাল সার্কিট দেওয়া হয়েছে, যেখানে একটি সুইচের সাহায্যে একটি ল্যাম্পকে জ্বালানো যেতে পারে, এখন এই সার্কিটটিকে যদি LADDER  ডায়াগ্রামের সাহায্যে বোঝানো হয়, তবে তা উপরের ডান দিকের ছবির মতন দেখাবেযেখানে সুইচের পরিবর্ত হিসাবে কন্টাক্ট এবং ল্যাম্পের পরিবর্ত হিসাবে কয়েল বোঝানো হয়েছেএবার নিচের ছবি অনুসারে ইলেকট্রিক্যাল সার্কিটের সুইচটিকে যদি অন করা যায় বা অ্যাক্টিভেট করা যায় তবে ল্যাম্পটি জ্বলে উঠবে  এই সার্কিটটিকে যদি LADDER ডায়াগ্রামের সাথে তুলনা করা হয়, তবে সেক্ষেত্রে কন্টাক্ট এবং কয়েল দুটি নিচের ছবিতে যেমন দেখানো হয়েছে তেমন হাল্কা রঙের একটি বক্সের মধ্যে দেখাবে অর্থাৎ শুধুমাত্র LADDER ডায়াগ্রাম দেখেই বোঝা সম্ভব কোন কন্টাক্ট বা কয়েল অ্যাক্টিভেট বা ডি-অ্যাক্টিভেট রয়েছে কিনানিচে সুইচটি অ্যাক্টিভেট অবস্থার ইলেকট্রিক্যাল সার্কিট ও পাশে LADDER  ডায়াগ্রাম দেওয়া হল       

 

LADDER ডায়াগ্রাম লেখার পদ্ধতি এবং বিভিন্ন সিম্বলের অর্থ  

LADDER এ প্রোগ্রামিং এর ক্ষেত্রে বিভিন্ন ধরনের সিম্বল যেমন ব্যাবহার করা হয়, তেমনই লেখার পদ্ধতিও এক বিশেষ ধরনের হয়ে থাকেLADDER প্রোগ্রামিং এ সাধারনত কোন কয়েলকে অ্যাক্টিভ করার জন্য বেশ কিছু ইনপুট বা কন্টাক্টের অবস্থা বা কন্ডিশানকে ব্যাবহার করে লেখা হয়, অর্থাৎ কয়েল বা আউটপুটকে অ্যাক্টিভেট করা হয় কিছু কন্টাক্ট বা কয়েলের Status এর ওপর নির্ভর করে যেমন নিচের ছবি অনুসারে Contact 1 এবং Contact 2 কে ব্যাবহার করা হয়েছে Coil 1 কে অ্যাক্টিভেট করার জন্য এবং এক্ষেত্রে Contact 1 এবং Contact 2 এর স্ট্যাটাসের এর ওপরেই নির্ভর করবে Coil 1 এর  স্ট্যাটাস ( এক্ষেত্রে Contact 1 এর স্ট্যাটাস Logic 1 এবং Contact 2 এর স্ট্যাটাস Logic 0 হলেই কেবলমাত্র Coil 1 এর  স্ট্যাটাস Logic 1 হবে , পরবর্তিতে এ সম্মন্ধে বিস্তৃত আলোচনা করা হয়েছে)  

একটি LADDER  ডায়াগ্রামে এই ধরনের অনেকগুলি কয়েল বা আউটপুট থাকতে পারে এবং সেগুলিকে অ্যাক্টিভেট করার জন্য যে আলাদা আলাদা সেট অফ ইন্সট্রাকশানস (Set of Instructions) থাকে, অর্থাৎ সোজা কথায় বিভিন্ন কয়েলের জন্য বিভিন্ন কন্টাক্টের আলদা আলাদা লজিক্যাল ফাংশান (Logical Function) ব্যাবহার করা হয় এবং এই ধরনের প্রতিটি কয়েল এবং তার লজিক্যাল ফাংশানের এক একটি সেটকে এক একটি Ladder Rung বলা হয়অর্থাৎ একটি সম্পুর্ন LADDER ডায়াগ্রাম এই ধরনের অনেকগুলি ল্যাডার Rung এর সমন্বয়ে তৈরি হয়নিচে একটি  ল্যাডার Rung এর ছবি দেওয়া হল এবং সেখানে ব্যাবহৃত বিভিন্ন সিম্বল ও তাদের অ্যাড্রেস কি তা বোঝানো হল     

 

LADDER প্রোগ্রামিং এ বিভিন্ন সিম্বলের অ্যাড্রেস কিভাবে দেওয়া হয়?

LADDER প্রোগ্রামিং এর ক্ষেত্রে বিভিন্ন সিম্বলকে অ্যাড্রেস করার জন্য সাধারনত ওই সিম্বলের ঠিক উপরে ওই সিম্বলের অ্যাড্রেসটি লেখা থাকেধরা যাক কোন কন্টাক্টের সিম্বলের উপরে লেখা রয়েছে I 1.2, এর অর্থ ওই কন্টাক্টটি ইনপুট অ্যাড্রেস I 1.2 কে বোঝাচ্ছেঅর্থাৎ ইনপুট মডিউলের I 1.2 ইনপুটটিতে যদি 24V DC দেওয়া হয়, তবে LADDER ডায়াগ্রামের ওই কন্টাক্টের সিম্বলটি অ্যাক্টিভ বোঝাবে (এবং সেক্ষেত্রে ওই কন্টাক্টটি হাল্কা রঙের একটি বক্সের মধ্যে দেখাবে)তেমনই যদি কোন কয়েলের সিম্বলের উপরে লেখা থাকে  Q 0.3, এর অর্থ ওই কয়েলটি আউটপুট অ্যাড্রেস Q 0.3 কে বোঝাচ্ছেঅর্থাৎ ওই কয়েলটির স্ট্যাটাস Logic 1 হলে আউটপুট মডিউলের Q 0.3, আউটপুটটিতে 24V DC পাওয়া যাবে (এবং সেক্ষেত্রে ওই কয়েলটি হাল্কা রঙের একটি বক্সের মধ্যে দেখাবে) নিচের ছবিতে LADDER ডায়াগ্রামে কন্টাক্ট এবং কয়েলের অ্যাড্রেস কিভাবে দেওয়া  হয় তা দেখানো হল            

   

LADDER ডায়াগ্রামে ল্যাচিং সার্কিট (Latching Circuit) কাকে বলে?

সার্কিটের প্রয়োজন অনুসারে কখনো কখনো কোন আউটপুটকে হোল্ড করে রাখার প্রয়োজন হয়যেমন উদাহরণস্বরূপ কোন ইলেকট্রিক্যাল মোটরকে স্টার্ট করার জন্য যখন কোন পুশ সুইচ ব্যাবহার করা হয়, তখন পুশ সুইচটিকে ছেড়ে দিলেও মোটরটি চালু অবস্থায় থাকে, এবং মোটরটিকে বন্ধ করার জন্য অপর একটি পুশ সুইচকে চাপ দিতে হয়এই ব্যাবস্থায় মোটরটিকে চালু করার জন্য প্রয়োজনীয় আউটপুটকে হোল্ড করে রাখার প্রয়োজন হয়আউটপুটকে এই হোল্ড করে রাখার জন্য LADDER ডায়াগ্রামে যে লজিক ব্যাবহার করা হয় তাকে ল্যাচিং সার্কিট বলা হয়নিচের ছবির সাহায্যে LADDER ডায়াগ্রামের ল্যাচিং সার্কিট বোঝানো হল

  

উপরের সার্কিট অনুসারে ধরা যাক কয়েল Output কে কোন মোটরকে ON করার জন্য বা চালানোর জন্য ব্যাবহার করা হয়েছে এবং Input A ও  Input B যথাক্রমে মোটরের স্টার্ট ও স্টপ পুশ বাটন সুইচ এবং এক্ষেত্রে Input A একটি NO সুইচ এবং Input B একটি NC সুইচ।  এখন যদি Input A পুশ বাটন সুইচটিকে অ্যাক্টিভেট করা যায়, অর্থাৎ Input A এর  স্ট্যাটাস Logic 1 করা হয়, তবে কয়েলের আউটপুট স্ট্যাটাসও Logic 1 হবেকারন Input A এবং Input B এই দুটি ইনপুট অ্যান্ড লজিকে রয়েছে, এবং Input B কে অ্যাক্টিভেট না করা হলেও সেটির স্ট্যাটাস কিন্তু Logic 1 হবে, কারন সেটি NC লজিকে রয়েছে এবং ফলস্বরূপ কয়েলের আউটপুট স্ট্যাটাসও Logic 1 হবে পরবর্তীতে সার্কিট অনুসারে Output কে আবার Input A এর সাথে OR লজিকে ব্যাবহার করা হয়েছে এখন Input A সুইচটিকে যদি OFF করা হয়, অর্থাৎ স্ট্যাটাস Logic 0 করা হয়, তবে কয়েলের আউটপুট এর স্ট্যাটাসও Logic 0 হওয়ার কথাকিন্তু যেহেতু Output কে Input A এর সাথে OR লজিকে যুক্ত করা হয়েছে, সেইহেতু Outputএর Logic 1 স্ট্যাটাস Input A এর পরিবর্ত হিসাবে কাজ করবে এবং ফলস্বরূপ Output এর স্ট্যাটাস Logic 1 হয়েই থেকে যাবে, অর্থাৎ আউটপুটটি নিরবিচ্ছিন্নভাবে অ্যাক্টিভ থেকে যাবেসার্কিটের এই ব্যাবস্থাটিকেই LADDER ডায়াগ্রামের ল্যাচিং সার্কিট বলা হয় 

এখন Output কে ডি-অ্যাক্টিভেট বা কয়েলের স্ট্যাটাস Logic 0 করার জন্য Input B পুশ বাটন সুইচটিকে চাপ দিতে হবে বা অ্যাক্টিভ করতে হবেএখানে Input B কে অ্যাক্টিভেট করার অর্থ Input B এর স্ট্যাটাস Logic 0 করা (যেহেতু Input B একটি NC সুইচ )এখন যে মুহুর্তে Input B এর স্ট্যাটাস Logic 0 হবে, সেই মুহুর্তে কয়েলের আউটপুটের স্ট্যাটাস Logic 0 হয়ে যাবে, কারন এতক্ষন Input B এবং Output অ্যান্ড লজিকে ছিলOutput কে পুনরায় অ্যাক্টিভ করতে হলে Input A কে আবার অ্যাক্টিভ বা পুশ করতে হবেনিচের ছবির সাহায্যে ল্যাচিং সার্কিটের তিনটি অবস্থা দেখানো হল  

LADDER ডায়াগ্রামে SET RESET ফাংশান

LADDER ডায়াগ্রামে কখনো ল্যাচিং সার্কিটের জন্য SET / RESET লজিক ফাংশান ব্যাবহার করা হয়ে থাকে। SET এবং RESET ইন্সট্রাকশান কখনও একই RUNG এর মধ্যে বা আলাদা ভাবেও লেখা যেতে পারে। পরবর্তি ছবি অনুসারে যদি ইনপুট I1.2 কে একবারের জন্য Logic 1 করা হয়, তবে SET সিম্বলের স্ট্যাটাস Logic 1 হয়ে যাবে এবং এটি অপরিবর্তিত থাকবে, এমনকি ইনপুট I1.2 এর স্ট্যাটাস Logic 0 হয়ে গেলেও। এখানে আউটপুট Q2.3 কে SET সিম্বলের সাথে ব্যাবহার করা হয়েছে, অর্থাৎ আউটপুট Q2.3 এর স্ট্যাটাসও Logic 1 হয়ে যাবে।  এখন ইনপুট I1.3 কে একবারের জন্য Logic 1 করা হলে আউটপুট Q2.3 RESET হয়ে যাবে, অর্থাৎ স্ট্যাটাস Logic 0 হয়ে যাবে এবং এটি অপরিবর্তিত থাকবে, এমনকি ইনপুট I1.3 এর স্ট্যাটাস Logic 0 করা হলেও। নিচের ছবির সাহায্যে SET RESET ফাংশানের LADDER প্রোগ্রামিং দেখানো হল।


LADDER ডায়াগ্রামে মাল্টিপল আউটপুট কাকে বলে?

LADDER ডায়াগ্রামে কখনো একটি লজিক ব্যাবহার করে একের অধিক আউটপুট বা Multiple Output নেওয়া হয় সেক্ষেত্রে LADDER  ডায়াগ্রামে কিভাবে লেখা হবে তা নিচের ছবিতে দেওয়া হল, যেখানে কেবলমাত্র একটি ইনপুট (Input A) ব্যাবহার করে দুটি আউটপুট ( Output A এবং Output B) নেওয়া হয়েছে 

 


LADDER ডায়াগ্রামে PLC প্রোগ্রামিং শুরু করার পুর্বে যে বিষয়গুলি মাথায় রাখার প্রয়োজন

LADDER ডায়াগ্রামে PLC প্রোগ্রামিং শুরু করার পুর্বে যে বিষয়গুলি মাথায় রাখার প্রয়োজন সেগুলি নিচে আলোচনা করা হল এবং পাশাপাশি ছবির সাহায্যে তা বোঝানো হয়েছে

 

সিগন্যাল ফ্লো সবসময় বাঁদিকের বাস-বার থেকে ডান-দিকের বাস-বারের দিকে হবে

 

দুটি বা তার অধিক আউটপুটকে একসাথে প্যারালাল কানেকশান করা যেতে পারে

  

আউটপুট বিটকে ইনপুট সিগন্যাল বা কন্টাক্ট হিসাবে ব্যাবহার করা যেতে পারে

  

আউটপুট বিট, টাইমার, কাউন্টারকে কখনো সরাসরি বাঁদিকের বাস-বারে কানেক্ট করে ON করা যাবে না, কোন না কোন ইনপুটকে এগুলির পুর্বে  সংযোগ করতে হবে

  

আউটপুট বিটকে ON করার পর ওই লাইনে আর কোন ইনপুট সিগন্যালকে ব্যাবহার করা যাবে না

ইনপুট বিটকে কখনও আউটপুট হিসাবে নেওয়া যাবে না

 

Popular Posts