بررسی بهره گیری از کامپیوتر در طراحی و ساخت


در حال بارگذاری
23 اکتبر 2022
فایل ورد و پاورپوینت
2120
11 بازدید
۶۹,۷۰۰ تومان
خرید

توجه : به همراه فایل word این محصول فایل پاورپوینت (PowerPoint) و اسلاید های آن به صورت هدیه ارائه خواهد شد

 بررسی بهره گیری از کامپیوتر در طراحی و ساخت دارای ۱۵۴ صفحه می باشد و دارای تنظیمات و فهرست کامل در microsoft word می باشد و آماده پرینت یا چاپ است

فایل ورد بررسی بهره گیری از کامپیوتر در طراحی و ساخت  کاملا فرمت بندی و تنظیم شده در استاندارد دانشگاه  و مراکز دولتی می باشد.

 
بخشی از فهرست مطالب پروژه بررسی بهره گیری از کامپیوتر در طراحی و ساخت
فصل اول
مقدمه ای بر کاربرد کامپیوتر در علوم مهندسی
انواع سیستم های کنترل کامپیوتری
سیستم های کنترل عددی کامپیوتری
فصل دوم
معرفی ماشین های کنترل عددی
تعریف کنترل عددی
میکرو کنترلر چیست ؟
موارد استفاده موتورهای پله ای
تذکرهای مهم برای انتخاب موتور پله ای مناسب
موتورهای پله ای خطی
مختصری راجع به AVR
عملیات تک سیکل
طراحی برای زبانهای BASIC و C
جدول رشته چهار پله
جدول زاویه پله برای انواع موتورها
پله در ثانیه و دور در دقیقه
یک چرخش کامل
راه انداز نیم پله
پایه های مهم بورت سریال RS
ثباتهای پورت سریال RS-
جدول ۱۴-۱ پورتهای تراشه UART
Stepper Motor و نحوه کنترل آن
جدول ۱۱-۱ سری چهار گامه کامل
زاویه گام یا پله
جدول ۱۱-۲ زاویه گام کامل برای چند موتور مختلف
تعداد گام بر ثانیه و تعداد دندانه ها در rotor
جدول ۱۱-۳ سری ۸ گامه مورد حمایت کلیه موتورها
سری Wave Drive
جدول ۱۱-۴ سری ۴ گامه wave drive
تعیین سری های زوج سیم پیچهای مشترک
فصل چهاردهم
درگاه سریال و کاربرد آن در اتصال ابزارها
کانکتورها وسیگنالهای درگاه سریال
۱-۵ خانواده کلاسیک AT90S
۱-۶خانواده MEGA AVR
جدول۱-۳میکروکنترلرهای خانواده
۱-۷مدل LCD AVR
۱-۸ساختار پردازنده AVR
واحد ALU
نحوه عملکرد واحدCPU
۱-۹حافظه داده SRAM
رجیستر وضعیت
پرچم کری
پرچم صفر
پرچم منفی
پرچم سرریز
پرچم علامت
پرچم نیم کری
بیت فعال ساز وقفه سراسری
۱-۱۰ اشاره گر پشته
۱-۱۱ حافظه داده EEPROM
۱-۱۲ پورت I/O
ساختار پورت I/O
جدول ۱-۵ تعیین جهت پایه های PORTXn
نوشتن در پایه ها
ورودی سیگنال آنالوگ
عملکرد پایه ها در حالت Sleep
۱-۱۳ سیستم توزیع پالس ساعت در AVR
پالس ساعتCPU
پالس ساعت I/O
پالس ساعت آسنکرون
پالس ساعت ADC
جدول ۱-۶ انتخاب منابع مختلف پالس ساعت
جدول ۱-۷ مدهای عملکرد نوسان ساز کریستالی
نوسان ساز کریستالی فرکانس پایین
شکل ۱-۱۵ نوسان ساز کریستالی فرکانس پایین
نوسان ساز RC خارجی
نوسان ساز خارجی RC
جدول ۱-۱۰ مدهای عملکرد نوسان ساز RC خارجی
جدول ۱-۱۱ تعیین زمان Start up  برای استفاده از RC خارجی
نوسان ساز RC کالیبره شده داخلی
جدول ۱-۱۲ مدهای عملکرد نوسان ساز RC کالیبره شده داخلی
پالس ساعت خروجی
جدول ۱-۱۳ تعیین زمان Start up  برای استفاده از اسیلاتور کالیبره شده داخلی
پالس ساعت خارجی
جدول ۱-۱۴ تعیین زمان Start up  برای استفاده از پالس ساعت خارجی
سازمان دهی حافظه های AVR
اهداف فصل
حافظه برنامه
جدول ۲-۳ تقسیم بندی حافظه خارجی ۶۴کیلوبایتی
جدول ۲-۴ Wait states
بیت ۷ XMBK
بیت ۲-۰ XMM0، XMM1،XMM
جدول ۲-۵ تنظیم بیتهای XMM2,1,
نحوه اتصال حافظه خارجی به AVR
حافظه داده EEPROM
رجیستر آدرس در EEPROM
بیت EEWE
جلوگیری از اختلال در عملکرد EEPROM
آشکار سازی خطای قالب بندی
توضیحات سیگنالها
جدول ۱۱-۱ تعیین Baud Rate
واحد فرستنده سریال
واحد گیرنده سریال
رجیسترهای USART
رجیستر UDR
رجیستر UCSRA
RXC
TXC
UDRE
FE
DOR
رجیستر UCSRB
RXCIE
TXCIE
UDRIE
RXEN
TXEN
UCSZ
رجیستر UCSRC
جدول ۱۱-۲ تنظیمات بیتهای UPM0 و
جدول ۱۱-۳ تنظمیات اندازه کاراکتر
رجیستر UBRR
جدول ۱۱-۴ حداکثر خطای مجاز Baud Rate
برنامه ریزی اولیه USART
ارسال سریال
دریافت سریال
ارتباط سریال سنکرون (همزمان)
 

 

 

