PID පාලකය ev3 රේඛාව ඔස්සේ චලනය. Lego Mindstorms රොබෝ තාක්ෂණයේ සමානුපාතික අනුකලිත අවකල PID පාලකය. සමානුපාතික පාලකය. රොබෝ පාලන භාෂාව

මෙම කාර්යය සම්භාව්ය, දෘෂ්ටිවාදාත්මකව සරල ය, එය බොහෝ වාරයක් විසඳිය හැකි අතර, සෑම අවස්ථාවකදීම ඔබ අලුත් දෙයක් සොයා ගනු ඇත.

පහත රේඛාවේ ගැටලුව විසඳීමට බොහෝ ප්රවේශයන් තිබේ. ඔවුන්ගෙන් එක් අයෙකුගේ තේරීම රොබෝවරයාගේ නිශ්චිත සැලසුම මත රඳා පවතී, සංවේදක සංඛ්යාව, රෝදවලට සාපේක්ෂව ඔවුන්ගේ පිහිටීම සහ එකිනෙකා.

අපගේ උදාහරණයේදී, ප්‍රධාන Robot Educator නිබන්ධන ආකෘතිය මත පදනම්ව රොබෝ උදාහරණ තුනක් විසුරුවා හරිනු ඇත.

ආරම්භ කිරීම සඳහා, අපි Robot Educator හි මූලික ආකෘතිය එකලස් කරමු, මේ සඳහා ඔබට MINDSTORMS EV3 මෘදුකාංගයේ උපදෙස් භාවිතා කළ හැකිය.

එසේම, උදාහරණ ලෙස, අපට EV3 ආලෝක වර්ණ සංවේදක අවශ්‍ය වේ. මෙම ආලෝක සංවේදක, අන් කිසිවක් මෙන්, අපගේ කාර්යය සඳහා වඩාත් සුදුසු වේ, ඔවුන් සමඟ වැඩ කරන විට, අප අවට ආලෝකයේ තීව්රතාව ගැන කරදර විය යුතු නැත. මෙම සංවේදකය සඳහා, වැඩසටහන් වලදී අපි පරාවර්තක ආලෝක මාදිලිය භාවිතා කරනු ඇත, සංවේදකයේ රතු ආලෝකයේ පරාවර්තක ආලෝකයේ ප්රමාණය ඇස්තමේන්තු කර ඇත. සංවේදක කියවීම් වල සීමාවන් "කිසිදු පරාවර්තනයක්" සහ "සම්පූර්ණ පරාවර්තනය" සඳහා පිළිවෙලින් ඒකක 0 - 100 කි.

උදාහරණයක් ලෙස, අපි ඒකාකාර, සැහැල්ලු පසුබිමක නිරූපණය කර ඇති කළු මාර්ගයක් ඔස්සේ ගමන් කිරීම සඳහා වැඩසටහන් සඳහා උදාහරණ 3 ක් විශ්ලේෂණය කරන්නෙමු:

· P නියාමකය සමඟ එක් සංවේදකයක්.

· PK නියාමකය සමඟ එක් සංවේදකයක්.

· සංවේදක දෙකක්.

උදාහරණ 1. P නියාමකය සමඟ එක් සංවේදකයක්.

නිර්මාණ

ආලෝක සංවේදකය ආකෘතියේ පහසුවෙන් පිහිටා ඇති කදම්භයක් මත සවි කර ඇත.


ඇල්ගොරිතම

ඇල්ගොරිතමයේ ක්‍රියාකාරිත්වය පදනම් වී ඇත්තේ, අතිච්ඡාදනය වීමේ ප්‍රමාණය අනුව, කළු රේඛාවක් සහිත සංවේදක ආලෝකකරණ කදම්බය, සංවේදකය මඟින් ආපසු ලබා දෙන කියවීම් අනුක්‍රමණයකින් වෙනස් වේ. රොබෝවරයා කළු රේඛාවේ මායිමේ ආලෝක සංවේදකයේ පිහිටීම තබා ගනී. ආලෝක සංවේදකයෙන් ආදාන දත්ත පරිවර්තනය කිරීමෙන් පාලක පද්ධතිය රොබෝවරයාගේ හැරවුම් වේගයේ අගය ජනනය කරයි.


