pid algorithm (stm32f4) ကိုအသုံးပြု၍ dc မော်တာ၏အမြန်နှုန်းထိန်းချုပ်မှု
ကြည့်ရှုမှုများ- 0 ရေးသားသူ- Site Editor ထုတ်ဝေချိန်- 2020-09-02 မူရင်း- ဆိုက်
မေးမြန်းပါ။
အားလုံးပဲမင်္ဂလာပါ ကျွန်ုပ်သည် အခြားပရောဂျက်မှ tahir ul haq ဖြစ်ပါသည်။
ဤအချိန်သည် 2017-11-407 တွင်အသုံးပြုခဲ့သော MC လုပ်ရမည့်အချိန်ဖြစ်သည်။
ဤသည်မှာ နှစ်လယ်ပိုင်းအစီအစဉ်၏ အဆုံးဖြစ်သည်။
ကြိုက်မယ်လို့ မျှော်လင့်ပါတယ်။
သဘောတရားနဲ့ သီအိုရီတွေ အများကြီး လိုအပ်တာမို့ အဲဒါကို အရင်ကြည့်ရအောင်။
ကွန်ပြူတာများ ပေါ်ပေါက်လာခြင်းနှင့် စက်မှုလုပ်ငန်း များ ပေါ်ပေါက်လာခြင်းနှင့်အတူ လုပ်ငန်းစဉ်ကို ပြန်လည်သတ်မှတ်ရန် နည်းလမ်းများ ဖော်ထုတ်ရန် လူသားများ၏ သမိုင်းတွင် သုတေသနပြုမှုများ ရှိလာခဲ့ပြီး ထို့ထက် အရေးကြီးသည်မှာ လုပ်ငန်းစဉ်ကို အလိုအလျောက် ထိန်းချုပ်ရန် စက်များကို အသုံးပြုရန် ဖြစ်သည်။
ရည်ရွယ်ချက်မှာ ဤလုပ်ငန်းစဉ်များတွင် လူသားများပါဝင်မှုကို လျှော့ချရန်ဖြစ်ပြီး ဤလုပ်ငန်းစဉ်များတွင် အမှားအယွင်းများကို လျှော့ချရန်ဖြစ်သည်။
ထို့ကြောင့် \'ထိန်းချုပ်မှုစနစ်အင်ဂျင်နီယာ\' နယ်ပယ်တွင် ပေါ်ပေါက်လာသည်။
ထိန်းချုပ်မှုစနစ်အင်ဂျင်နီယာသည် လုပ်ငန်းစဉ်၏လုပ်ဆောင်မှုကို ထိန်းချုပ်ရန် သို့မဟုတ် manual သို့မဟုတ် အလိုအလျောက်ဖြစ်စေ စဉ်ဆက်မပြတ်နှင့် နှစ်သက်သောပတ်ဝန်းကျင်ကို ထိန်းသိမ်းရန် အမျိုးမျိုးသောနည်းလမ်းများကို အသုံးပြုခြင်းအဖြစ် သတ်မှတ်နိုင်သည်။
ရိုးရှင်းသော ဥပမာမှာ အခန်း၏ အပူချိန်ကို ထိန်းချုပ်ရန်ဖြစ်သည်။
Manual control ဆိုသည်မှာ site (အာရုံခံကိရိယာ) တွင် လက်ရှိအခြေအနေများကို စစ်ဆေးသူ တစ်ဦး၏ ရှိနေခြင်း
၊ မျှော်မှန်းချက်များ (လုပ်ဆောင်ခြင်း)
နှင့် အလိုရှိသော တန်ဖိုး (actuator) ရရှိရန် သင့်လျော်သော အရေးယူဆောင်ရွက်မှုကို ရည်ညွှန်းသည်။
ဤချဉ်းကပ်နည်း၏ ပြဿနာမှာ အလုပ်တွင် အမှားအယွင်း သို့မဟုတ် ပေါ့ဆမှု ကျရောက်တတ်သောကြောင့် ၎င်းသည် အလွန်ယုံကြည်စိတ်ချရမှုမရှိသောကြောင့်ဖြစ်သည်။
ထို့အပြင်၊ နောက်ထပ်ပြဿနာတစ်ခုမှာ actuator စတင်သည့် လုပ်ငန်းစဉ်၏ နှုန်းသည် အမြဲတမ်းတူညီခြင်းမရှိသောကြောင့်၊ ဆိုလိုသည်မှာ တစ်ခါတစ်ရံတွင် လိုအပ်သည့်အမြန်နှုန်းထက် ပိုမြန်နိုင်ပြီး တစ်ခါတစ်ရံ နှေးကွေးနိုင်ပါသည်။
ဤပြဿနာအတွက် ဖြေရှင်းချက်မှာ စနစ်ကို ထိန်းချုပ်ရန် မိုက်ခရိုကွန်ထရိုလာကို အသုံးပြုခြင်းဖြစ်သည်။
ပေးထားသောသတ်မှတ်ချက်အရ၊ မိုက်ခရိုကွန်ထရိုလာအား ဆားကစ်အတွင်းချိတ်ဆက်ခြင်းလုပ်ငန်းစဉ်ကို ထိန်းချုပ်ရန် ပရိုဂရမ်ရေးဆွဲထားပါသည် (
နောက်မှဆွေးနွေးပါ)
၏တန်ဖိုး သို့မဟုတ် အခြေအနေ၊ ထို့ကြောင့် အလိုရှိသောတန်ဖိုးကိုထိန်းသိမ်းထားရန် လုပ်ငန်းစဉ်ကိုထိန်းချုပ်ထားသည်။
ဤလုပ်ငန်းစဉ်၏ အကျိုးကျေးဇူးမှာ ဤလုပ်ငန်းစဉ်တွင် လူသားဝင်ရောက်စွက်ဖက်ရန် မလိုအပ်ခြင်းကြောင့်ဖြစ်သည်။
ထို့အပြင်၊ ဤလုပ်ငန်းစဉ်၏အရှိန်သည်တစ်သမတ်တည်းဖြစ်သည်။
ကျွန်ုပ်တို့ ရှေ့ဆက်မလုပ်ဆောင်မီ၊ ဤအချက်တွင် အမျိုးမျိုးသော အသုံးအနှုန်းများကို ဆုံးဖြတ်ရန် အရေးကြီးသည်- တုံ့ပြန်မှု ထိန်းချုပ်ခြင်း- ဤစနစ်တွင်၊ ထည့်သွင်းမှုသည် စနစ်၏ထွက်ရှိမှုအပါအဝင် တစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသော ကိန်းရှင်များအပေါ်တွင် မူတည်ပါသည်။
အနုတ်လက္ခဏာတုံ့ပြန်ချက်- ဤစနစ်တွင် ရည်ညွှန်းချက် (ထည့်သွင်းမှု)
တုံ့ပြန်ချက်အနေဖြင့် အမှားကို နုတ်လိုက်ပြီး ထည့်သွင်းမှုအဆင့်သည် 180 ဒီဂရီဖြစ်သည်။
အပြုသဘောဆောင်သော တုံ့ပြန်ချက်- ဤစနစ်တွင်
တုံ့ပြန်ချက်နှင့် ထည့်သွင်းမှုအဆင့်တွင် ရှိနေသောအခါ ရည်ညွှန်းချက် (ထည့်သွင်းမှု) အမှားများကို ပေါင်းထည့်ပါသည်။
အမှားအချက်ပြမှု- အလိုရှိသောအထွက်နှင့် အမှန်တကယ်ထွက်ရှိမှုအကြား ကွာခြားချက်။
အာရုံခံကိရိယာ- ဆားကစ်တစ်ခုအတွင်းရှိ စက်ပစ္စည်းအချို့ကို ထောက်လှမ်းရန် အသုံးပြုသည့် ကိရိယာ။
ပုံမှန်အားဖြင့် ၎င်းကို အထွက်တွင် သို့မဟုတ် ကျွန်ုပ်တို့တိုင်းတာမှုအချို့ပြုလုပ်လိုသည့်နေရာတိုင်းတွင် ထည့်သွင်းထားသည်။
ပရိုဆက်ဆာ- ပရိုဂရမ်းမင်း အယ်လဂိုရီသမ်များအပေါ် အခြေခံ၍ လုပ်ဆောင်သည့် ထိန်းချုပ်စနစ်၏ အစိတ်အပိုင်း။
အချို့သော input ကိုယူ၍ output အချို့ကိုထုတ်ပေးသည်။
Actuator- ထိန်းချုပ်မှုစနစ်တွင် မိုက်ခရိုကွန်ထရိုလာမှ ထုတ်ပေးသည့် အချက်ပြမှုအပေါ် အခြေခံ၍ ဖြစ်ရပ်များကို လုပ်ဆောင်ရန် အက်စစ်တာကို အသုံးပြုသည်။
Closed-loop စနစ်- တစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသော တုံ့ပြန်ချက် loops ပါသည့် စနစ်။
Open loop စနစ်- တုံ့ပြန်မှု ကွင်းဆက်အတွက် စနစ် မရှိပါ။
မြင့်တက်ချိန်- အထွက်နှုန်းသည် signal ၏အမြင့်ဆုံး amplitude ၏ 10% မှ 90% အထိ မြင့်တက်ရန် လိုအပ်သောအချိန်။
ကျဆင်းချိန်- 90% မှ 10% သို့ ကျဆင်းရန် လိုအပ်သော အချိန်။
Peak overshooting- peak overshooting သည် ၎င်း၏တည်ငြိမ်သောအခြေအနေတန်ဖိုးထက် ကျော်လွန်သော output ပမာဏ (
စနစ်အကူးအပြောင်းကာလအတွင်း ပုံမှန်)။
တည်ငြိမ်သောအချိန်- တည်ငြိမ်သောအခြေအနေသို့ရောက်ရှိရန် အထွက်အတွက် လိုအပ်သည့်အချိန်။
တည်တည်ငြိမ်ငြိမ် အမှားအယွင်း- စနစ်သည် တည်ငြိမ်သော အခြေအနေသို့ ရောက်ရှိသည်နှင့် တစ်ပြိုင်နက် အမှန်တကယ် ထွက်ပေါက်နှင့် မျှော်လင့်ထားသည့် ရလဒ်ကြား ကွာခြားချက်။ အထက်ပါပုံသည် ထိန်းချုပ်မှုစနစ်၏ အလွန်ရိုးရှင်းသောဗားရှင်းကို ပြသထားသည်။
မိုက်ခရိုကွန်ထရိုလာသည် မည်သည့်ထိန်းချုပ်မှုစနစ်၏ အဓိကအပင်ဖြစ်ပါသည်။
၎င်းသည် အလွန်အရေးကြီးသော အစိတ်အပိုင်းဖြစ်သောကြောင့် စနစ်၏လိုအပ်ချက်များနှင့်အညီ ဂရုတစိုက်ရွေးချယ်သင့်သည်။
micro-controller သည် အသုံးပြုသူထံမှ input ကို လက်ခံရရှိသည် ။
ဤထည့်သွင်းမှုသည် စနစ်အတွက် လိုအပ်သော အခြေအနေများကို သတ်မှတ်ပေးသည်။
မိုက်ခရိုကွန်ထရိုလာသည် အာရုံခံကိရိယာမှ အဝင်အထွက်ကိုလည်း လက်ခံရရှိသည်။
အာရုံခံကိရိယာသည် အထွက်နှင့် ချိတ်ဆက်ထားပြီး ၎င်း၏အချက်အလက်များကို အဝင်သို့ ပြန်လည်ပေးပို့သည်။
ဤထည့်သွင်းမှုကို အနုတ်လက္ခဏာတုံ့ပြန်ချက်ဟုလည်း ခေါ်နိုင်သည်။
အပျက်သဘောဆောင်တဲ့ အကြံပြုချက်တွေကို အစောပိုင်းမှာ ရှင်းပြခဲ့ပါတယ်။
၎င်း၏ programming ကိုအခြေခံ၍ microprocessor သည် actuator သို့အမျိုးမျိုးသောတွက်ချက်မှုများနှင့် output ကိုလုပ်ဆောင်သည်။
အထွက်-အခြေခံ actuator ထိန်းချုပ်စက်ရုံသည် ဤအခြေအနေများကို ထိန်းသိမ်းရန် ကြိုးပမ်းသည်။
ဥပမာတစ်ခုအနေဖြင့် မော်တာမောင်းနှင်သည့် မော်တာမောင်းနှင်သူဖြစ်နိုင်သည်၊ မော်တာဒရိုင်ဘာသည် ယာဉ်မောင်းဖြစ်ပြီး မော်တာမှာ စက်ရုံဖြစ်သည်။
ထို့ကြောင့် မော်တာသည် သတ်မှတ်အမြန်နှုန်းဖြင့် လှည့်သည်။
ချိတ်ဆက်ထားသော အာရုံခံကိရိယာသည် လက်ရှိစက်ရုံ၏ အခြေအနေကို ဖတ်ပြီး မိုက်ခရိုထိန်းချုပ်ကိရိယာသို့ ပြန်ပို့ပေးသည်။
မိုက်ခရိုကွန်ထရိုလာကို ထပ်မံနှိုင်းယှဉ်ပြီး တွက်ချက်ထားသောကြောင့် ကွင်းဆက်ကို ထပ်ခါထပ်ခါ ပြုလုပ်ပါသည်။
လုပ်ငန်းစဉ်သည် ထပ်ခါထပ်ခါဖြစ်ပြီး အဆုံးမရှိဖြစ်ပြီး မိုက်ခရိုကွန်ထရိုလာသည် လိုချင်သောအခြေအနေများကို ထိန်းသိမ်းနိုင်သည်။
ဤတွင် DC မော်တာ၏အမြန်နှုန်းကိုထိန်းချုပ်ရန် အဓိကနည်းလမ်းနှစ်သွယ်ရှိပါသည်။)
Manual ဗို့အားထိန်းချုပ်မှု- စက်မှုလုပ်ငန်းသုံးများတွင် DC မော်တာ၏အမြန်နှုန်းထိန်းချုပ်မှုယန္တရားသည် အရေးကြီးပါသည်။
တစ်ခါတစ်ရံ ကျွန်ုပ်တို့သည် ပုံမှန်ထက် မြင့်မားသော သို့မဟုတ် နိမ့်သော အမြန်နှုန်းများ လိုအပ်နိုင်သည်။
ထို့ကြောင့် ကျွန်ုပ်တို့သည် ထိရောက်သော အမြန်နှုန်းထိန်းချုပ်မှုနည်းလမ်းတစ်ခု လိုအပ်ပါသည်။
ထောက်ပံ့ရေးဗို့အားကိုထိန်းချုပ်ခြင်းသည် အရိုးရှင်းဆုံးအမြန်နှုန်းထိန်းချုပ်မှုနည်းလမ်းများထဲမှတစ်ခုဖြစ်သည်။
အမြန်နှုန်းကို ပြောင်းလဲရန် ဗို့အားကို ပြောင်းလဲနိုင်သည်။ b)
PWM ကို PID ကိုအသုံးပြု၍ ထိန်းချုပ်ပါ- နောက်ထပ် ထိရောက်သောနည်းလမ်းမှာ မိုက်ခရိုကွန်ထရိုလာကို အသုံးပြုခြင်းဖြစ်သည်။
DC မော်တာသည် မော်တာဒရိုင်ဘာမှတဆင့် မိုက်ခရိုကွန်ထရိုးနှင့် ချိတ်ဆက်ထားသည်။
မော်တာယာဉ်မောင်းသည် PWM (
Pulse width modulation) လက်ခံရရှိသည့် IC တစ်ခုဖြစ်ပြီး
micro controller မှ input နှင့် input အရ DC motor သို့ output ဖြစ်သည်။ ပုံ 1.
2- PWM အချက်ပြမှု အခန်း 1။
နိဒါန်း 3 PWM အချက်ပြမှုကို ထည့်သွင်းစဉ်းစားပါက PWM ၏ လုပ်ဆောင်ချက်ကို ဦးစွာရှင်းပြနိုင်ပါသည်။
၎င်းတွင် အချိန်အတိုင်းအတာတစ်ခုအထိ စဉ်ဆက်မပြတ် ပဲမျိုးစုံ ပါဝင်ပါသည်။
အချိန်ကာလသည် လှိုင်းအလျားနှင့်ညီမျှသော အကွာအဝေးသို့ ရွေ့လျားနေသော အမှတ်တစ်ခုမှ အသုံးပြုသော အချိန်ကာလဖြစ်သည်။
ဤပဲမျိုးစုံများသည် ဒွိတန်ဖိုးများ (HIGH သို့မဟုတ် LOW) သာရှိနိုင်သည်။
ကျွန်ုပ်တို့တွင် အခြားပမာဏနှစ်ခုဖြစ်သည့် pulse width နှင့် duty cycle လည်းရှိသည်။
pulse width သည် PWM output မြင့်နေချိန်ဖြစ်သည်။
တာဝန်စက်ဝန်းသည် အချိန်ကာလဆီသို့ သွေးခုန်နှုန်း အကျယ်၏ ရာခိုင်နှုန်းဖြစ်သည်။
ကျန်အချိန်ကာလအတွက် အထွက်နှုန်းနည်းပါတယ်။
တာဝန်စက်ဝန်းသည် မော်တာ၏အမြန်နှုန်းကို တိုက်ရိုက်ထိန်းချုပ်သည်။
DC motor သည် အချိန်အတိုင်းအတာတစ်ခုအတွင်း positive voltage ပေးမည်ဆိုပါက၊ ၎င်းသည် သတ်မှတ်ထားသော speed ဖြင့် ရွေ့လျားမည်ဖြစ်သည်။
အပြုသဘောဗို့အားကို အချိန်ပိုကြာအောင် ပံ့ပိုးပေးမည်ဆိုပါက၊ အမြန်နှုန်းသည် ပိုကြီးလာမည်ဖြစ်သည်။
ထို့ကြောင့်၊ PWM ၏ တာဝန်စက်ဝန်းအား pulse width ကိုပြောင်းလဲခြင်းဖြင့် ပြောင်းလဲနိုင်သည်။
DC မော်တာ၏ တာဝန်စက်ဝန်းကို ပြောင်းလဲခြင်းဖြင့် မော်တာ၏ အမြန်နှုန်းကို ပြောင်းလဲနိုင်သည်။
DC မော်တာပြဿနာများအတွက် အမြန်နှုန်းထိန်းချုပ်မှု- ပထမအမြန်နှုန်းထိန်းချုပ်မှုနည်းလမ်း၏ ပြဿနာမှာ အချိန်နှင့်အမျှ ဗို့အားပြောင်းလဲသွားနိုင်သည်။
ဤပြောင်းလဲမှုများသည် မညီမညာသောအရှိန်ကို ဆိုလိုသည်။
ထို့ကြောင့် ပထမနည်းလမ်းသည် မလိုလားအပ်ပေ။
ဖြေရှင်းချက်- ကျွန်ုပ်တို့သည် အမြန်နှုန်းကို ထိန်းချုပ်ရန် ဒုတိယနည်းလမ်းကို အသုံးပြုပါသည်။
ကျွန်ုပ်တို့သည် ဒုတိယနည်းလမ်းကိုဖြည့်စွက်ရန် PID algorithm ကိုအသုံးပြုသည်။
PID သည် အချိုးကျပါဝင်သည့် ဆင်းသက်လာခြင်းကို ကိုယ်စားပြုသည်။
PID algorithm တွင်၊ မော်တာ၏ လက်ရှိအမြန်နှုန်းကို တိုင်းတာပြီး လိုချင်သောအမြန်နှုန်းနှင့် နှိုင်းယှဉ်သည်။
မော်တာ၏ တာဝန်စက်ဝန်းအား အချိန်နှင့်အမျှ ပြောင်းလဲရန် ရှုပ်ထွေးသော တွက်ချက်မှုများအတွက် ဤအမှားကို အသုံးပြုပါသည်။
သံသရာတစ်ခုစီတွင် ဤဖြစ်စဉ်ရှိပါသည်။
အမြန်နှုန်းသည် လိုချင်သောအမြန်နှုန်းထက် ကျော်လွန်ပါက၊ တာဝန်လည်ပတ်မှု လျော့ကျသွားပြီး လိုချင်သောအမြန်နှုန်းထက် နိမ့်ပါက ဂျူတီစက်ဝန်း တိုးလာမည်ဖြစ်သည်။
အကောင်းဆုံးအမြန်နှုန်းကို မရောက်မချင်း ဤပြုပြင်ပြောင်းလဲမှုကို မပြုလုပ်ပါ။
ဤအမြန်နှုန်းကို အဆက်မပြတ်စစ်ဆေးပြီး ထိန်းချုပ်ပါ။
ဤသည်မှာ ဤပရောဂျက်တွင်အသုံးပြုသည့် စနစ်အစိတ်အပိုင်းများနှင့် အစိတ်အပိုင်းတစ်ခုစီ၏အသေးစိတ်အချက်အလက်များအတွက် အကျဉ်းချုံးမိတ်ဆက်ခြင်းဖြစ်ပါသည်။
STM 32F407- ST Micro-section မှ ဒီဇိုင်းထုတ်ထားသော မိုက်ခရိုကွန်ထရိုလာ။
၎င်းသည် ARM Cortex တွင်အလုပ်လုပ်သည်။ M ဗိသုကာ။
၎င်းသည် ၎င်း၏မိသားစုအား မြင့်မားသောနာရီကြိမ်နှုန်း 168 MHz ဖြင့် ဦးဆောင်သည်။
မော်တာမောင်းသူ L298N- ဤ IC ကို မော်တာလည်ပတ်ရန်အတွက် အသုံးပြုသည်။
၎င်းတွင် ပြင်ပထည့်သွင်းမှု နှစ်ခုရှိသည်။
micro controller မှ တစ်ခု။
micro-controller သည် ၎င်းအတွက် PWM အချက်ပြမှုကို ပေးသည်။
သွေးခုန်နှုန်း အကျယ်ကို ချိန်ညှိခြင်းဖြင့် မော်တာအမြန်နှုန်းကို ချိန်ညှိနိုင်သည်။
၎င်း၏ ဒုတိယ input သည် မော်တာမောင်းနှင်ရန်အတွက် လိုအပ်သော ဗို့အားအရင်းအမြစ်ဖြစ်သည်။
DC မော်တာ- DC မော်တာသည် DC ပါဝါထောက်ပံ့မှုပေါ်တွင် အလုပ်လုပ်သည်။
ဤစမ်းသပ်မှုတွင် DC မော်တာအား မော်တာဒရိုက်ဗာနှင့် ချိတ်ဆက်ထားသော photoelectric coupling ကို အသုံးပြု၍ လုပ်ဆောင်သည်။
အနီအောက်ရောင်ခြည်အာရုံခံကိရိယာ- အနီအောက်ရောင်ခြည်အာရုံခံကိရိယာသည် အမှန်တကယ်ပင် အနီအောက်ရောင်ခြည် အာရုံခံကိရိယာတစ်ခုဖြစ်သည်။
အမျိုးမျိုးသော လုပ်ငန်းဆောင်တာများကို လုပ်ဆောင်ရန် အသုံးပြုနိုင်သည့် အနီအောက်ရောင်ခြည် လှိုင်းများကို ပေးပို့လက်ခံသည်။
IR ကုဒ်ပြောင်းကိရိယာ optical coupler 4N35- optical coupler သည် circuit ၏ low voltage အပိုင်းနှင့် high voltage part ကို ခွဲထုတ်ရန် အသုံးပြုသည့် စက်တစ်ခုဖြစ်သည်။
အမည် ဖော်ညွှန်းသည့်အတိုင်း ၎င်းသည် အလင်း၏အခြေခံဖြင့် လုပ်ဆောင်သည်။
low voltage part သည် signal ကိုရရှိသောအခါတွင် high voltage အပိုင်းတွင် current စီးဆင်းသည်။
အဆိုပါစနစ်သည် အရှိန်ထိန်းစနစ်ဖြစ်သည်။
အစောပိုင်းတွင်ဖော်ပြခဲ့သည့်အတိုင်း၊ အချိုးကျပေါင်းစပ်ပါဝင်မှုနှင့် ဆင်းသက်လာမှု၏ PID ကို အသုံးပြု၍ စနစ်အား အကောင်အထည်ဖော်သည်။
အရှိန်ထိန်းစနစ်တွင် အထက်ပါ အစိတ်အပိုင်းများ ပါဝင်သည်။
ပထမပိုင်းကတော့ Speed Sensor ပါ။
အမြန်နှုန်း အာရုံခံကိရိယာသည် အနီအောက်ရောင်ခြည် ထုတ်လွှင့်မှု နှင့် လက်ခံသည့် ဆားကစ်တစ်ခု ဖြစ်သည်။
အစိုင်အခဲသည် U ပုံသဏ္ဍာန်အပေါက်ကို ဖြတ်သွားသောအခါ၊ အာရုံခံကိရိယာသည် နိမ့်သောအခြေအနေသို့ ရောက်ရှိသွားသည်။
ပုံမှန်အားဖြင့် ၎င်းသည် မြင့်မားသောအခြေအနေတွင်ရှိသည်။
အာရုံခံကိရိယာ၏အထွက်အားသည် အာရုံခံကိရိယာ၏အခြေအနေပြောင်းလဲလာသောအခါတွင် အာရုံခံကိရိယာ၏အခြေအနေပြောင်းလဲလာသောအခါတွင် ဖြစ်ပေါ်သော အာရုံစူးစိုက်မှုအား ဖယ်ရှားပစ်ရန် အနိမ့်ပိုင်းဇကာတစ်ခုနှင့် ချိတ်ဆက်ထားသည်။
low-pass filter တွင် resistors နှင့် capacitors များပါဝင်သည်။
တန်ဖိုးများကို လိုအပ်သလို ရွေးချယ်ခဲ့သည်။
အသုံးပြုထားသော capacitor သည် 1100nf ဖြစ်ပြီး အသုံးပြုထားသော resistance သည် 25 ohms ခန့်ဖြစ်သည်။
low-pass filter သည် ထပ်လောင်းဖတ်ရှုမှုနှင့် အမှိုက်တန်ဖိုးများကို ဖြစ်ပေါ်စေနိုင်သည့် မလိုအပ်သော ယာယီအခြေအနေများကို ဖယ်ရှားပေးသည်။
ထို့နောက် low-pass filter ကို stm micro-controller ၏ input digital pin သို့ capacitor မှတဆင့် output ပေးပါသည်။
အခြားအစိတ်အပိုင်းမှာ stm micro-controller မှပံ့ပိုးပေးသော pwm မှထိန်းချုပ်ထားသောမော်တာဖြစ်သည်။
ဤဆက်တင်အား optical coupler ic ကို အသုံးပြု၍ လျှပ်စစ်အထီးကျန်မှုဖြင့် ပေးထားပါသည်။
optical coupler တွင် ic package အတွင်း အလင်းထုတ်လွှတ်သော led တစ်ခု ပါ၀င်ပြီး input terminal တွင် high pulse ကိုပေးသောအခါ၊ ၎င်းသည် output terminal ကို short-circuit ဖြစ်သွားသည်။
input terminal သည် pwm ကို optical coupler သို့ချိတ်ဆက်ထားသောled ၏ current ကိုကန့်သတ်သည့် resistor မှတဆင့် pwmကိုပေးသည်။
drop-down resistor ကို output တွင်ချိတ်ဆက်ထားသောကြောင့် terminal သည် short-circuit ဖြစ်သောအခါ drop-down resistor တွင်ဗို့အားထုတ်ပေးပြီး resistor ရှိ terminal နှင့်ချိတ်ဆက်ထားသော pin သည်မြင့်မားသောအခြေအနေရရှိစေသည်။
photoelectric coupler ၏ output ကို enable pin ၏အမြင့်ကိုထိန်းသိမ်းထားသော motor driver ic ၏ IN1 နှင့်ချိတ်ဆက်ထားသည်။
pwm duty cycle သည် optical coupler input တွင်ပြောင်းလဲသောအခါ၊ motor driver pin သည် motor ကိုပြောင်းပြီး motor ၏ speed ကိုထိန်းချုပ်သည်။
pwm ကို မော်တာသို့ ပေးပြီးနောက်၊ မော်တာ ဒရိုက်ဘာသည် များသောအားဖြင့် ဗို့အား 12 ဗို့ကို ပေးသည်။
ထို့နောက် မော်တာမောင်းသူက မော်တာကို လည်ပတ်စေပါသည်။
ဤမော်တာအမြန်နှုန်းထိန်းညှိခြင်းပရောဂျက်ကို အကောင်အထည်ဖော်ရာတွင် အသုံးပြုသည့် အယ်လဂိုရီသမ်ကို မိတ်ဆက်ပေးကြပါစို့။
မော်တာ၏ pwm ကို timer တစ်ခုတည်းဖြင့် ပံ့ပိုးထားသည်။
timer ၏ configuration ကို ပြုလုပ်ထားပြီး pwm ကို ပေးဆောင်ရန် သတ်မှတ်ထားသည်။
မော်တာစတင်သောအခါ၊ မော်တာရိုးတံတွင်ပါရှိသောအပေါက်ကို လှည့်သည်။
အပေါက်သည် အာရုံခံအပေါက်အတွင်းသို့ ဖြတ်သွားကာ သွေးခုန်နှုန်းနည်းသည်။
အနိမ့်ဆုံးတွင်၊ ကုဒ်သည် စတင်ပြီး အလျားလိုက်ရွှေ့ရန် စောင့်သည်။
အလျားလိုက် ပျောက်သွားသည်နှင့်၊ အာရုံခံကိရိယာသည် မြင့်မားသော အခြေအနေကို ပေးဆောင်ပြီး အချိန်တိုင်းကိရိယာကို စတင်ရေတွက်ပါသည်။
timer သည် အကွက်နှစ်ခုကြားတွင် အချိန်ပေးသည်။
ယခု၊ နောက်ထပ်သွေးခုန်နှုန်းနိမ့်သည့် ပေါ်လာသောအခါ၊ IF ထုတ်ပြန်ချက်သည် နောက်တစ်ကြိမ်တက်လာသည့်အစွန်းကို စောင့်ကာ ကောင်တာရပ်ခြင်းကို ထပ်မံလုပ်ဆောင်သည်။
အမြန်နှုန်းကို တွက်ချက်ပြီးနောက်၊ အမြန်နှုန်းနှင့် အမှန်တကယ်ရည်ညွှန်းတန်ဖိုးကြား ကွာခြားချက်ကို တွက်ချက်ပြီး pid ပေးလိုက်ပါ။
Pid သည် သတ်မှတ်အခိုက်အတန့်တွင် ရည်ညွှန်းတန်ဖိုးသို့ရောက်ရှိသည့် တာဝန်သံသရာတန်ဖိုးကို တွက်ချက်သည်။ ဤတန်ဖိုးကို CCR (
သို့ ပေးဆောင်ထားပြီး
နှိုင်းယှဉ်စာရင်းသွင်းခြင်း)
အမှားအယွင်းပေါ် မူတည်၍ အချိန်တိုင်းကိရိယာ၏ အမြန်နှုန်းကို လျှော့ချသည် သို့မဟုတ် တိုးလာသည်။
Atollic Truestudio ကုဒ်ကို အကောင်အထည်ဖော်ပြီးဖြစ်သည်။
အမှားရှာပြင်ခြင်းအတွက် STM စတူဒီယိုကို ထည့်သွင်းရန် လိုအပ်နိုင်သည်။
STM စတူဒီယိုတွင် ပရောဂျက်ကို တင်သွင်းပြီး သင်ကြည့်ရှုလိုသော ကိန်းရှင်များကို တင်သွင်းပါ။
2017-11-4xx တွင် အနည်းငယ်ပြောင်းလဲမှုရှိသည်။
နာရီကြိမ်နှုန်းကို 168 MHz တွင် h ဖိုင်တစ်ခုသို့ အတိအကျပြောင်းပါ။
ကုဒ်အတိုအထွာကို အထက်တွင် ပေးထားပါသည်။
နိဂုံးချုပ်ချက်မှာ မော်တာ၏ အမြန်နှုန်းကို PID ဖြင့် ထိန်းချုပ်ထားသည်။
သို့သော် မျဉ်းကွေးသည် ချောမွေ့သောမျဉ်းမဟုတ်ပေ။
ယင်းအတွက် အကြောင်းရင်းများစွာရှိပါသည်- low-pass filter နှင့်ချိတ်ဆက်ထားသော sensor သည် အချို့သောချို့ယွင်းချက်များရှိနေသော်လည်း၊ ၎င်းတို့သည် nonlinear resistors နှင့် analog အီလက်ထရွန်းနစ်ပစ္စည်းများအတွက် ရှောင်လွှဲ၍မရသော အကြောင်းရင်းများကြောင့်ဖြစ်ပြီး၊ motor သည် voltage သို့မဟုတ် pwm တွင် ချောမွေ့စွာ လှည့်မရနိုင်ပါ။
၎င်းသည် စနစ်အား မှားယွင်းသောတန်ဖိုးအချို့ကို ထည့်သွင်းစေသည့် ဖင်များကို ထောက်ပံ့ပေးသည်။
တုန်လှုပ်မှုကြောင့်၊ အာရုံခံကိရိယာသည် ပိုမိုမြင့်မားသောတန်ဖိုးကိုပေးဆောင်သည့် အကွက်အချို့ကို လွတ်သွားနိုင်ပြီး အခြားအမှားအယွင်းတစ်ခုအတွက် အဓိကအကြောင်းရင်းမှာ stm ၏ core clock frequency ဖြစ်နိုင်သည်။
Stm ၏ core နာရီသည် 168 MHz ဖြစ်သည်။
ဤပြဿနာကို ဤပရောဂျက်တွင် ကိုင်တွယ်ဖြေရှင်းခဲ့သော်လည်း၊ ဤကဲ့သို့သော ကြိမ်နှုန်းမြင့်မားမှုကို မပေးဆောင်နိုင်သော ဤပုံစံ၏ အလုံးစုံသော အယူအဆတစ်ခုရှိပါသည်။
အဖွင့်အဝိုင်းအမြန်နှုန်းသည် မျှော်လင့်မထားသောတန်ဖိုးအနည်းငယ်သာရှိသော အလွန်ချောမွေ့သောမျဉ်းကို ပေးဆောင်သည်။
PID သည် အလုပ်လုပ်နေပြီး အလွန်နိမ့်သော မော်တာတည်ငြိမ်ချိန်ကို ပေးသည်။
မော်တာ PID အား ရည်ညွှန်းအမြန်နှုန်းကို အမြဲတည်မြဲစေသော ဗို့အားအမျိုးမျိုးဖြင့် စမ်းသပ်ခဲ့သည်။
ဗို့အားပြောင်းလဲမှုသည် မော်တာ၏အမြန်နှုန်းကို မပြောင်းလဲဘဲ PID အလုပ်လုပ်နေကြောင်း ညွှန်ပြသည်။
ဤသည်မှာ PID ၏ နောက်ဆုံးထွက်ရှိမှု၏ အပိုင်းအချို့ဖြစ်သည်။ က)
Closed loop @ 110 rpmb)
Closed loop @ 120 rpm ဤပရောဂျက်သည် ကျွန်ုပ်၏အဖွဲ့၀င်များ၏အကူအညီမပါဘဲ မပြီးမြောက်နိုင်ပါ။
သူတို့ကို ကျေးဇူးတင်ချင်ပါတယ်။
ဤပရောဂျက်ကိုကြည့်ရှုသည့်အတွက် ကျေးဇူးတင်ပါသည်။
မင်းကိုကူညီဖို့မျှော်လင့်ပါတယ်။
နောက်ထပ် စောင့်မျှော်ကြည့်ရှုပေးပါ။
ကြိုပြီး ကုသိုလ်ယူပါ ။ :)