مقدمه

دومین انقلاب صنعتی در قرن حاضر با ظهور کامپیوتر بوجود آمده و قابلیت پیشرفت انسان را افزایش داده است . در نتیجه بکارگیری کامپیوتر بوده که سیستم های کنترل عددی بوجود آمده اند و اساسا طراحی و تولید به کمک کامپیوتر با ظهور کنترل عددی مطرح شده که مبنا پایه همه آنها استفاده از کامپیوتر بوده است.
در واقع کاربرد کامپیوتر در تولید و صنعت یکی از مهمترین پیشرفت های بشر در قرن حاضر تلقی می شود که جنبه های مختلف این کاربرد درتاثیر زیاد آن در وضعیت کنونی صنعت بر هیچ کسی پوشیده نیست.
انواع سیستم های کنترل کامپیوتری
سیستم های کنترل عددی کامپیوتری
عرض کالاهای متنوع و تنوع در تولید محصولات و همچنین رقابت در دستیابی به بازار سرعت تولید و ارزانی کالا کنترل و کیفیت نیازی است که یک کنترل کننده و تولید کننده را وادار به دستیابی به تکنولوژی برتر و سیستم های تولیدی مناسب با این تکنولوژی می کند.
ماشین های کنترل عددی اغلب برای تولید قطعات با تعداد کم و یا متوسط و یا دارای شکلهای پیچیده بکار می رود.
 ارسال کلیه قوانین و دستورات به مرکز کنترل ماشین برای انجام عملیات و حرکت در قالب کدها و استانداردهای خاص از طریق برنامه ماشین کاری قطعه صورت می گیرد.
فصل دوم
معرفی ماشین های کنترل عددی
تعریف کنترل عددی
کنترل عددی را می توان به صورت یک نوع اتوماسیون با برنامه ریزی تعریف نمود که در آن فرایند توسط اعداد حروف و سنبل ها کنترل می شود. اعداد ، حروف و علائم که بطور منطقی برای هدایت یک ماشین خاص مورد استفاده قرار می گیرد برنامه نامیده می شود.
در برنامه اعداد بخشی از دستورات می باشند که آن برنامه برای قطعه خاصی در نظر گرفته شده است.
 وقتی که شکل قطعه عوض شود برنامه نیز تغییر می کند این توانایی تغییر برنامه برای هر قطعه به خاصیت انعطاف پذیری بسیار خوبی را میدهد چون تغییر برنامه به مراتب راحت تر از تغییر ابزار و لوازم تولید می باشد. این دلیل باعث رشد روز افزون بکارگیری سیستم های کنترل عددی گردیده است. کنترل عددی در بخش ها و صنایع مختلف بکار گرفته می شود که عبارتند از :
–    صنایع هوایی و نظامی
–    صنایع فلز تراشی (شکل دهی فلزات)
–    صنایع الکترونیک
–    صنایع مونتاژ و بسته بندی
برنامه نویسی ماشین های کنترل عددی کامپیوتری
–    صنایع ابزار سازی
–    صنایع چوب
–    صنایع نساجی
–    کنترل کیفیت و بازرسی
لازم به ذکر است که هر یک از اعمال و صنایع فوق خود نیز به انواع و روشهای مختلفی تقسیم بندی می شوند که در تمام آنها بکارگیری کنترل عددی توسعه یافته است. برای نمونه در فرایند شکل دهی فلزات ماشین کاری با استفاده از دستگاه هایی انجام می گیرد که برای صورت کنترل عددی کامپیوتری ساخته می شوند. مانند انواع ماشین های CNC زیر :
–    ماشین فرز
–    ماشین تراش
–    ماشین بورینگ
–    ماشین سنگ زنی
–    ماشین اسپارک
بطوری که جای به خصوص خود را در ماشین کاری پیدا کرده است و امروزه دامنه صنعت شکل و همه به جایی رسیده است که در اغلب ماشین های ابزار یک سیستم کنترل عددی استفاده می شود و به صورت کاملا خودکار ساخته می شوند.
ماشین های کنترل عددی که اصطلاحا آنها را NC و یا CNC می نامند ماشین های اتوماتیکی هستند که توسط سیستم کنترل و یا کامپیوتر کنترل می شود این ماشین طبق مراحل و مسیر پیش بینی شده به اندازه مورد نیاز و با سرعت و پیشروی مشخص توسط یک سری دستورات در قالب حروف و ارقام کنترل می شوند.
در حقیقت به کمک سیستم CNC حرکت اصلی و حرکت پیشروی و جابجایی سریع که در ماشین های سنتی معمولا به روش دستی انجام می گیرد در ماشین های CNC به صورت اتوماتیک و با یک برنامه و سری دستورات از قبل طراحی شده انجام می گیرد و قطعه کار و ابزار را در موقعیت سایش قرار گرفته و عمل لایه برداری انجام می شود.
میکرو کنترلر چیست ؟
میکروکنترلر در واقع یک کامپیوتر تک تراشه ارزان قیمت می باشد.
تک تراشه بدین معنی است که کل سیستم کامپیوتر در داخل یک تکه نازک سیلیکانی در درون یک محفظه پلاستیکی مدار مجتمع قرار گرفته است . میکروکنترلر دارای خصوصیاتی مشابه به خصوصیات کامپیوتر شخصی استاندارد می باشد. میکروکنترلر محتوی یک CPU ، RAM، ROM، خطوط I/Q ، درگاه های سریال و موازی ، زمان سنج ها و بعضی اوقات وسایل جانبی داخلی دیگری نظیر مبدل آنالوگ به دیجیتال و مبدل دیجیتال به آنالوگ می باشد. به هر حال خصیصه اصلی میکروکنترلر توانایی بارگذاری ، توانایی بارگذاری ، ذخیره و اجرای برنامه است.
چرا از میکروکنترلر استفاده می کنیم ؟
چون میکروکنترلرها کامپیوترهای تک تراشه ای ارزان قیمت هستند به سادگی می توان آنها را در مدارات الکترونیکی بزرگتر قرار داد. توانایی ذخیره سازی و اجرای برنامه های منحصر به فرد میکروکنترلرها را بسیار قابل انعطاف ساخته است.
 به عنوان مثال یک فرد می تواند میکروکنترلر را طوری برنامه ریزی کند که تصمیم گیری نماید و براساس شرایط و رویدادها عملیاتی انجام دهد. قابلیت انجام عملیات ریاضی و منطقی به میکروکنترلر اجازه می دهد رفتار مدارات الکترونیکی و سیستم های منطقی را تقلید کند.
