උපදෙස් VHDL මෝටර් වේග පාලනය දිශාව සහ වේගය වම් සහ දකුණු වේග පාලකය තීරණය කරයි
සටහන: මෙම පිටුව විශාල ගොඩනැගීමක එක් කොටසකි. කරුණාකර ඔබ මෙතැනින් ආරම්භ කරන බව සහතික කර ගන්න, එවිට විශාල ව්යාපෘතිය තුළ පහත සඳහන් දේ ගැලපෙන්නේ කොතැනදැයි ඔබට වැටහෙනු ඇත
ඉවරයිview
මෝටර් වේගය සහ දිශා පාලනය යනු photodetector රොබෝවේ ඇති ප්රධාන අංශ දෙකෙන් එකක් වන අතර අනෙක් එක photodetector හෙවත් ආලෝක අනාවරක අංශයයි. ෆොටෝඩෙක්ටර් අංශය රොබෝවරයාගේ දර්ශනය කෙරෙහි අවධානය යොමු කරන අතර, මෝටර් වේගය සහ දිශා පාලන අංශය රොබෝවරයාගේ චලනය කෙරෙහි අවධානය යොමු කරයි. ෆොටෝඩෙක්ටර් අංශයෙන් ලබා දෙන මෝටර් වේගය සහ දිශා පාලන ක්රියාවලි දත්ත සහ මෝටර් චලන ආකාරයෙන් භෞතික ප්රතිදානයක් ලබා දෙයි.
ආලෝකය සොයා යන රොබෝවරයාගේ වම් සහ දකුණු මෝටරයේ වේගය සහ දිශාව පාලනය කිරීම මෙම අංශයේ අරමුණයි. මෙම අගයන් තීරණය කිරීමට, ඔබට කැමරාව මගින් ග්රහණය කර ඇති සහ එළිපත්ත මගින් සකසන ලද ආලෝකයේ ප්රමාණය සහ පිහිටීම අවශ්ය වේ. ඔබට එක් එක් මෝටරයේ මනින ලද වේගය ද අවශ්ය වේ. මෙම යෙදවුම් වලින්, ඔබට එක් එක් මෝටරය සඳහා PWM (Pulse-Width Modulation) අගය ප්රතිදානය කිරීමට හැකි වනු ඇත.
මෙය සාක්ෂාත් කර ගැනීම සඳහා, ඔබට මෙම VHDL මොඩියුල සෑදීමට අවශ්ය වනු ඇත (පහත සබැඳි කර ඇත):
- පාලනය
- දෝෂ ගණනය කිරීම
- ද්විමය පරිවර්තනය
- ආලෝක ප්රභවයක් නොමැතිකම
ඔබට මෙම අංශය සඳහා VHDL කේතය මෙතැනින් බලන්න පුළුවන්.
සැපයුම්
VHDL හි කේතය පරීක්ෂා කිරීමට ද භාවිතා කළ හැකි බැවින් ISE Design Suite 14.7 සමඟින් කේත කිරීමට අපි නිර්දේශ කරමු. කෙසේ වෙතත්, කේතය BASYS 3 වෙත උඩුගත කිරීමට, ඔබට Vivado (ver. 2015.4 හෝ 2016.4) ස්ථාපනය කර .xdc දිගුව සමඟ සීමාව ලිවීමට අවශ්ය වනු ඇත.
VHDL මෝටර් වේග පාලනය: දිශාව සහ වේගය තීරණය කරන්න, වම් සහ දකුණු වේග පාලකය: පිටුව 1
උපදෙස් පියවර
පියවර 1: පාලනය
ආලෝකය සොයන රොබෝවරයාගේ හැසිරීම පාලනය කරන්නේ කෙසේද යන්න අවබෝධ කර ගැනීම සඳහා, රොබෝවරයා ආලෝක ප්රභවයක් දකින විට ඔහුගේ අපේක්ෂිත හැසිරීම පැහැදිලි කරන්නෙමු. ආලෝක ප්රභවයේ පිහිටීම සහ ප්රමාණය අනුව මෙම හැසිරීම පාලනය කෙරේ.
භාවිතා කරන ඇල්ගොරිතම RC රොබෝ පාලකයකට සමාන වන අතර, එක් ලීවරයක් වමට හෝ දකුණට හැරවිය හැකි අතර තවත් ලීවරයක් ඉදිරියට හෝ පසුපසට හැරවිය හැක.
ආලෝකය සෙවීමට, ආලෝක ප්රභවයේ පිහිටීම රොබෝවරයාට ඉදිරියෙන් නම් මෙම රොබෝව සරල රේඛාවක ගමන් කිරීමට ඔබට අවශ්ය වේ. එය සිදු කිරීම සඳහා, ඔබට වම් සහ දකුණු මෝටර දෙකෙහිම එකම වේගය අවශ්ය වේ. ආලෝකය රොබෝවරයාගේ වම් පැත්තේ පිහිටා තිබේ නම්, ඔබට දකුණු මෝටරය වම් මෝටරයට වඩා වේගයෙන් ගමන් කිරීමට අවශ්ය වන අතර එමඟින් රොබෝවරයාට ආලෝකය දෙසට වමට හැරවිය හැකිය. අනෙක් අතට, ආලෝකය රොබෝවරයාගේ දකුණු පැත්තේ පිහිටා තිබේ නම්, ඔබට වම් මෝටරය දකුණු මෝටරයට වඩා වේගයෙන් ගමන් කිරීමට අවශ්ය වන අතර එමඟින් රොබෝවරයාට ආලෝකය දෙසට දකුණට හැරවිය හැකිය. මෙය RC පාලකයක වම් ලීවරයට සමාන වේ, ඔබට රොබෝව වමට, දකුණට හෝ කෙළින් ගෙන යාමට අවශ්යද යන්න පාලනය කළ හැක.
එවිට, ආලෝක ප්රභවය දුරින් (කුඩා ආලෝක ප්රභවයක්) නම් රොබෝවරයා ඉදිරියට යාමට ඔබට අවශ්ය වේ, නැතහොත් අනාවරණය කරගත් ආලෝක ප්රභවය ඉතා ආසන්න නම් (විශාල ආලෝක ප්රභවයක්) පසුපසට ගමන් කරන්න. රොබෝවරයා ආලෝක ප්රභවයෙන් දුරස්ථ වන තරමට රොබෝවරයා වේගයෙන් ගමන් කිරීමටද ඔබට අවශ්ය වේ. මෙය RC පාලකයක දකුණු ලීවරයට සමාන වන අතර, ඔබට ඉදිරියට යාමට අවශ්යද පසුපසට යාමට අවශ්යද යන්න සහ ඔබට එය කෙතරම් වේගයෙන් චලනය වීමට අවශ්යද යන්න පාලනය කළ හැක.
එවිට ඔබට එක් එක් මෝටරයේ වේගය සඳහා ගණිතමය සූත්රයක් ලබා ගත හැකි අතර, අපි -255 සිට 255 දක්වා වේග පරාසය තෝරා ගනිමු. සෘණ අගයක් යනු මෝටරය පසුපසට හැරෙන අතර ධන අගයක් යනු මෝටරය ඉදිරියට හැරවීමයි.
මේ රොබෝවරයාගේ චලනය සඳහා මූලික ඇල්ගොරිතම එයයි. මෙම මොඩියුලය ගැන වැඩිදුර දැන ගැනීමට, මෙහි ක්ලික් කරන්න.
පියවර 2: දෝෂ ගණනය කිරීම
ඔබ දැනටමත් මෝටර සඳහා ඉලක්ක වේගය සහ දිශාව ඇති බැවින්, ඔබට මෝටරවල මනින ලද වේගය සහ දිශාව ද සැලකිල්ලට ගත යුතුය. එය වේග ඉලක්කයට ළඟා වී ඇත්නම්, අපට අවශ්ය වන්නේ මෝටරය එහි ගම්යතාවය මත පමණක් ගමන් කිරීමයි. එය නොමැති නම්, අපට මෝටරයට වැඩි වේගයක් එක් කිරීමට අවශ්යයි. පාලන න්යාය තුළ, මෙය සංවෘත ප්රතිපෝෂණ පාලන පද්ධතියක් ලෙස හැඳින්වේ.
මෙම මොඩියුලය ගැන වැඩිදුර දැන ගැනීමට, මෙහි ක්ලික් කරන්න.
පියවර 3: ද්විමය පරිවර්තනය
පෙර ගණනය කිරීම් වලින්, ඔබ දැනටමත් එක් එක් මෝටරයට අවශ්ය ක්රියාව දැන ඇත. කෙසේ වෙතත්, ගණනය කිරීම් සිදු කරනු ලබන්නේ අත්සන් කරන ලද ද්විමය භාවිතා කරමිනි. මෙම මොඩියුලයේ අරමුණ වන්නේ මෙම අත්සන් කළ අගයන් PWM උත්පාදක යන්ත්රයට කියවිය හැකි අගයක් බවට පරිවර්තනය කිරීමයි, එනම් දිශාව (දක්ෂිණාවර්තව හෝ වාමාවර්තව) සහ වේගය (0 සිට 255 දක්වා පරාසයක පවතී). එසේම, මෝටරයෙන් ලැබෙන ප්රතිපෝෂණය මනිනු ලබන්නේ අත්සන් නොකළ ද්විමය වලින් වන බැවින්, අත්සන් නොකළ අගයන් (දිශාව සහ වේගය) දෝෂ ගණනය කිරීමේ මොඩියුලයෙන් ගණනය කළ හැකි අත්සන් කළ අගයක් බවට පරිවර්තනය කිරීමට තවත් මොඩියුලයක් අවශ්ය වේ. මෙම මොඩියුලය ගැන වැඩිදුර දැන ගැනීමට, මෙහි ක්ලික් කරන්න.
පියවර 4: ආලෝක ප්රභවයක් නොමැති වීම
ඔබ රොබෝවරයා විසින් ආලෝකය අනාවරණය කරගත් විට ආලෝකය සෙවීමට චලනය වන රොබෝවක් සාදා ඇත. නමුත් රොබෝවරයා ආලෝකය හඳුනා නොගත් විට කුමක් සිදුවේද? මෙම මොඩියුලයේ අරමුණ වන්නේ එවැනි තත්වයක් පවතින විට කළ යුතු දේ නියම කිරීමයි.
ඒ සඳහා ඇති පහසුම ක්රමය සහ සෙවිය යුතු ආලෝක ප්රභවයක් වන්නේ රොබෝවරයා එම ස්ථානයේ භ්රමණය වීමයි. තත්පර ගණනකට භ්රමණය වීමෙන් පසුව, රොබෝවරයා තවමත් ආලෝක ප්රභවයක් සොයාගෙන නොමැති නම්, බලය ඉතිරි කර ගැනීම සඳහා රොබෝවරයා චලනය වීම නතර කිරීමට ඔබට අවශ්ය වේ. තවත් තත්පර ගණනකට පසු, ආලෝකය සෙවීම සඳහා රොබෝවරයා නැවත එම ස්ථානයේ භ්රමණය විය යුතුය. මෙම මොඩියුලය ගැන වැඩිදුර දැන ගැනීමට, මෙහි ක්ලික් කරන්න.
පියවර 5: එය ක්රියා කරන ආකාරය
මෙම පැහැදිලි කිරීම සඳහා ඔබට ඉහත පින්තූරය වෙත යොමු විය හැකිය. මෙම උපදේශනය ආරම්භයේ සඳහන් කර ඇති පරිදි, ඔබට එළිපත්ත අංශයෙන් "ප්රමාණය" සහ "ස්ථානය" යන යෙදවුම් අවශ්ය වේ. මෙම යෙදවුම් වලංගු බව තහවුරු කර ගැනීමට (උදාample, ඔබට ප්රමාණය = 0 ලැබෙන විට, ප්රමාණය සැබවින්ම ශුන්ය වන්නේ කැමරාව ආලෝකය හඳුනා නොගන්නා නිසා මිස කැමරාව තවමත් ආරම්භ වෙමින් තිබූ නිසා නොවේ) ඔබට යම් ආකාරයක දර්ශකයක් අවශ්ය වනු ඇත, එය අපි “READY” ලෙස හඳුන්වමු. මෙම දත්ත පාලනය (Ctrl. vhd) මඟින් එක් එක් මෝටරයේ ඉලක්ක වේගය තීරණය කරනු ඇත (බිට් 9, අත්සන් කර ඇත).
මෝටරයේ වඩා ස්ථායී ප්රතිදානයක් සඳහා, ඔබට සංවෘත ලූප පද්ධතියක ප්රතිපෝෂණ භාවිතා කිරීමට අවශ්ය වේ. මේ සඳහා මෝටර් වේග මිනුම් අංශයෙන් එක් එක් මෝටරයේ යෙදවුම්”දිශාව” සහ “වේගය” අවශ්ය වේ. ඔබට මෙම ආදාන ඔබේ ගණනය කිරීම්වලට ඇතුළත් කිරීමට අවශ්ය බැවින්, ඔබට මෙම අත්සන් නොකළ අගයන් 9-bit අත්සන් කරන ලද ද්විමය බවට පරිවර්තනය කිරීමට සිදුවේ. මෙය සිදු කරනු ලබන්නේ අත්සන් නොකළ ද්විමය පරිවර්තකය (US2S.vhd) වෙත අත්සන් නොකළ අය විසිනි.
දෝෂ ගණනය කිරීම (දෝෂය. vhd) සිදු කරන්නේ එක් එක් මෝටරය සඳහා ක්රියාව තීරණය කිරීම සඳහා ඉලක්ක වේගයෙන් මනින ලද වේගය අඩු කිරීමයි. මෙයින් අදහස් කරන්නේ දෙකම එකම අගයක් ඇති විට, අඩු කිරීම ශුන්ය වන අතර මෝටරය එහි ගම්යතාවය මත පමණක් චලනය වන බවයි. රොබෝවරයා ඉලක්ක වේගයට වඩා වේගයෙන් ළඟා වීමට හැකි වන පරිදි ඔබට ගුණ කිරීමේ සාධකයක් එකතු කළ හැකිය.
මෝටර් පාලකයට එක් එක් මෝටරයේ වේගය සහ දිශාව අවශ්ය වන බැවින්, ඔබ ක්රියාවෙහි අත්සන් කළ අගයන් වෙන වෙනම අත්සන් නොකළ අගයන් දෙකකට පරිවර්තනය කළ යුතුය: වේගය (බිට් 1) සහ දිශාව (බිට් 8). මෙය සිදු කරනු ලබන්නේ අත්සන් කරන ලද අත්සන් නොකළ ද්විමය පරිවර්තකය (S2US.vhd) මගින් වන අතර, මෝටර් පාලන අංශයට යෙදවුම් බවට පත්වනු ඇත.
ආලෝකය අනාවරණය නොවන විට කුමක් කළ යුතුද යන්න තීරණය කිරීමට අපි මොඩියුලයක් ද එක් කළෙමු (ආලෝක කවුන්ටරය නැත. Bhd). මෙම මොඩියුලය මූලික වශයෙන් කවුන්ටරයක් වන බැවින්, රොබෝවරයාට භ්රමණය වීමට හෝ එහි රැඳී සිටීමට කොපමණ කාලයක් අවශ්යද යන්න ගණනය කරනු ඇත. මෙමඟින් රොබෝවරයා තමා ඉදිරිපිට ඇති දේට වඩා එහි පරිසරය “දකින” බව සහතික කරනු ඇති අතර, කිසිදු ආලෝක ප්රභවයක් සත්ය වශයෙන්ම ලබා ගත නොහැකි විට බැටරි බලය සංරක්ෂණය කරයි.
පියවර 6: ඒකාබද්ධ කරන්න Files
ඒකාබද්ධ කිරීමට files, ඔබ එක් එක් මොඩියුලයෙන් සංඥා සම්බන්ධ කිරීමට අවශ්ය වේ. එය සිදු කිරීම සඳහා, ඔබ නව ඉහළ මට්ටමේ මොඩියුලයක් සෑදිය යුතුය file. පෙර මොඩියුලවල ආදාන සහ ප්රතිදානයන් සංරචක ලෙස ඇතුළු කරන්න, සම්බන්ධතා සඳහා සංඥා එක් කරන්න සහ එක් එක් වරාය අනුරූප යුගලයට පවරන්න. ඔබට ඉහත නිදර්ශනයේ ඇති සම්බන්ධතා වෙත යොමු විය හැක, සහ මෙහි කේතය බලන්න.
පියවර 7: එය පරීක්ෂා කරන්න
ඔබ සම්පූර්ණ කේතය සමඟ අවසන් කළ පසු, ඔබ එය පුවරුවට උඩුගත කිරීමට පෙර ඔබේ කේතය ක්රියා කරන්නේ දැයි දැන ගැනීමට අවශ්ය වේ, විශේෂයෙන් කේතයේ කොටස් විවිධ පුද්ගලයින් විසින් සෑදිය හැකි බැවින්. මේ සඳහා පරීක්ෂණ බංකුවක් අවශ්ය වේ, එහිදී ඔබ ව්යාජ අගයන් ඇතුළත් කර කේතය අපට හැසිරීමට අවශ්ය ආකාරයට හැසිරෙන්නේ දැයි බලන්න. ඔබට එක් එක් මොඩියුලය පරීක්ෂා කිරීමෙන් ආරම්භ කළ හැකි අතර, ඒවා සියල්ලම නිවැරදිව ක්රියා කරන්නේ නම්, ඔබට ඉහළ මට්ටමේ මොඩියුලය පරීක්ෂා කළ හැකිය.
පියවර 8: දෘඪාංගයේ එය උත්සාහ කරන්න
ඔබේ කේතය ඔබේ පරිගණකයේ පරීක්ෂා කළ පසු, ඔබට සැබෑ දෘඪාංගයේ කේතය පරීක්ෂා කළ හැකිය. ඔබ සීමාවක් ඇති කළ යුතුයි file Vivado මත (.xdc file BASYS සඳහා 3) කුමන ආදාන සහ ප්රතිදානයන් කුමන වරායට යන්නේද යන්න පාලනය කිරීමට.
වැදගත් ඉඟිය: විද්යුත් උපාංගවලට ධාරාවේ හෝ පරිමාවේ උපරිම අගයක් තිබිය හැකි දුෂ්කර ආකාරය අපි ඉගෙන ගත්තෙමුtages. අගයන් සඳහා දත්ත පත්රිකාව වෙත යොමු වීමට වග බලා ගන්න. PMOD HB5 සඳහා, වෙළුම සැකසීමට වග බලා ගන්නtage වෝල්ට් 12 දී බල ප්රභවයෙන් (මෙය අවශ්ය වෙළුම වන බැවින්tagමෝටරය සඳහා e), සහ මෝටරය චලනය කිරීමට අවශ්ය තරම් කුඩා ධාරාවක්.
පියවර 9: එය අනෙකුත් කොටස් සමඟ ඒකාබද්ධ කරන්න
පෙර පියවර සාර්ථක වූයේ නම්, රොබෝට උඩුගත කිරීමට අවසාන කේතය සඳහා අනෙක් කණ්ඩායම් සමඟ කේතය ඒකාබද්ධ කරන්න. එහෙනම්, වොයිලා! ඔබ ආලෝකය සොයන රොබෝවක් සාර්ථකව සාදා ඇත.
පියවර 10: දායකයින්
වමේ සිට දකුණට:
- Antonius Gregorius Deaven Rivaldi
- ෆීලික්ස් විගුනා
- නිකලස් සංජය
- රිචඩ් මෙඩියන්ටෝ
ඉතා කදිමයි: VHDL මෝටර් වේග පාලනය: දිශාව සහ වේගය තීරණය කරන්න, වම් සහ දකුණු වේග පාලකය: පිටුව 6
ඔබට ස්තුතියි නැවතviewing! මෙම ව්යාපෘතිය ඇත්ත වශයෙන්ම පන්ති ව්යාපෘතියක එක් කොටසක් පමණි (BASYS 3 පුවරුව සහ OV7670 කැමරාව සහිත ආලෝකය සෙවීමේ රොබෝ), එබැවින් මම පන්තියේ උපදෙස් සඳහා සබැඳිය ඉක්මනින් එක් කරමි!
නියමයි: මම හැම දෙයක්ම එකට එකතු වෙනවා දකින්න බලාගෙන ඉන්නවා.
ලේඛන / සම්පත්
![]() |
උපදෙස් VHDL මෝටර් වේග පාලනය දිශාව සහ වේගය වම් සහ දකුණු වේග පාලකය තීරණය කරයි [pdf] උපදෙස් VHDL මෝටර් වේග පාලනය දිශාව සහ වේගය වම් සහ දකුණු වේග පාලකය, VHDL මෝටර් වේගය, පාලනය තීරණය දිශාව සහ වේගය වම් සහ දකුණු වේග පාලකය |