සැබෑ ගමන් පථයක් මත සංවේදකය එහි සම්පූර්ණ මෙහෙයුම් පරාසය තුළ (0-100) අගයන් ජනනය කරන බැවින්, රොබෝවරයා උත්සාහ කරන අගය 50 වේ. මෙම අවස්ථාවේ දී, භ්‍රමණ ශ්‍රිතයට සම්ප්‍රේෂණය වන අගයන් පරාසය තුළ සෑදී ඇත. -50 - 50, නමුත් මෙම අගයන් ප්‍රපාත භ්‍රමණයක් සඳහා ප්‍රමාණවත් නොවේ. එබැවින්, පරාසය එකහමාරකින් -75 - 75 දක්වා පුළුල් කළ යුතුය.

අවසාන වශයෙන්, වැඩසටහනේ දී, කැල්කියුලේටරයේ කාර්යය සරල සමානුපාතික පාලකයකි. කාගේ කාර්යය ( (a-50)*1.5 ) ආලෝක සංවේදකයේ මෙහෙයුම් පරාසය තුළ ප්‍රස්ථාරයට අනුකූලව භ්‍රමණ අගයන් ජනනය කරයි:

ඇල්ගොරිතමයේ උදාහරණයක්

උදාහරණ 2. PK පාලකය සමඟ එක් සංවේදකයක්.

මෙම උදාහරණය එකම නිර්මාණයක් මත සම්පාදනය කර ඇත.

පෙර උදාහරණයේදී රොබෝවරයා ඕනෑවට වඩා පැද්දෙන අතර එය ප්‍රමාණවත් තරම් වේගවත් වීමට ඉඩ නොදුන් බව ඔබ දැක ඇති. දැන් අපි මෙම තත්වය ටිකක් දියුණු කිරීමට උත්සාහ කරමු.

අපගේ සමානුපාතික පාලකයට, අපි සරල කියුබ් පාලකයක් ද එකතු කරමු, එය පාලක ක්‍රියාකාරිත්වයට පෙරළියක් එක් කරයි. මෙය ගමන් පථයේ අපේක්ෂිත මායිම අසල රොබෝවරයාගේ පැද්දීම අඩු කරයි, එසේම එයින් විශාල දුරින් ශක්තිමත් ඇඹරුම් ඇති කරයි.

Legoconstruction හි මූලික චලනයන්ගෙන් එකක් වන්නේ කළු රේඛාව අනුගමනය කිරීමයි.

වැඩසටහනක් නිර්මාණය කිරීමේ සාමාන්ය න්යාය සහ විශේෂිත උදාහරණ wroboto.ru වෙබ් අඩවියේ විස්තර කර ඇත

වෙනස්කම් ඇති බැවින් EV3 පරිසරය තුළ අපි මෙය ක්‍රියාත්මක කරන ආකාරය මම විස්තර කරමි.

රොබෝවරයා දැනගත යුතු පළමු දෙය වන්නේ කළු සහ සුදු මායිමේ පිහිටා ඇති "පරමාදර්ශී ලක්ෂ්යයේ" වටිනාකමයි.

රූපයේ රතු තිත පිහිටීම මෙම ස්ථානයට අනුරූප වේ.

කදිම ගණනය කිරීමේ විකල්පය වන්නේ කළු සහ සුදු අගය මැනීම සහ අංක ගණිත මධ්යන්යය ගැනීමයි.

ඔබට එය අතින් කළ හැකිය. නමුත් අවාසි වහාම දැකිය හැකිය: කෙටි කාලයක් තුළදී පවා ආලෝකය වෙනස් විය හැකි අතර, ගණනය කළ අගය වැරදියි.

එබැවින් ඔබට එය රොබෝවරයෙකු ලවා කළ හැකිය.

අත්හදා බැලීම් වලදී, කළු සහ සුදු යන දෙකම මැනීම අවශ්ය නොවන බව අපට පෙනී ගියේය. සුදු පමණක් මැනිය හැකිය. සහ පරමාදර්ශී ලක්ෂ්‍යයේ අගය කළු රේඛාවේ පළල සහ රොබෝවරයාගේ වේගය අනුව 1.2 (1.15) න් බෙදූ සුදු අගය ලෙස ගණනය කෙරේ.