برنامه ها همچنین می توانند موجب شوند میکروکنترلر مانند یک شبکه عصبی و یا مشابه یک کنترل کننده با منطق فازی رفتار کند. میکروکنترلرها در لوازم خانگی به کار برده می شوند. و  وظیفه هوش این دستگاه های هوشیار را برعهده دارند.
موتورهای پله ای در ۳ مدل مختلف در دسترس هستند که عبارتند از :
۱-    موتورهایی با آهنربای دائمی
۲-    موتورهایی با مقاومت مغناطیسی متغیر
۳-    موتورهای پیوندی
شکل ۱۲-۱۱ نمای برش خورده یک موتور پله ای با آهنربای دائم را نمایش می دهد.
موارد استفاده موتورهای پله ای
این موتورها در گستره وسیعی از کاربردهای صنعتی به ویژه در صنعت ساخت وسایل جانبی کامپیوتر ماشین های اداری ، کنترل حرکت و علم رباتیک مورد استفاده قرار می گیرد.
مورد استفاده کاملی از موتورهای پله ای در شکل ۱۳-۱۱ به صورت فهرست شده ارائه داده شده است.
تذکرهای مهم برای انتخاب موتور پله ای مناسب
۱-    سرعت تعویض پله ها
۲-    گشتاور
۳-    سکون
۴-    زاویه تعویض پله ها
۵-    زمان شتاب گرفتن موتور به میلی ثانیه
۶-    زمان کند شدن حرکت موتور به میلی ثانیه
۷-    نوع تحریک
۸-    اندازه و وزن
موتورهای پله ای خطی
موتورهای پله ای خطی به جای اینکه به شکل گرد ساخته شوند به صورت تخت ساخته می شوند و حرکت این نوع موتورها نیز به جای حرکت دورانی و چرخشی حرکتی افقی و مستقیم می باشد.
قسمت های اصلی یک موتور پله ای خطی در شکل ۱۴-۱۱ نمایش داده شده اند . همان طور که در شکل مشخص شده است این نوع موتورها از یک صفحه فلزی صاف به اضافه قسمتی که نیروی لازم برای حرکت را وارد می کند ساخته شده اند.
صفحه فلزی صاف قسمتی از این موتور است که محکم در جای خود ثابت شده است و دارای دندانه های روی سطح خود می باشد. این دندانه ها در هنگامی که موتور ایستاده است با دندانه های روی قطبهای Forcer درگیر می شوند.
Forcer یا قسمت وارد کننده نیرو دارای چهار قطب مجزا است که روی هم هرکدام از این قطب ها سه دندانه وجود دارد و از یک غلتک مکانیکی برای حرکت کردن بر روی صفحه فلزی و همچنین بر روی شکاف هوایی بین آنها استفاده می کند.
میدان مغناطیسی قسمت وارد کننده نیرو با گذراندن و تغییر دادن جریان از داخل آن تغییر می کند. هنگامی که جهت جریان گذرنده از این قسمت معکوس می شود جهت حرکت آن نیز عکس خواهد شد.
دقت این موتورها ۵۰۰/۱۲ پله در اینچ است که درجه دقت بسیار بالایی دارد.
این شکل قسمت Forcer را در حالی که بر روی صفحه صاف یا plater قرار گرفته نشان می دهد. در صنعت از موتورهای پله ای خطی برای کاربردهای خاص که فقط حرکت در راستای افق و در جهت مستقیم مد نظر باشد استفاده می گردد.
شکل ۱۵-۱۱ یکی از کاربردهای این نوع موتور را نشان می دهد که موتور وظیفه حرکت دادن ویفرسیلیکون و رساندن آن به زیر پرتوی لیزر را برعهده دارد.
مختصری راجع به AVR
زبانهای سطح بالا یا همان HLL به سرعت در حال تبدیل شدن به زبان برنامه نویسی استاندارد برای میکروکنترلرها حتی برای میکروهای ۸ بیتی کوچک هستند. زبان برنامه نویسی BASIC و C بیشترین استفاده را در برنامه نویسی میکروها دارند ولی در اکثر کاربردها کدهای بیشتری را نسبت به زبان برنامه نویسی اسمبلی تولید می کنند.
ATMEL ایجاد تحولی در معماری جهت کاهش کد به مقدار مینیمم را درک کرد که نتیجه این تحول میکروکنترلرهای AVR هستند که علاوه بر کاهش و بهینه سازی مقدار کدها به طور واقع عملیات را تنها در یک کلاک سیکل توسط معماری REDUCED RISC انجام می دهند و از ۳۲ رجیستر همه منظوره استفاده می کنند که باعث شده ۴ تا ۱۲ بار سریع تر از میکروهای مورد استفاده کنونی باشند.
تکنولوژی حافظه کم مصرف غیر فرار شرکت ATMEL برای برنامه ریزی AVR ها مورد استفاده قرار گرفته است در نتیجه حافظه های FLASH و EEPROM در داخل مدار قابل برنامه ریزی هستند. میکروکنترلرهای اولیه AVR دارای ۱،۲و ۸ کیلوبایت حافظه FLASH و به صورت کلمات ۱۶ بیتی سازمان دهی شده بودند.
AVR ها به عنوان میکروهای RISC با دستورات فراوان طراحی شده اند که باعث می شود حجم کد تولید شده کم و سرعت بالاتری بدست آید.
عملیات تک سیکل
با انجام تک سیکل دستورات کلاک اسیلاتور با کلاک داخلی سیستم یکی می شود. هیچ تقسیم کننده ای در داخل AVR قرار ندارد که ایجاد اختلاف فاز کلاک کند. اکثر میکروها کلاک اسیلاتور به سیستم را با نسبت ۱:۴ یا ۱:۱۲ تقسیم می کنند که خود باعث کاهش سرعت می شود.
 بنابراین AVR ها ۴ تا ۱۲ بار سریع تر و مصرف آنها نیز ۱۲-۴ بار نسبت به میکروکنترلرهای مصرفی کنونی کمتر است زیرا در تکنولوژی CMOS استفاده شده در میکروهای AVR مصرف توان سطح منطقی متناسب با فرکانس است.
