Skip to main content

PLC Program For Flow Totalizer with TIA Portal


    Flow Meter အတွက် Totalizer ကိုအကောင်ထည်ဖော်ဖို့အတွက် PLC Program တစ်ခုလုပ်ကြည့်ပါမယ်။ Flow Meter ရဲ့ Electrical Signal က 4-20mA Output ရှိတဲ့ဟာသုံးပါမယ်။ အဲ့ဒီ Flow Range ကလည်း 0 to 100 Liter per Hour Fuel Flow ရှိမယ်လို့ ယူဆကြည့်ပါ။

    ဒီ Logic ကိုသုံးခြင်းအားဖြင့် ကျွန်တော်တို့က Pipe ကနေ ဖြတ်သွားတဲ့ Total Fuel တန်ဖိုးကို တွက်ချက်နိုင်ပါတယ်။  ဒီမှာတော့ Totalizer ရဲ့တန်ဖိုးကို 5000 အထိသတ်မှတ်ထားတဲ့အတွက် 5000 Liters ကိုရောက်သွားတဲ့အခါမှာ သူ့က အလိုအလျောက် Reset ဖြစ်အောင် လုပ်နိုင်သလို RESET Button ကိုသုံးပြီးတော့ သူ့ရဲ့ တန်ဖိုးကို Reset ဖြစ်အောင်လုပ်နိုင်ပါတယ်။

    အထက်ဖော်ပြပါအကြောင်းအရာတွေကတော့ Totalizer အတွက် Problem တစ်ခုကို ယုတ္တိကျကျ ဖြေရှင်းဖို့အတွက်ရှင်းပြထားတာဖြစ်ပြီးတော့ 4-20 mA Analog Scaling မပါဘူးဆိုတာ မှတ်ထားစေချင်လိုပါတယ်။ အခု Program တွေက 4-20mA Analog Scaling လုပ်ပြီးသားအခြေအနေကနေ ရေးထားတဲ့ Program ဖြစ်ပါတယ်။

Problem Solution

 - ပထမဆုံး Flow Meter ရဲ့  Flow Rate က 100 Liters/ Hour ရှိတယ်လို့ယူဆပါ။

- Flow Rate က Liter per Hour ကို Liter per Second ပြောင်းဖို့အတွက် DIV ဆိုတဲ့ Instruction ကိုသုံးပြီးတော့ Calculation လုပ်ပါမယ်။

- အဲ့ဒီနောက် 1 Second Clock ကို သုံးပါမယ်။ ကျွန်တော်တို့က ဒီတန်ဖိုးတွေကို တခြား Memory Location မှာ Store လုပ်ပြီးတော့ စက္ကန့်တိုင်းမှာ တန်ဖိုးအသစ်တွေကို ထက်ထည့်ပြီး ပြန်မွမ်းမံပါမယ်။ 

-ဒီမှာကတော့ ကျွန်တော်တို့ရဲ့ Totalizer အတွက်အများဆုံးတန်ဖိုးကို 5000 Liters လို့မှတ်ယူပြီးတော့ အကယ်၍ Totalizer က 5000 Liters Maximum တန်ဖိုးရောက်ရင် RESET ဖြစ်သွားပါမယ်။

- ဒါကြောင့် ကျွန်တော်တို့ဟာ အဲ့ဒီ Maximum တန်ဖိုးနဲ့ Actual Value နှိုင်းယှဥ်မယ်။ ပြီးရင် အဲ့တာကို Automatic Reset လုပ်ရင်လုပ်, မလုပ်ရင် Reset Button ထည့်ပြီး Totalizer ရဲ့တန်ဖိုးကို Reset လုပ်ပါမယ်။

Inputs List 

Reset - I0.0

Memory

M0.5 - 1 Second clock Pulse

M1.2 - Positive Edge of Clock Pulse

MD10 - Memory Word For Final Output ( L/H ) of Flow Meter

MD18 - Memory Word For Final Output ( L/Sec ) of Flow Meter

MD22 - Total Liters Addition

MD26 - Total Fuel in Liter

Program Description 

    ဒီ Problem မှာ ကျွန်တော်က PLC S7-300 နဲ့ TIA Portal Software ကို Programming အတွက်သုံးပါမယ်။ Program အတွက် Network က 1 to 4 ရှိပါတယ်။ 