ගණනය කළ අගය පසුව ප්‍රවේශ වීම සඳහා විචල්‍යයකට ලිවිය යුතුය.

"පරමාදර්ශී ලක්ෂ්යය" ගණනය කිරීම

ව්යාපාරයට සම්බන්ධ ඊළඟ පරාමිතිය වන්නේ හැරීමේ අනුපාතයයි. එය විශාල වන තරමට, රොබෝවරයා ආලෝකයේ වෙනස්කම් වලට වඩාත් තියුණු ලෙස ප්‍රතික්‍රියා කරයි. නමුත් ඉතා ඉහළ අගයක් රොබෝවරයා සෙලවීමට හේතු වේ. එක් එක් රොබෝ නිර්මාණය සඳහා අගය තනි තනිව පර්යේෂණාත්මකව තෝරා ගනු ලැබේ.

අවසාන පරාමිතිය වන්නේ මෝටරවල මූලික බලයයි. එය රොබෝවරයාගේ වේගයට බලපායි. චලනය වීමේ වේගය වැඩිවීම, ආලෝකයේ වෙනස්කම් වලට රොබෝවරයාගේ ප්රතිචාර කාලය වැඩි කිරීමට හේතු වන අතර, එය ගමන් පථයෙන් පිටවීමට හේතු විය හැක. අගය ද පර්යේෂණාත්මකව තෝරා ඇත.

පහසුව සඳහා, මෙම පරාමිතීන් විචල්යයන්ට ද ලිවිය හැකිය.

සුක්කානම් අනුපාතය සහ පාදක බලය

කළු රේඛාව ඔස්සේ ගමන් කිරීමේ තර්කනය පහත පරිදි වේ: පරමාදර්ශී ලක්ෂ්යයෙන් බැහැරවීම මනිනු ලැබේ. එය විශාල වන තරමට රොබෝවරයා එය වෙත ආපසු යාමට උත්සාහ කළ යුතුය.

මෙය සිදු කිරීම සඳහා, අපි අංක දෙකක් ගණනය කරමු - B සහ C මෝටර්රථවල බල අගය වෙන වෙනම.

සූත්‍ර ස්වරූපයෙන්, එය මේ ආකාරයෙන් පෙනේ:

Isens යනු ආලෝක සංවේදක කියවීම්වල අගයයි.

අවසාන වශයෙන්, EV3 හි ක්රියාත්මක කිරීම. වෙනම බ්ලොක් ආකාරයෙන් නිකුත් කිරීම වඩාත් පහසු වේ.

ඇල්ගොරිතම ක්රියාත්මක කිරීම

මැද කාණ්ඩයේ WRO 2015 සඳහා රොබෝවරයා තුළ ක්‍රියාත්මක කරන ලද ඇල්ගොරිතම මෙයයි

රොබෝ විද්යාව නව රසවත් දිශාවක් වන අතර, පෙනෙන විදිහට, පරිගණක විද්යාව හා තාක්ෂණය පිළිබඳ පාසල් පාඨමාලා රාමුව තුළ තවදුරටත් වර්ධනය වනු ඇත. රොබෝ තාක්ෂණයේ උත්පාතය බොහෝ දුරට හේතු වී ඇත්තේ එය ඔබට ප්‍රශ්නයට පිළිතුරු දීමට ඉඩ සලසන බැවිනි: "ඇත්ත වශයෙන්ම අපි ක්‍රමලේඛනය ඉගෙන ගන්නේ ඇයි?". ඊට අමතරව, රොබෝ තාක්ෂණයේදී, ස්වයංක්‍රීය පාලනය පිළිබඳ න්‍යායේ මූලික සංකල්ප පිළිබඳව ඔබට දැනගත හැකිය.

මෙම පිටුව කතුවරයා විසින් සංවර්ධනය කරන ලද ක්‍රමලේඛන සහ Arduino පුවරු සඳහා සිමියුලේටර් ඉදිරිපත් කරයි. කිසියම් හේතුවක් නිසා සැබෑ දෘඩාංග භාවිතා කිරීමට නොහැකි අවස්ථාවන්හිදී ඔවුන්ට උපකාර කළ හැකිය.