نمودار زیر افزایش MIPS را به علت انجام عملیات تک سیکل AVR در مقایسه با نسبت های ۱:۴و ۱:۱۲ در دیگر میکروها را نشان میدهد.
طراحی برای زبانهای BASIC و C
زبانهای BASIC و Cبیشترین استفاده را در دنیای امروز بعنوان زبانهای HLL دارند. تا امروزه معماری بیشتر میکروها برای زبان اسمبلی طراحی شده و کمتر از زبانهای HLL حمایت کرده اند.
هدف ATMEL طراحی معماری بود که هم برای زبان اسمبلی و هم زبانهای HLL مفید باشد. به طور مثال در زبانهای C و BASIC می توان یک متغیر محلی به جای متغیر سراسری در داخل زیر برنامه تعریف کرد در این صورت فقط در زمان اجرای زیر برنامه مکانی از حافظه RAM برای متغیر اشغال می شود در صورتی که اگر متغیری بعنوان سراسری تعریف گردد در تمام وقت مکانی از حافظه FLASH ROM را اشغال کرده است.
برای دسترسی سریع تر به متغیرهای محلی و کاهش کد نیاز به افزایش رجیسترهای همه منظوره است. AVR ها دارای ۳۲ رجیستر هستند که مستقیما به LOGIC ALU متصل شده اند. و تنها در یک کلاک سیکل به این واحد دسترسی پیدا می کنند. سه جفت از این رجیسترها می توانند بعنوان رجیسترهای ۱۶ بیتی استفاده شوند.
برنامه صفحه بعد نشان می دهد که چگونه تعداد مناسب رجیسترهای همه منظوره می توانند با معماری CISC با یک ACCUMULATOR مقایسه گردند. برای این منظور می خواهیم از معادله صفحه بعد A را بدست بیاوریم  که با کدهای AVR این محاسبه در عرض ۴ کلاک سیکل و با کدهای CISC در عرض ۹۶-۴۸ کلاک سیکل انجام می گیرد.
خصوصیات ATmega32، ATmega32L
ازمعماری AVR RISC استفاده می کند.
–    کارایی بالا و توان مصرفی کم .
–    دارای ۱۳۱ دستورالعمل با کارایی بالا که اکثر تنها در یک کلاک سیکل اجرا می شوند.
–    8*32 رجیستر کاربردی
–    سرعتی تا ۱۶MIPS در فرکانس ۱۶MHZ
حافظه برنامه و داده غیرفرار
–    32کیلو بایت حافظه فلش داخلی قابل برنامه ریزی .
پایداری حافظه فلش : قابلیت ۱۰۰۰۰ بار نوشتن و پاک کردن
–    2کیلوبایت حافظه داخلی SRAM
–    1024بایت حافظه EEPROM داخلی قابل برنامه ریزی
پایداری حافظه EEPROM : قابلیت ۱۰۰۰۰۰ بار نوشتن و پاک کردن
–    قفل برنامه فلش و حفاظت داده EEPROM
–    قابلیت ارتباط JTAG
–    برنامه ریزی برنامه فلش، EEPROM، FUSE BITS،  LOCK BITS از طریق ارتباط JTAG
خصوصیات جانبی
دو تایمر – کانتر ۸ بیتی با PRESCALER مجزا و دارای مد COMPARE
یک تایمر – کانتر ۱۶ بیتی با PRESCALER مجزا و دارای مدهای COMPARE، CAPTURE
۴ کانال PWM
۸ کانال مبدل آنالوگ به دیجیتال ۱۰ بیتی
دارای دو کانال تفاضلی با کنترل گین ۱X,10X,200X
یک مقایسه کننده آنالوگ داخلی
دارای RTC با اسیلاتور مجزا
WATCHIDOG قابل برنامه ریزی با اسیلاتور داخلی
ارتباط سریال SPI برای برنامه ریزی داخل مدار
قابلیت ارتباط سریال SPI به صورت MASTER یا SLAVE.
قابلیت ارتباط با پروتکل سریال دو سیمه
USART سریال قابل برنامه ریزی
خصوصیات ویژه میکروکنترلر
ON RESET CIRCUIT- POWER
BROWN- OUT DETE قابل برنامه ریزی
دارای ۶ حالت SLEEP
منابع وقفه داخلی و خارجی
دارای اسیلاتور RC داخلی کالیبره شده
عملکرد کاملا ثابت
توان مصرفی پایین و سرعت بالا توسط تکنولوژی CMOS
ولتاژهای عملیاتی
۲.۷V تا ۵.۵ برای ATmega32L
۴.۵V تا ۵.۵V برای ATmega32
خطوط I/Q  و انواع بسته بندی
۳۲ خط ورودی / خروجی قابل برنامه ریزی
۴۰ پایه PDIP ،۴۴ پایه TQFP و ۴۴ پایه MLF
ترکیب پایه ها
فیوز بیت های ATmega32
ATmega32 دارای دو بایت فیوز طبق جدول های زیر می باشد :
DEFAULT  VALUE    DESCRIPTION    BIT NO.    FUSE HIGH BYTE  
۱    ENABLE OCD     7    OCDEN
۰    ENABLE JTAG    6    JTAGEN
۰    ENABLE SERIAL PROGRAM AND DATA DOWNLOADING    5    SPIEN
۱    OSCILLATOR OPTIONS       4    CKOPT