Network 1 

    ဒီမှာက DIV Instruction သုံးပြီးတော့ L/H ကနေ L/S ကိုပြောင်းပါမယ်။ L/H ကို 3600 နဲ့စားမှာပါ။ တစ်နာရီမှာ ၃၆၀၀ စက္ကန့်ရှိတဲ့အတွက်ပါ။
Network 2

    Clock Pulse 1sec ကို M0.5 သုံးပြီးတော့ စက္ကန့်တိုင်းမှာ တန်ဖိုးတွေကို ပေါင်းထည့်ပါမယ်။ ပြီးလို့ ရလာတဲ့  Result တွေကို MD22 မှာသိမ်းထားပါမယ်။
Network 3 

    MD22 ရဲ့  တန်ဖိုးကို Total Fuel in Liter ဆိုတဲ့ Display ပြဖို့အတွက် MD26 ကိုရွေးပါမယ်။
Network 4 

    ဒီ Network မှာ ကျွန်တော်တို့က Totalizer ကို Reset လုပ်ဖို့လိုအပ်ပါတယ်။ အကယ်၍ Total Fuel က Maximum တန်ဖိုးသတ်မှတ်ထားတဲ့ 5000ထက်ကျော်ရင် Totalizer က အလိုအလျောက် Zero တန်ဖိုး ဖြစ်သွားပါမယ်။ ဒါမှမဟုတ် Manually Reset လုပ်မယ်ဆိုရင် I0.0 ဆိုတဲ့ Reset Button ကို နိုပ်ပေးပြီး Reset လုပ်ရုံပါပဲ။

Reference : Instrumentationtools

Comments

Popular posts from this blog

Indirect Addressing

Indirect Addressing      တကယ်တမ်း​တော့ ဒီစာကို​ရေးဖြစ်တာကလည်း ဆရာရဲ့ Project Problem တစ်ခုချ​ပေးပြီ ​ဖြေရှင်းရင်းနဲ့ ​တွေ့လာတာပါ။ အဲ့​တော့ အဲ့ဒီဟာက ဘယ်​နေရာမှာ ဘယ်လိုသုံးတာလဲ,ဘာ​တွေသုံးတယ်,ဘယ်လို Program နဲ့​ရေးတာလဲဆိုတာ အဓိကထားပြီး​တော့ ​ပြောပြ​ပေးသွားမှာမယ်။ သူ့အ​ကြောင်းသိဖို့အရင် Index Register ကိုအရင်​ပြောပါမယ်။ What is Index Register?     Index Register ဆိုတာက Process Register လို့လဲ​ခေါ်ပြီး​တော့ Program ကို Operand ​တွေရဲ့ Address ကို Program က Run ​နေတဲ့အချိန်မှာ Modify လုပ်တာပါ၊ PLC မှာရှိတဲ့ Register ​တွေက PLC ထုတ်တဲ့ Company အမျိုးအစား​ပေါ်မူတည်ပြီး​တော့ ​သုံးစွဲတာမတူကြ​ပေမယ့် သ​ဘောတရားက​တော့အတူတူပါပဲ။ အခု ဥပမာ​ပေးမှာက Delta PLC နဲ့ ဥပမာ​ပေးပါမယ်။     Delta မှာရှိတဲ့ Index Register က​တော့ E နဲ့ F ဆိုပြီးသတ်မှတ်ထားပါတယ်။ E နဲ့ F ကိုတစ်လုံးချင်း သုံးရင်​တော့ 16 bit အ​နေနဲ့သုံးလို့ရပါတယ်။ Eနဲ့F ဟာတွဲခဲ့ရင်​တော့ 32 bit ဖြစ်သွားပါပြီ။ E ဟာ Lower 32 bit ဖြစ်လာပြီး​တော့ F ဟာ Higher 32 bit ဖြစ်လာပါတယ်။     ဒုတိယပုံက...

IPv4 Vs IPv6 - What's the difference between IP Addresses

