نویسنده موضوع: آموزش جامع ساخت ربات  (دفعات بازدید: 9274 بار)

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
آموزش جامع ساخت ربات
« : دسامبر 07, 2009, 01:29:13 am »

آشنايي با ربات های شهری

بخش الكترونيك
يادآوري ( مفاهيم اوليه، عناصر الكتريكي و الكترونيكي و ابزار كار)

ديود
ترانزيستور
تقويت کننده عملياتي

( سيگنال متناوب و مستقيم، رگولاتور، رله معمولی و دو طرفه و ...)

انواع موتور و درايورهاي آنها

معرفی حسگرها و انواع آنها

معرفی مدار كنترل ربات مسيرياب

مبنای دو و مفاهيم آن

گيتهای منطقی

مدارهای ترکيبی

معرفی برنامه نويسی کامپيوتر و زبان Basic

خلاصه اي از آموزش زبان QBASIC و برنامه نويسي با پورت ها

ميکروکنترلر

Programmable Interface Controller
PIC

آشنايي با نرم افزارPICBasic

مدار يک ربات ساده
مدار الکترونيک ربات

اصول طراحي مکانيک ربات

روش هاي ساخت
اجزاء مکانيکي ربات

اجزاي مکانيکي و مکانيزمهاي ربات

ربات ميكرو موس
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #1 : دسامبر 07, 2009, 01:34:54 am »

آشنايي با ربات های شهری
فهرست موضوعات
دسته بندی کلی ربات ها
معرفی ربات های شهری و انواع آن
معرفی مسابقات ربات های شهری


ربات چيست؟
ماشين خودکار يا نيمه خودکار ی است که برای انجام کار معينی برنامه ريزی می شود .


انواع ربات ها :
ربات های صنعتی
ربات های خدمات رسان



دسته بندی کلی ربات ها
انواع ربات های خدمات رسان :
خدمات به انسان ها (حفاظت، سرگرمی و...)
خدمات ابزارها (نگهداری ، تعمیر، نظافت و ...)
ساير خدمات (حمل و نقل ، جمع آوری اطلاعات ..)


کاربرد در محيط هاي :
خانگي معابر اماکن عمومي ادارات


کاربردهاي ربات هاي شهري ربات هاي نظافت چي






ربات هاي پزشکي






ربات هاي خدماتي



ربات هاي سرگرمي



ربات هاي انسان نما






ربات هاي امداد و نجات





ربات هاي آتش نشان



ربات هاي هدايت خودکار
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #2 : دسامبر 07, 2009, 01:49:26 am »

بخش الكترونيك
يادآوري ( مفاهيم اوليه، عناصر الكتريكي و الكترونيكي و ابزار كار)
سرفصل عناوين مورد بحث

الف) مفاهيم
پتانسيل الكتريكي
جريان
سيگنال متناوب و مستقيم
اتصال سري و موازي
پالس
قطار پالس

ب) عناصر الكتريكي و الكترونيكي
باطري
مقاومت
خازن

ج) ابزار ساخت مدار


پتانسيل الكتريكي (V)
انرژي بارهاي الكتريكي موجود در يك جسم، پتانسيل الكتريكي نام دارد كه مي‌‌تواند بارها را بصورت جريان از عناصر رسانا عبور دهد.


زمين
زمين واقعي سطح پتانسيل صفر مي‌باشد. در مدارات الكتريكي جهت مقايسه سطح ولتاژ نقاط مختلف، يك نقطه را بعنوان مرجع پتانسيل صفر فرض مي‌كنند و ولتاژ بقيه نقاط را نسبت به آن محاسبه مي‌نمايند.


پيش فرض

اگر سطح پتانسيل يك نقطه بيشتر از سطح پتانسيل مرجع باشد علامت آن مثبت و اگر كمتر باشد علامت آن منفي مي‌شود.


جريان الكتريكي (I):
به حركت بارهاي الكتريكي در يك رسانا جريان الكتريكي گفته مي‌شود.
در صورتيكه دو سر يك عنصر، اختلاف پتانسيل (اختلاف ولتاژ) وجود داشته باشد، بارهاي الكتريكي جهت ايجاد تعادل از سمت پتانسيل بيشتر به پتانسيل كمتر حركت مي‌كنند كه همان جريان الكتريكي است.
در عمل جهت حركت الكترونها از قطب منفي به مثبت است اما بصورت قراردادي جهت جريان را از قطب مثبت به منفي در نظر مي‌گيريم.


سيگنال
سيگنالهاي الكتريكي ولتاژ يا جرياني هستند كه در مدار ايجاد مي‌شوند. سيگنالها (معمولاً ولتاژ) انتقال دهنده اطلاعات هستند .


اتصال عناصر
اجزا يك مدار بسته به هدف طراحي بصورت سري، موازي يا تركيبي بسته مي‌شوند.
اتصال موازي:
در اتصال موازي ولتاژ دو سر اجزا با يكديگر برابر است.


اتصال سري

در اتصال سري جريان عبوري از اجزا با هم برابر است.



پالس و قطار پالس
پالس به شكل موجي گفته مي‌شود كه در يك زمان بسيار كوتاه از سطح صفر به يك سطح ولتاژ مشخص مي‌رسد و براي مدتي در اين سطح ولتاژي باقي مي‌ماند و سپس به سطح صفر برمي‌گردد.


قطار پالس

از تكرار پالسهاي مشابه يك قطار پالس ساخته مي‌شود.



باطري:
وسيله ايست كه انرژي شيميايي را به انرژي الكتريكي تبديل مي‌كند و در مدارهاي كم مصرف بعنوان منبع انرژي مورد استفاده قرار مي‌گيرد.


باطري ها به دو دسته قابل شارژ و يكبار مصرف تقسيم مي‌شوند.


مقاومت:
جسم هادي دو سري است كه در برابر عبور جريان مقاومت مي‌كند و ولتاژ دو سر آن متناسب با جريان عبوري از آن مي‌باشد.


هرچه مقدار مقاومت بيشتر باشد جريان كمتري از آن عبور مي‌كند.


در الكترونيك مقاومت را با حرف R (ابتداي كلمه Resistor) نمايش مي‌دهند.

مقدار ولتاژ دو سر يك مقاومت تنها به مقدار جريان عبوري بستگي دارد. قانون اهم بيانگر اين وابستگي مي‌باشد:

V/R=I

واحد اندازه گيري مقاومت اهم Ω مي‌باشد.


قرائت مقدار مقاومت


رنگ شماره سياه 0 قهوه اي 1 قرمز 2 نارنجي 3 زرد 4 سبز 5 آبي 6 بنفش 7 خاكستري 8 سفيد 9


خطاي مقدار مقاومت

معمولاً مقدار نامي مقاومتها با مقدار واقعي آن كمي اختلاف دارد.

مقدار اين خطا را با يك نوار رنگي كه از نوارهاي مربوط به قرائت مقدار مقاومت فاصله دارد، نشان مي‌دهند.

نقره اي---> ±10%

طلايي----> ±5%

قرمز----> ±2%

قهوه اي----> ±1%