පුහුණුකරුවන් HTML5 විශේෂාංග භාවිතා කරයි, එබැවින් ඔවුන් නවීන බ්‍රව්සර්වල පමණක් ක්‍රියා කරයි (එය භාවිතා කිරීම වඩාත් සුදුසුය ගූගල් ක්රෝම්හෝ Mozilla Firefox).

පුවත් දැන් ටෙලිග්‍රාම් නාලිකාවේ

2015 නොවැම්බර් 27
"විෂබීජ" ධාවන පථය සිමියුලේටර් වලට එකතු කර ඇත ( එම්.වී. ලාසරෙව්, Orekhovo-Zuevo).

2015 ඔක්තෝබර් 13
දැන් LEGO රොබෝ සඳහා සිමියුලේටර් තුළ, ඔබට ඔබේ ධාවන පථ (රොබෝ සඳහා ක්ෂේත්‍ර) උඩුගත කළ හැක. එය කරන්නේ කෙසේද? බලන්න.
නව සිමියුලේටර් එකතු කරන ලදී - ආලෝක සංවේදක දෙකක්, තුනක්, හතරක් සහිත LEGO රොබෝවරු.

රොබෝ පාලන භාෂාව

සිමියුලේටර් වල රොබෝවරු පාලනය කිරීම සඳහා, සරල ක්‍රමලේඛන භාෂාවක් භාවිතා කරනු ලැබේ, එය ක්‍රියාකාරී මාතෘකාව ලැබුණි SiRoP (සරල රොබෝ වැඩසටහන්කරණය).

ආලෝක සංවේදකය සමඟ රොබෝ පාලනය

ආලෝක සංවේදකය රොබෝවරයාට මේසය මතුපිට සැරිසැරීමට ඉඩ සලසයි, නිදසුනක් ලෙස, සුදු සහ කළු ප්‍රදේශ අතර (කළු රේඛාවේ මායිම දිගේ) මායිම දිගේ ගමන් කරයි. ෆොටෝඩියෝඩය මතුපිට ආලෝකමත් කරයි, ෆොටෝඩෙක්ටරය පරාවර්තනය කරන ලද කිරණ "අල්ලා" සහ ඒවායේ තීව්‍රතාවය මැන බලයි.

මෙම වර්ගයේ වඩාත් ජනප්රිය කාර්යය වන්නේ රේඛාවක් ඔස්සේ ගමන් කිරීමයි. සිමියුලේටරය ආධාරයෙන්, ඔබට විවිධ පාලන නීති අධ්‍යයනය කළ හැකිය - රිලේ, සමානුපාතික සහ PID පාලනය පවා (සමානුපාතික-අනුකලිත-ව්‍යුත්පන්න).

ආලෝක සංවේදකයක් සහිත රොබෝවක් සඳහා වැඩසටහන් සඳහා උදාහරණ

1 (සංවේදකය > 128 නම් (මෝටර් = 100 මෝටරය = 0) වෙනත් (මෝටර් = 0 මෝටරය = 100) රැඳී සිටින්න (10) )

KP = 0.2 අතර 1 (u = kP*(sensor-128) motor = 50 + u motor = 50 - u wait(20) )

ප්‍රධාන (1 අතරතුර (සෙන්සරය > 128 (මෝටර් = 100 මෝටරය = 100 බලා සිටීම (10)) ආපසු () හැරීම () ) ) ආපසු (මෝටර් = -100 මෝටරය = -100 රැඳී සිටීම (260) ) හැරවීම (මෝටර් = -50 මෝටරය = 50 රැඳී සිටීම (50) )

ආලෝක සංවේදක දෙකක් සහිත රොබෝ පාලනය

ආලෝක සංවේදක දෙකක් රොබෝවරයාට වඩා හොඳින් සැරිසැරීමට සහ තුනී රේඛාවක් අනුගමනය කිරීමට ඉඩ සලසයි. ඒවා ටිකක් ඉදිරියට ගෙනැවිත් දෙපැත්තට බෙදී ඇත. තනි සංවේදකයක් සහිත කාර්යයන් සඳහා, මෙම සිමියුලේටරය භාවිතා කරමින්, ඔබට විවිධ පාලන නීති අධ්යයනය කළ හැකිය.

ආලෝක සංවේදක තුනක් සහිත රොබෝවක් සඳහා උදාහරණ වැඩසටහන්

