کمپانی هانسون رباتیک در حال نمایش ربات پسر انساننمای جدید خود است که به مجموعه Robokind رباتهای این شرکت تعلق دارد.
فناوری جدید نسخه جدید ربات پسر کارتونمانند Zeno است اما این بار ربات جدید با آرایهیی از ژستها و حرکات چشم بسیار انساننماتر است.
این ربات پسر مانند که در چین طراحی شده، ۲۷ اینچ بلندی دارد. مهمترین مشخصه Zeno جدید سر آن است که از آنچه دیوید هانسون طراح آن Frubber میخواند، ساخته شده است.
این ماده همانطور که از نام آن برمیآید (ترکیب گوشت و پلاستیک) نوعی پلیمر ارتجاعپذیر اسفنجی ساختاربندی شده است، که میتواند حرکات صورت را تقلید کند و درست مانند پوست انسان منقبض و باز شود. از این ماده همچنین به عنوان پلیمر زیست تقلید یاد میشود. همچنین بیان چشمها و پلکهای متحرک ربات نیز در کیفیت زندگیگونه آن نقش دارند.
هانسون این فناوری را مجهز به یک جفت دوربین با تعریف بالا برای تشخیص چهره و یک رایانه درونی و هوش مصنوعی پیشرفته کرده است. بدنه ربات همچنین دارای ۳۷ درجه حرکت است که این بالاترین میزان ربات طراحی شده توسط شرکت سازنده تلقی میشود.
خواهر این پسر با نام Alice نیز به زودی ارائه خواهد شد. همچنین “پسرعمه و دخترعمههای” کوچکتر این “پسر” با قیمت ارزانتر ظرف یک سال آینده خواهد بود.
این رباتهای کوچکتر راهی برای دسترسی این کمپانی به بازار انبوه عنوان شدهاند. هانسون در نمایشی تصویری از ربات مزبور در تلاش برای جذب سرمایهداران با هدف بازاریابی برای آن است.
رباتهای انساننما رویکردی برای تفحص در مرزهای زیستشناسی، علوم شناختی و مهندسی هستند.
امروز هوس کردم کمی درباره end effector های ربات بنویسم که ترجمش به فارسی می شه : عملگر نهایی ، یعنی کار یا عملی که ربات به وسیله این ابزار در نهایت یک جابجایی انجام می دهد . خَب ، end effector ها انواع مختلفی دارند مثل برش لیزر که یک مقاله هم در این باره حدود 4 سال پیش نوشتم و در آرشیو مقالات موجود هست . اما امروز قصد دارم درباره یک نوع خاص و پرکاربرد حرف بزنم که بیشتر برای عمل برداشتن و گذاشتن یا pick & place استفاده دارند . درست حدس زدید : Gripper
یک ناوگان از کارگر ساختمانی رباتیک را تصور کنید که بطور مستقل و بدون نظارت و یا تعیین وظیفه خاصی می توانند ساختمان بسازند . محققان بخش مهندسی و علوم کاربردی در دانشگاه هاروارد و مهندسی الهام بیولوژیکی (BIE) از موسسه Wyss در هاروارد و دانشگاه کمبریج نوعی خاص از کارگران رباتیک را طراحی نمودند .مهندسان این ربات ها را با الهام از ملیون ها موریانه ای که بدون نقشه و طرح اولیه خاک ریزی پیچیده را با ذرات خاک با همکاری هم می سازند ، طراحی کرده اند .
محققان می گویند اعضای کلونی از نشانه های یکدیگر و محیط اطرافشان برای پیشبرد پروژه ساختمانی کمک می گیرند . ما فهمیدیم این حشرات کوچک قادرند چیزهای باور نکردنی بسازند که واقعا باید گفت بی نظیره !
چرا ربات بسازیم ؟ انگیزه شما از این کار چیست ؟ آیا می خواهید در مسابقات رباتیک شرکت کنید ؟ آیا می خواهید نظر بقیه را متوجه این کنید که شما توانمند هستید ؟ رباتیک می تواند درس های زیادی به شما بدهد . شما در این مسیر مهارت های زیادی کسب می کنید : الکترونیک ، مکانیک ، برنامه نویسی و حتی درک بیشتری از رفتار حیوانات و روان شناسی انسان ها خواهید یافت . بهتر است قبل از شروع به کار در این زمینه از خود این سوال را بپرسید که چه اهدافی شما را بر آن داشته تا در رشته رباتیک قدم بگذارید ؟ در غیر این صورت بعید نیست که در نیمه راه بدون تکمیل اهدافتان این مسیر را ترک کنید.
خب حالا که شما می دانید برای چه می خواهید ربات بسازید بگذارید بررسی کنیم نیاز دارید چه چیزهایی را بدانید . . .
جلسه هفتم : آشنایی با سایر ابزار های شبیه سازی فوتبال شبیهسازی فوتبال
جلسه پیش به معرفی نرمافزار RCSSServer پرداختیم. در این جلسه با نرمافزارهای RCSSMonitor و RCSSLogPlayer آشنا خواهید شد.
نرمافزار RCSSServer بازی فوتبال را شبیهسازی میکند اما آن را به تصویر نمیکشد. نرمافزار نمایشگر شبیهساز فوتبال روبوکاپ (RoboCup Soccer Simulation Monitor) بهعنوان یک سرویس گیرنده (Client) به سرور شبیهساز فوتبال متصل شده، وقایع درون آن را بهصورت گرافیکی بهتصویر کشیده و همانند یک بازی ویدئویی به نمایش در میآورد.
سرور شبیهساز فوتبال روبوکاپ (RoboCup Soccer Simulation Server) نرم افزار استانداردی است که فدراسیون روبوکاپ برای لیگ شبیهسازی فوتبال در مسابقات منتشر نموده است. این نرم افزار محیط حقیقی بازی فوتبال را با تمام جزییات اعم از وزن توپ، وزن بازیکنان، سرعت و شتاب توپ، سرعت بازیکنان، مختصات اشیاء در زمین مسابقه، تعداد گل ها، جهت وزش باد و ... به همراه قوانین فیزیکی حاکم بر مسابقه شبیهسازی میکند.
جلسه پنجم: ارتباط با سیستم عامل لینوکس از طریق محیط Terminal شبیهسازی فوتبال
در این جلسه با محیط Terminal در سیستم عامل Linux و برخی از مهم ترین فرمان های آن آشنا خواهید شد. این محیط نسبت به محیط Desktop منعطف تر بوده و سرعت و قدرت بیشتری دارد، با این حال کاربری آن به سادگی محیط Desktop نیست.
برای گشودن محیط Terminal در سیستم عامل Ubuntu می توانید عبارت "terminal" را در Dash جستجو نموده و یا از کلید های ترکیبی Ctrl+Alt+T استفاده نمایید.
با عرض سلام و تبریک سال نو خدمت دوستان عزیزم ، سالی بسیار خوب و سرشار از شادی و موفقیت را برای دوستان خوبم آرزو میکنم.
برمیگردیم به بحث رباتهای آتشنشان که در جلسهی گذشته آغاز کردیم و همانطور که گفته شد قرار است در این جلسه هم سیستمهای مختلف خاموش کردن آتش را مورد بررسی قرار دهیم.
یکی از سادهترین و رایجترین روشهای خاموش کردن آتش پاشیدن آب یا مواد ضد اشتعال دیگر بر روی آتش است. برای مجهز کردن ربات به این سیستم، فقط نیاز به یک عدد پمپ آب و یک مخزن کوچک برای ذخیرهی آب و یک مدار راه اندازی مختصر داریم. این روش از نظر پیچیدگی از سایر روشهای رایج سادهتر است و پیچیدگی مکانیکی و الکترونیکی زیادی هم ندارد.
با عرض سلام خدمت دوستان عزیز
امیدوارم ایام به کام همهی دوستان خوبم باشه.
همانطور که در اوایل کار به دوستان عزیز وعده داده بودیم، بالاخره نوبت ساخت ربات آتشنشان است!!! برای دوستانی که با رباتهای آتشنشان هیچ آشنایی ندارند ابتدا بهتر است یک سری به جلسهی پنجم بزنند بعد مطلب این جلسه را دنبال کنند.
با عرض سلام خدمت دوستان عزیز
در این جلسه در مورد نحوهی استفاده از LCDهای کاراکتری (Alphanumeric LCD) در محیط CodeVision توسط میکروکنترلرهای AVR توضیح خواهیم داد.
نمايشگر چيست؟
نمایشگر قطعهاي الکترونیکی است که با اتصال آن به میکروکنترلر میتوان هرگونه تصویری را بهنمایش درآورد. نمایشگرها در مدلهای بسیار متنوع برای کاربردهای مختلف در بازار وجود دارند. از LCDهای رنگیای که در موبایلها استفاده میشوند گرفته تا مدلهای بسیار ابتدایی مانند 7segment قبلاً با آن آشنا شدهایم. در این جلسه ما با نوعی نمایشگر LCD آشنا خواهیم شد که بهوسیله ی آن میتوان تمام نمادهایی که در سیستم کدگذاری ASCII وجود دارند را به نمایش در آورد. همانطور که قبلاً اشاره شد، این نمادها شامل تمام حروف الفبای بزرگ و کوچک، اعداد لاتین و .... هستند. این نوع LCD را در اصطلاح تجاری LCDهای کاراکتری (Alphanumeric LCD) میگویند.
با عرض سلام خدمت دوستان عزیز
امیدوارم خوب و خوش و سلامت باشید.
در این جلسه طبق قرار ابتدا به مداری نسبتاً ساده برای سیستم شوت میپردازیم. برای طراحی مدارات الکترونیکی راهاندازی سلنویید در سیستم شوت ربات روشهای مختلفی وجود دارد، ما ابتدا به تشریح روشی که در جلسهی گذشته معرفی شد خواهیم پرداخت.
اساس کار و مبنای علمی طراحی این مدار در جلسهی گذشته تشریح شد. در زیر مداری را میبینیم که 2 عدد خازن را در حالت نخست که رلهها تحریک نشدهاند، توسط ولتاژ 12 ولت شارژ میکند، و در حالت دوم (رلهها تحریک شدهاند) خازنها بهصورت سری بر روی سلنویید تخلیه میشوند.
با عرض سلام خدمت دوستان عزیز
امیدوارم خوب و خوش و سلامت باشید
در این جلسه طبق قرار قبلی به موضوع سیستم شوت در رباتهای فوتبالیست دانشآموزی خواهیم پرداخت. بدون مقدمه وارد بحث میشویم.
رباتهای فوتبالیست هم مثل یک بازیکن فوتبال واقعی باید بتوانند توپ را شوت کنند یا آن را پاس بدهند. برای این کار، ربات نیاز به یک بازوی مکانیکی دارد تا در مواقع لزوم توپ را با قدرت دلخواه به سمت مقصد مورد نظر شوت کند. این بازو فقط کافیست بتواند توپ را از جلوی ربات با سرعت هل بدهد. شدت شوت را می توان با کنترل قدرت این بازوی مکانیکی تعیین کرد.
به نام خدا
با عرض سلام خدمت دوستان عزيزم. مجدداً پوزش ميطلبم به خاطر نا هماهنگي و تاخير در ارايهي مطلب جديد.
اين جلسه هم مبحث رباتهاي فوتباليست را كه در دو جلسهي گذشته به آن پرداخته بوديم ادامه خواهيم داد و با مكانيزم بسيار مهمي در رباتهاي فوتباليست آشنا خواهيم شد كه براي حفظ توپ از آن استفاده ميشود.
اولين سوالي كه مطرح ميشود اين است كه در حالت كلي روبات چه نيازي به چنين سيستمي دارد؟
همانطور كه ميدانيد، يكي از مهمترين قابليتهاي يك بازيكن فوتبال، توانايي او در حفظ توپ يا به اصطلاح پا به توپ بودن اوست. اين موضوع در رقابت رباتها هم به همين اندازه اهميت دارد و رباتي كه توانايي بيشتري در حفظ توپ داشته باشد، صاحب موقعيتهاي بيشتري در زمين خواهد شد و در نتيجه مي تواند بهتر بازي كند.
یک سنسور مادون قرمز معمولی به همراه یک فرستنده ی مادون قرمز در زیر ربات به گونهاي تعبیه می شود كه نوري كه از فرستنده ساتع ميشود، پس از برخورد با زمين به گيرنده مادون قرمز برسد. (مشابه حالتي كه در ربات مسيرياب سنسورها همراه با فرستنده مادون قرمز در زير ربات تعبيه ميشوند). سپس با اندازه گيري ولتاژ خروجي مدار گيرنده توسط ADC ِ ميكروكنترلر( سيم خروجي مدار گيرنده به يكي از ADCها وصل ميشود)، ميتوان ميزان
به نام خدادر ابتداي بحث لازم به ذكر است كه از امسال، فدراسيون جهاني روبوكاپ، قوانين مسابقات رباتهاي فوتباليست دانشاموزي را به كلي تغيير داده است، اين تغييرات باعث به وجود امدن تغييراتي بنيادين در ساختار رباتهاي فوتباليست دانش آموزي شده است. اما به دلايلي هنوز در اكثر مسابقات داخلي از قوانين سال گذشته استفاده ميشود. به همين خاطر ما هم در اين جلسه ابتدا در مورد قوانين قبلي اين ليگ توضيح خواهيم داد، در چند جلسه آينده هم به قوانين جديد ليگ خواهيم پرداخت.
در اين جلسه نيز، بحث را در مورد سيستمهاي حركتي چهار جهته ادامه خواهيم داد و شما را با نوع ديگر اين سيستم كه در آن بهجاي 4 چرخ، فقط 3 چرخ وجود دارد، آشنا خواهيم كرد، همچنين به نكاتي اشاره خواهيم كرد كه براي استفاده از اين سيستم ميبايست حتماً به آن
به نام خدا
با عرض سلام خدمت دوستان عزيز
در مورد ميكروكنترلرهاي AVR در جلسات گذشته توضيحات مفصلي داده شده است و دوستان تا حد خوبي با اين خانواده از ميكروكنترلرها آشنا شدهاند، اما اين آشنايي براي انجام پروژههاي حرفهايتر كافي نيست و مطالب بسيار گستردهي ديگري هم در مورد اين خانواده از ميكروكنترلرها وجود دارد كه هنوز مطرح نشدهاند، ولي اهميت بسيار زيادي دارند. از اين رو ما سعي ميكنيم در خلل كار، مجدداً جلساتي را به مباحث مرتبط با AVR اختصاص دهيم تا خلأ موجود در اين بخش را به تدريج برطرف كنيم.
در اين جلسه به موضوع انواع حافظه در ميكروكنترلرهاي ميپردازيم.
با نحوهي پروگرام كردن ميكرو كنترلر در جلسهي 27 آشنا شديد. همانطور كه ميدانيد، اطلاعاتي كه در مرحلهي پروگرام كردن به ميكروكنترلر منتقل ميشود، با خاموش كردن سيستم(يعني قطع جريان برق ميكروكنترلر)، از بين نميرود و نيازي نيست براي هر بار استفاده از ميكروكنترلر مجدداً آن را پروگرام كنيم، و تا زمانيكه برنامهي پروگرام شده روي ميكروكنترلر توسط كاربر Erase نشود، آن برنامه پاك نخواهد شد. اين نوع حافظه را «حافظهي غير فرّار» ميگوييم، در اين نوع حافظه اگر جريان برق قطع هم شود اطلاعات از بين نخواهند رفت. مثال ديگر اين نوع حافظهها، هارد ديسك كامپيوترهاي شخصي خانگيست.
نوع ديگر حافظهها، حافظههاي «فرّار» نام دارند، در اين نوع، با قطع جريان برق، اطلاعات هم از بين ميروند. مثال آن حافظهي RAM در كامپيوترهاي شخصي خانگيست.
در ميكروكنترلرهاي AVR چند نوع حافظه وجود دارد كه در زير به اختصار در مورد هر يك آنها توضيح ميدهيم.
حافظهي FLASH
اين حافظه در مرحلهي پروگرام كردن، و براي ذخيرهي برنامهي كامپايل شده توسط كامپيوتر (فايل با پسوند hex.) در ميكروكنترلر مورد استفاده قرار ميگيرد. همانطور كه توضيح داده شد اين حافظه از نوع حافظههاي غير فرّار است.
حافظهي SRAM
وقتي در برنامههاي خود متغيري تعريف ميكنيم، در زمان اجراي آن توسط ميكروكنترلر، بهطور معمول از حافظهي SRAM استفاده ميشود. مثلاً وقتي در برنامه جملهي زير را مينويسيد:
int TEMP;
ميكروكنترلر براي ساختن اين متغير 2-بايتي، از حافظهي SRAM استفاده ميكند.
حافظهي SRAM از نوع حافظههاي فرّار است و اطلاعاتي كه در آن ذخيره ميشوند، پس از خاموش شدن ربات و قطع جريان برق از ميكروكنترلر، همگي پاك ميشوند. اگر بخواهيم براي تعريف حافظه از فضاي ديگري به جز SRAM استفاده كنيم، بايد در الگوي تعريف متغير، تغيير كوچكي دهيم كه در ادامه شرح داده شده است.
حافظهي EEPROM
گاهي اوقات ما نياز داريم اطلاعاتي كه در متغيرها ذخيره شدهاند با خاموش شدن ربات يا دستگاه پاك نشوند و براي استفاده در زمانهاي ديگر هم قابل استفاده باشند. براي اين منظور حافظهي EEPROM تعبيه شده است. EEPROM جزو حافظههاي غير فرّار است.
براي استفاده از اين حافظه بايد متغيرها را به گونهاي تعريف كنيد كه به جاي استفاده از SRAM از EEPROM استفاده كنند. براي اين منظور طبق الگوي زير عمل مي كنيم:
eeprom int TEMP;
يعني پيش از تعريف متغير، كلمهي كليدي «eeprom» را ذكر ميكنيم. اگر اين كار را نكنيم، متغير به صورت پيش فرض در حافظهي SRAM تعريف ميشود.
براي مثال فرض كنيد ربات مينيابي داريم كه مختصات مينهاي كشف شده را در متغيرهايي از حافظهي ميكروكنترلرش ذخيره كرده است. اگر اين متغيرها در SRAM باشند، زمانيكه ربات خاموش شود اين اطلاعات پاك ميشوند و ديگر قابل بازبيني نيستند، در اينگونه موارد بهتر است اطلاعات در eeprom ذخيره شوند تا خيالمان از بابت ذخيرهي اين اطلاعات راحت باشد.
رجيسترها
در مورد رجيسترها در جلسهي 24 توضيحاتي داده شده است. رجيسترها هم جزو متغيرهاي فرّار هستند و با قطع جريان برق پاك ميشوند. مهمترين مزيت رجيسترها نسبت به SRAM سرعت بالاي آنها بهخاطر نزديك بودن به واحد پردازشگر مركزي است. و مهمترين محدوديت آنها هم كم بودن تعداد آنهاست. نيازي نيست كه ما در برنامههاي خود مستقيماً از رجيسترها استفاد كنيم، اما خود ميكروكنترلر براي اجراي برنامههاي خود مكرراً از آنها استفاده ميكند.
مطالب مطرح شده مختصر و اجمالي هستند، ولي اين مطالب براي رفع نياز دوستان و انجام پروژههاي مختلف كفايت ميكنند و نياز به بررسي تخصصيتر روي اين مبحث نيست. توضيحات بيشتر در اين باب، نياز به مقدمات علمي و تخصصي بيشتري دارد كه در اينجا مجال مطرح كردن تمام اين مطالب نيست.
منتظر سوالات، نظرها و پيشنهادهاي دوستان خوبم هستم.
به نام خدا
با عرض سلام خدمت دوستان
اميدوارم بحثمون در جلسات پيش در مورد رباتهاي مينياب خودكار مفيد و جذاب بوده باشه. در 2 جلسهي قبل هدف ما صرفاً آشنايي اجمالي با اين رباتها بود و قصد نداشتيم به طور تخصصيتر وارد بحث شويم. اما در مورد نحوهي طراحي اين رباتها بحثها و نكات مفصلي بايد مطرح شود كه اين نكات بهتدريج در جلسههاي آينده تشريح خواهند شد. از جملهي اين مباحث، سيستمهاي حركتي چهارجهته، سنسورهاي فاصلهياب مختلف، قطب نماي الكتريكي، و سيستمهاي مكانيابي هستند، كه تلاش ميكنيم هركدام از اين مباحث را در جلسههايي مفصلاً مورد برسي قرار دهيم.
اما در اين جلسه بحث را در مورد رباتهاي مينياب كنترل از راه دور (Manual) و رقابت فني ليگ رباتهاي مينياب ادامه خواهيم داد.
تفاوت بارز رباتهاي مينياب كنترل از راه دور با رباتهاي مينياب خودكار، در نحوهي هدايت آنها است؛ در رباتهاي مينياب خودكار همانطور كه توضيح داده شد، تمامي حركات ربات توسط مدارات داخلي ربات كنترل ميشود و هيچكس حق ندارد به هيچ وجهي حركات و تصميمات ربات را كنترل كند و آن را به نوعي هدايت كند، اما در رباتهاي مينياب كنترل از راه دور، يك نفر به عنوان اپراتور به داور معرفي ميشود كه اين فرد حق دارد توسط سيستمهاي كنترل از راه دور، ربات را در زمين مسابقه مستقيماً كنترل كند. اما نكتهي اساسي اينجاست كه زميني كه ربات بايد در آن جستجو كند زمين بسيار ناهموار و نامناسبي است، و طراحي و ساخت رباتي كه فقط بتواند در تمام نقاط اين زمين حركت كند بسيار كار دشواري است. عكس زير يك تصوير از زمين مسابقهاي است كه ربات بايد تمام آن را به دنبال مين جستجو كند!
رشد فروش پورشه در چین بیشتر از امریکا بوده است. فروش خودرو ساز آلمانی در چین ۳۸.۱ درصد رشد داشت. اگرچه هنوز در اروپا بسیاری از خودرو سازان با کاهش فروش مواجه هستند اما فروش پورشه در اروپا نیز افزایش داشت.
کاین پرفروش ترین مدل پورشه در جهان بود و فروش۹۱۱ نیز با رشد قابل توجهی همراه بود. امریکا در این ماه بزرگترین بازار پورشه باقی مانده است و فروش خودروساز آلمانی در این بازار ۳۱.۷ درصد رشد داشت و به ۳۳۵۸ خودرو رسید.
در جلسهي قبل توضيحاتي در مورد رباتهاي مينياب خودكار داده شد و دوستان تا حد زيادي با اين ربات و نحوهي عملكرد آن آشنا شدند. در اين جلسه نيز در مورد رباتهاي مينياب خودكار، توضيحات جلسات پيش را تكميل خواهيم كرد و در مورد نحوهي ارايهي نقشهي مينها توضيح خواهيم داد، سپس الگوريتمهاي متداول در ساخت رباتهاي مينياب را مورد بررسي قرار خواهيم داد.
رباتهاي مينياب خودكار بايد به سيستمهايي مجهز باشند كه وقتي ميني را كشف ميكنند، بتوانند موقعيت(مختصات مكاني) آن مين را ثبت كنند، و در پايان زمان جستجو، مختصات تمام مينها را در اختيار كاربر بگذارند تا كاربر بتواند با در اختيار داشتن اين مختصات مكان مينها را به راحتي پيدا كند. همانطور كه در جلسهي پيش هم گفته شد، زمين مسابقه به مربعهاي 50×50 سانتيمتري فرضي تقسيم شده است و مينها دقيقاً در وسط بعضي از اين مربعهاي فرضي كاشته شدهاند. اعلام مختصات مينها نيز بايد بر اساس همين تقسيم بنديهاي فرضي انجام شود. مثلاً اگر زمين مسابقه 5×5 متر باشد، اين تقسيمبندي زمين مسابقه را به 100 خانه تقسيم ميكند كه در وسط بعضي از آنها (كمتر از 10 خانه) مين كاشته شده است. ربات بايد قادر باشد توسط 2 عدد بين 1 تا 10 مختصات هر مين را اعلام كند. به عنوان مثال به شكل زير نگاه كنيد، اين شكل مكان مينهايي كه در زمين مسابقه دفن شدهاند را نشان ميدهد.
به نام خدا با سلام خدمت دوستان عزيزم. عرض پوزش دارم به خاطر تاخير در ارايهي مطالب، ما ابتدا تصميم داشتيم به خاطر امتحانات دوستان، يك وقفهي 2 هفتهاي در ارايهي مطالب ايجاد كنيم، اما بعد از آن نيز متاسفانه با اختلال در شبكهي اينترنت مواجه شديم و عملاً نتوانستيم مطالب را به روز رساني كنيم.
اين جلسه تصميم داريم شما را با ليگ رباتهاي مين ياب يا "Deminer" آشنا كنيم. اما اهميت اين رباتها چيست و اصولاً چرا چنين مسابقاتي برگزار ميشود؟
پاراگراف زير عيناً از دفترچهي قوانين مسابقات كشوري رباتهاي مين ياب در تبيين اهداف رباتهاي مينياب آورده شده است:
«بر اساس گزارشات موجود، ايران سومين كشور دنيا از لحاظ مينهاي دفن شده است. در طول 8 سال جنگ تحميلي عراق بر عليه ايران بالغ بر 16 ميليون مين در سرزمينهاي مرزي غرب و جنوب كشور كاشته شده است كه بعضاً به علت دورافتاده بودن و صعبالعبور بودن مناطق خنثي نشده باقي مانده و همه ساله افراد زيادي از بين مردم عادي و نظاميان قرباني ميكنند. استانهاي آذربايجان غربي، كرمانشاه، كردستان، ايلام و خوزستان، هنوز در معرض خطر انفجار مينهاي باقيمانده از بيست سال پيش هستند. كشف و خنثي سازي مينها كاري بسيار خطرناك و پرهزينه است. اين اميد وجود دارد كه رباتهاي مينياب بتوانند اين خطر را رفع نموده و تلفات انساني و هزينه مينيابي را كاهش دهند.»
با سلام خدمت دوستان خوبم. اميدوارم همگي خوب و خوش و سلامت باشيد و تا به اينجا امتحاناتتون را با موفقيت پشت سر گذاشته باشيد.
در اين جلسه به دليل همزماني با امتحانات پايانترم عزيزان، سعي ميكنيم مطالب كمي سادهتر و مختصر باشد. در اين جلسه در مورد كاربرد PWM در ساخت يك ربات مسيرياب حرفهاي توضيح ميدهيم.
در رباتهاي مسيرياب ساده كه در جلسه 19 نيز در مورد آن توضيح داديم، هنوز ميكروكنترلر وارد ربات ما نشده و تصميصماتي كه ربات ما براي يافتن خط ميگيريد بسيار مقدماتي هستند و ربات نميتواند مسيرهاي پيچيده را با سرعت مناسبي دنبال كند.
يكي از مهمترين فوايد استفاده از ميكروكنترلر در ساخت رباتهاي مسيرياب، استفاده از قابليت PWM براي هدايت موتورهاي ربات است. اما به چه صورت از PWM استفاده ميكنيم؟
به نام خدا
با عرض سلام خدمت دوستان عزيزم
در اين جلسه، با توضيح در مورد نحوهي انجام تنظيمات اوليه در CodeWizard، مطلب راه اندازي موتورهاي ربات به كمك PWM را تكميل خواهيم كرد.
همانطور كه در جلسهي پيش هم متذكر شديم، در اينجا مجال نيست تا تمام مباحث مربوط به PWM و تايمرها را باز كنيم و مفصل به آنها بپردازيم، به همين خاطر در اين جلسه قسمتي از تنظيمات در CodeWizard را بدون توضيح آموزش ميدهيم.
براي انجام تنظيمات به كمك CodeWizard، ابتدا بايد طبق روندي كه در جلسهي 26 توضيح داده شد، يك پروژهي جديد در CodeVision بسازيد.
پس از انجام تنظيمات ساير لبهها (مانند Ports، Chip و .... ) در CodeWizard، لبهي Timers را باز كنيد.
همانطور كه ميبينيد ميكروكنترلر ATmega16 داراي 3 تايمر مجزا است و ما براي توليد PWM بايد از اين تايمرها استفاده كنيم. تايمرها كاربردهاي متعددي دارند، و يكي از مهمترين مباحث در ميكروكنترلر هستند، ما هم در مورد تايمرها در جلسات آينده مفصل توضيح خواهيم داد. اما در اين جلسه فقط استفاده از تايمرها را براي ايجاد PWM براي كنترل موتورهاي ربات استفاده ميكنيم.
Timer0
Timer0 مربوط به رجيستر OCR0 است و بايد به شكل زير تنظيم شود.
ه نام خدا
با عرض سلام خدمت دوستان عزيز
در اين جلسه نيز مبحث PWM را دنبال ميكنيم. عزيزان براي درك مطالب اين جلسه حتماً بايد جلسهي قبل را مطالعه كرده باشند. در اين جلسه به آيسي L298 نيز اشاراتي شده است كه دوستان ميتوانند جهت ياداوري، بخش مربوط به L298 در جلسهي 17را نيز مرور كنند.
ابتدا با توابعي كه براي ايجاد وقفه در اجراي دستورات برنامه توسط CodeVision براي كاربران در نظر گرفته شده آشنا ميشويم.
همانطور كه در جلسهي پيش ديديم، در قسمتهايي از برنامه ممكن است نياز پيدا كنيم تا براي لحظاتي روند اجراي دستورات را متوقف كنيم. CodeVision براي اين كار توابعي را از پيش تنظيم كرده است. (در مورد مبحث «توابع» در زبان C در آينده مفصل توضيح خواهيم داد.)
delay
براي ايجاد تاخير در روند اجراي دستورات، CodeVision دو تابع زير را در اختيار ما قرار داده است.
در اين جلسه به مبحث ميكروكنترلر برميگرديم و در مورد PWM و كاربردهاي آن در ساخت ربات توضيح خواهيم داد.
PWM چيست؟
در بسياري از موارد، ما نياز به كنترل ولتاژ بر روي پايههاي خروجي ميكروكنترلر را داريم. مثلاً اگر بخواهيم سرعت موتور را كنترل كنيم، بايد ولتاژي كه بر روي موتور اعمال ميشود را كنترل كرد. در حقيقت سرعت موتور تقريباًً تابع مستقيمي از ولتاژي است كه بر روي آن اعمال ميشود. يعني اگر ولتاژ كاريِ موتوري (ولتاژ استاندارد براي فعال سازي موتور كه بر روي بدنهي آن نوشته ميشود) 12 ولت باشد، با اعمال ولتاژ 6 ولت روي آن، ميتوانيد سرعت چرخش آن(rpm) را حدوداً به نصف كاهش دهيد.
كنترل سرعت ربات، در همهي سطوح رباتيك اهميت بسيار زيادي دارد، از رباتهاي مسيرياب ساده گرفته تا رباتهاي فوتباليست. ما تا كنون ياد گرفتهايم كه چگونه ميتوان به موتور دستور حركت يا توقف داد، اما راهي براي كنترل سرعت موتور ياد نگرفتهايم.
تكميل if-else، ساختار while، آشنايي با مبدل آنالوگ به ديجيتال(ADC) و ...
به نام خدا
با عرض سلام و خسته نباشيد خدمت همهي دوستان خوبم
اميدوارم مطالب ارائه شده تا به اينجا داراي سطح كيفي مناسبي بوده باشند و و دوستان عزيز ما بهرهوري مناسب را از اين مطالب كرده باشند. اگر پيشنهاد يا نظري در مورد اين بخش داريد حتماً با ما در ميان بگذاريد تا انشاالله بتوانيم با الهامگيري از نظرات سازنده شما دوستان عزيز، اين بخش را پربارتر كنيم.
در اين جلسه هم بحث برنامه نويسي زبان C را دنبال ميكنيم و در ادامهي مبحث جلسهي قبل، شما را با 2 ساختار كنترلي ديگر آشنا ميكنيم.
ابتدا يك نكتهي ديگر در مورد ساختار if() و else:
الزامي براي نوشتن قسمت else نيست، يعني ميتوان فقط if را بدون داشتن else استفاده كرد. همانطور كه ميدانيد، از else زماني استفاده ميكنيم كه بخواهيم در صورت نادرست بودن شروط ، دستورات مشخصي اجرا شوند(به جلسهي 31 مراجعه شود)
با سلام خدمت همهي دوستاي خوبم. اميدوارم خوب و خوش و سلامت باشيد.
اين جلسه قراره در ابتدا نحوهي تنظيم CodeVision را براي پروگرامري كه در جلسهي پيش ساختيم مطرح كنيم و بعد از اون، كمي هم آموزش زبان C را دنبال كنيم.
در جلسات پيش با بخش پروگرامر(Programmer) در CodeVision آشنا شديم. براي استفاده از نرم افزار پروگرامر، ابتدا بايد آن را با توجه به سختافزاري كه براي پروگرام كردن در اختيار داريم تنظيم كنيم. براي اين كار CodeVision را باز كنيد و از منوي بالا گزينهي "Setting" را انتخاب كنيد. سپس گزينهي "Programmer" را انتخاب كنيد. پنجرهاي به شكل زير باز ميشود.
ابتدا بايد يك نكته رو از مطالب جلسهي پيش گوش زد كنم، براي بستن مدار Reset و همچنين كرستال خارجي، در ATMEGA16L هيچ الزامي وجود ندارد و صرفاً براي دقت بيشتر ميباشند.
در ضمن ياد آوري ميكنم كه ميكروكنترلرهاي ATMEGA16L و ATMEGA16 تفاوت خاصي در ترتيب پايهها و كارايي با يكديگر ندارند. مهمترين تفاوت اين 2 آي سي در فركانس كاري اين 2 آي سي است كه ATMEGA16L نميتواند با فركانس بيش از 8 مگاهرتز كار كند.
خوب، همانطور كه قول داده بوديم، قراره اين جلسه ساخت يك پروگرامر بسازيم كه بتوانيم به وسيلهي آن، برنامههايي كه در كامپيوتر مينويسيم را به ميكروكنترلر منتقل كنيم.
براي پروگرام كردن ميكروكنترلرهاي خانوادهي AVR روشها و پورتكولهاي متعددي وجود دارد. يكي از معروفترين و پركاربردترين پروتكولهاي موجود، STK200300 نام دارد كه ما در اين جلسه سعي ميكنيم نحوهي استفاده از اين پروتكول را آموزش دهيم.
همانطور كه گفته شد، ميكروكنترلرهاي خانوادهي AVR اين قابليت را دارند كه ميتوان آنها را مستقيماً به وسيلهي يك كابل 5 رشته به كامپيوتر متصل نموده و پروگرام كرد، و در نتيجه، نيازي به يك دستگاه مجزا براي پروگرام كردن ندارند. اين روش پروگرام كردن STK200/300 نام دارد. اين روش، به خاطر عدم نياز به هرگونه مدار جانبي و سهولت كار با آن، از محبوبيت زيادي در بين كاربران حرفهاي برخوردار است.
اولين نكته اين است كه اگر كامپيوتر شما پورت LPT(موازي) نداشته باشد، شما نمي توانيد به اين روش(يعني فقط با يك كابل 5 رشتهي ساده) ميكروكنترلر خود را پروگرام كنيد و بايد از مدارهاي پروگرامر USB استفاده كنيد. با استفاده از پروگرامرهاي USB، شما ميتوانيد با استفاده از درگاه USB هم ميكروكنترلر خود را پروگرام كنيد. ساختن اين پروگرامرها كار سادهاي نيست، اما انواع مختلف آنها در بازار موجود است كه بين 20 تا 200 هزار تومان هم قيمت دارند.
براي ديدن پورت يا درگاه LPT (موازي) ، به پشت كيس كامپيوتر خود نگاه كنيد.
اين جلسه همانطور كه قبلاً گفته بوديم، سعي ميكنيم كمي از مقدمات سخت افزاري و مدارهاي راه اندازي ميكروكنترلرهاي AVR صحبت كنيم تا دوستان بتوانند به تدريج كار عملي با Atmega16 را شروع كنند.
مراحل کامپایل کردن، پروگرام کردن میکروکنترلر و رفع نقص برنامه و ...
به نام خدا
با سلام خدمت همه ی دوستای خوبم و عرض پوزش به خاطر وقفه در ارایه ی مطالب
در این جلسه قراره شما رو با مراحل کامپایل کردن ، پروگرام کردن میکروکنترلر و رفع نقص برنامه آشنا کنیم.
همانطور که گفته شد فقط «زبان ماشین»(Machine Language)، زبان قابل فهم برای پردازنده ی کامپیوتر است، و برنامه هایی که در زبان های دیگر می نویسیم برای اینکه بتوانند توسط پردازنده اجرا شوند باید حتماً توسط کامپایلرها به «زبان ماشین» ترجمه شوند. اما نوشتن برنامه در این زبان برای ما بسیار مشکل است، زیرا دستورات قابل فهم برای این زبان بسیار ابتدایی و ساده هستند و به سختی می توان برنامه های حرفه ای و الگوریتم های پیچیده را در آن پیاده سازی کرد. مثلاً حتی برای انتقال داده از یک متغیر به متغیر دیگر، باید چندین خط برنامه بنویسید، اما در زبان C این کار در 1 عبارت انجام می شود. برنامه نویسی در این زبان دشواری های مختلفی دارد که فعلاً به آن ها نمی پردازیم.
به همین خاطر ما برنامه های خود را در زبان C می نویسیم و باقی کارها را به کامپایلر می سپاریم. کامپایلر ابتدا برنامه ی ما را از زبان C به زبان اسمبلی ترجمه می کند، سپس برنامه ی دیگری به نام «اسمبلر»(" Assembler") برنامه ی ما را از اسمبلی به «زبان ماشین» تبدیل می کند. زبان اسمبلی
آشنايي با Codevision، لبهي Port، لبهي Chip، آشنايي با Pullup و Output value و ...
این جلسه همانطور که قول داده بودیم، قراره کمی در مورد Codevision توضیحاتی بدیم. در ابتدا دوستان عزیز برای اینکه بتونن مطلب رو با ما دنبال کنند، لازمه که این نرم افزار تهیه کرده و روی کامپیوتر شخصی خود نصب کنند. در زیر نسخه ی2.03.4 Crack شدهی این نرم افزار را، برای دانلود دوستان قرار دادیم.(حجم 8.15مگابایت)
تبادل لینک هوشمند برای تبادل لینک ابتدا ما را با عنوان فروشگاه رباتیک و آدرس robohp.LXB.ir لینک نمایید سپس مشخصات لینک خود را در زیر نوشته . در صورت وجود لینک ما در سایت شما لینکتان به طور خودکار در سایت ما قرار میگیرد.