مقاومت متغيير (پتانسيومتر)
نوعي مقاومت الكتريكي است كه مقدار آن قابل تنظيم است.
پركاربردترين نوع آن در الكترونيك به Multi turn معروف است.



خازن:
از دو صفحه فلزي كه با يك عايق كه دي‌الكتريك ناميده مي‌شود از يكديگر جدا شده‌اند تشكيل شده است.
در الكترونيك خازن را با حرف C ( ابتداي كلمه Capacitor) نشان مي‌دهند.


ظرفيت خازن معياري براي اندازه گيري توانائي نگهداري انرژي الكتريكي است .

ظرفيت زياد بدين معني است كه خازن قادر به نگهداري انرژي الكتريكي بيشتري است .

واحد اندازه گيري ظرفيت فاراد است . يك فاراد واحد بزرگي است و مشخص كننده ظرفيت بالايي مي باشد . بنابراين استفاده از واحدهاي كوچكتر نيز در خازنها مرسوم است .

ميكروفاراد µF ، نانوفاراد nF و پيكوفاراد pF واحدهاي كوچكتر فاراد هستند .


قرائت مقدار ظرفيت خازن
در بسياري از خازن ها با ظرفيت كم ، ظرفيت بر روي خازن نوشته شده ولي هيچ واحد يا مضربي براي آن چاپ نشده و براي دانستن واحد بايد به دانش خودتان رجوع كنيد . خازن ذخيره كننده انرژي الكتريكي است. بعبارت ديگر بوسيله بار الكتريكي شارژ مي‌شود.
در الكترونيك از خازن براي اتصال بخشهاي مختلف يك مدار، تغيير شكل موج ولتاژ و... استفاده مي‌شود.
كاربرد ديگر خازن ها صاف كردن سطح تغييرات ولتاژ مستقيم مي باشد . از خازن ها در مدارات بعنوان ***** هم استفاده مي شود . زيرا خازن ها به راحتي سيگنالهاي غير مستقيم AC را عبور مي دهند ولي مانع عبور سيگنالهاي مستقيم DC مي شوند .


نكاتي در مورد خازنها
در صورت شارژ خازن با ولتاژ بالا حتي در صورت قطع بودن مدار خطر برق گرفتگي در صورت تخليه بارالكتريكي ذخيره شده وجود دارد. جهت كاهش اين خطر معمولاً خازنهايي را كه با ولتاژ بالا شارژ كرده‌اند با يك مقاومت سري مي‌كنند تا جريان تخليه محدود شود.
جريان مستقيم نمي‌تواند از خازن عبور نمايد.
بعضي از خازنها اصطلاحاً پلاريزه هستند يعني قطب مثبت و منفي دارند. لذا بايد توجه كرد كه هنگام استفاده از اين خازنها بطور صحيح در مدار قرار داده شوند.


ابزار ساخت و اندازه‌گيري و قطعات الکترونيک
منبع تغذيه
سيگنال ژنراتور
برد بورد
مولتي متر
اسيلوسكوپ
و...

قطعات الکترونيک
مقاومت
مقاومت متغير
خازن
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #3 : دسامبر 07, 2009, 01:50:59 am »

ديود
يك عنصر نيمه هادي دو سر است كه جريان الكتريكي را يكسو مي‌كند.


ديودها داراي قطب مثبت (آنود) و منفي (كاتود) هستند و جريان را فقط هنگاميكه از سمت مثبت وارد مي‌شود (باياس مستقيم) از خود عبور مي‌دهند.
قطب كاتود معمولاً روي بدنه ديود نشانه گذاري شده است.
ديود نوري (LED) و ديود زينر نمونه‌هاي ديگري از انواع ديودها هستند.


انواع ديود


ديود زينر
نوعي ديود است كه بطور معكوس باياس مي‌شود و از آن براي تهيه يك ولتاژ ثابت (كه معمولاً مقدار آن روي ديود نوشته مي‌شود) استفاده مي‌شود.

ديود نوراني (LED)
به ديودي گفته مي‌شود كه هنگام روشن بودن نور متصاعد مي‌كند.
ديودهاي نوراني در رنگهاي مختلف ساخته شده است.

ديود نوري
نوع خاصي از ديود است كه هنگاميكه در معرض نور قرار مي‌گيرد روشن مي‌شود. از اين ديود بعنوان حسگر براي تشخيص نور استفاده مي‌شود


ترانزيستور:
يك عنصر نيمه‌هادي سه پايه است كه در مدارها بعنوان تقويت كننده جريان و كليد قطع و وصل مورد استفاده قرار مي‌گيرد.


دو نوع اصلي ترانزيستورهاي پيوندي NPN و PNP نام دارند.

در حالتي كه ترانزيستور مثل يك كليد عمل مي‌كند، اگر به پايه بيس جرياني وارد شود( ولتاژ بيس مثبت باشد) پايه كلكتور به اميتر اتصال كوتاه مي‌شود و اگر ولتاژ بيس صفر يا منفي باشد كلكتور از اميتر قطع مي‌شود.

در حالت تقويت كنندگي β برابر جريان عبوري از بيس، از كلكتور و اميتر عبور مي‌كند. به βضريب تقويت جريان ترانزيستور گفته مي‌شود كه براي هر ترانزيستور عدد مشخص و ثابتي است.
β معمولاً بين 50 تا 200 مي باشد.
روابط زير در مورد جريان پايه‌هاي يك ترانزيستور برقرار است :
Ic=β.Ib
Ie=Ib+Ic
Ie=(1+β).Ib


رابطه جرياني ترانزيستور



تقويت كننده عملياتي:
يكي از پركاربردترين مدارهاي مجتمع (IC) است كه در مدارها بعنوان تقويت كننده، مقايسه گر و... مورد استفاده قرار مي‌گيرد.
در حالت عادي يك Op-Amp پنج پايه دارد:
دو پايه ورودي مثبت و منفي
دو پايه تغذيه مثبت و منفي
يك پايه خروجي



كاربردهاي آپ امپ
حالت مقايسه كننده


حالت تقويت كننده (فيدبك منفي)

حالت عملياتي
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #4 : دسامبر 07, 2009, 01:54:51 am »

( سيگنال متناوب و مستقيم، رگولاتور، رله معمولی و دو طرفه و ...)
سيگنال متناوب و مستقيم
رگولاتور
رله و انواع آن


سيگنال متناوب (AC)
سيگنالهاي متناوب در يك مسير منتشر مي‌شوند و سپس تغيير مسير مي دهند و اين عمل دائماً تكرار مي شود .


به هر تغيير بين مثبت و منفي ، يك سيكل گفته مي شود و واحد آن هرتز مي باشد .
در ايران وسائل الكتريكي با فركانس 50 هرتز كار مي كنند .
سيگنالهاي متناوب براي راه اندازي وسائلي از قبيل لامپ ها و گرم كننده ها بكار مي روند ولي اكثر مدارهاي الكتريكي براي كار نياز به يك ولتاژ مستقيم دارند


