گاما رو نصب کن!

{{ number }}
اعلان ها
اعلان جدیدی وجود ندارد!
کاربر جدید

جستجو

پربازدیدها: #{{ tag.title }}

میتونی لایو بذاری!
نمونه سوال محتوای آموزشی آزمون آنلاین پرسش و پاسخ درسنامه آموزشی مدرسه‌یاب معلم‌ها

برنامه‌نویسی ربات: نوشتن دستورالعمل‌ها به یک زبان مخصوص تا به ربات بگوییم چه کارهایی انجام دهد.

بروزرسانی شده در: 18:26 1405/03/9 مشاهده: 35     دسته بندی: کپسول آموزشی

برنامه‌نویسی ربات: چگونه به ربات بگوییم چه کار کند؟

آشنایی با دستورالعمل‌های گام‌به‌گام، زبان مخصوص ربات‌ها و ساخت یک برنامهٔ ساده
در این مقاله یاد می‌گیریم برنامه‌نویسی ربات چیست و چطور با دستورالعمل‌های گام‌به‌گام به ربات بگوییم چه کارهایی انجام دهد. با زبان مخصوص ربات‌ها، تفاوت دستور و گفتگوی معمولی، و نوشتن یک برنامهٔ ساده آشنا می‌شویم. همهٔ مثال‌ها برای دانش‌آموزان دبستان ساده و شیرین است.

زبان دستور ربات چیست و چه فرقی با صحبت روزمره دارد؟

ربات‌ها مانند یک خمیر بازیِ خیلی باهوش هستند، اما خودشان فکر نمی‌کنند. آنها فقط کارهایی را انجام می‌دهند که ما دقیقاً و گام‌به‌گام به آنها بگوییم. به این مجموعهٔ دستورها، برنامه می‌گویند. زبانی که ما با آن به ربات دستور می‌دهیم، یک زبان ویژه است که قوانین مشخصی دارد.

مثلاً اگر به دوستت بگویی «آب بیار» او می‌فهمد از کدام لیوان، از کدام یخچال و چه مقدار آب. ولی اگر به ربات بگویی «آب بیار»، ربات نمی‌داند کجا برود، چه آبی بیاورد و چطور بر گردد. در برنامه‌نویسی ربات باید بگویی:

? مثال دستور درست: «۱- به سمت یخچال حرکت کن. ۲- در یخچال را باز کن. ۳- بطری شیر را بردار. ۴- به طرف دوستت حرکت کن. ۵- بطری را به دوستت بده.»

به این ترتیب، ربات دقیقاً می‌فهمد چی و چطور انجام دهد. در زبان برنامه‌نویسی به هر دستور، یک دستور خطّی1 می‌گویند.

جدول مقایسه: صحبت معمولی در برابر دستور ربات

حرف زدن با انسان
دستور نوشتن برای ربات
«اتاقت را مرتب کن»۱- اسباب‌بازی‌ها را از زمین بردار. ۲- آن‌ها را داخل جعبه بگذار. ۳- کتاب‌ها را روی قفسه بچین.
«برو خانه»۱- ۱۰ گام به جلو برو. ۲- به راست بپیچ. ۳- در را باز کن. ۴- وارد شو.
«یه نقاشی بکش»۱- مداد را بردار. ۲- خط افقی به طول ۵ سانتی‌متر بکش. ۳- خط عمودی از وسط آن بکش.

ساخت یک برنامهٔ ساده برای ربات پیش‌بند

فرض کن یک ربات پیش‌بند داری که می‌تواند جمع و تفریق کند. ما می‌خواهیم برنامه‌ای بنویسیم که دو عدد را از کاربر بگیرد و حاصل جمع آن‌ها را نشان دهد. در یک زبان سادهٔ ربات، دستورها این شکلی هستند:

? برنامهٔ جمع‌کننده:
۱- از کاربر بپرس «عدد اول را وارد کن».
۲- مقدار اول را در حافظه با نام a ذخیره کن.
۳- از کاربر بپرس «عدد دوم را وارد کن».
۴- مقدار دوم را در حافظه با نام b ذخیره کن.
۵- حاصل جمع a و b را محاسبه کن و در c بریز.
۶- به کاربر بگو «نتیجه برابر است با» و سپس مقدار c را نشان بده.

