نمونه ای از این ربات ها که شاید حتی برای ما ایرانی ها هم شناخته شده باشد، ربات های Shake And Catch هستند که برای مرکبات مورد استفاده قرار می گیرند. آن ها تنه درختان را به اطراف یا بالا و پایین تکان می دهند و به وسیله توری که در پایین درخت دارند، محصولات را جمع آوری می کنند.
کاملا آشکار است که این ربات ها توانایی بیشتری در جمع آوری مرکبات با سرعت و بازده بالاتر نسبت به انسان دارند و این امکان را به کشاورزان می دهند تا اقدام به کشت درختان بیشتر و افزایش محصولات خود کنند.
کمپانی هانسون رباتیک در حال نمایش ربات پسر انساننمای جدید خود است که به مجموعه Robokind رباتهای این شرکت تعلق دارد.
فناوری جدید نسخه جدید ربات پسر کارتونمانند Zeno است اما این بار ربات جدید با آرایهیی از ژستها و حرکات چشم بسیار انساننماتر است.
این ربات پسر مانند که در چین طراحی شده، ۲۷ اینچ بلندی دارد. مهمترین مشخصه Zeno جدید سر آن است که از آنچه دیوید هانسون طراح آن Frubber میخواند، ساخته شده است.
این ماده همانطور که از نام آن برمیآید (ترکیب گوشت و پلاستیک) نوعی پلیمر ارتجاعپذیر اسفنجی ساختاربندی شده است، که میتواند حرکات صورت را تقلید کند و درست مانند پوست انسان منقبض و باز شود. از این ماده همچنین به عنوان پلیمر زیست تقلید یاد میشود. همچنین بیان چشمها و پلکهای متحرک ربات نیز در کیفیت زندگیگونه آن نقش دارند.
هانسون این فناوری را مجهز به یک جفت دوربین با تعریف بالا برای تشخیص چهره و یک رایانه درونی و هوش مصنوعی پیشرفته کرده است. بدنه ربات همچنین دارای ۳۷ درجه حرکت است که این بالاترین میزان ربات طراحی شده توسط شرکت سازنده تلقی میشود.
خواهر این پسر با نام Alice نیز به زودی ارائه خواهد شد. همچنین “پسرعمه و دخترعمههای” کوچکتر این “پسر” با قیمت ارزانتر ظرف یک سال آینده خواهد بود.
این رباتهای کوچکتر راهی برای دسترسی این کمپانی به بازار انبوه عنوان شدهاند. هانسون در نمایشی تصویری از ربات مزبور در تلاش برای جذب سرمایهداران با هدف بازاریابی برای آن است.
رباتهای انساننما رویکردی برای تفحص در مرزهای زیستشناسی، علوم شناختی و مهندسی هستند.
لیگ فوق نمونه پیشرفته لیگ مسیریاب ساده میباشد که در آن ابعاد پیست مسابقه دو برابر مسیریاب پیشرفته میباشد و موانع سخت و دشوار همچون حوضچه آب، تونل ، سطوح...
به اطلاع کلیه شرکت کنندگان می رسانیم که در قوانین لیگ مسیریاب ساده تغییراتی اعمال شده است. دفترچه قوانین جدید را می توانید از منوی قوانین مسابقات دانلود کنید.
پنجمین دوره مسابقات کشوری مهارتی رباتیک مرکز علمی کاربردی خانه کارگر جمهوری اسلامی ایران اهداف مسابقات : • کشف استعداد های علمی و حرفه ای دانشجویان و ایجاد...
امروز هوس کردم کمی درباره end effector های ربات بنویسم که ترجمش به فارسی می شه : عملگر نهایی ، یعنی کار یا عملی که ربات به وسیله این ابزار در نهایت یک جابجایی انجام می دهد . خَب ، end effector ها انواع مختلفی دارند مثل برش لیزر که یک مقاله هم در این باره حدود 4 سال پیش نوشتم و در آرشیو مقالات موجود هست . اما امروز قصد دارم درباره یک نوع خاص و پرکاربرد حرف بزنم که بیشتر برای عمل برداشتن و گذاشتن یا pick & place استفاده دارند . درست حدس زدید : Gripper
یک ناوگان از کارگر ساختمانی رباتیک را تصور کنید که بطور مستقل و بدون نظارت و یا تعیین وظیفه خاصی می توانند ساختمان بسازند . محققان بخش مهندسی و علوم کاربردی در دانشگاه هاروارد و مهندسی الهام بیولوژیکی (BIE) از موسسه Wyss در هاروارد و دانشگاه کمبریج نوعی خاص از کارگران رباتیک را طراحی نمودند .مهندسان این ربات ها را با الهام از ملیون ها موریانه ای که بدون نقشه و طرح اولیه خاک ریزی پیچیده را با ذرات خاک با همکاری هم می سازند ، طراحی کرده اند .
محققان می گویند اعضای کلونی از نشانه های یکدیگر و محیط اطرافشان برای پیشبرد پروژه ساختمانی کمک می گیرند . ما فهمیدیم این حشرات کوچک قادرند چیزهای باور نکردنی بسازند که واقعا باید گفت بی نظیره !
چرا ربات بسازیم ؟ انگیزه شما از این کار چیست ؟ آیا می خواهید در مسابقات رباتیک شرکت کنید ؟ آیا می خواهید نظر بقیه را متوجه این کنید که شما توانمند هستید ؟ رباتیک می تواند درس های زیادی به شما بدهد . شما در این مسیر مهارت های زیادی کسب می کنید : الکترونیک ، مکانیک ، برنامه نویسی و حتی درک بیشتری از رفتار حیوانات و روان شناسی انسان ها خواهید یافت . بهتر است قبل از شروع به کار در این زمینه از خود این سوال را بپرسید که چه اهدافی شما را بر آن داشته تا در رشته رباتیک قدم بگذارید ؟ در غیر این صورت بعید نیست که در نیمه راه بدون تکمیل اهدافتان این مسیر را ترک کنید.
خب حالا که شما می دانید برای چه می خواهید ربات بسازید بگذارید بررسی کنیم نیاز دارید چه چیزهایی را بدانید . . .
خیلی وقت ها شده درست موقعی که داریم با موبایل صحبت میکنیم یا با mp3 player یک موزیک گوش میدیم شارژ ان تمام بشه تازه اگه توی راه و مسافرت باشیم ودسترسی به برق برای شارژ نداشته باشیم انوقت میگیم ای کاش یک شارژر قابل حمل داشتیم …در مدر این قسمت آی سی مبدل dc به Dc را به شما معرفی میکنیم که با حداقل قعات جانبی میتونید با اون یک شارژر قابل حمل بسازید.این کار با استفاده از آی سی های MAX756 یا MAX757 امکان پذیر هست
به نظر میرسد شرکت فاکسکان که بعنوان اصلیترین تولیدکننده چینی گوشیهای آیفون اپل شناخته میشود، با توجه به پیشبینی تقاضای بالای آیفون 6، از رباتها برای پاسخگویی به این میزان تقاضا در فرآیند تولید خود استفاده خواهد کرد.
ماشین های بدون راننده کم کم تبدیل به یکی از تکنولوژی های مورد انتظاری می شوند که در آینده نزدیک آن را در خیابان های اطراف مان خواهیم دید. اما به نظر می رسد که انسان راحت طلب به همین میزان اکتفا نکرده و قصد دارد از این تکنولوژی در زمینه آزمون های ایمنی و دوام اتومبیل ها هم بهره ببرد.
یکی از اولین اهدافی که سازندگان روباتها در پی تحقق آن هستند، ساخت روباتهایی خانگی است تا کاربران را در امورات زندگی یاری رساند. پیشتر روباتهایی چون AIBO و Wakamaru در این حوزه به بازار عرضه شدند که با مشکلات عدیدهای همراه بودند. اما ژاپنیها بار دیگر اوج خلاقیت و هنر خود را در Pepper به سرانجام رساندهاند که میتوان لقب انقلابیترین روبات خانگی را به Pepper داد.
نظرتان چیست که یک عنکبوت بزرگ روزها کف خانه قدم بزند دیگران را بترساند؟ این رباتی ترسناک است که بدنه آن توسط چاپ سه بعدی تولید شده و با ۲۶ موتور داخلی کار می کند.
سازندگان آن را به گونه ای ساخته اند که حرکاتش بسیار به یک عنکبوت واقعی شبیه است و جالب اینجا است که محاسبات اصلی برای تعیین مشخصات حرکات توسط سیستم درونی خود عنکبوت انجام می شود.
بنابراین شما می توانید به راحتی برای این ربات که T8 نام دارد دستورهای ساده ای بنویسید و به صورت بی سیم آن را کنترل نمایید. در صورت تمایل هم می توانید از یک کنترل اختصاصی بی سیم برای هدایت آن استفاده کنید.
اما این ربات عنکبوت فقط یک مدل آزمایشی نیست و قرار است تا شهریور ماه به صورت تجاری به بازار ارایه شود. اگر تا آن زمان نمی توانید صبر کنید، همین الان می توانید یک مدل سفارشی اش را بخرید که در این صورت باید هزینه بسیار بالاتری را پرداخت کنید. یعنی معادل ۱۳۵۰ دلار.
اما اگر چند ماه صبر کنید احتمالا قیمت مدل تجاری این عنکبوت بسیار ارزان تر خواهد بود و می دانید که... چه کاربردهای علمی جالبی برای آن پیدا می شود.
جلسه هفتم : آشنایی با سایر ابزار های شبیه سازی فوتبال شبیهسازی فوتبال
جلسه پیش به معرفی نرمافزار 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 استفاده نمایید.
مطالب این جلسه را به آشنایی با محیط گرافیکی و میز کار سیستم عامل Ubuntu اختصاص می دهیم تا دانش پژوهان به سادگی بتوانند امور روزمره خود را در این سیستم عامل، به انجام برسانند.
کامپیوتر به عنوان یک ماشین الکترونیکی و سخت افزاری، ماهیت بسیار پیچیده ای داشته و ارتباط مستقیم کاربر با آن به شدت مشکل و عملا غیر ممکن است. از این رو سیستم عامل به عنوان یک واسط ساده و کاربر پسند بین کاربر و سخت افزار کامپیوتر قرار گرفته و این ارتباط را تسهیل می کند. به عبارت دیگر کاربر با سیستم عامل در تعامل بوده و سیستم عامل وظیفه تعامل با سخت افزار را به عهده می گیرد.
طبق وعده ای که جلسه پیش دادیم، در این جلسه به آموزش نصب Ubuntu به عنوان توزیع برگزیده گنو/لینوکس خواهیم پرداخت.
در این قسمت برای پیشگیری از وارد آمدن هر گونه آسیب به سیستم عامل اصلی و یا فایل ها و نرم افزار های موجود بر روی کامپیوتر، از نصب لینوکس به طور مستقیم بر روی سیستم کامپیوتری اجتناب نموده و آنرا بر روی یک ماشین مجازی نصب کرده و مورد استفاده قرار می دهیم. پس از کسب تجربه کافی در رابطه با نصب لینوکس می توانید آنرا در کنار سیستم عامل اصلی و یا به جای آن بکار بگیرید.
همانگونه که در جلسه پیش ذکر شد، تمامی ابزار هایی که در شبیه سازی فوتبال از آنها بهره خواهیم برد، تحت سیستم عامل لینوکس (Linux) توسعه یافته اند. در این جلسه ضمن آشنایی با این سیستم عامل، به معرفی چند توزیع محبوب از آن خواهیم پرداخت.
سیستم عامل (Operating System) مهم ترین نرم افزار در یک سیستم کامپیوتری است که وظیفه مدیریت منابع سیستم، از جمله پردازنده، حافظه اصلی و همچنین فایل ها را بر عهده دارد. به علاوه سیستم عامل به عنوان یک واسط کاربر پسند عمل کرده و کار با ماشین پیچیده ای همچون کامپیوتر را تسهیل می نماید.
با یاد ایزد یکتا، دنباله آموزش های شبیه سازی فوتبال دو بعدی ویژه مسابقات روبوکاپ را آغاز می نماییم.
هدف از ایجاد این درس نامه، آشنایی دانش پژوهان با لیگ شبیه سازی فوتبال دو بعدی در مسابقات روبوکاپ و همچنین ارتقای سطح کیفی این دانش در بین علاقه مندان می باشد.
با توجه به اینکه درصد غالب بازدیدکنندگان این پایگاه را دانش آموزان تشکیل می دهند و این دسته از مخاطبین معمولا با برنامه نویسی شی گرا، پروتکل های شبکه، طراحی و تحلیل الگوریتم ها، هوش مصنوعی، سیستم های چند عامله و سایر نیازمندی ها آشنا نمی باشند، سعی خواهیم نمود این دنباله دروس، تمامی مفاهیم لازم را از پایه، به صورت کامل و مشهود پوشش دهد. در همین راستا از تمامی دوستان به ویژه صاحب نظران دعوت می شود تا پیشنهاد ها، نظرات و انتقاد های خود را در بخش نظرات همین پست و یا به آدرس رایانامه hosseinkhani@live.com ارسال نمایند. همچنین می توانید سوالات مربوط به هر جلسه را در بخش نظرات همان جلسه مطرح کنید تا در اسرع وقت پاسخ مناسب آن ارائه گردد.
همانگونه که می دانید هر ساله مسابقات جهانی روباتیک توسط فدراسیون روبوکاپ، به منظور توسعه علم روباتیک و هوش مصنوعی برگزار می شود. هدف نمادین این فدراسیون پیشرفت علوم مرتبط با "روباتیک" به حدی است که در سال 2050 میلادی، تیم اول مسابقات فوتبالیست روبوکاپ بتواند در مقابل تیم قهرمان جام جهانی فوتبال همان سال یک مسابقه منطبق بر تمامی قوانین FIFA را به نمایش بگذارد.
مسابقات فوتبالیست روبوکاپ در دو بخش "روبات های حقیقی" و "شبیه سازی" برگزار می شود. روبات حقیقی یک ماشین الکترومکانیکی هوشمند است که برای آشنایی با نحوه طراحی و ساخت آنها می توانید به اینجا مراجعه کنید.
و اما شبیه سازی...
مطالعه برخی از آزمایش ها نیازمند ایجاد رویداد هایی پیچیده، پرهزینه و یا حتی غیر ممکن است که در این صورت از فرآیندی موسوم به شبیه سازی کامپیوتری (Computer Simulation) بهره می بریم و با در نظر گرفتن تمامی جنبه های رویداد حقیقی، مدلی مجازی از آن پدیده را درون یک محیط نرم افزاری طراحی نموده و با انجام آزمایش های لازم بر روی آن مدل و مشاهده رفتار سیستم شبیه سازی شده، استراتژی های بکار رفته را مورد ارزیابی قرار می دهیم.
برای مثال فرض کنید به دنبال یک استراتژی مناسب برای هدایت و راهبری نیرو هایی مثل آتش نشانی، گروه امداد و ... پس از وقوع یک فاجعه شهری مثل زلزله می باشیم بطوریکه خسارت های احتمالی را کمینه نماییم...
واضح است که ایجاد پدیده "زلزله" کاملا غیر ممکن است و تنها روشی که برای آزمایش استراتژی های گوناگون راهبری پس از حادثه وجود دارد، شبیه سازی کامپیوتری زلزله می باشد. از قضا در مسابقات روبوکاپ نیز لیگی تحت نام شبیه سازی امداد و نجات (Rescue Simulation) به همین منظور وجود دارد.
با عرض سلام و تبریک سال نو خدمت دوستان عزیزم ، سالی بسیار خوب و سرشار از شادی و موفقیت را برای دوستان خوبم آرزو میکنم.
برمیگردیم به بحث رباتهای آتشنشان که در جلسهی گذشته آغاز کردیم و همانطور که گفته شد قرار است در این جلسه هم سیستمهای مختلف خاموش کردن آتش را مورد بررسی قرار دهیم.
یکی از سادهترین و رایجترین روشهای خاموش کردن آتش پاشیدن آب یا مواد ضد اشتعال دیگر بر روی آتش است. برای مجهز کردن ربات به این سیستم، فقط نیاز به یک عدد پمپ آب و یک مخزن کوچک برای ذخیرهی آب و یک مدار راه اندازی مختصر داریم. این روش از نظر پیچیدگی از سایر روشهای رایج سادهتر است و پیچیدگی مکانیکی و الکترونیکی زیادی هم ندارد.
با عرض سلام خدمت دوستان عزیز
امیدوارم ایام به کام همهی دوستان خوبم باشه.
همانطور که در اوایل کار به دوستان عزیز وعده داده بودیم، بالاخره نوبت ساخت ربات آتشنشان است!!! برای دوستانی که با رباتهای آتشنشان هیچ آشنایی ندارند ابتدا بهتر است یک سری به جلسهی پنجم بزنند بعد مطلب این جلسه را دنبال کنند.
با عرض سلام خدمت دوستان عزیز
در این جلسه در مورد نحوهی استفاده از 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 سرعت بالاي آنها بهخاطر نزديك بودن به واحد پردازشگر مركزي است. و مهمترين محدوديت آنها هم كم بودن تعداد آنهاست. نيازي نيست كه ما در برنامههاي خود مستقيماً از رجيسترها استفاد كنيم، اما خود ميكروكنترلر براي اجراي برنامههاي خود مكرراً از آنها استفاده ميكند.
مطالب مطرح شده مختصر و اجمالي هستند، ولي اين مطالب براي رفع نياز دوستان و انجام پروژههاي مختلف كفايت ميكنند و نياز به بررسي تخصصيتر روي اين مبحث نيست. توضيحات بيشتر در اين باب، نياز به مقدمات علمي و تخصصي بيشتري دارد كه در اينجا مجال مطرح كردن تمام اين مطالب نيست.
منتظر سوالات، نظرها و پيشنهادهاي دوستان خوبم هستم.
در جلسهي قبل توضيحاتي در مورد رباتهاي مينياب خودكار داده شد و دوستان تا حد زيادي با اين ربات و نحوهي عملكرد آن آشنا شدند. در اين جلسه نيز در مورد رباتهاي مينياب خودكار، توضيحات جلسات پيش را تكميل خواهيم كرد و در مورد نحوهي ارايهي نقشهي مينها توضيح خواهيم داد، سپس الگوريتمهاي متداول در ساخت رباتهاي مينياب را مورد بررسي قرار خواهيم داد.
رباتهاي مينياب خودكار بايد به سيستمهايي مجهز باشند كه وقتي ميني را كشف ميكنند، بتوانند موقعيت(مختصات مكاني) آن مين را ثبت كنند، و در پايان زمان جستجو، مختصات تمام مينها را در اختيار كاربر بگذارند تا كاربر بتواند با در اختيار داشتن اين مختصات مكان مينها را به راحتي پيدا كند. همانطور كه در جلسهي پيش هم گفته شد، زمين مسابقه به مربعهاي 50×50 سانتيمتري فرضي تقسيم شده است و مينها دقيقاً در وسط بعضي از اين مربعهاي فرضي كاشته شدهاند. اعلام مختصات مينها نيز بايد بر اساس همين تقسيم بنديهاي فرضي انجام شود. مثلاً اگر زمين مسابقه 5×5 متر باشد، اين تقسيمبندي زمين مسابقه را به 100 خانه تقسيم ميكند كه در وسط بعضي از آنها (كمتر از 10 خانه) مين كاشته شده است. ربات بايد قادر باشد توسط 2 عدد بين 1 تا 10 مختصات هر مين را اعلام كند. به عنوان مثال به شكل زير نگاه كنيد، اين شكل مكان مينهايي كه در زمين مسابقه دفن شدهاند را نشان ميدهد.
به نام خدا با سلام خدمت دوستان عزيزم. عرض پوزش دارم به خاطر تاخير در ارايهي مطالب، ما ابتدا تصميم داشتيم به خاطر امتحانات دوستان، يك وقفهي 2 هفتهاي در ارايهي مطالب ايجاد كنيم، اما بعد از آن نيز متاسفانه با اختلال در شبكهي اينترنت مواجه شديم و عملاً نتوانستيم مطالب را به روز رساني كنيم.
اين جلسه تصميم داريم شما را با ليگ رباتهاي مين ياب يا "Deminer" آشنا كنيم. اما اهميت اين رباتها چيست و اصولاً چرا چنين مسابقاتي برگزار ميشود؟
پاراگراف زير عيناً از دفترچهي قوانين مسابقات كشوري رباتهاي مين ياب در تبيين اهداف رباتهاي مينياب آورده شده است:
«بر اساس گزارشات موجود، ايران سومين كشور دنيا از لحاظ مينهاي دفن شده است. در طول 8 سال جنگ تحميلي عراق بر عليه ايران بالغ بر 16 ميليون مين در سرزمينهاي مرزي غرب و جنوب كشور كاشته شده است كه بعضاً به علت دورافتاده بودن و صعبالعبور بودن مناطق خنثي نشده باقي مانده و همه ساله افراد زيادي از بين مردم عادي و نظاميان قرباني ميكنند. استانهاي آذربايجان غربي، كرمانشاه، كردستان، ايلام و خوزستان، هنوز در معرض خطر انفجار مينهاي باقيمانده از بيست سال پيش هستند. كشف و خنثي سازي مينها كاري بسيار خطرناك و پرهزينه است. اين اميد وجود دارد كه رباتهاي مينياب بتوانند اين خطر را رفع نموده و تلفات انساني و هزينه مينيابي را كاهش دهند.»
عرض سلام و شاد باش فراوان به مناسبت عید فرخنده نوروز خدمت همه ی دوستان گُلم. برای همه ی هموطنان عزیزم سالی پر از موفقیت و شادمانی آرزو می کنم ، امیدوارم همیشه دلهاتون شاد و بهاری باشه.
در جلسه ی گذشته در مورد ساختار ADC یا همان مبدل آنالوگ به دیجیتال توضیحات مفصل داده شد. در این جلسه، نحوه ی استفاده از ADC در برنامه را توضیح خواهیم داد.
در میکرو کنترلر ATMEGA16، 8 پایه ی به ADC اختصاص داده شده، یعنی شما می توانید به صورت همزمان، خروجیِ 8 سنسور یا مدار جانبی را به میکروکنترلر خود وصل کنید و اطلاعات آن ها را به وسیله ی ADC دریافت کنید.
اما این 8 پایه کدام پایه ها هستند؟
این 8 پایه، پایه مربوط به پورت A هستند که با فعال کردن ADC در CodeWizard، این پایه ها در اختیار ADC قرار می گیرند. دقت کنید که برای استفده از ADC حتماً باید قبلاً تنظیمات را در CodeWizard انجام داده باشید.
این 8 پایه طبق شکل زیر از ADC0 تا ADC7 نام گذاری شده اند.
تبادل لینک هوشمند برای تبادل لینک ابتدا ما را با عنوان فروشگاه رباتیک و آدرس robohp.LXB.ir لینک نمایید سپس مشخصات لینک خود را در زیر نوشته . در صورت وجود لینک ما در سایت شما لینکتان به طور خودکار در سایت ما قرار میگیرد.