میکروکنترلر ها – برق

مشخصات فایل

مقطع:کارشناسی ارشد
رشته تحصیلی:مهندسی برق
نوع ارائه:پایان نامه
تعداد صفحات:108
قالب بندی:word قابل ویرایش

نحوه خرید

میکروکنترلر ها – برق

شما میتوانید تنها با یک کلید به راحتی فایل مورد نظر را دریافت کنید. 🙂

برای دسترسی به این فایل ابتدا باید اشتراک خریداری کنید. برای خرید اشتراک بر روی لینک زیر کلیک کنید.

ارتقاء عضویت

چکیده

فصل اول : ميكروكنترلر 8051
1-1 دراين بخش اتبدا به اعضاي مختلف خانواده ميكروكنترلر 8051 و ويژگي هاي آنها نگاه مي كنيم . به علاوه خواهيم ديد كه سازندگان 8051 چه كساني هستندوچه نوع محصولي ارائه مي دهند .
تاريخچه مختصري از 8051
درسال 1981 شركت Intel ميكروكنترلربه نام 8051 را معرفي كرد . اين ميكروكنترلرداراي 128 بايت 4k , RAM بايت ROM دو تايمر ، يك پورت سريال وچهار پورت موازي ( هريك 8 بيت ) بود كه همه آنها دريك تراشه تعبيه شده بودند . زماني به آن سيستم در يك تراشه مي گفتند . 8051 يك پروسسور 8 بيت است ، يعني CPU هر بار مي تواند فقط روي 8بيت داده كار كند . داده هاي بزرگتر از 8 بيت بايد به قطعات 8 بيت بشكنند وسپس بوسيلهCPU پردازش شوند . 8051 كلا داراي چهار پورت I/O با عرض 8 بيت است . شكل 2-1 را ملاحظه كنيد گرچه 8051 مي تواندحداكثر 64K حافظه ROM درتراشه داشته باشد ، بسياري از سازندگان فقط 4K بايت را درتراشه كار گذاشته اند .اين مطلب بعدا بطور مفصل بحث شده است .
پس از آنكه Intel بشرط حفظ سازگاري با 8051 اجازه توليد را به ديگر سازندگان داد تراشه مذكور بسيار مورد توجه قرار گرفت .اين توافق منجر به توليد انواع 8051 با سرعت هاي متفاوت مقداري ROM در تراشه بوسيله نيم دو جين سازنده شد . ما بعضي از آنها را بعدا بررسي خواهيم كرد . آنچه اهميت دارداين است كه گرچه انواع مختلف 8051 با سرعت ومقدار ROM متفاوت در تراشه موجودند ولي همه آنها با 8051 اصلي از نظر دستورات سازگارند . اين بدان معني است كه اگرشما برنامه اي براي يكي بنويسيد ، مستقل از سازنده روي ديگري هم قابل اجرا ست .
ميكروكنترلر 8051
8051 عضواصلي خانواده 8051 است Intel آن را MCS-51 مي نامد . جدول 1-1 امكانات اصلي 8051 را نشان مي دهد .
جدول 1-1 امكانات 8051
Quantity Feature
4K bytes ROM
128 bytes RAM
2 Timer
32 I/O Pins
1 Serial port
6 Interrupt sources

توجه : مقدار ROM د رتراشه حجم برنامه را نشان مي دهد .
ديگر اعضاي خانواده 8051
دو عضو ديگر از ميكروكنترلهاي خانواده 8051 با نام 8052 و 8031 نيز وجود دارند .
ميكروكنترلر 8052
8052 عضوي ديگر از خانواده 8051 است اين كنترلر همه امكانات 8051 بعلاوه 128 بايت RAM ويك تايمر اضافي را دارد به بيان ديگر ، 8052 داراي 256 بايت RAM و 3تايمر است اين كنترلر بجاي 8K,4K حافظه ROM را در تراشه داراست .جدول 2-1 ملاحظه شود .
ميكروكنترلرها و پردازنده هاي دروني
همانطور كه از جدول 4-1 ملاحظه مي شود ، 8051 زير مجموعه اي از 8052 است بنابراين همه برنامه هاي نوشته شده براي 8051 قابل اجرا بر روي 8052 نيز هستند ولي عكس آن صحيح نيست .
ميكروكنترلر 8053
ديگر عضو خانواده 8051 تراشه 8053 است .اين تراشه اغلب بنام 8051 بي ROM خوانده مي شود زيرا داراي OK بايت حافظه ROM است .براي استفاده از اين تراشه بايد يك ROM خارجي به آن اضافه كرد اين ROM خارجي حاوي برنامه اي است كه بايد برداشته شده واجرا شود .اين تراشه را با 8051 مقايسه كنيد كه در آن ROM دروني حاوي برنامه مشابهي براي برداشت و اجرا مي تواند باشد ولي به 4K بايت كد محدود است .
ROM متصل به 8031 مي تواند تا 64K بايد باشد .درروند افزايش ROM خارجي به 8031 دو پورت را از دست مي دهيد .بنابراين دو پورت I/O براي كاربر باقي مي ماند . براي حل اين مشكل ، مي توان دو I/Oخارجي به 8031 اضافه كرد . اتصال 8031 به حافظه وپورت هاي I/O همچون تراشه 8255 در فصل 14 بحث شده است .همچنين انواع 8031 با سرعت هاي مختلف بوسيله كمپاني هاي متفاوت در دسترسند .

 