سيگنال مستقيم (DC)
جريان مستقيم هميشه در يك مسير جاري مي شود (هميشه مثبت و يا هميشه منفي است) ولي ممكن است ميزان آن كاهش يا افزايش پيدا كند .
جريان مستقيم هميشه در يك مسير جاري مي شود (هميشه مثبت و يا هميشه منفي است) ولي ممكن است ميزان آن كاهش يا افزايش پيدا كند .


باتري ها و رگولاتورها ولتاژ مستقيم مي دهند و اين ولتاژ براي تغذيه و راه اندازي مدارهاي الكترونيكي مناسب است .


يكسوسازي
براي تهيه سيگنالهاي مستقيم از يكسوسازها استفاده مي‌كنند.
يكسوسازي مي‌تواند نيم موج يا تمام موج باشد.


براي تهيه سيگنالهاي مستقيم از يكسوسازها استفاده مي‌كنند.
يكسوسازي مي‌تواند نيم موج يا تمام موج باشد.


رگولاتور:


يك عنصر سه پايه تثبيت كننده ولتاژ است.
رگولاتورها در ولتاژهاي مختلف قابل تهيه هستند.


انواع رگولاتورها
رگولاتورهاي5v ± :
7805 و 7905
رگولاتورهاي 12v ± :
7812 و 7912



گرماگير
جهت كاهش دماي رگولاتور معمولاً از گرماگير (Heat Sink) استفاده ميشود.


رله و انواع آن
يك آهنرباي الكتريكي است كه بعنوان كليد كنترل شونده با جريان عمل مي‌‌‌كند.



رله دوطرفه
از رله دو طرفه براي كنترل همزمان چرخش به چپ و راست موتور استفاده مي‌‌‌شود.


كاربرد رله
كنترل مدارهاي ولتاژ بالا توسط سيگنالهاي كم ولتاژ
كنترل مدارهاي جريان بالا توسط سيگنالهاي كم جريان
شناسايي و جداسازي خطا و ايراد در خطوط انتقال و توزيع با باز و بسته كردن كليدها (رله حفاظتي)
جداسازي مدار كنترل از مدار اصلي
انجام عمليات منطقي (AND,OR,XOR,NOR,NAND,…)
ايجاد عمليات تأخير زماني
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #5 : دسامبر 07, 2009, 01:56:31 am »

انواع موتور و درايورهاي آنها
موتور AC
موتور DC
موتور پله‌اي (Stepper motor)


موتور :
از موتور براي تبديل انرژي الكتريكي به انرژي مكانيكي استفاده مي‌شود.
انتخاب نوع موتور مورد استفاده به نوع كاربرد و ويژگيهاي هر موتور بستگي دارد.


موتور AC :
معمولاً در مدارهايي با مصرف انرژي زياد و دستگاههاي الكتريكي خانگي مورد استفاده قرار مي‌گيرد.
اين موتورها با جريان متناوب برق كار مي‌كنند لذا به آنها موتور AC گفته مي‌شود.
يخچال، جاروبرقي و آبميوه‌گيري موتور AC‌دارند.
براي كنترل ميزان چرخش موتور از وسيله‌اي بنام شفت انكودر استفاده مي‌شود.


موتور DC:
توان مكانيكي آنها عموماً كمتر از موتورهاي AC است.
ساختار ساده‌اي دارند.
بسياري از اسباب بازيهاي برقي با موتور DC كار مي‌كنند.
بسياري از اسباب بازيهاي برقي با موتور DC كار مي‌كنند
اغلب براي استفاده از موتورDC به مدار راه‌انداز نياز داريم.
آرميچر بارزترين نوع موتور DC است.
ايراد موتور DC عدم امكان كنترل دقيق سرعت و چرخش موتور است.
قيمت پايين، تنوع قدرت و سرعت، از جمله مزاياي استفاده از موتورهاي DC مي‌باشد.


موتور پله‌اي (Stepper motor)
كاربرد اصلي اين موتورها در كنترل موقعيت است.


اين موتورها ساختار كنترلي ساده‌اي دارند. لذا در ساخت ربات كاربرد زيادي دارند. مطابق با تعداد پالسهايي كه به يكي از پايه‌هاي راه‌انداز موتور ارسال مي‌شود موتور به چپ يا راست مي‌چرخد.
توان خروجي اين موتورها كمتر از دو نوع قبلي است. استفاده از موتور پله‌اي مشکلاتي از جمله وزن زياد، قيمت بالا و قدرت بسيار کم را بدنبال دارد.
موتور پله‌اي نسبت به دو موتور قبلي داراي حرکت دقيق و حساب شده تري هستند. اين موتورها به صورت درجه اي دوران مي کنند و با درجه هاي مختلف در بازار موجود هستند.
واژه پله به معني چرخش به اندازه درجه تعريف شده موتور اطلاق مي شود.
۳۶۰ = ۱/۸* ۲۰۰
۳۶۰= ۲۴* ۱۵


چرخش موتور پله اي



موتور پله كامل و نيم پله
در حالت عادي ميزان چرخش موتور به تعداد پالسهاي اعمالي و گام موتور بستگي دارد. هر پالس يك پله موتور را مي‌چرخاند.
با تحريك دو فاز مجاور در موتور مي‌توان موتور را به اندازه نيم پله حركت داد. به اين ترتيب تعداد پله‌اي موتور دو برابر مي‌شود.


راه اندازي موتور پله‌اي
موتور ديسك سخت يك نمونه موتور پله‌اي است.
تراشه L297 يك راه انداز مناسب براي موتور پله‌اي است.



مقايسه موتور DCو موتور پله‌اي
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #6 : دسامبر 07, 2009, 01:59:25 am »

معرفی حسگرها و انواع آنها
انواع حسگرها
حسگر نوري


حسگر
حسگر يك وسيله الكتريكي است كه تغييرات فيزيكي يا شيميايي را اندازه‌‌گيري مي‌كند و آنرا به سيگنال الكتريكي تبديل مي‌نمايد.
حسگرها معمولاً در طبقه اول مدارات كنترلي قرار مي‌گيرند.


انواع حسگرها
فاصله
رنگ
نور
صدا
حركت و لرزش
دما
دود
و...



مزاياي سيگنالهاي الكتريكي
سهولت تقويت كميتهاي الكتريكي
پردازش راحت تر و ارزان تر
انتقال آسان
قابليت ذخيره و نمايش
دقت بالا
سرعت بالا
و...


حسگرهاي مورد استفاده در رباتيك
حسگرهاي تماسي (Contact)
حسگرهاي هم جواري (Proximity)
حسگرهاي دوربرد (Far away)


حسگرهاي تماسي
آشكارسازي تماس دو جسم
اندازه‌گيري نيروها و گشتاورهايي كه حين حركت ربات بين اجزاي مختلف آن ايجاد مي‌شود



حسگرهاي هم‌جواري
آشكارسازي اشيا نزديك به روبات
القايي
اثرهال
خازني
اولتراسونيك
نوري



حسگرهاي دوربرد
فاصله سنج (ليزر و اولتراسونيك)
بينايي (دوربينCCD)



حسگر نوري (گيرنده-فرستنده)
از يك ديود نوراني (فرستنده) و يك ترانزيستور نوري (گيرنده) تشكيل شده است