۱    EEPROM MEMORY IS PRESERVED THROUGH THE CHIP ERASE    3    EESAVE
۰    SELECT BOOT SIZE         2    BOOTSZ1
۰    SELECT BOOT SIZE      1    BOOTSZ0
۱    SELECT RESET VECTOR    0    BOOTRST

DEFAULT  VALUE    DESCRIPTION    BIT NO.    FUSE HIGH BYTE  
۱    BROWN OUT DETECTOR TRIGGER LEVEL      7    BODLEVEL
۱    BROWN OUT DETECTOR ENABLE     6    BODEN 
۱    SELECT START-UP TIME       5    SUT1   
۰    SELECT START-UP TIME       4    SUT0  
۰    SELECT CLOCK SOURCE    3    CKSEL3 
۰    SELECT CLOCK SOURCE1    2    CKSEL2 
۰    SELECT CLOCK SOURCE    1    CKSEL1 
۱    SELECT CLOCK SOURCE    0    CKSEL0 

فیوز بیت ها با پاک کردن میکرو تاثیری نمی بینند ولی می توانند با برنامه ریزی بیت LBI قفل شوند . منطق ۰ به معنای برنامه ریزی شدن و I به معنای برنامه ریزی نشدن بیت است.
OCDEN: در صورتی که بیت های قفل برنامه ریزی نشده باشند برنامه ریزی این بیت به همراه بیت JTAGEN باعث می شود که سیستم ON CHIP DEBUG فعال شود.
برنامه ریزی شدن این بیت به قسمت هایی از میکرو امکان می دهد که در مدهای SLEEP کار کنند که این خود باعث افزایش مصرف سیستم می شود. این بیت به صورت پیش فرض برنامه ریزی نشده است.
JTAGEN: بیتی برای فعال سازی برنامه ریزی میکرو از طریق استاندارد ارتباطی IEEE که در حالت پیش فرض فعال است و میکرو می تواند از این ارتباط برای برنامه ریزی خود استفاده نماید.
پایه های PC 5.2 در این ارتباط استفاده می شود.
SPIEN: در حالت پیش فرض برنامه ریزی شده و میکرو از طریق سریال SPI برنامه ریزی می شود.
CKOPT: انتخاب کلاک که به صورت پیش فرض برنامه ریزی نشده است عملکرد این بیت بستگی به بیت های CKSEL دارد که در قسمت کلاک سیستم در انتهای همین فصل آمده است.
EESAVE: در حالت پیش فرض برنامه ریزی نشده و در زمان پاک شدن میکرو حافظه EEPROM پاک می شود ولی در صورتی که برنامه ریزی شود محتویات EEPROM در زمان پاک شدن میکرو محفوظ می ماند.
BOOTSZI،BOOTSZ0: برای انتخاب مقدار حافظه BOOT طبق جدول زیر برنامه ریزی می شوند و در زمان برنامه ریزی شدن فیوز بیت BOOTRST اجرای برنامه از این آدرس حافظه BOOT آغاز خواهد شد.
BOOTRST : انتخاب بردار ری ست BOOT که در حالت پیش فرض برنامه ریزی نشده و آدرس بردار ری ست $۰۰۰۰ است و در صورت برنامه ریزی آدرس بردار ری ست طبق جدول زیر به آدرسی که فیوز بیت های BOOTSZ0، BOOTSZ1 مشخص کرده اند تغییر می یابد.
جدول انتخاب آدرس بردار ری ست توسط فیوز بیت BOOTREST
RESET ADDRESS             BOOTRST              
RESET VECTOR = APPLICATION RESET     1
RESET VECTOR = BOOT LOADER RESET       0

BODLEVEL: زمانی که این بیت برنامه ریزی نشده باشد اگر ولتاژ پایه VCC از ۲.۷V پایین تر شود ری ست داخلی میکروفعال شده و سیستم را ری ست می کند. زمانی که این بیت برنامه ریزی شده باشد اگر ولتاژ پایه VCC از ۴V پایین تر شود ری ست داخلی میکرو فعال شده و میکرو را طبق شکل ۳-۱ ری ست می کند.
BODEN: برای فعال کردن عملکرد مدار BROWN- OUT این بیت بایستی برنامه ریزی شده باشد. این بیت به صورت پیش فرض برنامه ریزی نشده است.
جدول سطوح مختلف ولتاژ برای مدار BROWN- OUT
BROWN- OUT DETECTION     BODEN,BODLEVEL     
DISABLE                      11
DISABLE                      10
AT VCC=2.7V                 01
AT VCC=4.0V                00

SUT0، SUT1: برای انتخاب زمان START- UP بکار برده می شوند که عملکرد این دو بیت در بخش کلاک سیستم در انتهای همین فصل کاملا توضیح داده شده است.
CKSEL0…CKSEL3: عملکرد این بیت ها در بخش ۳-۱۴در انتهای همین فصل کاملا توضیح داده شده است. مقدار پیش فرض ۱MHZ@ INTERNAL RC OSCILLATOR است.
موتور پله ای STEPER MOTOR
موتور پله ای وسیله پر مصرفی است که پالس های الکتریکی را به حرکت مکانیکی تبدیل می کند. در کاربردهای همچون راه اندازهای دیسک سخت چاپگرهای مغناطیسی و رباتیک از موتور پله ای برای کنترل موقعیت استفاده شده است .
هر موتور پله ای دارای یک هسته متحرک مغناطیسی دایمی است که روتور یا شفت هم خوانده می شود و بوسیله یک بخش ثابت به نام استاتور احاطه شده است. معمول ترین موتورهای پله ای چهار سیم استاتور دارند که با سر وسط جفت شده اند.
 این نوع موتورها معمولا به موتور پله ای فاز معروفند. موتور پله ای که در این برنامه استفاده شده است دارای ۵ سیم است : ۴ سیم برای چهار پیچ استاتور و سر دیگر که ولتاژ تغذیه متصل می گردد. با اعمال رشته هایی از تغذیه یا پالس به هر سیم پیچ استاتور روتور خواهد چرخید. رشته های مرسوم متعددی موجودند که هر یک دقت متفاوتی را دارا هستند. جدول زیر یک رشته چهار پله نرمال را نشان می دهد.