8031 8052 8051 Feature
OK 8K 4K ROMon –chip- program space in bytes) )
128 256 128 RAM ( bytes)
2 3 2 Timers
32 32 32 I/O
1 1 1 Serial port
6 8 6 Interrupt sources

جدول 2-1 مقايسه اعضاي خانواده 8051
فصل اول :ميكروكنترلرهاي 8051
انواع ميكروكنترلر 8051
گرچه 8051 رايج ترين عضو خانواده 8051 است ، ولي شما قادر نخواهيد بود شماره قطعه اي بصورت 8051 ملاحظه كنيد . دليل اين است كه 8051 با حافظه هاي متفاوتي چون ROM UV-EPحافظه سريع ، NV-RAM در دسترس است كه هر يك شماره قطعه متفاوتي دارد . نوع ROM UV-EP خانواده 8051 تراشه 8751 است نوع ROM سريع بوسيله كمپاني هاي متعدد از جمله Atmel راهي بازار شده است . 8051 نوع سريع از Atmel است كه AT89C51 خوانده مي شود . نوع NV-RAM از 8051 بوسيلهDallas semiconductor بنام DS500 شناخته مي شود .همچنين نوع OTP ( يكبار قابل برنامه ريزي ) خانواده 8051 بوسيله سازندگان متعددي توليد شده است اكنون هر يك از تراشه هاي فوق را بطور خلاصه توصيف و كاربرد آنها را بيان مي كنيم .
ميكرو كنترلر 8751
تراشه 8751 فقط بايت حافظه ROM UV- EPدروني است .هنگام استفاده از اين تراشه در طراحي و پياده سازي به دستگاه برنامه نويسي ROM Pو پاك كننده براي پاك كردن ROM UV-EPدردرون 8751 قبل از برنامه نويسي نياز است .باتوجه به اين نكته كه ROM درون اين تراشه از نوع ROM UV-EPاست ،حدود 20 دقيقه براي پاك كردن آن وقت لازم است تا بتوان بعد از آن عمل برنامه نويسي را انجام داد ، اين مسئله موجب شد تا بسياري از توليد كنندگان انواع سريع و NV-RAM نوع 8751 را كه در زير بحث شده بكار ببرند .همچنين نوع سريع 8751 نيز توسط تعدادي از توليد كنندگان ساخته شده است .
AT89C51 از شركت Atmel
اين تراشه 8051 رايج داراي ROM سريع مي باشد ، در طراحي هاي سريع اين نوع حافظه ايده ال است زيرا حافظه سريع مي تواند طي چند ثانيه ،درمقايسه 20 دقيقه لازم براي 8751 پاك شود .با اين دليل AT89C51 بجاي 8751 بكار برده شده است .تا هنگام پاك كردن تراشه وقتي تلف نشود وبدينوسيله ساخت سيستم سريع گردد هنگام استفاده از AT89C51 براي سخت سيستم هاي مبتني بر ميكروكنترلر به سوزاننده يا برنامه ريز ROM سريع نياز داريم ، بااين وجود به پاك كننده ROM نياز نيست .توجه داشته باشيد كه در حافظه سريع بايد تمام حافظه پاك شود تا بتواند مجددا آن را برنامه نويسي كرد .پاك كردن حافظه سريع با خود سوزاننده صورت ميگيرد و با اين دليل پاك كننده جداگانه اي لازم نمي باشد .براي حذف سوزاننده ROM P Atmelروي نوعي از AT89C51 كار مي كند كه مي تواند از طريق پورت سريال COM يك IBM PC برنامه ريزي شود .