مدار راه‌انداز حسگر نوري



خروجي حسگر نوري
سطح سفيد= صفر ولت
سطح سياه= پنج ولت
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #7 : دسامبر 07, 2009, 02:01:44 am »

معرفی مدار كنترل ربات مسيرياب
اجزاء مختلف الکترونيک و كنترل ربات
حسگر
مقايسه گر
ميكروكنترلر
رله
موتور


بلوك دياگرام الکترونيک ربات مسيرياب
موتور <---- رله <---- كنترلر <---- مقايسه گر <----- حس گرنوري



مدار حسگر



مدار مقايسه گر



مدار رله و موتور



نقشه شماتيك مدار روبات

موتور <---- رله <---- كنترلر <---- مقايسه گر <----- حس گرنوري
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #8 : دسامبر 07, 2009, 02:03:35 am »

مبنای دو و مفاهيم آن
رابطه نرم افزار و رباتيک
يادآوري سيستم هاي شمارش
لزوم طراحي زبان ماشين
تبديل اعداد به مبناي 2
محاسبات در مبناي 2
کاربرد مبناي 16
کدهاي اسکي


شباهت ربات با انسان
بدن انسان: مکانيک
مغز و سيستم عصبي : الکترونيک
قوه تعقل: نرم افزار
به وجود آمدن يک نياز : طراحي زباني براي درک متقابل ميان انسان و کامپيوتر


تشابه سيستم باينري يا مبناي دو با سطح ولتاژ الکتريکي خاموش و روشن
طراحي زبان ماشين با عناصر 0 و 1 در اين زبان کليه داده ها و دستوراتي که انسان به کامپيوتر مي دهد ، با 0 و 1 شبيه سازي مي شوند و کامپيوتر از طريق مدارهاي منطقي و الکترونيکي قادر به خواندن و انجام دستورات به اين زبان مي باشد.
زبان ماشين به منزله زبان مشترک انسان و کامپيوتر
به شرط:
الف)تبديل اطلاعات انسان به زبان 0 و 1
ب)ذخيره 0 و 1 ها و بازيابي اطلاعات در کامپيوتر ها

شرط اول:
تبديل اطلاعات انسان به زبان ماشين يا 0 و 1
تبديل اعداد به مبناي دو
تبديل حروف به کدهاي عددي
تبديل کدهاي عددي به مبناي دو
طراحي زباني براي دستورات پردازشي با کلمات کليدي کد شده در مبناي دو

شرط دوم:
ذخيره و بازيابي اطلاعات دودويي انسان و پردازش آنها توسط کامپيوتر
طراحي حافظه هاي مغناطيسي براي ذخيره دو سطح ولتاژ 0 و 1
طراحي مدارات الکترونيکي براي سيستمهاي پردازش و انتقال اطلاعات با دو سطح ولتاژ 0 و 1


تبديل مبنا ها و محاسبات
تبديل از دهدهي به دودويي
تبديل از دودويي به دهدهي
تبديل دودويي و شانزده شانزدهي
جمع اعداد در مبناي دو
متمم 1 و متمم 2 اعداد مبناي 2
شبيه سازي تفريق با جمع در مبناي 2
تبديل از دهدهي به دودويي
تقسيم متوالي بر 2
در هر بار تقسيم باقي مانده را دوباره بر 2 تقسيم مي کنيم تا زماني که خارج قسمت صفر گردد سپس باقيمانده ها بصورت معکوس دنبال هم مي آيند.

باقيمانده خارج قسمت 1 12 2 / 25 0 6 2 / 12 0 3 2 / 6 1 1 2 / 3 1 0 2 / 1


تبديل از دودويي به دهدهي
وزن رقم ها در يک مبنا
در مبناي 10:
يکان : 100
دهگان: 101
صدگان: 102
هزارگان:103
...
مثال:

103*4 + 102*3 + 101*0 + 100*9 = 4309


در مبناي 2:
مشابه روش قبل از سمت راست رقمها عبارتند از
توان دوم عدد 2 از 0 به بالا
براي مثال:

1101012 = 1* 2 0 + 0 * 2 1 + 1 * 2 2 + 0 * 2 3 + 1 * 2 4 + 1 * 2 5

1101012 = 1+0+4+16+32

1101012 = 5310


سيستم شانزده شانزدهي
طبق تعريف اين سيستم ارقام 0 تا 15 را مي بايستي داشته باشد که براي راحتي ارقام 10 تا 15 را با حروف A تا F انگليسي نمايش مي دهند:
9 8 7 6 5 4 3 2 1
A B C D E F
براي مثال:
2D16
3DA816
2416

با رعايت وزن ارقام در اينجا نيز داريم:

9F516 = 5 * 16 0 + 15 * 16 1 + 9 * 16 2

9F516 = 5 + 240 + 2304

9F516 = 254910


استفاده از مبناي دو به جاي مبناي شانزده براي راحتي نوشتار
جايگزيني هر چهار رقم مبناي دو با يک رقم مبناي شانزده

00002 = 016 = 0

00012 = 116 = 1

00102 =216 = 2

...

11012 =D16 =13

11102 =E16 =14


تبديل دودويي و شانزده شانزدهي
الف)تبديل هر چهار رقم مبناي دو به يک رقم مبناي شانزده و برعکس
1100 ---> C
1001 ---> 9
1110 ---> E
0001 ---> 1
11001001111000012 = C9E116


جمع اعداد در مبناي دو
نکته مهم : رقم نقلي
1111 1101 1001 10110 --------- 101100



نمايش حروف و کاراکترها در مبناي 2
نمايش استاندارد سيستم اسکي
ASCII
اين سيستم در سال 1960 طراحي شد و امروز تمامي چاپگرها و نمايشگر ها از آن براي تبادل اطلاعات از طريق کامپيوتر و صفحه کليد استفاده مي کنند.
به هر رقم مبناي 10، حروف کوچک و بزرگ، علائم و کاراکترها و...يک کد دودويي اختصاص مي دهند که معمولا در مبناي شانزده نوشته مي شود:
7 ---> 37
e ---> 65
E---> 45
# ---> 23
{ ---> 7B


جمع بندي مطالب اين جلسه:
زبان ماشين به عنوان زبان مشترک ميان انسان و کامپيوتر طراحي شده و سيستمهاي الکترونيکي کامپيوتر ها ، با استفاده از قابليت تبديل داده ها و دستورات به 0 و 1 آنها را ذخيره و پردازش مي نمايند.
از اين جهت نيازمند آشنايي با سيستم دودويي اعداد هستيم.
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #9 : دسامبر 07, 2009, 02:05:01 am »

گيتهای منطقی
لزوم استفاده از جبر بول
اصول و قضاياي جبر بول
معرفي توابع سوئيچينگ
جدول درستي توابع


پياده سازي سيستم مبتني بر 0 و 1 براي کامپيوترهاي ديجيتال
استفاده از جبر بول و منطق درست يا نادرست
تعريف جبر بول
سيستمي متشکل از مجموعه اي مانند K با دو يا چند عضو و دو عملگر AND (.) و OR (+) به طوريکه اگر a و b عضو K باشندb 0a و a+b نيز عضو مجموعه K باشند.


اصول جبر بول:
الف) عناصر منحصر به فرد 0 و 1 عضو مجموعه K هستند:
a+0=a
a.1=a
عناصر هماني