جدول رشته چهار پله
خلاف جهت ساعت    سیم پیچ D    سیم پیچ C      سیم پیچ B     سیم پیچ A    پله     در جهت ساعت
    0    0    0    1    1   
    0    0    1    0    2   
    0    1    0    0    3   
    1    0    0    0    4   

باید توجه داشت که اگر چه می توان با هر یک از رشته های موجود در جدول فوق آغاز کرد ولی به محض شروع باید ترکیب رعایت شود.
زاویه پله
زاویه پله مشخصه موتور را نشان می دهد که به ازا هر پله موتور چند درجه چرخش دارد. جدول زیر بعضی از زوایا را برای انواع موتورها نشان می دهد.
جدول زاویه پله برای انواع موتورها
پله در دور     زاویه پله
۵۰۰    72
۲۰۰    8/1
۱۸۰    0/2
۱۴۴    5/2
۷۲    0/5
۴۸    5/7
۲۴    15

پله در ثانیه و دور در دقیقه
رابطه بین RPM یا دور در دقیقه پله در دور و پله در ثانیه از رابطه زیر بدست می آید :
یک چرخش کامل
موتور پله ای مورد استفاده در این پروژه دارای زاویه پله ۱.۸ درجه می باشد و برای یک دور چرخش نیازمند ۲۰۰ پالس می باشد با شمارش پالسها میکروکنترلر AVR می تواند موقعیت روتور را تنظیم کرده و آن را کنترل کند.
راه انداز نیم پله
تحریک نیم پله موجب می شود که دقت موتور دو برابر شود. در این حالت با توجه به موتور استفاده شده نیاز به ۴۰۰ پالس می باشد. جدول رشته نیم پله صفحه بعد منطق مورد نیاز برای برنامه را نشان می دهد. وقتی به انتهای جدول رسیدید این روند را تکرار کرده و دوباره از ابتدای جدول شروع کنید.
برنامه موتور پله ای
در این پروژه برای راه اندازی موتور پله ای از راه انداز ULN2003 استفاده شده است. این درایو ۱۶ پایه دارای ۷ پایه راه انداز کلکتور باز است و بیشترین جریان خروجی آن برای هر پایه ۵۰۰Ma می باشد.
جدول زیر چهار نوع از خانواده ULN را نشان می دهد.
پورت سریال کامپیوترهای شخصی PC:
پورت سریال PC که به نامهای COM port و RS- 232 port نیز شناخته می شود از جمله درگاه های پراستفاده در کامپیوترهای شخصی است و کاربردهای متنوعی مانند اتصال کامپیوتر به مودم ماوسهای سریال بعضی از انواع چاپگرها قفل های دیجیتال و … داشته است.
قلب اصلی پورت سریال یک pc تراشه ای به نام UART می باشد. این تراشه در مدلهای اولیه PC با شماره Intel 8250 بود . سپس در مدل PC- AT از تراشه ۱۶۴۵۰ استفاده شد که نرخهای داده بالاتری را پشتیبانی می کرد.
تراشه بعدی UART 16650 علاوه بر حمایت از قابلیت های قبلی دارای دو بافر ۱۶ بایتی برای فرستنده و گیرنده است. این بافرها به برنامه اجازه می دهند تا به جای ارسال / دریافت یک بایتی در هر بار و انتظار برای تبادل بعدی حداکثر ۱۶بایت داده را به صورت یکجا مبادله کند.بافر گیرنده به ویژه در حل مشکل سرریزی پورت سریال نقش دارد.
وجود فضای ۱۶ بایتی در بافر احتمال روی هم نویسی اطلاعات در سرعتهای بالاتر که در تراشه های قبلی وجود داشت را به حداقل می رساند. همچنین به دلیل کاهش تعداد وقفه ها یا فراخوانی های لازم در تبادل یک بلوک داده کارآیی برنامه را به مراتب ارتقا می دهد. پورتها و ثباتهای تراشه UART در اموری مانند ارسال / دریافت داده ، خواندن وضعیت خط  ، کنترل سیگنالهای دستدهی ، تنظیم baud rate و … استفاده می شوند.
پایه های مهم بورت سریال RS232:
علاوه بر خطوط داده Tx و Rx تعدادی خط کنترلی برای ارتباط با دستگاه های بیرونی مانند مودم وجود دارد که امکان دستدهی و ارتباط با دستگاه مودم را تامین می کند.
نکته : دستدهی مکانیزمی است که توسط آن دو طرف ارتباط از وضعیت یکدیگر با خبر می شوند. این مکانیزم به کمک دو یا چند سیگنال و معمولا به صورت سخت افزاری و خودکار انجام می شود.
–    Tx: پایه خروجی پورت سریال و برای ارسال فریمهای داده آسنکرون مورد استفاده قرار می گیرد.
–    Rx: پایه ورودی پورت سریال و برای دریافت فریمهای داده آسنکرون مورد استفاده واقع می شود.
–    RTS: سیگنال فعال LOW که به مودم اطلاع می دهد که UART آماده ارسال داده است.
–    CTS: سیگنال خروجی مودم به پورت سریال و پاسخی به سیگنال RTS است به عبارت دیگر نشانگر آمادگی متقابل مودم برای تبادل داده است.
–    DTR: سیگنال خروجی پورت سریال و نشان دهنده آمادگی UART برای برقراری ارتباط است.
–    DSR: سیگنال فعال LOW و نشانگر آمادگی مودم برای ارتباط با UART است. این سیگنال دستدهی در پاسخ به سیگنال DTR فعال می شود.
–    DCD: سیگنال فعال LOW که نشان دهنده شناسایی یک حامل داده روی خط توسط مودم می باشد.
سیگنالهای DTR و RTS پس از ریست سیستم غیر فعال می شوند. همچنین این سیگنالها توسط ثبات کنترل مودم قابل مقداردهی می باشند. وضعیت سیگنالهای CTS، DSR، DCD را نیز می توان با خواندن ثبات وضعیت مودم تعیین کرد.
ثباتهای پورت سریال RS-232:
همانطور که قبلا نیز اشاره شد تراشه UART دارای تعدادی ثبات می باشد که از طریق پورتهای خاصی از تراشه قابل دستیابی می باشند. آدرس پورتها و نام ثباتها و بافرهای مربوطه در جدول زیر آمده است :
جدول ۱۴-۱ پورتهای تراشه UART
وضعیت بیت DLAB    ثبات / بافر مربوطه    I/O Address
۰    Tx buffer    XF8
۰    Rx buffer    XF8
۱    Divisisor latch LSB    XF8
۱    Divisisor latch MSB    XF9
۰    Interrupt enable register    XF9
    Interrupt identification reg.    XFA
    Line control register    XFB
    Modem control register    XFC
    Line status register    XFD
    Modem status register    XFE
    Reserved    XFF