ආලෝක සංවේදක හතරක් සහිත රොබෝ පාලනය

ආලෝක සංවේදක හතරක් රොබෝවරයාට තියුණු හැරීම් වඩා හොඳින් හඳුනා ගැනීමට ඉඩ සලසයි. අභ්යන්තර සංවේදක හොඳින් ගැලපීම සඳහා භාවිතා වේ, සමානුපාතික පාලනය ඔවුන් සඳහා භාවිතා වේ. බාහිර සංවේදක දෙකක් ටිකක් ඉදිරියට තබා දෙපැත්තට වෙන් කර ඇත. තියුණු හැරීමක් ඇති විට ඒවා භාවිතා වේ. බාහිර යුගලයේ සංවේදකවල කියවීම් අනුව පාලනය සඳහා වාසි සාධකය අභ්යන්තර යුගලයට වඩා විශාල ලෙස තෝරා ඇත (රූපය 1 බලන්න). L.Yu Ovsyanitskaya et al., රේඛාව ඔස්සේ Lego Mindstorms EV3 රොබෝවරයාගේ චලනය සඳහා ඇල්ගොරිතම සහ වැඩසටහන්, එම්.: "පෙරෝ", 2015).

ආලෝක සංවේදක හතරක් සහිත රොබෝවක් සඳහා උදාහරණ වැඩසටහන්

1 (d0 = encoder > 128 d1 = encoder > 128 d2 = encoder > 128 d3 = encoder > 128 නම් d1 & !d2 ( motor = 100 motor = 0 ) if! d1 & d2 ( motor = 0 motor = 100 ) d1 == d2 (මෝටර් = 100 මෝටර් = 100) නම් d0 & !d3 (මෝටර් = 30 මෝටර් = 0) නම්! d0 & d3 (මෝටර් = 0 මෝටර් = 30) රැඳී සිටින්න (10) )

K1 = 0.2 k2 = 0.4 අතර 1 (u1 = සංවේදකය - සංවේදකය u2 = සංවේදකය - සංවේදක මෝටරය = 50+k1*u1+k2*u2 motor = 50-k1*u1-k2*u2 wait(10) )

දුර සංවේදකයක් සහිත රොබෝවක් පාලනය කිරීම (සෝනාර්)

දුරස්ථ සංවේදකය (සෝනාර්) මඟින් රොබෝවරයා චලනය වන විට ආසන්නතම බාධකයට ඇති දුර තීරණය කිරීමට ඉඩ සලසයි. එය අතිධ්වනික සංඥාවක් නිකුත් කරන අතර පරාවර්තනය වූ සංඥාව ලබා ගනී. සම්ප්‍රේෂණය වන සහ ලැබුණු සංඥා අතර කාලය වැඩි වන තරමට දුර වැඩි වේ.

දුරස්ථ සංවේදකයක් භාවිතයෙන්, දන්නා හැඩයේ නමුත් නොදන්නා ප්‍රමාණයේ වංකගිරියක ස්වයංක්‍රීයව සැරිසැරීමට රොබෝවෙකු වැඩසටහන්ගත කළ හැක.

විස්තර කර්තෘ: Konovalov Igor සමානුපාතික පාලකය වැඩිදියුණු කිරීමකි. රිලේ වල ප්‍රධාන අවාසිය නම් වත්මන් අගයන් සංවේදකයේ සාමාන්‍ය අගයට වඩා කොපමණ වෙනස් වේද යන්න නොසලකා හැරීමයි. එයට ඇත්තේ ප්‍රාන්ත දෙකක් පමණි - එක්කෝ සංවේදක අගයන් සාමාන්‍ය අගයට වඩා අඩු නම් නිශ්චිත නියත සංඛ්‍යාවකින් වැඩි කිරීමට උත්සාහ කරන්න, නැතහොත් එය වැඩි කරන්න. මේ නිසා, නියත විස්තාරයක් සහිත උච්චාවචනයන් සිදු වේ, එය ඉතා අකාර්යක්ෂම වේ.
වත්මන් කියවීම් සාමාන්‍යයෙන් "දුර" කොපමණ දැයි තීරණය කිරීම වඩා තාර්කික වන අතර මෙය මත පදනම්ව විස්තාරය වෙනස් කරන්න. එය වඩාත් පැහැදිලි කිරීම සඳහා, අපි උදාහරණයක් දෙස බලමු. උදාහරණය පෙර ලිපියේ මෙන් ම ය: Lego Mindstorms EV3 වෙතින් රොබෝවක් ආලෝක මාදිලියේ එක් වර්ණ සංවේදකයක් භාවිතයෙන් කළු රේඛාවක් ඔස්සේ ධාවනය කරයි.