ب)خاصيت جابجايي:
براي هر عضو a و b در K :
a+b=b+a
a.b=b.a

ج)خاصيت شرکت پذيري:
براي هر a,b,c در K:
a+(b+c)=(a+b)+c
a.(b.c)=(a.b).c

د)توزيع پذيري:
براي هرa,b,c در K:
(a+(b.c)=(a+b).(a+c
(a.(b+c)=(a.b)+(a.c

ه) وجود متمم:
براي هر a در K يک عضو منحصر به فرد ¯a در K وجود دارد به طوريکه:
براي راحتي در نگارش
معمولاً از نوشتن . در عبارتها صرف نظر مي کنند:
a.b=ab


قضاياي جبر بول:
A ) هم ارزي:
a+a=a
a.a=a

B) عضو بي اثر براي . و +
براي عمل +:
a+0=a
براي عمل . :
a.1=a

C)قضيه بازگشت:



D) قضيه جذب:
a + ab = a
a(a+b) = a

E)قضيه شبه جذب:


G) دمورگان :


استفاده از قضايا براي ساده کردن عبارتهاي جبر بول



توابع سوئيچينگ
تابعي از چند متغيير بولي و عملگرهاي . و + مانند:
f(a ,b ,c)= ab + ac + bc
اگر n متغير داشته باشيم
هر متغير دو حالت: 0 و 1
بنابراين: 2 به توان n حالت مختلف از ترکيب ورودي ها داريم
مثال:
a 0 1

b a 0 0 1 0 0 1 1 1



جدول درستي
براي هر تابع سوئيچينگ يا مدار منطقي مي توان يک جدول درستي يا جدول مشخصات تعريف کرد که اين جدول بيان کننده وضعيت مدارخواهد بود.

در جدول درستي تمامي حالتهاي مختلف ورودي هاي تابع را نشان مي دهيم ، سپس به ازاي هر ترکيب ورودي بر اساس عملکرد تابع ، خروجي را مشخص مي کنيم. به عبارت ديگر اين جدول بيان کننده عملکرد منطقي تابع و مدار معادل آن است.


فرمهاي متعارف SOP و POS
مينترم ها و ماکسترم ها
گيتهاي منطقي
قطعات الکترونيک گيت ها
فرمهاي متعارف براي نمايش توابع سوئيچينگ :
SOP: جمع جملات کمينه
POS: ضرب جملات بيشينه

SOP جمع حاصلضرب ها
OR کردن عبارتهاي AND شده



POS ضرب حاصلجمع ها
AND کردن عبارتهاي OR شده


جملات کمينه و بيشينه يا :
Minterm
Maxterm
Minterm ها
m
جمله ضرب از همه n متغير يک تابع به صورت متمم يا غيرمتمم
در تابع n متغيره 2 به توان n حالت از مينترم ها را داريم
مثال براي2 متغير:



Maxterm ها
M
جمله جمع از همه n متغير يک تابع به صورت متمم يا غيرمتمم
در تابع n متغيره 2 به توان n حالت از ماکسترم ها را داريم
مثال براي2 متغير:


شماره گذاري مينترم ها و ماکسترم ها
تعداد متغير : n
تعداد مينترم يا ماکسترم : 2 به توان n
m0...mn-1
M0...Mn-1


براي پيدا کردن فرم يک مينترم يا ماکسترم از روي انديس آن :
1)عدد انديس m يا M را به مبناي 2 مي بريم
2)در مينترم به جاي 1 خود متغير و به جاي 0 متمم آن را قرار مي دهيم
3)در ماکسترم به جاي 0 خود متغير و به جاي1 متمم آن را قرار مي دهيم
مثال:


نمايش استاندارد با مينترم يا ماکسترمهاي تابع:
استفاده از SOP يا POS
(f(A,B,C برابر است با:


مدارهاي منطقي ديجيتال يا مدارهاي سوئيچينگ
ترکيب سري و موازي عناصري به نام گيت
گيت: مسيرهاي باز يا بسته سيگنال
به لحاظ ساختار فيزيکي قادرند در طي چند نانوثانيه روشن يا خاموش شوند
در طراحي الکترونيکي مدارهاي منطقي دو استاندارد معروف به کار مي رود:
TTL
در اين منطق، 5 ولت معادل 1 منطقي مي باشد.

CMOS
در اين منطق، 12 ولت معادل 1 منطقي مي باشد.


انواع گيت :
گيت AND :
همانطور که از نامش پيداست مانند "و" رفتار مي کند يعني در صورتي که يکي از وروديهاي آن 0 باشد خروجي آن صفر خواهد بود.


OUT IN IN 0 0 0 0 1 0 0 0 1 1 1 1

گيت OR :

OUT IN IN 0 0 0 1 1 0 1 0 1 1 1 1

گيت NOT:
اين گيت در ازاي ورودي 0 يا 1 معکوس آن را به خروجي مي فرستد.

IN=0 ----> OUT=1
IN=1 ----> OUT=0

گيت NOR:
اين گيت به عنوان يک المان منطقي ساده، عمل دو گيت OR و NOT را با هم ادغام کرده، در يک گيت نشان مي دهد و شامل دو يا چند ورودي و يک خروجي مي شود.

OUT IN IN 1 0 0 0 1 0 0 0 1 0 1 1
گيت NAND:
اين گيت به عنوان يک المان منطقي ساده، عمل دو تابع AND و NOT را با هم ادغام کرده، و در يک گيت نشان مي دهد. اين مدار شامل دو ياچند ورودي و يک خروجي است.


OUT IN IN 1 0 0 1 1 0 1 0 1 0 1 1

گيت XOR:
اين گيت شامل دو يا چند ورودي و يک خروجي است. در گيت XOR در صورتي خروجي ما يک مي شود که فقط يکي از وروديهاي ما يک باشد.

OUT IN IN 0 0 0 1 1 0 1 0 1 0 1 1
گيتXNOR:
اين گيت شامل دو يا چند ورودي و يک خروجي است در گيت XNOR در صورتي خروجي يک مي شود که يا هر دو ورودي صفر و يا هر دو ورودي يک باشد.

OUT IN IN 1 0 0 0 1 0 0 0 1 1 1 1



قطعات الکترونيکي
گيت هاي منطقي
AND


OR

NOT

NAND

NOR

XOR
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #10 : دسامبر 07, 2009, 02:07:26 am »

مدارهای ترکيبی
مفهوم مدار منطقي و مدارهاي ترکيبي
ايجاد تابع يک مدار منطقي
مثالهايي از مدارهاي منطقي
طراحي نيم افزاينده
طراحي مدار رأي گيري


مدار منطقي
هر مدار منطقي شامل ترکيبي از گيتهاي منطقي است .
براي بررسي عملکرد هرمدار منطقي بايد رفتار آن به ازاي همه ورودي هاي ممکن مدار را بيابيم.


مدارات منطقي ترکيبي
مداراتي هستند که خروجي آنها در هر لحظه فقط به ورودي هاي همان لحظه بستگي دارد. به بيان ديگر يک مدار ترکيبي، مداري است بدون عنصر حافظه اي براي ذخيره وضعيت قبلي مدار.
F=X.W


W=Y+Z
X=A.B


جدول درستي در مدارات ترکيبي
براي هر مدار منطقي مي توان يک جدول درستي تعريف کرد که تمامي حالتهاي مختلف ورودي هاي مدار را نشان مي دهد، سپس به ازاي هر ترکيب ورودي بر اساس عملکرد مدار خروجي را مشخص مي کنيم.
جدول درستي بيان کننده عملکرد منطقي مدار است.


ايجاد تابع منطقي مدار
براي طراحي يک مدار بايد با استفاده از جدول درستي آن يک تابع منطقي بدست آورد.
در ايجاد تابع منطقي از جبر بول استفاده مي شود.


طراحي مدار نيم جمع کننده
Half Adder
براي جمع دو عدد يک رقمي مبناي دو


تابع متناظر با S :

تابع متناظر با C :
f(x,y)= m 3 = xy


مثالي ديگر از طراحي يک مدار ترکيبي
يک خانواده 4 نفره براي انجام کاري رأي گيري مي کنند. ارزش رأي پدر و مادر 2 برابر رأي فرزندان است. مداري طراحي کنيد که هر نفر با فشردن کليدي رأي دهد و در صورتي که مجموع ارزش آراء حداقل 4 شد ، يک چراغ به نشانه جواب مثبت راي گيري روشن شود.


خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #11 : دسامبر 07, 2009, 02:09:39 am »

خلاصه اي از آموزش زبان QBASIC و برنامه نويسي با پورت ها
ويژگي هاي زبان هاي برنامه نويسي
ذخيره انواع داده ها و اطلاعات در آدرسهاي مشخص حافظه
قابليت دريافت اطلاعات و نمايش حاصل پردازش
انجام عمليات و محاسبات بر روي داده ها
کنترل ترتيب اجراي برنامه طبق الگوريتم برنامه


انواع داده ها در زبان Basic
انواع داده ها در زبان Basic
داده هاي ثابت
داده هاي متغير


داده هاي ثابت:
اعداد: 5, 673 ,4.5
رشته ها : “ Tehran ” , “673”

داده هاي متغير :
عددي : A , Sum
رشته اي : Name$ , A5$


آشنايي با بعضي دستورات زبان Basic
PRINT
"PRINT “ Hi Hamed
"PRINT “ 15+1
PRINT 15+1
PRINT a


اولويت محاسبات رياضي:
1 : ( )
2 : ^
3 : * , /
4 : \
5 : MOD
6 : + , -

مثال :
x*c) / 2 + s - a / b)