در جدول فوق حرف x مشخص کننده شماره پورت سریال می باشد. معمولا ۲=x مترداف با پورت COM2 و ۳=X مترداف با پورت COM1 می باشد. آدرس XF8 را می توان بعنوان آدرس پایه پورت سریال در نظر گرفت. آدرس پورتهای دیگر با اضافه کردن عددی خاص به این آدرس پایه به دست می آیند.
آدرس پایه پورتهای سریال  COM1 تا COM4 در شروع به کار کامپیوترتعیین و به ترتیب در آدرس ۰:۴۰۰h به بعد ازحافظه کامپیوتر ذخیره می شوند. BIOS اغلب بردهای مادر امروزی در PC ها به وسیله برنامه Setup داخلی خود به کاربر اجازه می دهند تا پورت سریال تعبیه شده روی مادر برد را فعال و یا غیرفعال کند و یا آدرس پایه پورت سریال مورد نظر را تغییر دهد.
اکنون به بررسی عملکرد بعضی از پورتهای مهم تراشه UART می پردازیم :
Tx  Buffer و Rx  Buffer : از این ثباتها برای دریافت و ارسال داده ها بر روی پایه های Tx و Rx استفاده می شود. از ثبات Tx  Buffer گاهی به صورت THR نیز نام برده می شود.
نحوه ارتباط پورتهای سریال PC و میکروکنترلر در شکل زیر نشان داده شده است.
با توجه به شکل فوق پایه Tx از میکرو به پایه شماره ۲ از کانکتور DB-9 از پورت سریال و پایه Rx میکرو به پایه شماره ۳ از کانکتور متصل می شود.
 به دلیل استاندارد متفاوت ولتاژ در میکرو و پورت سریال pc که به ترتیب TTL و RS232 می باشد. لازم است که ولتاژهای ارسالی از هر طرف توسط مبدل ویژه ای به سطح ولتاژ مورد قبول طرف دیگر تبدیل شوند. مبدل هایی مانند تراشه MC1488 و تراشه  MC1489 و تراشه MAX232 که ترکیبی از دو تراشه قبلی است در بازار موجود است.
پس از بررسی وضعیت آمادگی فرستنده توسط بیت های مربوطه در ثبات LSR بایت مورد نظر را به پورت XF8 ارسال می کنیم که در صورت خالی بودن ثبات شیفت فرستنده به درون آن انتقال می یابد.
در این ثبات بیت های شروع توازن و پایان با توجه به تنظیمات جاری به بیت های داده اضافه شده و در قالب یک فریم کامل بر روی خط Tx ارسال می گردند. بخش گیرنده که وضعیت خط Rx را دائما زیر نظر دارد پس از اطمینان از صحت بیت شروع دریافتی بیت های باقی مانده فریم را دریافت می کند.
 در هر صورت بدون توجه به وجود خطای توازن یا خطای framing بیتهای داده دریافتی به ثبات Rx Buffer منتقل شده و بیت وضعیت مربوط به خطای رخ داده در ثبات LSR از تراشه UART به نشانه دریافت داده یک می شود.
فرکانس مورد نیاز دو بخش گیرنده و فرستنده توسط بخش تولید کننده نرخ باود تامین می شود که نحوه برنامه ریزی آن را در قسمت های بعد توضیح خواهیم داد.
Stepper Motor و نحوه کنترل آن :
یک Stepper Motor وسیله ای است که پالسهای الکتریکی دریافتی را به حرکت مکانیکی تبدیل می کند و در کاربردهای مختلف جهت کنترل موقعیت و حرکت وسیله استفاده می شود.
 هر Stepper Motor دارای یک آهنربای دایمی چرخان به نام rotor می باشد که در میان دو یا چند سیم پیچ به نام stator قرار داده شده است. متداولترین Stepper Motorها دارای چهار سیم پیچ stator می باشند و معمولا به آنها چهار فازه می گویند . ساختار داخلی این نوع موتور در شکل زیر نشان داده شده است.