ကျွန်တော်တို့ IOT Project သို့မဟုတ် PLC တို့ HMIတို့ကို Ethernet နဲ့ချိတ်တဲ့အခါမှာ IP Address တို့ Subnet Mask တို့သတ်မှတ်ရတာတို့ကိုတွေ့ရမှာပါ။အခုကတော့ IP Addressအကြောင်းကိုမှ IPv4 နဲ့ IPv6 အကြောင်းကိုရေးမှာပါ။           IP Address ဆိုတာကတော့ ကျွန်တော်တို့ရဲ့အိမ်နံပါတ်လိုသဘောမျိုးလုပ်ထားပေးတဲ့ Internet Protocol တစ်ခုပါပဲ။ အိမ်တိုင်းအိမ်တိုင်းမှာသူရဲ့သက်ဆိုင်တဲ့နေရာလိပ်စာတွေရှိကြသလိုပဲ စက်တိုင်းမှာလည်းသူရဲ့ သက်ဆိုင်တဲ့ IP Address တွေရှိကြပါတယ်။ ဒါကတော့ IP Address အကြောင်းကိုရှင်းပြတဲ့ရိုးရှင်းတဲ့ ဥပမာတစ်ခုပါ။ ဒီမှာအဓိကထားပြီးရှင်းပြသွားမှာကတော့ IPv4 နဲ့ IPv6 ကိုရှင်းပြသွားမှာပါ။      What is IPv4 : simple meaning & features guide     ဒီ IPv4 မှာဘာတွေပါလဲဆိုတော့ Set Numbers လေးခုပါဝင်ပါတယ်။ ယေဘုယျအားဖြင့် ဘယ်လိုပုံစံနဲ့ရေးကြသလဲဆိုရင် 106.102.77.43 (ဒါကဥပမာပုံစံပါ။) လိုပုံစံမျိုးဖြစ်ပြီးတော့ မတူညီတဲ့ ကိန်းဂဏန်းလေးခုကို Cover လုပ်ပေးထားပါတယ်။ IPv4 ဘာကြောင့်ဖြစ်လာရလည်းဆိုရင် လွန်ခဲ့တဲ့ 1980 ဝန်းကျင်ကာလတွေမှာ I...

PLC Scan Time Problem

PLC Scan Time Problem     ဒီ Post ကို အရင် account အ​ဟောင်းမှာတုန်းက​တော့တင်ဖူးတယ်။ ဒါ​ပေမယ့် အခုကပြန်ပြီး နားလည်လွယ်မယ့်ပုံစံမျိုးနဲ့ပဲကျွန်​တော်​ရေး​ပေးပါမယ်။     ကျွန်​တော်တို့  PLC project ​တွေမှာဆိုရင် Programming ကို Ladder Diagram နဲ့​ရေးကြတာများပါတယ်။ တခြား Structure Text တို့ Function  Block တို့ Sequence တို့နဲ့လည်း​ရေးလို့ရပါတယ်။သို့​သော်လည်း ဒီကိစ္စမှာ​တော့ Ladder Diagram နဲ့ ဥပမာကိုတင်ပြသွားပါမယ်။      Scan Time ဆိုတာ ဘာလဲအရင် အကျဥ်းချုံပြီး​ပြောပါမယ်။ ပထမပုံက Ladder Diagram လိုပုံစံမျိုး​ရေးထားတယ်ဆိုပါစို့။ Program ရဲ့ ထိပ်ဆုံးအပိုင်းက​နေ Program ရဲ့ အဆုံးအထိ PLC က Scan ဖတ်ပါတယ်။ Scan ဖတ်နှုန်းဟာလည်း ​ရေးတဲ့ Program ​ပေါ်မူတည်ပြီး တစ်စက္ကန့်ကို Scan ဘယ်နှကြိမ်ဖတ်လည်းဆိုတာ​တွေရှိပါတယ်။      ကျွန်​တော်တို့ PLC Ladder Diagram မှာ Program ​တွေ​ရေးတယ်ဆိုရင် သာမန် Line 20 ခု, 30 ခု​လောက်​တော့ ပြသာနာမရှိ​လောက်ပါဘူး။ သို့​သော်လည်း Line အခု 20တို့ 30တို့မှာ High Counter ​တွေတို့ တခြား API ​တွေ အများကြီး​တွေသုံး...