රොබෝවරයා සුදු සහ කළු අතර මායිම දිගේ ධාවනය කිරීමට උත්සාහ කරන අතර එහිදී සංවේදකය ආසන්න වශයෙන් 50% ආලෝකකරණයක් පෙන්වයි. එය සාමාන්‍ය ස්ථානයෙන් දුරස් වන තරමට, රොබෝවරයා 50% දක්වා ආපසු යාමට වැඩි උත්සාහයක් දරයි.
වැඩසටහනක් ලිවීම සඳහා, අපි "දෝෂය", "පාලන ක්රියාව" යන යෙදුම් භාවිතා කරමු. දෝෂය - සංවේදකයේ වත්මන් කියවීම සහ සාමාන්ය එක අතර වෙනස. අපගේ නඩුවේදී, දැන් රොබෝවරයා ආලෝකයෙන් 20% ක් දකින්නේ නම්, දෝෂය 20-50= -30% වේ. දෝෂය ඉවත් කිරීම සඳහා රොබෝවරයා හැරවිය යුත්තේ කුමන දිශාවටද යන්න දෝෂ ලකුණෙන් දැක්වේ. දැන් රොබෝව හැරවිය යුත්තේ කුමන ආකාරයෙන්ද, කුමන වේගයකින් සහ කෙතරම් තියුණු ලෙසද යන්න මෝටර් රථවලට පැවසිය යුතුය. මෝටර වලට පාලන බලපෑමක් ඇති කිරීම අවශ්‍ය වේ, එයින් අදහස් කරන්නේ එය කෙතරම් හදිසියේ එහි සාමාන්‍ය තත්වයට පැමිණිය යුතුද යන්නයි. පාලන ක්‍රියාව (UP) ගණනය කරනු ලබන්නේ සමානුපාතික සාධකය (k) මගින් ගුණ කරන ලද දෝෂය (දෝෂය) ලෙසය. පාලන ක්‍රියාව මත දෝෂයේ බලපෑම වැඩි කිරීමට හෝ අඩු කිරීමට මෙම සාධකය භාවිතා කරයි. පාලක ක්‍රියාව සුක්කානම වෙත පෝෂණය වන අතර එහිදී රොබෝවරයාගේ සාමාන්‍ය වේගය සකසා ඇත.
දර්ශන අනුපාතය සකසන්නේ කෙසේද? ආනුභවිකව අගයන් තෝරන්න, පථය ගමන් කිරීම සඳහා එය රොබෝවරයාගේ වේගය සහ සැලසුම අනුව 0.2 සිට 1.5 දක්වා විය හැකිය. සංගුණකය ඉතා විශාල නම්, රොබෝවරයා දැඩි ලෙස වෙව්ලනු ඇත, එය කුඩා නම්, එය සුමටව ධාවනය කරනු ඇත, නමුත් හැරීමේදී යම් අවස්ථාවක, ප්‍රමාණවත් නොවන පාලන ක්‍රියාවක් හේතුවෙන් පිටතට යන්න. වැඩසටහනේ අනුවාද දෙකක් ලියන්නෙමු - විචල්යයන් සමඟ (දැනටමත් ඒවා අධ්යයනය කර ඇති අය සඳහා) සහ තොරව.


නමුත් සමානුපාතික සහ සමෝධානික සංරචකයක් හඳුන්වා දීමෙන් මෙම නියාමකය ශක්තිමත් කළ හැකිය, විස්තරය පහත ලිපිවල ඇත. ඔයාව ඉක්මණින්ම මුණගැසෙන්නම්!

සමාන ලිපි

2022 parki48.ru. අපි රාමු නිවසක් ගොඩනඟමු. භූමි අලංකරණය. ඉදිකිරීම. පදනම.