نرم افزار كنترلر :
نرم افزار اين مدلر از دو قسمت تشكيل شده است يك قسمت ازاين نرم افزار برنامه اي است كه در ميكروقرار دارد كه وظيفه دريافت دما از ADC0804 وارسال آن به كامپيوتر و دريافت عدد حاصل از فرمول PID وايجاد PWM ( موج مربعي با Daty cyde هاي متفاوت را دارد قسمت ديگرنرم افزار ، برنامه اي است كه توسط visual Balic طراحي گرديده است كه وظيفه كنترل را عهده دار است .
همانطور كه درصفحه بعد ملاحظه مي كنيد .برنامه ميكروكنترلر 89551 به اين صورت طراحي شده است كه ازدو تايمر استفاده شده است كه يكي تايمر صفر درمد يك وديگري تايمر يك درمد دو مي باشد .
همچنين از وقفه دريافت Data سريال استفاده شده است .كه براي اين منظور Baud Rate برابر 9600 درنظر گرفته شده است . كه براي تنظيم Baud Rate از تايمر يك درصد دو استفاده شده است كه روش تنظيم آن درفصل اول توضيح داده شده است .
با استفاده از تايمر صفر pwm راايجاد شده كه چون وظيفه اصلي ميكروتوليد همين موج مربعي با duty cyde هاي متفاوت است اولويت را به اين تايمر اختصاص داده شده كه اين امر با تنظيم رجيستر IP محقق گرديده است .
با توجه به اينكه بيت هاي دريافتي وارسالي داراي 10 بيت مي باشد ( بيت شروع + لايت + بيت خاتمه ) واينكه از9600 Baud Rate استفاده گرديده پس مي توان 960 بايت در ثانيه فرستاد .

فرض مي كنيم درعمل امكان درسال 800 بايت در ثانيه باشد ولي چون هم عمل فرستادن وهم عمل دريافت بايت راخواهيم داشت . بايت درثانيه مي توانيم هم بفرستيم وهم بگيريم يعني درواقع دراين مدلر مي توان در ثانيه 400 بار از ADC0804 نمونه گرفت وبه كامپيوتر فرستاد .البته دراين برنامه در ثانيه 50 بار از ADC نمونه گيري شده است يعني هر 20 ميلي ثانيه يكبار نمونه گيري انجام مي شود وبه كامپيوتر ارسال مي شود .
تايمر صفر هر 0,1 ميلي ثانيه يكبار وقفه مربوط به تايمر صفر را اجرا مي كند به اين ترتيب كه هر 0,1 ثانيه يكبار يك و به Counter اضافه مي كند وبا عدد دريافتي از كامپيوتر تر مقايسه مي كندكه اگر برابر بود پايه p2.1 را خاموش مي كند واگر برابر نبود روشن نگه مي دارد تاوقفه بعدي اجرا شود . تا counter=200 شود به اين ترتيب پالس با عرض 20 ميلي ثانيه خواهيم داشت . يعني با پالس هايي با عرض Daty cycle , 20ms هاي متفاوتي كه توسط عدد دريافتي ازكامپيوتر مشخص ميگردد گرماي Header كنترل مي شود .
كه تقريبا ه ر20 ميلي ثانيه نيز اينترنت سريال اجرا مي شود وعدد جديدي از كامپيوتر دريافت مي كند درواقع وقتي عرض پالس به 200 قسمت تقسيم مي شود دقت درتغييرات دما 0.5 درجه سانتي گراد خواهد شد .
نرم افزار كه در Visual Basic طراحي گرديده همانطور كه درصفحات بعد ملاحظه مي كنيد از 4 پنتيوم فرم ( form) تشكيل شده است كه فرم اولي معرف پروژه است كه پس از 5 ثانيه ناپديد شده و سپس فرم اصلي برنامه به نام pid digital controler ظاهر مي شود كه شامل منوهاي Help , terminal,view, Edit, File همچنين شامل دكمه هاي فرمان Exit, Groph, setup, cancle, ok مي باشد و نيز شامل جعبه متني به نام tempreture است كه اين جعبه متن دماي مورد نظر كاربر را دريافت مي كند در واقع اين دما همان set point مورد نظر است .
فشردن دكمه فرمان setup باعث ظاهرشدن فرم ديگري به نام setup مي شود كه دراين فرم مي توان پارامترهاي كمتراز مثل zd,zi,kc را تنظيم كردكه مي توان از پارامترهاي پيش فرضي كه دربرنامه وجود دارد استفاده كرد يا پارامترهاي دلخواه را به برنامه دادكه اين فرم نيز شامل منوهاي viwe, Edit, file مي باشد .با فشردن دكمه فرمان Graph درفرم اصلي برنامه فرم ديگري به نام Graph باز خواهد شد كه دراين فرم با فشردن start نمودار مربوط به تغيرات دما برحسب زمان لحظه به لحظه رسم مي شود .
وهمچنين وقتي وارد كردن دماي مورد نظر در جعبه متن tampreture دكمه فرمان ok فشرده شود زمان سنجي كه در فرم Graph وجود دارد شروع به كار مي كند . كه مي توان براي ثبت زمان از آن استفاده كرد .
همچنين دكمه فرماني به نام rst دركنار اين زمان سنج وجود دارد كه براي reset كردن آن استفاده مي شود در واقع بر نامه اصلي به اين صورت عمل مي كند كه تايمر يك هر 20 ميلي ثانيه يكبار پورت كامپيوتر را چك مي كند .
وعدد دريافتي را در متغيري به نام preoenttemp قرارمي دهد كه تايمر 2 هر نيم ثانيه بار را اين عدد را روي فرم نمايش مي دهد . تايمر يك پس از چك كردن پورت پس از اينكه مقادير را درفرمول PID ديجيتالي كه دراين قسمت نوشته شده است قرا رداد حاصل فرمول را با اعداد 200,0 مقايسه ميكند كه اگر بزرگتر از 200 بود درمتغير Pid عدد 200 راقرار مي دهد وعدد 0 را از پورت خارج مي كند اگر از 0 كوچكتر بود عدد 0 را در متغير Pid قرار مي دهد و عدد 200 را ازپورت خارج مي كند ولي اگرعدد حاصله بين 200,0 بودهمان عدد را از پورت خارج خواهد كرد .
به اين دليل برنامه به اين صورت نوشته شده كه وقتي دماي مورد نظر از دماي فعلي بيشتر باشد با زياد شدن دماي Heater وتركيب شدن دماي آن به دماي مورد نظر كاربر ( Setpoint) خطا هر لحظه كمتر خواهد شد و خطاي يك لحظه قبل يعني X1 بزرگتر از X0خواهد شد پس عددمربوط به Pid منفي خواهد شد بنابراين وقتي عدد حاصله منفي شود بايد Heater به گرم شدن ادامه دهد پس مقدار 200 از پورت خارج مي شود تا كل پالس خارجي از پايه P2.1 يك باشد .
وبه همين ترتيب برعكس وقتي بزرگتر از 200 باشد بايد كل پالس خروجي در پايه P2.1 صفر باشد .عدد بدست آمده از فرمول Pid ممكن است خيلي بزرگتر از 200 ويا خيلي كوچكتر از 0 باشد ولي چون ميكرو تنها اعداد بين 0 تا 200 را با Gpunter مقايسه مي كند ( يعني در واقع پالس PWM خروجي از ميكرو به 200 قسمت تقسيم شده ) بايداعداد حاصله از فرمول را بين 0تا 200 محدود كنيم كه اين كار يك مزيت د يگر نيز دارد كه آْن اين است كه سرعت سيستم را افزايش دهد .

نحوه خرید

دانلود رایگان فایل
شما میتوانید تنها با یک کلید به راحتی فایل مورد نظر را دریافت کنید. 🙂

برای دسترسی به این فایل ابتدا باید اشتراک خریداری کنید. برای خرید اشتراک بر روی لینک زیر کلیک کنید.

ارتقاء عضویت

در صورت بروز هر گونه مشکل در روند خرید اینترنتی، بخش پشتیبانی کاربران آماده پاسخگویی به مشکلات و سوالات شما می باشد

راهنمای سایت

برخلاف سایت های دیگر که فایل ها را به صورت تکی می فروشند روال سایت ما این است که شما با عضویت در سایت ما میتوانید از تمام فایل های موجود استفاده کنید.

تمام مطالب سایت فقط برای اعضای سایت رایگان است.

نحوه عضویت در سایت