در موتورهای چهار فازه دو زوج سیم پیچ stator دارای یک سر مشترک می باشند مانند شکل زیر :
با وجود چرخش آزادانه rotor این حرکت هر بار به اندازه مشخص و ثابتی صورت می گیرد به نحوی که به برنامه نویس اجازه می دهد تا rotor را به مکان دقیقی ببرد. این حرکت مکرر و ثابت نتیجه تئوری پایه مغناطیس یعنی جذب قطبهای غیرهمنام می باشد. جهت چرخش در هر لحظه متاثر از قطبهای stator ها و جریان موجود در هسته آنها می باشد با تغییر جهت جریان قطبها نیز عوض شده و حرکت rotor معکوس می شود.
Stepper Motor مورد استفاده در این آزمایش دارای شش سر سیم می باشد چهار سر مربوط به چهار سر سیم پیچ stator ها و دو سر باقی مانده مربوط به سرهای مشترک است.
برای چرخاندن موتور از یک سری ولتاژ مشخص برای اعمال به سرهای A تا D استفاده می گردد. سریهای مختلف و پراستفاده ای وجود دارند که هر کدام دارای درجه دقت متفاوتی می باشند. در جدول ۱۱-۱ سری متداول چهارگامه نشان داده شده است.
جدول ۱۱-۱ سری چهار گامه کامل
سیم پیچ D    سیم پیچ  C    سیم پیچB     سیم پیچ A     شماره گام
۱    0    0    1    1
۰    0    1    1    2
۰    1    1    0    3
۱    1    0    0    4

مهم : باید توجه داشت که اگر چه می توان از هر نقطه از یک سری مانند سری فوق شروع نمود ولی ادامه کار باید درجهت مناسب و کامل صورت گیرد. به طور مثال اگر از گام شماره ۲ عملیات آغاز شده باشد گامهای بعدی شماره های ۳ و ۴ و سپس ۴،۳،۲،۱ و به همیت ترتیب خواهند بود. همچنین هر چهار گام جدول در هر بار باید بی کم و کاست به سیم پیچ ها اعمال شوند.
زاویه گام یا پله :
سوالی که در اینجا مطرح می شود آن است که با اعمال هر گام به موتور چه میزان حرکتی توسط rotor صورت می گیرد. پاسخ این موضوع بستگی به ساختار داخلی موتور به ویژه تعداد دندانه های موجود بر روی rotor دارد زاویه گام حداقل درجه چرخش rotor معادل با یک گام از سری است و برای موتورهای مختلف متفاوت می باشد. این زاویه برای چندین موتور در جدول ۱۱-۲ نشان داده شده است.
جدول ۱۱-۲ زاویه گام کامل برای چند موتور مختلف
گام بر دور     زاویه گام
۵۰۰    72%
۲۰۰    8/1
۱۸۰    0/2
۱۴۴    5/2
۷۲    0/5
۴۸    5/7
۲۴    15

در جدول فوق عبارت تعداد گام بر دور تعداد گامهایی است که برای یک چرخش کامل ۳۶۰ درجه ای لازم است و به صورت زیر محاسبه می شود :
(زاویه گام) /۳۶۰= تعداد گام بر دور
لازم به ذکر است که برای داشتن زاویه گام کوچکتر لازم نیست که استاتورهای بیشتری در موتور تعبیه شود. زاویه گام موتور از مشخصات سخت افزاری موتور بوده و ارتباط مستقیمی با تعداد دندانه ها در rotor دارد .
تعداد گام بر ثانیه و تعداد دندانه ها در rotor:
در رابطه زیر تعداد گام بر ثانیه از روی مقادیر دور بر دقیقه و تعداد گام بر دور محاسبه می شود:
۶۰/ تعداد گام بر یک دور × تعداد دور بر دقیقه  =  تعداد گام بر ثانیه
با اعمال یک سری چهار گامه rotor فقط به اندازه یک دندانه می چرخد. تعداد دندانه ها متناسب با تعداد گام بر دور بوده و از رابطه زیر به دست می آید:
(طول سری مورد استفاده) / تعداد گام بر دور = تعداد دندانه ها
بعنون مثال در یک موتور با تعداد گام بر دور برابر ۲۰۰ تعداد دندانه ها به صورت زیر محاسبه می گردد:
وقتی از سری ۴ گامه استفاده کنیم
وقتی از سری ۸ گامه استفاده کنیم
کلیه Stepper Motor ها از یک سری ۸ گامه حمایت می کنند که در آن تغییر زاویه معادل هر گام برابر نصف زاویه گام کامل موتور است. به همین دلیل گاهی به این سریها نیم زاویه گفته می شود. بدیهی است که توانایی موتور در حرکت با نصف زاویه گام عادی خود در کاربردهایی که به دقت بالایی نیاز دارند اهمیت می یابد.
 بر این اساس موتوری با زوایه گام ۲ درجه می تواند با استفاده از این سریها به عنوان موتوری با زوایه گام ۱ درجه استفاده شود.
در جدول زیر سری ۸ گامه نمونه نشان داده شده است که حرکت در آن از همان قانون سریهای ۴ گامه پیروی می کند :
جدول ۱۱-۳ سری ۸ گامه مورد حمایت کلیه موتورها
سیم پیچ D    سیم پیچ  C    سیم پیچB     سیم پیچ A     شماره گام
۱    0    0    1    1
۰    0    0    1    2
۰    0    1    1    3
۰    0    1    0    4
۰    1    1    0    5
۰    1    0    0    6
۰    1    0    0    7
۱    0    0    0    8

سرعت موتور : بر حسب تعداد گام بر ثانیه بیان شده و تابعی از نرخ اعمال گامها در یک سری است . ارتباط سرعت موتور را با مقدار RPM در صفحات قبل دیدیم .
سری Wave Drive:
علاوه بر سریهای مورد اشاره سری ۴ گامه دیگری به نام Wave Drive وجود دارد که در جدول زیر مشاهده می شود.
جدول ۱۱-۴ سری ۴ گامه wave drive
سیم پیچ D    سیم پیچ  C    سیم پیچB     سیم پیچ A     شماره گام
۰    0    0    1    1
۰    0    1    0    2
۰    1    0    0    3
۱    1    0    0    4

  راهنمای خرید:
  • در صورتی که به هر دلیلی موفق به دانلود فایل مورد نظر نشدید با ما تماس بگیرید.