پیشگفتار:
هدف این مقاله بررسی علم رباتیک و آشنایی با دانش و فناوری وابسته به ابزارهای مکانیکی کنترل شونده به وسیله رایانه میباشد چون بعضی ها بدین باورند که ربات ها حتماً ماشین های سیار انسان نما هستند که تقریباً قابلیت انجام هر کاری را دارند.
انتظار می رود مطالب این مقاله برای خواننده ای که آشنایی مقدماتی با ربوتیک و یا اصلاً آشنایی ندارد به سادگی قابل فهم باشد.
به منظور آشنایی خوانده به ربوکاپ نیز مطالبی در این مورد در پایان بیان نموده ایم.
چکیده:
رباتیک دانش وابسته به ابزارهای مکانیکی کنتزل شونده به وسیله رایانه میباشد. در اینجا ما شما را با انواع ربات ها از قبیل ساده و پیچیده و ربات هایی که دارای حسگر هستند آشنا می کنیم و خواهیم گفت که ربات ها توسط ریزپردازشگرها و ریزکنترل گرها کنترل می شوند. همچنین ویژگی های یک روبات را مطالعه می کنیم.
حرکت در ربات ها مسئله قابل توجهی است و ربات ها را می توان مکرراً برنامه ریزی کرد و چند کاره می باشند و کارآمد و مناسب برای محیط اند. در آخر شما را با تاریخچه Robocup آشنا خواهیم نمود.g
مقدمه:
روباتیک:
روباتیک (یا روبوتیک) دانش و فناوری وابسته به ابزارهای مکانیکی کنترل شونده به وسیله رایانه میباشد. برای نمونه ماشین های خودکار روباتیک عموماً در خطوط مونتاژ خودروها مشاهده می گردند.
بر خلاف تصور افسانه ای عمومی از رباتها به عنوان ماشینهای سیار انسان نما که تقریباً قابلیت انجام هر کاری را دارند، بیشتر دستگاههای روباتیک در مکانهای ثابتی در کارخانه ها بسته شده اند و در فرایند ساخت با کمک کامپیوتر، اعمال قابلیت انعطاف، ولی محدودی را انجام می دهند چنین دستگاهی حداقل شامل یک کامپیوتر برای نظارت بر اعمال و عملکردها و اسباب انجام دهنده عمل مورد نظر، میباشد. علاوه بر این، ممکن است حسگرها و تجهیزات جانبی یا ابزاری را که فرمان داشته باشد بعضی از رباتها، ماشینهای مکانیکی نسبتاً ساده ای هستند که کارهای اختصاصی مانند جوشکاری یا رنگ افشانی را انجام می دهند، که سایر سیستم های پیچیده تر که به طور همزمان چند کار انجام می دهند، از دستگاههای حسی، برای جمع آوری اطلاعات مورد نیاز برای کنترل کارشان نیاز دارند. حسگرهای یک ربات ممکن است بازخورد حسی ارائه دهند، طوریکه بتوانند اجسام را برداشته و بدون آسیب زدن، در جای مناسب قرار دهند. ربات دیگری ممکن است دارای نوعی دید باشد، که عیوب کالاهای ساخته شده را تشخیص دهد. بعضی از رباتهای مورد استفاده در ساخت مدارهای الکترونیکی، پس از مکان یابی دیداری علامتهای تثبیت مکان بر روی برد، می توانند اجزا بسیار کوچکی را در جای مناسب قرار دهند. ساده ترین شکل رباتهای سیار، برای رساندن نامه در ساختمانهای اداری یا جمع آوری و رساندن قطعات در ساخت، روباتها همانند کامپیوترها قابلیت برنامه ریزی دارند. بسته به نوع برنامه ای که شما به آنها میدهید. کارها و حرکات مختلفی را انجام می دهند. رشته دانشگاهی نیز تحت عنوان روباتیک وجود دارد که به مسایلی از قبیل 1-حسگرها 2-مدارات 3-بازخوردها 4-پردازش اطلاعات 5-بسط و توسعه روباتها می پردازد. روباتها انواع مختلفی دارند از قبیل روباتهای شمشیرباز، دنبال کننده خط، کشتی گیر، فوتبالیست و روباتهای خیلی ریز تحت عنوان ریز روباتها، روباتهای پرنده و غیره نیز وجود دارند. روباتها برای انجام کارهای سخت و دشواری که بعضی مواقع انسانها از انجام آنها عاجز یا انجام آنها برای انسان خطرناک هستند. مثل روباتهایی که در نیروگاه های هسته ای وجود دارند استفاده می شوند.
کاری که روباتها انجام می دهند، توسط ریزپردازشگرها و ریزکنترل گرها کنترل میشود. با تسلط در برنامه نویسی این دو می توانید دقیقاً همان کاری را که انتظار دارید روبات انجام دهد.
فهرست مطالب
فهرست مطالب
1،2- انگیزه و هدف از انتخاب موضوع 5
1،3- سوابق و کارهای انجام شده توسط دیگران در موضوع 6
1،4- امکانات و دشواریهای مطالعه و تحقیق در مورد پروژه 6
2،2- نرم افزار SqlServer2000 13
فصل سوم :جزییات مراحل چیاده سازی وروند اجرایی پروژه 35
3،1- نصب سرویس Internet Information Service (IIS) 35
3،3- طراحی قالب اصلی وب سایت 38
3،4- موارد انجام شده در بخش HTML سایت 39
1،4،3- مشخص نمودن Unicode ها 39
2،4،3- قرار گرفتن اطلاعات در جداول 39
3،4،3- استفاده از فایل CSS (StyleSheet) 40
5،4،3- نام گذاری نوار عنوان 41
6،4،3- انتخاب فایلهای تصویری با حجم پایین 42
7،4،3- تعریف کلاس برای پیوندها 42
6،3- برنامه نویسی به زبان ASP 43
فصل 4:نتیجه گیری و پیشنهادات 44
فهرست اشکال و تصاویر
چکیده
سیستمی که به توضیح آن می پردازیم طراحی وب سایت فروش کتاب می باشد . این سیستم تحت vbطراحی شده و در آن از زبانهای VB ، Access استفاده کرده ایم .
در وب سایت فروش کتاب بازدیدکنندگان می توانند کتاب مورد نظر خود را با استفاده از سیستم جستجو یا جستجوی پیشرفته و یا از منوی موجود در صفحه اصلی انتخاب نموده و جهت خرید کتاب پس از عضویت در سایت و تعیین نحوه ارسال کتاب و پرداخت وجه ، مراحل خرید را تکمیل نمایند .
همچنین در این وب سایت این امکان برای کاربران عضو سایت فراهم است که کتاب یا کتابهای فروشی خود را به مدیر سایت معرفی کنند و مدیریت پس از بررسی کتاب معرفی شده نتیجه بررسی را به کاربر اعلام نماید و در صورت تایید کتاب آن را جهت فروش در بانک کتابهای موجود در سایت قرار دهد .
در این سایت ما دو سطح دسترسی برای مدیران تعریف کرده ایم که سطح یک شامل کلیه دسترسی هایی است که در صفحه Admin تعریف شده و مدیرانی که سطح دسترسی آنها دو می باشد قادر به انجام یکسری از عملیات نمی باشند
مقدمه
سرویس ویژه تبلیغاتی در رایانه
با سفارش هر یک از پلنهای تبلیغاتی رایانه امکان عرضه کالاهای تبلیغ دهندگان بدون هزینه
اضافه فراهم گردیده است.ارائه گزارشات آماری از شاخص های کالاها و برندها در رایانه بر
مبنای بازدید مخاطبین بصورت رایگان برای تبلیغ دهندگان میباشد.
برای استفاده از امکانات فروشگاه رایانه حتما بایستی در سیستم فروشگاه عضو شویدودر لینک
عضویت در سایت کلیک نمایید. بعد از سپری شدن مراحل عضویت و تایید عضویت شما در
فروشگاه می توانید از امکانات موجود در آن بهرمند شوید. با ورود به سیستم , با استفاده از
منوی محصولات فروشگاه می توانید کالای مورد نظر خود را انتخاب نمایید.
پس از ورود به دسته بندی مربوط به آن کالا لیست کامل محصولات به همراه عکس به نمایش
درآمده است. برای مشاهده جزییات و اضافه کردن کالا به سبد خرید, بر روی عکس و یا بر
روی لینک مربوطه ( قرار گرفته در زیر عکس کالا ) کلیک نمایید.اکنون مشخصات و جزییات
کالا به نمایش در آمده است , هم چینین شما می توانید تعداد مورد نیاز از کالای مد نظرتان را
مشخص نمایید و سپس دکمه "اضافه شود به سبد" را کلیک نمایید.
اکنون شما , سبد خرید به همراه جزییات و قیمت کالا را مشاهده می نمایید ( در صورتی درتعداد
کالاهای انتخابی مشکلی وجود داشته باشد , در این مرحله نیز می توانید تغییرات مد نظر خود را
اعمال نمایید).هم اکنون وارد مرحله پایانی یعنی مرحله پرداخت شده اید.
بررسی فروشگاههای اینترنتی
فروشگاه طراحی شده بر روی اینترنت است که فروشندگان می توانند کالاها و محصولات خود
از این طریق عرضه نمایند و خریداران می توانند محصولات آنها را از جمله نرم افزار,کتاب
،قطعات و به طور کلی کالای مورد نظر خود را انتخاب و در صورت تمایل خریداری نماید.
فوایدفروشگاه اینترنتی
1- ورود به عرصه نوین تجارت و تجارت الکترونیک از ساده ترین ، سریع ترین و ارزان ترین راه
2- ارائه محصولات بدون محدودیت مکانی و زمانی
3- ابزار تبلیغاتی مناسب و نوین در جهت جذب مشتری بیشتر
4- اولین قدم در زمینه مشتری مداری با استفاده از تکنولوژی نوین
5- تحت پوشش قرار دادن انبوه مخاطبان جوان از طریق آخرین فنآوری
6- ایجاد کانال درآمد زایی جدید ویژه فروشندگان
7- ارائه محصولات به شیوه نوین و ارائه بسیاری از محصولات جانبی به صورت مجازی
8- اعمال شیوه های جدید بازاریابی و تبلیغات از طریق اینترنت
9- امکان برقراری ارتباط مستقیم با کلیه خریداران از طریق اینترنت
10- برخورداری از یک فروشگاه الکترونیکی مجازی ، پویا و هوشمند
11- زمینه سازی مفاهیم شهر الکترونیکی و دنیای مجازی
12- امکان فروش کالا بر روی اینترنت بدون نگرانی چگونگی دریافت وجوه روز.
مزایای ایجاد فروشگاه اینترنتی برای فروشندگان
|
||||||||||||||||||||||||||||||||||
معرفی نمونه ها ی موفقeshopping
eBay چند سال پیش یک مهندس نرم افزارفرانسوی ایرانی تبار که ساکن کالیفرنیای امریکا بود در حالی
که تنها20 سال داشت در خلال یک تعطیلات اخر هفته برنامه ی اولیه ی یک سیستم را نوشت که
بعد ها به حراجی ebay تبدیل گردید .
روز افتاحیه آن سایت در چهارم سپتامبر 1995 چندان موفقیت آمیز نبود . در حقیقت این سایت در
24 ساعت اول حیاتش هیچ بازدید کننده ای را جذب نکرد اما ظرف یک هفته دهها قطعه در آن
عرضه شد اولین جنس فروخته شده در این سایت قطب نمای لنزی شکسته ی پیر امیدیان بود که با
وجود این که اساسا بی ارزش بود ولی چندین دلار فروخته شد . تا آخر سال 1995چندین هزار
حراج برگزار شد و بیش از صدها پیشنهاد قیمت از راه رسید .
این سایت در فوریه 1996 برای اولین بار از کاربران درصدی از حراج ها را مطالبه کرد و به
کسب وکاری واقعی تبدیل شدو هم چنین یک سیتم بازخورد ارایه شدتا خریدارنوفروشندگان بتوانند
به یکدیگر رتبه دهند.
در ژوئن 1996 در آمد ماهیانه ی این سایت به 10000 دلار رسید و باعث شد تا آقای امیدیان
کارش را ول کند و وقتش را صرف این پروژه کند.
در سال 1998 این شرکت با یک میلیون کاربر ثبت شده سهامی عام شد در سال 1999 ebay
در انگلیس و آلمان سایت محلی دایر کرد .
در سال 2001 این شرکت از آمازون به عنوان پربیننده ترین سایت تجارت الکترونیک پیشی
گرفت . ویک سال بعد سرویس paypal که مخصوص پرداخت پول از طریق اینترنت است را
خرید . اکنون ebay در 31 کشور دنیا 157 کارمند دارد وانتظار می رود امسال سود سالیانه ی
آن به یک میلیون دلار برسد . Amazon
جیف بیزاس ،فارغ التحصیل مهندسی الکترونیک وعلوم رایانه از دانشگاه پرینستون،در سال
1994 با تیزهوشی وزیرکی پایه های یک طرح تجاری را بنا نهاد.کودک نوپای آن
زمان(Amazon) به حکمران بی چون وچرای عرصه ی تجارت الکترونیک در جهان امروز
تبدیل شد.
بیزاس هم زمان با پیر امیدیار ،بنیان گذار سایت Ebay،به این نتیجه رسید که آینده از آن فروش
کالاها در دنیای مجازی اینترنت است وشروع به سبک وسنگین کردن احتمالات با کمک همسرش
کرد که از میان مشاغل مختلف کدام یک از آنها برای فعالیت در اینترنت مناسبترند ودر نهایت
فروش کتاب را در عرصه ی تجارت الکترونیک پر سود یافت .
آمازون با بالا گرفتن کارش استانداردی را برای تمام عنوان های قابل فروش خود انتخاب کرده که
به نام شماره ی استاندارد شناسایی آمازون) ASIN) شناخته می شود که شبیه نقش ISBN است.
از اکتبر 2003 آمازون که رسما کتاب های 130 ناشر را در سایتش عرضه می کند این امکان را
برای کاربرانش فراهم کرده که کلیه ی واژه هایی که در تمام متن 120 هزار کتاب موجود در
سایت را جستجو کند (
برابر 35 میلیون صفحه ).این امکان به کاربران اجازه می دهد در متن های کپی رایت دار جستجو
کنند که امکان آن ها در هیچ جای دیگر فراهم نمی شود البته برای جلوگیری از نقض حقوق مولفان
امکان نگهداری و چاپ صفحات نمایش داده شده در کتاب سلب شده است.
البته در حال حاضر آمازون از یک سایت ساده ی فروش کتاب فرا تر رفته و به فروش انواع دیگر
کالای مکتوب ،کادوهای موسیقیایی ،شامل کاست وcd،محصولات ویدیویی نظیر VHS گرفته تا
DVD ،نرم افزارهای مختلف کامپیوتری ،وسایل آشپزخانه ،وسایل باغبانی ،اسباب بازی و... .
پرداخته است .
موفقیت بیزاس مجله ی Time را راضی کرد او را در سال 1999 به عنوان مرد سال انتخاب کند
Froogle
فروگل به عنوان جستجو گر فروشگاه های الکترونیکی عمل می کند بدین صورت که نوع کالا
ومشخصات آن را دریافت می کند و کاربر را به فروشگاه های مربوطه راهنمایی می کند . برای
خرید کالا هم شرکت گوگل در حال تدوین سرویس پرداخت Google Wallet می باشد . البته
سرویس فروگل در حال حاضر فقط در ایالات متحده به کار می رود و در حال حاضر نسخه ی
بتای آن در دسترس قرار دارد که مطمئنا در آینده ی نز دیک شاهد پیشرفت آن خواهیم بود.
Pardakht.com
سایت پرداخت، متعلق به شرکت رهنما ،اولین وتنها سرویس پرداختجامع ،برای پرداخت
الکترونیکی را طراحی کرده است. این شرکت با امضای قرار دادی با شرکت پست امکان خرید
وحمل ونقل کالا از طریق پست را فراهم کرده است. بدین ترتیب که فروشگاه های الکترونکی با
اتصال به آن می توانند از خدمات پستی بهره مند گردند .روش کار به این ترتیب است که که یک
فروشگاه الکترونیکی( نظیر Mahsool.com برای خرید (CD پس از نمایش کالا برای مشتری
اورا به قسمت خرید کالا می برد وپس از کسب در خواست خرید ودرخواست خرید وتایید مشتری
،این درخواست را به سایت پرداخت ارجاع میدهد . پس ازآان قیمت ونحوه ی ارسال مرسوله توسط
این سایت نمایش داده می شود و پس از تا یید نهایی ، کالا به ادرس مشتری فرستاده می شود و
هزینه ی آن به مامور پست تقدیم می گردد.
Iranbin.com
این سایت برای خرید کتاب طراحی شده که با قراردادی که با سایت
آمازون منعقد کرده است امکان جستجوی کتاب در پایگاه اطلاعاتی آمازون را فراهم می کند.
البته بعضی از فروشگاه های الکترونیکی برای فرو ش کالای خود از روش هایی استفاده می کنند
که به آن اشاره شد. |
Poorly=بدحال،ناخوش،کم،به طور ناقص،بد
Usefulness=فایده، سودمندی
Obscure=گمنام،نامعلوم،مشکوک،مبهم،پیچیده،تاریک،تیره
Confused=باهماشتباه کردن ،گیج کردن
Minor=پایین رتبه، صغیر، جزیی، مختصر
Disastrous=منحوس،مقرون به بدبختی،فیج،مصیبت آمیز
Inefficient=بی فایده، ناقابل، بی کفایت
Poor=بی برکت، لاغر، بی قوت، سست، کم، بیچاره، فقیر
Unrelicable=غیرقابل اعتماد
Justified=(justify)توجیه کردن،تبرئه کردن، به مورددانستن، تصدیق کردن، حق دادن’
Conceptual=تصوری
Manipulates=درست بکاربردن، با استادی درست کردن، با دست درست کردن
Blindly=بی باکانه، کورکورانه
Inexperienced=بی تجربه، ناآزموده
Recipe=دستورالعمل، نسخه
Anticipate=سبقت جستن بر..، جلوانداختن، انتظار داشتن، پیش بینی کردن
Closely=به دقت
Inappropriate=غیرمقتضی،بیجا، نامناسب
Oomponet=جزءؤ ترکیب کننده
Familiar=دوست، اهلی.خانگی ،گستاخ،معمولی،خودنمایی، مانوس، محرم،آگاه، آشنا
Quite=خیلی،زیاد،واقعا،راستی،به کلی،کاملا
Extensive=شامل،جامع،زیاد،ممتد،بسیط،وسیع،پهناور
Conscious=ملتف،آگاه،هوشیار
Testimonial=جایزه،پاداش،تصدیق نامه،رضایت نامه، گواهینامه
Ideally=مطابق آرزو یا کمال، فکرا، تصورا
Assists=حضوربهم رسانیدن، مساعدت کردن، کمک کردن
Acknowledgement=سپاسگزاری، تصدیق،اعتراف، شناسایی
Receipt=رسیدن دادن برای، رسیدکردن، دستورالعمل،وصول،دریافت،قبض رسید، رسید
Explanatory=توضیحی
Indication=تعیین،اشعار،دلالت،خبر،اشاره،قرینه،نشانه، نشان
Echoing=تقلیدکردن، برگرداندن، پیچیدن،منعکس شدن
Mainly=اصلا، اساسا، بیشتر
Ignored=برگرداندن،بی اساس دانستن،چشم پوشیدن از،نادیده پنداشتن
Experts=متخصص،خبره،کارشناس
Inherently=به طورذاتی
Accurately=بادقت،به درستی
There fore=از این جهت،بنابراین،ازاینرو
Concerned=مربوطبودن به، ربط داشتن
Convery=رسانیدن،انتقال دادن،نقل کردن،بودن
Confirmation=استقرار،تثبیت،ابرام،تصدیق،تایید
Realism=اعتقاد به وجودخارجی کلیات، واقع پردازی
Strive=همچشمی یا رقابت کردن،کشمکش ونزاع کردن، کوشش کردن
Synthetic=ترکیبی،صدف دار،صرف شو
Reinforce=تقویت کردن
Symbols=رمز،نشان،علامت
Imagery=صنایع بدیعی،تصورات،شکل ومجسمه (به طور کلی)،مجسمه سازی،شبیه سازی
Subdivision=بخش فرعی،بخش جزء، تقسیم جزء
Extremely=به منتها درجه، بی نهایت
Helpful=بکارخورنده، مفید،کمک بخش،سودمند
Categorite:categorical=مطلق، صریح،روشن،قطعی،قاطع
Arising=ناشی شدن، روی دادن،رخ دادن، برخاستن
Thorough=تمام،کامل
Corresponding=مطابق بودن، برابربودن
Indepently=جداگانه،آزادانه، مستقلانه
Consider=گمان داشتن،اندیشه کردن،فرض کردن،مورد رسیدگی یا توجه قراردادن،درنظرگرفت، ملاحظه کردن
Alterations=نوبت،تناوب
Nevertheless=معهذا، با این وصف،با وجود این
Satisfactorily=کافی،رضایت بخش
Issue=صدور،انتشار،خروج،تحویل،جریان صادرشدن،منتشرشدن،رواج یافتن،انتشاریافتن،بیرون آمدن
Maintain=عقیده داشتن،مدعی بودن، ادامه دادن،نگهداری کردن
Ensure=تهیه کردن،بدست آوردن،تامین کردن،مراقبت کردن در
Overtax=مالیات سنگین،بستن در
Clearly=واضحا، صریحا،آشکارا
مطالب این فصل
1- طراحی و نمای یک بانک اطلاعاتی
2- ساخت یک جدول با استفاده از فیلدها و مشخصات مورد نظر
3- پیمایش و کنترل یک جدول
4- وارد کردن داده به یک جدول
5- تعریف کلیدهای اولیه
6- برقراری فهرست راهنما (Index)
7- تنظیمات ایجاد جدول
8- تغییر دادن خواص فیلد
9- تغییرتغییر داده های موجود در یک جدول
10- حذف داده موجود در یک جدول
طراحی و نمای یک بانک اطلاعاتی
در این بخش با شیوه های طراحی یک سند باک اطلاعاتی و همچنین نمای آن آشنا خواهید شد.
طراحی یک سند بانک اطلاعاتی:
برای ایجاد و طراحی یک بانگ اطلاعاتی ابتدا باید بدانید که نیاز به چه اطلاعاتی دارید و سپس بانک اطلاعات جمع آوری شده را به بانک اطلاعات وارد نمایید.
درخواست اطلاعات از شما
اطلاعات مجموعه سوالاتی است که در زمان طراحی یک پایگاه داده (Database) برای ایجاد بانک اطلاعاتی توسط طراح از شما درخواست شده و یا خود آن را مطرح می نمایید.
درخواست اطلاعات چیست؟
قبل از طراحی یک پایگاه داده باید نیازهای خود از طراحی را تعریف نمایید. یعنی انتظاری را که از یک بانک اطلاعات دارید مشخص نمایید.
مهمترین اصل در طراحی یک پایگاه داده در خواست اطلاعاتی است که باید وارد برنامه کاربردی بانک اطلاعات شود.
به چه منظوری اطلاعات درخواست می شود؟
اطلاعات شما سبب می شود که طراح، داده های اولیه شما را بررسی نموده و پس از بازنگری ابتدایی آن، سطبق نیاز جداول بانک اطلاعاتی را تعریف نماید.
به چه اطلاعاتی نیاز دارید؟
در خصوص نوع اطلاعاتی باید به پرسش هایی دررابطه با نوع جستجو، شیوه قرارگیری اطلاعات و روش مصاحبه داده ها پاسخ دهید.
تعریف احتیاجات :
برای این که اطلاعات شما بتواند سودمند باشد باید یک طرح ساده (شرح کلی) از احتیاجات خود را بنویسید. اگر طراح بانک اطلاعات شخصی دیگری می باشد، باید احتیاجات شما طوری مشخص شود که به راحتی قابل درک بوده و بتوان آنها را کنترل نمود به عنوان مثال یک مجتمع آموزش دوره های کارمپیوتری متفاوتی را برای سنین مختلف ارائه می نماید.
برای ارائه این دوره ها از 4 مرکز دیگر استفاده می نماید. حال در تصویر زیر شیوه های آموزشی را که مجتمع برای مراکز مختلف تعریف نموده مشاهده می نمایید. (تعریف احتیاجات).
ساخت دکورهای غیر تکراری: هر جدول باید دارای یک کلید اصلی باشد. این کلید شامل یک فیلد و یا ترکیبی از فیلدها می باشد. زمانی که کلید اصلی را در جدول تعریف می نماییم باید به این نکته توجه داشته باشیم که نباید دکوردهای تکراری را وارد جدول نماییم.
کلید اصلی به دو روش توسط کاربر و یا از طریق نرم افزار بانک اطلاعاتی تعریف می شود. در صورتی که کلید اصلی توسط نرم افزار بانک اطلاعاتی تعریف گردد. یک فیلد به عنوان شمارنده در اول هر رکورد قرار می گیرد.
مقدمه:
در این پروژه سعی بر این است که علاوه بر آشنایی با میکروکنترلر AVRو محیط نرم افزاری (labview) سخت افزار،به گونه ای طراحی شود که با دریافت سیگنال آنالوگ ورودی (صوت) از میکروفن ، از طریق واحدADC میکرو این سیگنال به دیجیتال تبدیل شود و با توجه به برنامهای که در داخل میکرو تعبیه شده است،این اطلاعات به داخل MMC ریخته شده ومیکرو با دریافت فرمان از کامپیوتر به صورت ارتباط سریال دستور پخش را دریافت میکند و از طریق واحد تایمر/ کانترکه در مد PWM کار میکند,اطلاعات ذخیره شده در MMC را با آشکار سازی موج PWM توسط یک انتگرال گیر،باز سازی و به آنالوگ تبدیل میکند و این سیگنال آنالوگ بوسیله یک سری مدارات مورد نیاز برای پخش از طریق یک هدفن پخش میگردد.
فصل اول :
نگاهی اجمالی به میکروکنترلرها
بخش اول : میکروکنترلرها
سیر تکاملی میکروکنترلرها :
اولین میکروکنترلرها در اواسط دهه 1970 ساخته شدند. این میکروکنترلرها در ابتدا پردازندههای ماشین حساب بودند که دارای حافظه برنامه کوچکی از نوع ROM ، حافظ داده از نوعRAM وتعدادی درگاه ورودی وخروجی بودند.
با توسعه فناوری سیلیکون ، میکرو کنترلرهای 8 بیتی قویتری ساخته شدند . در این میکروکنترلرها علاوه بر بهینه شدن دستورالعمل ها، تایمر /شمارنده روی تراشه، امکانات وقفه و کنترل بهینه شده خطوط ورودی وخروجی نیز به آن اضافه شده است. حافظه موجود بر روی تراشه هنوز هم محدود میباشد و دربسیاری موارد کافی نیست .یکی از پیشرفتهای قابل توجه در آن زمان، قابلیت استفاده از حافظه EPROM قابل پاک شدن با اشعه ماورا بنفش، روی تراشه بود این قابلیت، زمان طراحی و پیاده سازی محصول را بطور محسوسی کاهش داد و نیز برای اولین بار امکان استفاده از میکروکنترلرها را در کاربردهایی که حجم تولید پایینی دارند، فراهم ساخت.
خانواده 8051 در اوایل دهه 1980 توسط شرکت اینتل معرفی گردید . از آن زمان تاکنون 8051 یکی از محبوبترین میکروکنترلرها بوده و بسیاری از شرکتها دیگر نیز به تولید آن اقدام کردهاند . در حال حاضر مدلهای مختلفی از 8051 وجود دارد که در بسیاری از آنها امکاناتی نظیر مبدل آنالوگ به دیجیتال حجم نسبتاً بزرگ از حافظه برنامه و حافظه داده،مدولاتور عرض پالس(PWM) در خروجیها که امکان پاک کردن و برنامه ریزی مجدد آن توسط سیگنالهای الکتریکی وجود دارد،تعبیه شده است.
میکروکنترلرها اکنون به سمت 16 بیتی شدن در حرکت هستند . میکروکنترلر های 16 بیتی، پردازندههایی با کارایی بالا (نظیر پردازش سیگنالهای دیجیتال ) میباشند که در کنترل فرایندهای بلادرنگ و در مواردی که حجم زیادی از عملیات محاسباتی مورد نیاز است، به کار برده میشوند.
بسیاری از میکروکنترلرهای 16 بیتی، امکاناتی نظیر حجم زیاد حافظه برنامه و حافظه داده، مبدل های آنالوگ به دیجیتال چند کانالی، تعداد زیادی درگاهI/O ، چندین درگاه سریال، عملکردهای بسیار سریع ریاضی و منطقی و مجموعه دستورالعملهای بسیار قدرتمند با قابلیت پردازش سیگنال را دارا میباشند .
معماری داخلی میکرو کنترلرها:
ساده ترین معماری میکروکنترلر، متشکل از یک ریز پردازنده، حافظه و درگاه ورودی/خروجی است. ریز پردازنده نیز متشکل از واحد پردازش مرکزی (CPU)و واحد کنترل(CU) است.
CPUدر واقع مغز یک ریز پردازنده است و محلی است که در آنجا تمام عملیات ریاضی و منطقی ،انجام میشود. واحد کنترل ، عملیات داخلی ریزپردازنده را کنترل میکند و سیگنالهای کنترلی را به سایر بخشهای ریز پردازنده ارسال میکند تا دستورالعملهای مورد نظر انجام شوند.
حافظه بخش بسیار مهمی از یک سیستم میکروکامپیوتری است.ما میتوانیم بر اساس بکارگیری حافظه ،آن را به دو گروه دستهبندی میکنیم: حافظه برنامه و حافظه داده . حافظه برنامه ، تمام کد برنامه را ذخیره میکند .این حافظه معمولا از نوع فقط خواندنی (ROM) می باشد. انواع دیگری از حافظهها نظیرEPROM وحافظههای فلش EEPROM برای کاربردهایی که حجم تولید پایینی دارند وهمچنین هنگام پیادهسازی برنامه به کار میروند . حافظه داده از نوع حافظه خواندن/نوشتن(RAM) میباشد. در کاربردهای پیچیده که به حجم بالایی از حافظه RAM نیاز داریم ، امکان اضافه کردن تراشه های حافظه بیرونی به اغلب میکروکنترلر ها وجود دارد.
در گاههای ورودی / خروجی (I/O) به سیگنالهای دیجیتال بیرونی امکان میدهند که با میکروکنترلر ارتباط پیدا کند .درگاههای (I/O) معمولاً به صورت گروههای 8 بیتی دسته بندی میشوند و به هر گروه نیز نام خاصی اطلاق میشود به عنوان مثال ، میکروکنترلر 8051 دارای 4 درگاه ورودی / خروجی 8 بیت میباشد که P3,P2,P1,P0 نامیده میشوند. در تعدادی از میکروکنترلرها ، جهت خطوط درگاه I/O قابل برنامه ریزی میباشد . لذا بیتهای مختلف یک درگاه را می توان به صورت ورودی یا خروجی برنامهریزی نمود. در برخی دیگر از میکروکنترلرها (از جمله میکروکنترلرهای 8051) درگاههای I/O به صورت دو طرفه میباشند . هر خط از درگاه I/O این گونه میکرو کنترلرها را می توان به صورت ورودی و یا خروجی مورد استفاده قرار داد . معمولاً ، این گونه خطوط خروجی ، به همراه مقاومتهای بالا کش بیرونی به کار برده میشوند.
خانواده AVR :
میکروکنترولر AVR به منظور اجرای دستورالعملهای قدرتمند در یک سیکل کلاک (ساعت) به اندازه کافی سریع است و میتواند برای شما آزادی عملی را که احتیاج دارید به منظور بهینه سازی توان مصرفی فراهم کند . میکروکنترلر AVR بر مبنای معماری(RISC کاهش مجموعهی دستورالعملهای کامپیوتر ) پایه گذاری شده و مجموعه ای از دستورالعملها را که با 32 ثبات کار میکنند ترکیب میکند . به کارگرفتن حافظه از نوع Flash که AVR ها به طور یکسان از آن بهره میبرند از جمله مزایای آنها است.یک میکرو AVR میتواند با استفاده از یک منبع تغذیه 2.7 تا 5.5 ولتی از طریق شش پین ساده در عرض چند ثانیه برنامه ریزی شود یا Program شود.
میکروهای AVR در هرجا که باشند با 1.8 ولت تا 5.5 ولت تغذیه میشوند البته انواع توان پایین نیز وجود دارند که بهLow Power معروفند. ویژگیهایی که سبب شد، AVRها جای 8051 را بگیرند،عبارتست از:
راههای مختلف عمل برنامه ریزی :
AVR همچنین مجهز به امکانات دیگر مانند تایمر واچ داگ و مبدلهای ADC و PWM است.
یکی از مهمترین بخشهای AVR که کمتر در هر میکروکنترلرهای دیگر دیده میشود مقایسه کننده آنالوگ با گین 1 و 200 و ... می باشد. لازم به ذکر است که در 8051 باید از فلش(EEPROM) وADC و کریستال مولد ساعت به صورت بیرونی استفاده میکردیم اما در AVR این امکانات به صورت درونی وجود دارد .
انواع میکروهایAVR :
طراحی مینیمم سیستم با میکرو کنترلر 80196
در سال 1981 شرکت اینتل میکروکنترلر 8 بیتی خود را با نام 80196 معرفی کرد که دارای 128 بایت RAM، 4 کیلو بایت ROM، دو تایمر، یک درگاه سریال و 4 درگاه که تماماً بر روی یک تراشه بود. 80196 یک ریزپردازنده 8 بیتی است به این معنی که CPU آن در هر بار می تواند فقط بر روی 8 بیت داده کار کند و داده های بزرگتر باید به قسمتهای 8 بیتی شکسته شود.
پس از اینکه اینتل اجازة ساخت و فروش 80196 را با شرط حفظ سازگاری کد با 80196 به سازنده گان دیگر داد، 80196 از محبوبیت زیادی برخوردار شد.
این نکتة بسیار مهمی است که با وجود ویژگیهای مختلف در سرعت و مقدار ROM به کار رفته در انواع 80196، سازگاری کامل با 80196 اصلی و دستورالعملهای مربوطه هنوز هم وجود دارد. یعنی اگر برنامه ای برای یکی از 80196ها نوشته شود می توان آن را بر روی 80196های دیگر اجرا کرد. صرفنظر از سازندة میکروکنترلر 80196.
ویژگیهای 80196
ROM 1 Serial Port 4kbytes
RAM 6 Interrupt Sources 28bytes
Timer 2
I/O Pins 32
میکرو کنترلر80196 عضو اصلی خانوادة 80196 است که شرکت ایتل از آن به عنوان MCS-51 یاد می کند.
اعضای دیگر خانوادة 80196، 8052، 8031، 8751 و... می باشد.
80196
درون 80196
در یکCPU از ثباتها ، Register به عنوان مکانی برای ذخیره سازی موقت اطلاعات مورد استفاده قرار می گیرد. اکثر ثباتهای 80196 ، 8 بیتی هستند.
در ثباتهای 80196 فقط داده 8 بیتی می تواند قرار داد. در دیاگرام زیر یک ثبات با 8 بیت خود به ترتیب از با ارزشترین D7 تا کم ارزشترین D0 نشان داده شده است.
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
تعدادی از ثباتها که بیشترین کاربرد را دارند عبارتند از:
A (انباشتگر) B ، R0، R1، R2، R3، R4، R5، R6، R7، DPTR (شانگر داده) و PC (Program counter شمارندة برنامه) که همگی 8 بیتی اند به جزء DPTR و PC .
ثبات PC یا شمارندة برنامه به آدرس دستورالعمل بعدی که اجرا خواهد شد اشاره می کند. زمانی که CPU که عملی را از برنامة موجود در ROM واکشی می کند شمارندة برنامه افزایش یافته و به دستورالعمل بعدی اشاره می کند. این ثبات 16 بیتی است.
به هنگام روشن شدن میکروکنترلر 80196 همگی از آدرس0000 شروع به کار می کنند. به عبارت دیگر هنگام روشن شدن PC مقدار 0000 را در خود خواهد داشت.
پایه های 80196
در شکل زیر 32 پایه از مجموع 40 پایه در 80196 به چهار درگاه P0، P1، P2، P3 اختصاص دارند. (شکل صفحة )
دو پایه PSEN و ALE به طور عمده توسط سیستمهای مبتنی بر 8031 به کار گرفته می شوند.
چکیده
این مقاله الگوریتمی جدید برای مسئله برنامه ریزی مسیرکلی به یک هدف ، برای ربات متحرک را با استفاده از الگوریتم ژنتیک ارائه می دهد .الگوریتم ژنتیک برای یافتن مسیر بهینه برای ربات متحرک جهت حرکت در محیط استاتیک که توسط نقشه ای با گره ها و لینک ها بیان شده است ،بکار گرفته شده است.موقعیت هدف و موانع برای یافتن یک مسیر بهینه در محیط دو بعدی داده شده است .هر نقطه اتصال در شبکه ژنی است که با استفاده از کد باینری ارائه شده است.تعداد ژن ها در یک کروموزوم تابعی از تعداد موانع در نقشه (نمودار)می باشد.
بنابراین از یک کروموزوم با طول ثابت استفاده کردیم.مسیر ربات ایجاد شده ، در مفهوم کوتاهترین مسیر ،بهینه است .ربات دارای محل آغاز و محل هدف تحت فرضیه ای است که ربات از هر محل فقط یکبار می گذرد یا اصلا نمی گذرد.نتایج بدست آمده در شبیه سازی ؛قدرت الگوریتم پیشنهادی را تایید می نماید.
مقدمه
مسئله طراحی مسیر ربات متحرک را می توان بصورت ذیل بیان کرد:
داده های مسئله (محل شروع،محل هدف، نقشه ای دو بعدی مسیرهاکه شامل موانع ساکن می باشد).هدف بدست آوردن یک مسیر بدون تصادم بین دو نقطه خاص در ایفای معیار بهینه سازی با در نظر گرفتن محدودیت ها (به احتمال زیاد:کوتاهترین مسیر)می باشد. مسئله طراحی مسیر از نظر محاسباتی بسیار پر هزینه است.
با اینکه حجم زیادی از تحقیقات برای حل بیشتر این مسائل انجام شده است،با این وجود،روش های معمول ،غیر قابل انعطاف می باشند.
1.اهداف مختلف بهینه سازی و تغییرات اهداف
2. عدم قطعیت ها در محیط ها
3. محدودیت های متفاوت برای منابع محاسباتی
مرور و بازنگری روش های موجود برای حل مسئله طراحی مسیر ،در [1] ارائه شده است . روش های زیادی برای ایجاد یک مسیر بهینه از قبیل برنامه ریزی دینامیک و روش های تبدیل مسافت گزارش شده است .
در روش برنامه ریزی دینامیک اگر نقطه ی شروعSP و نقطه ی هدف GP باشد ، نقطه ی زیر هدف IP است.و روش تولید مسیر ،نحوه تعیین توالی زیر اهداف است که زیر اهداف خود از مجموعه IP (I=1,2,3,…) انتخاب می شوند.ما باید تمام مسیرهای ممکن را بررسی کرده و مسیر با کمترین مقدار هزینه را به عنوان مسیر بهینه انتخاب نمائیم.توان محاسباتی بسیار فراوانی بویژه در محیط های دارای زیر اهداف فراوان مورد نیاز است . در روش تبدیل مسافت ،کارطراحی مسیر ،محیطی را با شبکه یکنواخت می پوشاند و فواصل را از طریق فضای خالی ،از سلول هدف،منتشر می کند.قسمت پیشین موج مسافت ،حول موانع و در نهایت از طریق تمامی فضاهای آزاد در محیط جریان می یابد.برای هر نقطه شروع در محیط نمایانگر محل اولیه ربات متحرک ،کوتاهترین مسیر به مقصد،از طریق رفتن به قسمت پائین و از طریق شیب دارترین مسیر نزولی رسم شده است.با این وجود به هنگام وجود دو سلول یا بیشتر جهت گزینش با همان حداقل تبدیل فاصله ابهام مسیرهای بهینه وجود دارد. دو روش مذکور ملزم توان محاسباتی بسیار بالا در محیطی است که دارای تعداد زیاد اهداف فرعی (زیر اهداف)و موانع است.
محققان روش های فراوان را برای حل مسائل طراحی مسیر ربات های متحرک با وجود موانع ایستا و متحرک بر مبنای soft computing ،بیان کرده اند. soft computing متشکل از منطق فازی،شبکه های عصبی و محاسبات تکاملی است (الگوریتم های ژنتیک و تکاملی GA & EA).تاکنون تلاش های زیادی در استفاده از منطق فازی برای طراحی و برنامه ریزی حرکت ربات متحرک وجود داشته است .اخیرا استفاده از محاسبات تکاملی رواج فراوانی پیدا کرده و در واقع روشی است که به منظور بکارگیری در موقعیت هایی که دانش اولیه راجع حل مسئله وجود نداشته و یا اطلاعات محدود می باشد،قابلیت استفاده به گونه ای موثرتر،عمومی تر و راحت تر را داراست.
الگوریتم های ژنتیکی و تکامکلی نیازمند اطلاعات اشتقاقی یا برآوردهای فرمال اولیه از راه حل نیستند و از آنجائیکه طبیعتا تصادفی می باشند دارای قابلیت جستجوی کل فضای جواب با احتمال بیشتر پیدا کردن بهینه عمومی می باشند.
می توان تحقیق قبلی راجع طراحی مسیر را به صورت یکی از دو روش مقابل طبقه بندی کرد: مبتنی بر مدل و مبتنی بر سنسور .
در حالت مبتنی بر مدل ،مدل های منطقی از موانع شناخته شده ،برای تولید تصادم بدون مسیر بکار گرفته می شوند.در حالیکه در روش مبتنی بر سنسور ، کشف و اجتناب از موانع ناشناخته است.در این مقاله الگوریتمی جدید جهت بدست آوردن مسیر بهینه بر مبنای مدل پیشنهاد شده است.
ادامه مطالب مقاله بصورت ذیل مرتب شده اند :
در بخش 2 ،مقدمه ای مختصر راجع الگوریتم ژنتیک ارائه شده است .در بخش 3 ،فرمول سازی مسئله مورد بررسی واقع شده،در بخش 4 الگوریتم پیشنهادی ، معرفی و در بخش 5 نتایج شبیه سازی نشان داده شده است.
1.مسیریابی
مسئله مسیریابی ربات در چند حالت قابل بررسی است :
در یک مفهوم می توان مسیریابی روبات را در قالب تعقیب خط (عموما مسیری از پیش تعیین شده با رنگ متفاوت از زمینه ) معرفی نمود.روبات هایی با این کاربرد تحت عنوان مسیریاب شناخته می شوند . یکی از کاربرد های عمده این ربات ، حمل و نقل وسایل و کالاهای مختلف در کارخانجات ، بیمارستان ها ، فروشگاه ها ، کتابخانه ها و ... میباشد .
ربات تعقیب خط تا حدی قادر به انجام وظیفه کتاب داری کتابخانه ها می باشد . به این صورت که بعد از دادن کد کتاب ، ربات با دنبال کردن مسیری که کد آن را تعیین میکند ، به محلی که کتاب در آن قرار گرفته می رود و کتاب را برداشته و به نزد ما می آورد .مثال دیگر این نوع ربات در بیمارستان های پیشرفته است ، کف بیمارستان های پیشرفته خط کشی هایی به رنگ های مختلف به منظور هدایت ربات های مسیریاب به محل های مختلف وجود دارد . (مثلا رنگ قرمز به اتاق جراحی یا آبی به اتاق زایمان.) بیمارانی که توانایی حرکت کردن و جا به جا شدن را ندارند و باید از ویلچر استفاده کنند ، این ویلچر نقش ربات تعقیب خط را دارد ، و بیمار را از روی مسیر مشخص به محل مطلوب می برد .
با توجه به وجود موانع (استاتیک و دینامیک) در محیط ،مسیریابی روبات در مفهومی کاربردی تر ،پیمودن مسیر مبدا تا مقصد بدون برخورد با موانع می باشد.مسلما با وجود تعداد زیاد موانع ،تعداد مسیرهای قابل عبور روبات بسیار زیاد خواهد بود و یقینا انتخاب کوتاه ترین مسیر توسط روبات برای حرکت از مبدا به مقصد ،دارای ارزش اجرایی بالایی خواهد بود.در این مقاله چنین مسئله ای مورد بررسی واقع شده است.نقاط مبدا و مقصد و نیز محل موانع به عنوان ورودی داده شده است ،نیز می دانیم موانع ایستا می باشند (در حالت وجود موانع پویا در عین نزدیکی بیشتر به شرایط واقعی ،روش های مورد استفاده بسیار پیچیده خواهند بود)و مسئله در حالت دو بعدی بررسی می شود (روبات بر روی صفحه حرکت می نماید). برای این منظور الگوریتم های مسیریابی با هدف انتخاب کوتاهترین مسیر قابل استفاده می باشند ،الگوریتم هایی که به منظور مسیریابی در شبکه ها قابلیت استفاده دارند.با این وجود در این بررسی از الگوریتم ژنتیک استفاده شده است . همچنین الگوریتم های ژنتیک و نیز دیگر روش های مشابه به منظور بهینه سازی مصرف انرژی روبات ،مسیر تغییر زاویه ازوی روبات ،زمان حرکت روبات و... قابل استفاده می باشند .
طراحی لایه واسط کاربر
موفقیت ما در طول ساختن برنامه های کاربردی بستگی به توانایی ما در پیش بینی اجرای برنامه ها دارد . برخی از جنبه های اجرای برنامه تقریبا برای پیش بینی آسان می باشد . مثلا به راحتی می توانیم ظرفیت برنامه را در ترم های بخش های داده ای یا عناصر تصویر تخمین بزنیم . دیگر جنبه های اجرا مثل اندازه ی برنامه و سرعت پاسخ گویی یا قابلیت اطمینان برنامه برای تعیین کردن سخت است . اغلب موضوعات عمده ای هستند که به طور بهینه در طول برنامه تخمین زده شده اند تاثیر بهینه سازی در این تخمین ها در برنامه هنگام کامل شدن در مواجه با نیازهای اساسی با شکست روبرو می شود . واسط کاربر تنها جزء قابل تعامل برنامه است که در اجرا قابل پیش بینی نمی باشد . مثلا آن جزء از برنامه که تصمیم می گیرد چگونه کاربر و کامپیوتر با هم ارتباط داشته باشند ( و این قابل تاسف است که باید این گونه باشد ) برای طراحی واسط کاربر تاثیر زیادی بر مقبولیت برنامه دارد . ناتوانی ما در پیش بینی اجزای واسط کاربر باعث می شود که کاربر در راه ها ی غیر منتظره واکنش نشان دهند در جاییکه آنان برای اولین بار از برنامه استفاده می کنند بیشترین شگفتی زمانی اتفاق می افتد که برنامه نویس با اولین کاربر و کاربر مبتدی همراه شود تا اجرای برنامه را توضیح دهد :
بدین صورت
برنامه نویس : حالا که شما این مدار را کشیده اید ممکن است بخوا هید چند راه آن را تغییر دهید .
کاربر : بله پس باید یک عنصر را حذف کنیم . چه طور باید این کار را انجام دهیم ؟
برنامه نویس : روی آیتمی که برچسب CD دارد کلیک کنید .
کاربر : CD ؟
برنامه نویس : این برای حذف کردن یک عنصر است .
کاربر : بله . خوب اجرا می کنیم راستی چه اتفاقی می افتد ؟
برنامه نویس : شما در مود تحلیل هستید باید AM را به جای CD انتخاب کنید .
کاربر : چه جالب من در حال اشاره کردن به CD هستم . چگونه می توانیم از مود تجزیه بیرون بیاییم ؟
برنامه نویس : کافی است control-Q را تایپ کنید .
کاربر : ( Type C-O-N-T-R )
برنامه نویس : نه ، کلید کنترل ( Kontrol-Key ) را فشار بده و بعد دکمه ی Q را بزن .
کاربر : متاسفم اشتباه کردم بله من باید دوباره شروع کنم .
برنامه نویس : حالا به عنصر برای پاک کردن اینها ؟
کاربر : بله هیچ اتفاقی رخ نداد . آیا من اشتباهی انجام داده ام ؟
برنامه نویس : نه تو هیچ اشتباهی مرتکب نشدی : تو عناصر را پاک کردی اما هنوز برنامه این را از صفحه ی نمایش Remove نکرده است .
کاربر : پس کی Remove خواهد شد ؟
برنامه نویس : هنگامی که تو Control-j را برای دوباره کشیدن تصویر تایپ کنی .
کاربر : من این کار را انجام خواهم داد ما این هستیم ولی تنها یک قسمت Component ها ، Remove شده است .
برنامه نویس : ببخشید من فراموش کردم . شما باید نصفی از این عناصر را به طور جداگانه پاک کنید . و تنها دوباره به CD اشاره کنید .