لومړی ۲۵/۳۱: سمارټ موټر-۳ د انفراریډ سینسرونو په کارولو سره له خنډ څخه ځان ساتي | سن فاونډر روبوجکس
دا پروژه ستاسو د SunFounder 3-in-1 Arduino سمارټ موټر په یوه خپلواکه خنډ څخه تېښته کوونکې موټر بدلوي. د دوه انفراریډ (IR) سینسرونو په نصبولو سره — یو په چپ اړخ او یو په ښي اړخ — موټر کولی شي په خپل لار کې شیان کشف کړي او په یوه شیبه کې پریکړه وکړي چې د دوی شاوخوا وګرځي. دا په روبوټیک کې یو بنسټیز ګام دی، چې تاسو ته درس درکوي چې څنګه د سینسر انپټ د موټرو کنټرول منطق سره یوځای کړئ ترڅو یو عکس العمل ښودونکی، ځان چلونکی ماشین جوړ کړئ. هغه اصول چې تاسو به دلته زده کړئ د ریښتینې نړۍ پراخو غوښتنلیکونو باندې پلي کیږي، په شمول د:
- د روبوټیک خلا کولو ماشین جوړول چې پرته له فرنیچر سره ټکر کولو څخه په خونه کې ګرځي.
- د کرښې تعقیبونکی یا د ماز حل کوونکی روبوټ جوړول د سیالیو یا تعلیمي پروژو لپاره.
- د اتوماتیک امنیتي ګزمې بوټ پراختیا چې کولی شي د یوې سیمې شاوخوا وګرځي او له دیوالونو څخه ډډه وکړي.
- د سمارټ لوبو موټر ډیزاین کول چې کولی شي په خپلواکه توګه لوبه وکړي پرته له دې چې بند پاتې شي.
دا لارښود مستقیم په پخوانیو درسونو باندې جوړیږي چیرې چې تاسو زده کړل چې څنګه د موټر موټرې کنټرول کړئ او پوه شئ چې IR سینسرونه څنګه کار کوي. دلته، موږ به دا مهارتونه یوځای کړو ترڅو یو ساده مګر اغیزمن الګوریتم د خنډ څخه تېښتې پلي کړو.
د خنډ څخه تېښتې منطق څنګه کار کوي
اصلي نظر ساده دی: موټر دوه IR سینسرونه کاروي ترڅو په خپل چپ او ښي اړخ کې خنډونه وګوري. هر سینسر یو ډیجیټل سیګنال تولیدوي: LOW (0) کله چې دا په خپل واټن کې (شاوخوا 20 سانتي متره) یو شی کشف کړي او HIGH (1) کله چې لاره روښانه وي. منطق بیا د سینسر حالتونو پر بنسټ د موټر عمل ټاکي (په ویډیو کې په 02:35):
- په چپ اړخ کې خنډ، ښي اړخ روښانه: موټر ښي خوا ته ګرځي ترڅو له هغه څخه ډډه وکړي.
- په ښي اړخ کې خنډ، چپ اړخ روښانه: موټر چپ خوا ته ګرځي.
- په دواړو اړخونو کې خنډونه: موټر شاته حرکت کوي ترڅو د احتمالي بند لارې څخه وتښتي.
- هیڅ خنډ نشته: موټر مخکې ځي.
دا عکس العمل ښودونکی طریقه د محدود حالت ماشین یوه کلاسیکه بیلګه ده، چیرې چې د موټر چلند د هغه د اوسني سینسر انپټونو مستقیم ځواب دی.
هارډویر اجزا
د دې پروژې بشپړولو لپاره، تاسو به لاندې اجزاوو ته اړتیا ولرئ، چې ټول د SunFounder 3-in-1 Arduino کټ کې شامل دي:
- 1x SunFounder 3-in-1 Arduino سمارټ موټر کټ (یا مساوي برخې)
- 2x انفراریډ د خنډ څخه تېښتې سینسرونه
- 1x Arduino Uno (یا مطابقت لرونکی بورډ)
- 1x د موټرو ډرایور شیلډ/بورډ
- جمپر تارونه
د تارونو لارښود
د سینسر سم تنظیم د دې پروژې د کار لپاره خورا مهم دی. IR سینسرونه باید مخ ته او لږ څه بهر ته مخامخ وي، ځکه چې دوی به د موټر په اړخونو کې خنډونه کشف کوي (په ویډیو کې په 02:07). لاندې د تارونو ډیاګرام ښیي چې څنګه سینسرونه Arduino سره وصل کړئ. مهرباني وکړئ په یاد ولرئ چې ښوونکي د موټر په بریډبورډ کې یو ځانګړی د بریښنا ویش نقطه وکاروله، مګر هغه اړیکې چې Arduino ته کیږي مهمې دي.
د تارونو اړیکې په لاندې ډول دي (په ویډیو کې په 03:47):
- بریښنا (VCC): د دواړو IR سینسرونو VCC پن د Arduino په 5V آوټ پټ یا د موټر د بریښنا ریل سره وصل کړئ.
- ځمکه (GND): د دواړو IR سینسرونو GND پن د Arduino په ګډه ځمکه یا د موټر د ځمکې ریل سره وصل کړئ.
- د ښي سینسر آوټ پټ (OUT): د ښي IR سینسر ډیجیټل آوټ پټ پن د Arduino په ډیجیټل پن 7 سره وصل کړئ.
- د چپ سینسر آوټ پټ (OUT): د چپ IR سینسر ډیجیټل آوټ پټ پن د Arduino په ډیجیټل پن 8 سره وصل کړئ.
د چپ او ښي موټرو لپاره د موټرو ډرایور اړیکې هماغه دي چې په تیر درس کې د موټرو کنټرول په اړه رامینځته شوي وو.
د کوډ تشریح
د دې پروژې کوډ مستقیم دی. اصلي پروګرام د مقالې لاندې د ډاونلوډ لپاره شتون لري. دلته، موږ به د کارونکي لخوا تنظیم کیدونکو برخو باندې تمرکز وکړو چې تاسو یې د خپل موټر لپاره تنظیم کولی شئ.
const int A_1B = 5;
const int A_1A = 6;
const int B_1B = 9;
const int B_1A = 10;
const int rightIR = 7;
const int leftIR = 8;
دا کرښې هغه پنونه تعریفوي چې د موټرو ډرایور او IR سینسرونو لپاره کارول کیږي. د موټرو پنونه (A_1B, A_1A, B_1B, B_1A) د دوه موټرو سرعت او لارښود کنټرولوي. د rightIR او leftIR پنونه هغه ځایونه دي چیرې چې تاسو د خپلو سینسرونو سیګنال تارونه وصل کوئ. که تاسو مختلف پنونه کارولي وي، تاسو به دا ارزښتونه دلته بدل کړئ.
int speed = 150;
دا متغیر د موټر لپاره اساسي سرعت ټاکي. ارزښت کولی شي له 0 څخه تر 255 پورې وي، چیرې چې 255 اعظمي سرعت دی. د 150 ارزښت د زده کړې لپاره یو ښه پیل ټکی دی، ځکه چې دا دومره ګړندی دی چې په زړه پورې وي مګر دومره ورو چې د عکس العمل وخت ته اجازه ورکړي (په ویډیو کې په 07:10). تاسو کولی شئ دا تنظیم کړئ ترڅو خپل موټر ګړندی یا ورو کړئ.
د پاتې کوډ برخه د loop() فنکشن کې منطق تعریفوي. دا د کیڼ او ښي سینسرونو حالت لوستي او بیا اړونده حرکت فنکشن (moveForward()، moveBackward()، backLeft()، backRight()) ته زنګ وهي. دا فنکشنونه دمخه تعریف شوي او د موټر چلوونکي کنټرولوي ترڅو مطلوب حرکت ترلاسه کړي. ښوونکي وروسته په یوه بدلون کې د stop() فنکشن هم اضافه کړ ترڅو د مخنیوي حرکت وروسته موټر د لنډې مودې لپاره ودروي، چې د هغه حرکتونه ډیر هوښیار کړي (په ویډیو کې په 10:29).
ژوندۍ پروژې ننداره
په ویډیو کې، ښوونکی لومړی د سیریل مانیټر په کارولو سره منطق نندارې ته وړاندې کوي. د سینسرونو ته نږدې یو بکس ځای په ځای کولو سره، تاسو کولی شئ اړونده پیغامونه لکه "کیڼ ته لاړ شه"، "ښي ته لاړ شه"، یا "شاته لاړ شه" په سکرین کې وګورئ، چې د سینسر لوستل او منطق سم دي (په ویډیو کې په 09:11).
د منطق له تایید وروسته، ښوونکی یو مهم پرمختګ اضافه کوي: د stop() فنکشن. دا فنکشن موټر د یوې ټاکلې مودې لپاره (د بیلګې په توګه، 1 ثانیه) په بشپړ ډول وروسته له هغه چې موټر وګرځي یا شاته شي، ودروي، چې د ناڅاپي حرکتونو مخه نیسي او موټر ته اجازه ورکوي چې خپل شاوخوا بیا ارزونه وکړي (په ویډیو کې په 10:29).
په پای کې، موټر په فرش باندې د یو لړ خنډونو سره ازمول کیږي. ویډیو ښیې چې موټر په بریالیتوب سره د بکسونو شاوخوا حرکت کوي، کیڼ، ښي او شاته ګرځي لکه څنګه چې اړتیا وي ترڅو یوه روښانه لاره ومومي، چې د دې خنډ مخنیوي الګوریتم ریښتینې نړۍ کارول ښیې (په ویډیو کې په 12:13).
فصلونه
- [00:00] د IR سینسرونو سره د خنډ مخنیوي پیژندنه
- [01:24] مخکیني اړتیاوې او د پروژې کتنه
- [02:35] د خنډ مخنیوي منطق څنګه کار کوي
- [03:47] د IR سینسرونو او موټرو تارونه نښلول
- [05:40] د کوډ پرانیستل او تشریح کول
- [09:11] د سیریل مانیټر سره د منطق ازموینه
- [10:29] د اسانه نیویګیشن لپاره د بندولو فنکشن اضافه کول
- [11:42] د بندولو فنکشن ازموینه
- [12:13] په فرش باندې وروستی عملي ازموینه
This code has not been parsed yet. Please return to the admin panel to parse it.
Common Course Links
Common Course Files
Resources & references
-
DocumentationDocumentation for SunFounder 3 in 1 IoT/Smart Car/Learning Kit¶docs.sunfounder.com
-
ExternalPurchase SunFounder's 3-in-1 Smart car learning kitsunfounder.com
Files📁
Arduino Libraries (zip)
-
SunFounder's 3-in-1 Smart Car learning kit source code
3in1-kit-main-v2.zip12.80 MB