INPUT
INPUT A
INPUT A,B,C
$INPUT Q


LET
LET A=5
همواره مقدار سمت راست در متغير سمت چپ قرار مي گيرد


توابع کتابخانه اي
برنامه هايي که از قبل نوشته شده اند و وظيفه خاصي را انجام مي دهند
(ABS (x قدر مطلق
(SQR(x ريشه دوم


عملگرهاي منطقي
AND
OR
NOT


عبارات شرطي
IF …شرط…THEN
دستور يا دستورات
END IF

INPUT A
IF A<100 THEN
PRINT A
END IF

IF … شرط …THEN
دستور يادستورات
ELSE
دستور يا دستورات
END IF


حلقه هاي تکرار
GOTO Lable
Sum: INPUT A
B=B+A
GOTO SUM


حلقه FOR:
شمارش تعداد دفعات تکرار
FOR شمارنده=..... TO .....
دستورات تکرار شدني
NEXT شمارنده

FOR i = 1 TO 10
"PRINT “ my name is Hamed
Next i


دو دستور ساده :
CLS : پاک کردن صفحه نمايش در بخش اجرا
END : پايان برنامه


آشنايي با پورت
آشنايي با پورت
پورت يا درگاه محل اتصال وسايل و تجهيزات جانبي به يک کامپيوتر است که در واقع دروازه ورود يا خروج 0 و 1 ها مي باشد .

هر پورت داراي چند پايه يا پين است که هر پين به وسيله يک سيم ، گذرگاهي براي عبور يک واحد داده مي باشد.


نحوه ذخيره شدن داده ها در کامپيوتر:
قابليت نگهداري 0 يا 1 Bit :
Byte : 8 Bit

روشهاي انتقال اطلاعات در کامپيوتر

انتقال سري
انتقال موازي



برخي از انواع پورتها :
پورت موازي يا LPT
پورت سريال يا COM
پورت USB

پورت سريال

داده ها را بصورت سريال ( دنبال هم ) ارسال و يا دريافت مي کند . در چنين حالتي يک بايت از اطلاعات بصورت هشت بيت ويکي پس از ديگري ارسال خواهند گرديد.
مثال : اتصال مودم



مزيت :
استفاده از يک سيم براي ارسال و دريافت داده
عيب:
سرعت پايين ارسال اطلاعات

پورت موازي

در هر لحظه هشت بيت را از طريق هشت پين جداگانه ارسال يا دريافت مي کند . پورت موازي استاندارد قادر به ارسال 50 تا 100 کيلوبايت در هر ثانيه است.
زمانيکه کامپيوتر اطلاعاتي را براي چاپگر و يا هر وسيله ديگري که به پورت موازي متصل است ، ارسال مي نمايد ، در هر لحظه هشت بيت ارسال خواهد شد .


پين دوازده :

در صورتيکه چاپگر داراي کاغذ نباشد ، از طريق پين شماره دوازده به کامپيوتر آگاهي لازم داده خواهد شد .

GND

پين هاي شماره هيجده تا بيست و پنج( Ground ) زمين هستند و به عنوان مرجع ولتاژ براي پين هاي ديگر استفاده مي شوند.

پين دو تا نه :

حامل داده هستند .
بمنظور مشخص نمودن اينکه يک بيت داراي مقدار يک است ولتاژ پنج ولت از طريق پين مربوطه ارسال خواهد شد . بر روي پيني که شامل مقدار ( داده ) صفر است ولتاژي قرار نخواهد گرفت .


آدرس پورت ها
خانه هاي حافظه و پورت هاي انتقال داده در کامپيوتر داراي يک آدرس مشخص مي باشند که قابل دسترسي توسط برخي زبانهاي برنامه نويسي براي ايجاد تغيير يا خواندن و نوشتن در آنها ، هستند. اين آدرس ها براي هر 8 بيت يا يک بايت مشخص شده اند .

آدرس بايت داده پورت LPT1

378H 888dec

دستورات انتقال داده از پورت در زبان BASIC

OUT آدرس ,مقدار
INP (آدرس )
مثال:
OUT & H378 , 255
(A = INP ( & H378

يک آزمايش برنامه نويسي با پورت LPT

رعايت نکات مهم :
فقط در زمان خاموش بودن کامپيوتر، تجهيزات را به اين پورت متصل يا جدا کنيد . ولتاژهاي ورودي نبايد از 5 ولت بيشتر شوند و يا از صفر کمتر
پورت موازي در مقابل جريان بيش از حد محافظت نشده
اتصال يک LED به هر 8 پين بايت داده

بنابراين : با امکان فراگيري برنامه نويسي با سخت افزار قادر به کنترل يک مدار الکترونيکي خواهيم بود و به اين ترتيب رابطه ميان نرم افزار و سخت افزار الکترومکانيکي ربات امکان پذير خواهد شد.
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #12 : دسامبر 07, 2009, 02:12:30 am »

ميکروکنترلر
سيستم هاي مبتني بر ميکروکنترلر
بلوك دياگرام سيستم مبتني بر ميکروکنترلر
ملزومات سخت افزاري و اجزاء داخلي


سيستمهاي مبتني بر ريزپردازنده ها
ماشين حساب جيبي
ساعت‌هاي ديجيتال
دستگاه‌هاي خودپرداز
بازيهاي بصري
كامپيوتر‌خانگي


بلوك دياگرام سيستم مبتني بر ميکروکنترلر



ملزومات سخت‌افزاري و اجزاء داخلي
ثبات‌ها (Register)
درگاهها(Port) ورودي خروجي(I/O)
وقفه(Interrupt)
زمان‌سنج/شمارنده(Timer/counter)
مبدلهاي A/D & D/A


ثبات‌ها(Register)
تعريف ثبات :
ثبات ها در حقيقت آرايه اي از سلول ها هستند كه مقدار 1يا 0 مي گيرند در حقيقت يك ثبات حاوي يك داده چند بيتي مي باشد

انواع ثبات‌ها
ثبات با امكان بار شدن موازي
شيفت ثبات‌ها
شيفت ثباتهاي دوطرفه
شمارنده‌ها


درگاههاي ورودي خروجي (I/O Port)
آدرس دهي درگاه ها
مشخصات عملي درگاه ورودي خروجي
انواع انتقال داده

تعريف درگاه
درگاه در حقيقت كانالي است كه از طريق آن‌ ميکروکنترلر با دنياي خارج خود ارتباط برقرار مي كند
آدرس دهي درگاه‌ها

آدرس دهي :
نامگذاري هر يك از راههاي ارتباطي است كه ميکروکنترلر توسط آن درگاهها را از هم تفكيك مي كند


مشخصات عملي درگاه‌ها
درگاه ورودي بافر شده :
درگاهي است كه توسط يك بافر سه وضعيتي كنترل شده و اطلاعات آن فقط در زمان مقتضي به ميکروکنترلر منتقل مي شود

مشخصات عملي درگاه‌ها
درگاه ورودي قابل قفل شدن :
درگاهي است كه خروجي داده شده توسط ميکروکنترلر را تا زماني كه لازم است حفظ مي‌كند


انواع روشهاي انتقال داده
انتقال موازي داده
انتقال سري داده


مفهوم وقفه
مفهوم وقفه
وقفه در حقيقت درخواستي است كه توسط يكي از اجزاء داخلي يا خارجي مطرح مي گردد و ميکروکنترلر با توجه به پيش‌بيني قبلي در زمان مناسب به آن پاسخ ميدهد

انواع وقفه
سخت افزاري:
درخواستي كه توسط يكي از اجزاء سيستم مطرح مي شود مانند يك كليد فشاري
نرم افزاري:
درخواستي كه توسط يكي از قسمتهاي برنامه اجرايي مطرح مي گردد.


زمان‌سنج / شمارنده
انواع زمان‌سنجي:
نرم افزاري
سخت افزاري


مبدلهاي A/D & D/A
مفهوم داده آنالوگ و ديجيتال
مبدل آنالوگ به ديجيتال A/D
مبدل ديجيتال به آنالوگ D/A


مفهوم داده آنالوگ و ديجيتال
داده آنالوگ:
داده اي كه مي تواند به طور پيوسته هر مقداري را اختيار كند مانند ولتاژ برق شهر كه در هر تناوب مقداري بين 220- و 200+ را اختيار مي كند
داده ديجيتال: داده اي كه فقط مقادير خاصي را مي تواند داشته باشد مانند نمايشگر کانال تلويزيون كه يك عدد صحيح را هميشه نشان مي دهد


مبدل آنالوگ به ديجيتال A/D
ابزاري است كه با توجه به مقادير ابتدايي و انتهايي داده آنالوگ و ميزان بيتي كه به آن اختصاص داده شده است به هر بازه از مقدار پيوسته ، يك عدد ديجيتال نسبت مي دهد

مثال
0 تا 220 ولت با نمايش 8 بيتي:
85/0= 256/220
هر يك عدد در مبناي دودويي برابر 85/0 ولت است

(00001000)2 = 8 * 0.85= 6.8


مبدل ديجيتال به آنالوگ D/A
ابزاري است كه با توجه به مقادير ابتدايي و انتهايي داده آنالوگ و ميزان بيتي كه به آن اختصاص داده شده است ، به هر بازه از مقدار ديجيتال يك عدد آنالوگ نسبت مي دهد
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #13 : دسامبر 07, 2009, 02:15:30 am »

Programmable Interface Controller
PIC
انواع PIC
Flash Program Memory
Eprom Program Memory
Rom Program Memory
EEPROM Program Memory


Flash Program Memory
سرعت بالاي خواندن اطلاعات از ROMمزيت اين خانواده محسوب مي شود. بطوريکه سرعت 12 پالس براي اجراي برنامه در ميکروکنترلر 8051 به 4 پالس در PIC رسيده است. اين سرعت براي AVR به يک پالس رسيده است.


PIC16F84A



ويژگيهاي PIC16F84A
برنامه ريزي با تنها 35 دستور
اجراي همه دستورات با يک سيکل بجز دستور پرش که به دو سيکل نياز دارد

سرعت کاري :
فرکانس کاري DC تا 20 MHz (حداکثر سرعت 200 نانوثانيه براي هر سيکل کاري)
حافظه برنامه ريزي 1024 کلمه
68بايت RAM
64بايت EEPROM
طول دستور 14 بيت
وقفه خارجي
زمان سنج 8بيتي


ويژگيهاي جانبي PIC16F84A
13 پين ورودي/ خروجي با قابليت برنامه ريزي مجزا
تأمين جريان کشي مورد نياز LED(25ميلي آمپر براي هر پين)
حافظه Flash با قابليت برنامه ريزي 10000 بار
EEPROM با قابليت 10.000.000 بار نوشتن
برنامه ريزي آسان

درگاه A


درگاه B


وقفه
وقفه خارجي
زمان سنج
تغيير در منطق ولتاژي پايه هاي درگاه B
اتمام سيکل نوشتن داده در EEPROM

PIC16F877A

ويژگيهايPIC16F877A
زمان سنج0 : 8بيتي
زمان سنج1 : 16 بيتي
زمان سنج2 : 8بيتي
8 کانال مبدل آنالوگ به ديجيتال : 10 بيتي
درگاه موازي
درگاه سريال

ADCON0 REGISTER

ثبات خروجي A2D
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir

Reyhane

  • کاربر نیمه فعال
  • **
  • آفلاین آفلاین
  • ارسال: 54
    • اولين انجمن تخصصي هوش مصنوعي در ايران:
پاسخ : آموزش جامع ساخت ربات
« پاسخ #14 : دسامبر 07, 2009, 02:17:36 am »

آشنايي با نرم افزارPICBasic
زبان اسمبلي :37 دستورالعمل
زبان سطح بالا
BASIC
C
و...


آشنايي با دستورات
(نامگذاري خطوط برنامه)Line Labels
[here:Serout ,N2400,["Hello world!",13,10 Goto here
(متغير‌ها) Variables
{Label VAR Size{.Modifiers
dog var byte
cat var bit
w0 var word

(اسم مستعار)Aliases
fido var dog
b0 var w0.byte0

Arrays(آرايه)
[Label VAR Size[Number of elements
[sharks var byte[10

Maximum number of elements Size 256 Bit *96 Byte *48 Word


Constants(مقادير ثابت)
Label CON Constant expression
mice con 3
Symbols(نشانه)
SYMBOL lion = cat

Numeric Constants(ثابتهاي عددي)
100
%100
$100

Pins
PORTB.1 = 1
8-15 0-7 No. PIC micro Pins GPIO* GPIO* 8-pin PORTA* PORTB 18-pin PORTC PORTB 28-pin(except 14 C000) PORTD PORTC 28-pin(14C000) PORTC PORTB 40-pin


INCLUDE
با استفاده از اين دستور مي توان از فايلهاي منبع که نوشته شده است در برنامه استفاده کرد

DEFINE
بعضي از موارد نظير پينهاي مربوط به ارتباط با LCD از طريق دستورهاي BASIC از پيش مشخص هستند که اين موارد با دستورDEFINE تعيين مي شوند
DEFINE LCD_DREG PORTA 'LCD data port

دستورالعمل‌هاي رياضي
W1 = W0 * 1000
W1 = W0 / 1000
B0 = B0 << 3
W1 = W0 >> 1
COS & SIN
B0 = SQR W1
عملگرهاي مقايسه

Description Comparison operator Equal = or = = Not Equal <> or ! = Less than < Greater than > Less than or Equal < = Greater than or equal > =


عملگرهاي منطقي
Description Logical operator logical and And or && logical or OR or II logical exclusive or Xor or ^ ^ logical nand Not And logical nor Not Or logical Nxor Not Xor
BUTTON
Pin,Down,Delay,Rate,BVar,Action,Label
Pin
شماره پيني كه سويچ به آن وصل است Down
وضعيت پين وقتي سويچ فشار داده مي شود Delay
عددي بين 0 و 256 كه تعداد سيكل تكرار را قبل از خواندن مجدد چك مي كند
BUTTON
Rate
نرخ تكرار
BVar متغيري به صورت بايت كه براي شمارش مورد نياز است
Action مقدار 0 يا 1 و نمايشگر حالت سويچ براي عملكردن است
Lable مكاني از نرم افزار كه در صورت فشردن دكمه بايد اجرا شود

COUNT
COUNT Pin,Period,Var
اين دستور تعداد پالسهاي رخ داده شده در pin را در مدت زمان period كه بر حسب ميلي ثانيه مي باشد در متغيرvar ذخيره مي كند

END
اين دستور اجراي برنامه را متوقف مي كند
FOR..NEXT
{FOR Count = Start TO End {STEP {-} Inc
{Body}

{NEXT {Count
مثال
FOR i = 1 TO 10
Toggle PORB.1
Pause 500
NEXT i

GOSUB
GOSUB Label
اين دستور باعث اجراي يك زير برنامه مي شود كه lable مشخص مي كند البته مكان فعلي ذخيره مي شود و بعد از پايان اجراي زيربرنامه با دستور return عمل بازگشت صورت مي گيرد

GOTO
GOTO Label
اين دستور اجراي برنامه را از جايي كه lableمشخص مي كند پي مي گيرد

HIGH & low
HIGH Pin
رويPin مشخص شده مقدار 1 ديجيتال بارگذاري مي كند
LOW Pin
رويPin مشخص شده مقدار 0 ديجيتال بارگذاري مي كند
IF..THEN
IF Comp {AND/OR Comp...} THEN Label
IF Comp {AND/OR Comp...} THEN
...Statement
ELSE
...Statement
ENDIF

If Pin0 = 0 Then pushed
If B0 >= 40 Then old
If (B0 = 10) AND (B1 = 20) Then loop
If B0 <> 10 Then
B0 = B0 + 1
B1 = B1 - 1
Endif

IF … THEN… ELSE
If B0 = 20 Then
led = 1
Else
led = 0
Endif
INPUT &OUTPUT
INPUT Pin
OUTPUT Pin
پين مشخص شده را بصورت ورودي يا خروجي تعريف مي كند
LCDOUT
{...LCDOUT Item{,Item
"LCDOUT $FE, 1, "Hello
hello نمايش كلمه
LCDOUT



PAUSE & PAUSEUS
PAUSE Period
در اجراي برنامه وقفه اي به مدت زمان مشخص شده درPeriod كه بر حسب ميلي ثانيه مي باشد ايجاد مي كند

PAUSEUS
در اجراي برنامه وقفه اي به مدت زمان مشخص شده درPeriod كه بر حسب ميكرو ثانيه مي باشد ايجاد مي كند
POT
POT Pin,Scale,Var
اين دستور براي اندازه گيري مقدار پتانسيومتر متصل به پين مشخص شده به كار مي رود
مقدار scale براي تنظيم rc مورد نياز بكار مي رود
اين عدد بايد براي rc كوچك مقداربالا(256) و براي rc بزرگ مقدار پايين داشته باشد

SERIN&SEROUT
...SERIN Pin,Mode,{Timeout,Label,}{[Qual...],}{Item
[{...SEROUT Pin,Mode,[Item{,Item


حالتهاي کاري ارسال سريال
State Baude Rate Mode No. Mode True 2400 0 T2400 1200 1 T1200 9600 2 T9600 300 3 T300 Inverted 2400 4 N2400 1200 5 N1200 9600 6 N9600 300 7 N300

SERIN&SEROUT
SERIN 1,N2400,[“A”],B0
[SEROUT 0,N2400,[#B0,10
WHILE..WEND
WHILE Condition
...Statement
WEND
i = 1
WHILE i <= 10
Serout 0,N2400,[”No:”,#i,13,10] i = i +1
WEND


مدار برنامه ريز



برنامه LED چشمک زن


COUNTER VAR BYTE
BEGIN
COUNTER =0
PORTB=0
HOME
BUTTON 9,0,255,1,COUNTER,1,START
GOTO HOME

START
WHILE PORTA.1=0
lOW PORtB.4
high poRtB.5
lOW poRtB.6
high poRtB.7
pause 2000

high PORtB.4
low PORtB.5
high PORtB.6
low PORtB.7

pause 2000
WEND
goto BEGIN
END
خارج شده است
اولين انجمن تخصصي هوش مصنوعي در ايران:

http://artificial.ir