اگر بخواهیم این کار را با فرمول ریاضی نمایش دهیم، می‌نویسیم:

$ c = a + b $

که در آن a و b دو عدد ورودی هستند و c حاصل جمع.

ربات‌های واقعی از زبان‌های خاصی مثل زبان مخصوص ربات‌ها2 استفاده می‌کنند که دستورهایی مثل «حرکت کن»، «بچرخ»، «بردار»، «بگذار» و «اگر ... آنگاه ...» دارد.

کاربرد عملی: ربات کمک‌کار در خانه

یک ربات کوچک جاروبرقی تصور کن. دستورالعمل آن برای تمیز کردن یک اتاق می‌تواند این باشد:

? گام‌های ربات جاروبرقی:
گام 1: موتور مکش را روشن کن.
گام 2: 2 ثانیه به جلو حرکت کن.
گام 3: 90 درجه به راست بچرخ.
گام 4: گام 2 را تا ۱۰ بار تکرار کن.
گام 5: موتور مکش را خاموش کن.

این یک برنامهٔ ساده است که به ربات می‌گوید اتاق را خط به خط جارو کند. اگر ربات به دیوار بخورد، یک دستور شرطی می‌نویسیم: «اگر به دیوار رسیدی، 180 درجه بچرخ و برگرد».

چالش‌های مفهومی در برنامه‌نویسی ربات

❓ چالش ۱: اگر ربات دستور «برو سمت پنجره» را بفهمد، چطور می‌فهمد پنجره کجاست؟
پاسخ: ربات به تنهایی نمی‌فهمد! باید در برنامه به او بگوییم «از جای فعلی 3 متر به سمت جلو حرکت کن تا به دیوار برسی. سپس 1 متر به چپ برو. آنجا پنجره است.» یا از حسگر فاصله‌سنج استفاده کند و بگوید «اگر شیء شفاف دیدی، متوقف شو».
❓ چالش ۲: چرا نمی‌توانیم به ربات بگوییم «خودت تصمیم بگیر»؟
پاسخ: چون ربات قدرت تفکر و خلاقیت ندارد. او فقط دستورهایی را اجرا می‌کند که ما از قبل نوشته‌ایم. اگر بگوییم «خودت تصمیم بگیر»، ربات هیچ کاری نمی‌کند و متوقف می‌شود. برای تصمیم‌گیری باید از دستورهای شرطی مثل «اگر ... آنگاه ...» استفاده کنیم.
❓ چالش ۳: آیا ربات می‌تواند دستور اشتباه را تصحیح کند؟
پاسخ: نه، مگر اینکه خودمان در برنامه اش خطایابی بگذاریم. مثلاً بنویسیم: «اگر دستور باعث برخورد با دیوار شد، متوقف شو و اعلام خطا کن.» ربات نمی‌داند کدام دستور درست است. درست بودن را ما در قوانین برنامه تعریف می‌کنیم.
? آنچه یاد گرفتیم:
- برنامه‌نویسی ربات یعنی نوشتن دستورالعمل‌های دقیق، گام‌به‌گام و بدون ابهام.
- ربات‌ها زبان مخصوص خود را دارند که در آن هر دستور معنای مشخصی دارد.
- با استفاده از دستورهای ساده، شرطی‌ها و تکرارها می‌توان کارهای پیچیده ساخت.
- یک برنامه مثل دستور پخت کیک است: اگر یک مرحله را فراموش کنی، نتیجه درست نمی‌شود.

پاورقی‌ها

1دستور خطّی یا Statement در برنامه‌نویسی: یک دستور ساده که به ربات می‌گوید یک کار مشخص را انجام بده، مثلاً «برو»، «بایست»، «جمع کن».

2زبان مخصوص ربات‌ها یا Robot Programming Language: مجموعه‌ای از واژه‌ها و قوانین که برای نوشتن برنامه‌های قابل فهم برای ربات استفاده می‌شود. مثال ساده: زبان سکوئنس3 در ربات‌های آموزشی.

3سکوئنس یا Sequence به معنی ترتیب و دنبالهٔ دستورهاست. یعنی دستورها باید به ترتیب درست اجرا شوند.