فایلکو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

فایلکو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

مقایسه کنترلر PID و LQR در سیستم LFC((کنترل کننده فرکانس بار)) با استفاده از الگوریتم بهینه سازی پناهجو

اختصاصی از فایلکو مقایسه کنترلر PID و LQR در سیستم LFC((کنترل کننده فرکانس بار)) با استفاده از الگوریتم بهینه سازی پناهجو دانلود با لینک مستقیم و پر سرعت .

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


دانلود با لینک مستقیم


مقایسه کنترلر PID و LQR در سیستم LFC((کنترل کننده فرکانس بار)) با استفاده از الگوریتم بهینه سازی پناهجو

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

اختصاصی از فایلکو پایان نامه کارشناسی کنترل اتوماتیک فشارخون با استفاده از کنترلر PID و تنظیم پارامترهای آن توسط الگوریتم ژنتیک دانلود با لینک مستقیم و پر سرعت .

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


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

فرمت فایل: word

تعداد صفحه:111

دانشگاه آزاد اسلامی واحد مشهد پایان نامه کارشناسی کامپیوتر ـ سخت افزار

 موضوع:

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

فهرست مطالب

    فصل اول   مقدمه                                                      ۱
فصل دوم   بیماری فشارخون و روش های درمان پزشکی                          ۴   
۲-۱   مقدمه                                                              ۴
۲-۲   تعریف فشار خون                                                    ۶
۲-۳   انواع فشار خون                                                    ۷
۲-۳-۱   علائم                                                                     ۷
۲-۳-۲   تشخیص                                                                  ۸
۲-۳-۳   درمان                                                                   ۸
۲-۴   افزایش فشار خون                                                     ۱۱                                 
۲-۴-۱   شکل فشار خون بدخیم یا تشدید شده                           ۱۲                 
۲-۵   عوارض ناشی از فشار خون بالا                                           ۱۲
۲-۵-۱   نارسایی قلبی                                                             ۱۲
۲-۵-۲   نارسایی کلیه                                                  ۱۳
۲-۵-۳   ضعف بینایی                                             ۱۳
۲-۵-۴   سکته مغزی                                                     ۱۳
۲-۵-۵   حمله گذرای ایسکمی                                   ۱۴
۲-۵-۶   فراموشی                                                  ۱۴
۲-۵-۷   بیماری عروق قلبی                               ۱۴
۲-۵-۸   سکته (حمله) قلبی                                          ۱۵
۲-۵-۹   بیماری عروق محیطی                                            ۱۵
۲-۶   شیوه های درمان فشار خون بالا                                    ۱۵
۲-۷   برخی داروهای پایین آورنده فشار خون                            ۱۶
فصل سوم   استفاده از الگوریتم ژنتیک در تنظیم پارامترهای کنترلر PID       ۱۷
۳-۱   مقدمه                                                 ۱۷
۳-۲   کنترلر PID                                                             ۱۸
۳-۲-۱   مقدمه                                                            ۱۸
۳-۲-۲   اجزای کنترلر                                                    ۱۹
۳-۲-۳   PID پیوسته                                                      ۲۰
۳-۲-۴   بهینه سازی کنترلر                                            ۲۰
۳-۲-۵   مشخصات کنترلر های تناسبی-مشتق گیر-انتگرالگیر                  ۲۱
۳-۲-۶   مثالی از تنظیم پارامترهای کنترلر PID                             ۲۲
۳-۲-۶-۱   کنترل تناسبی                                               ۲۳
۳-۲-۶-۲   کنترل تناسبی – مشتق گیر                                   ۲۴
۳-۲-۶-۳   کنترل تناسبی – انتگرالی                                            ۲۵
۳-۲-۶-۴   اعمال کنترلر PID                                               ۲۶
۳-۳   الگوریتم ژنتیک                                                       ۲۷     
۳-۳-۱   مقدمه                                                           ۲۷
۳-۳-۲   تاریخچه الگوریتم ژنتیک                                          ۲۸
۳-۳-۳   زمینه های بیولوژیکی                                            ۲۹
۳-۳-۴   فضای جستجو                                                           ۳۰
۳-۳-۵   مفاهیم اولیه در الگوریتم ژنتیک                                        ۳۱
۳-۳-۵-۱   اصول پایه                                              ۳۱
۳-۳-۵-۲   شمای کلی الگوریتم ژنتیک                                   ۳۱
۳-۳-۵-۳   کد کردن                                                   ۳۲
۳-۳-۵-۴   کروموزوم                                                   ۳۲
۳-۳-۵-۵   جمعیت                                                ۳۳
۳-۳-۵-۶   مقدار برازندگی                                             ۳۳
۳-۳-۵-۷   عملگر برش                                                ۳۴
۳-۳-۵-۸   عملگر جهش                                              ۳۶
۳-۳-۶   مراحل اجرای الگوریتم ژنتیک                                  ۳۸
۳-۳-۷   همگرایی الگوریتم ژنتیک                                         ۴۳
۳-۳-۸   شاخص های عملکرد                                            ۴۴
۳-۳-۸-۱   معیارITAE                                                   ۴۴
۳-۳-۸-۲   معیار IAE                                                     ۴۴
۳-۳-۸-۳   معیار ISE                                                    ۴۴
۳-۳-۸-۴   معیار MSE                                                    ۴۵
۳-۴   تنظیم پارامترهای کنترلر PID با استفاده از الگوریتم ژنتیک                 ۴۵
۳-۴-۱   تاریخچه                                                ۴۶
۳-۴-۲   نحوه تنظیم پارامترهای کنترلر PID با استفاده از الگوریتم ژنتیک               ۴۶
۳-۵   مدل سازی ریاضی سیستم تنظیم فشار خون                                          ۴۷
۳-۵-۱   مقدمه                                                                                        ۴۷
۳-۵-۲   مدل های دینامیکی توسعه داده شده                                                  ۴۸
۳-۵-۲-۱   مدل اول                                                                                ۴۸
۳-۵-۲-۲   مدل دوم                                                                               ۴۹
۳-۵-۲-۳   مدل سوم                                                                              ۵۰
۳-۵-۲-۴   مدل چهارم                                                                             ۵۲
۳-۶   پیاده سازی سیستم تحویل دارو برای تنضیم فشارخون                              ۵۳
فصل چهارم   الگوریتمهای هم تکاملی هم کارانه                                                ۵۵
۴-۱   مقدمه                                                                                           ۵۵
۴-۱-۱   مفهوم هم تکاملی در طبیعت                                                           ۵۵
۴-۱-۲   الگوریتم های هم تکاملی ( CEAs)                                                  ۵۶
۴-۲   تاریخچه                                                                                       ۵۷
۴-۳   چرا از الگوریتمهای هم تکاملی استفاده می کنیم؟                                      ۵۸
۴-۳-۱   فضای جستجوی بزرگ یا نامحدود                                                      ۵۹
۴-۳-۲   عدم وجود یا مشکل بودن بیان ریاضی معیار مطلق برای ارزیابی افراد          ۶۰
۴-۳-۳   ساختارهای پیچیده و یا خاص                                                        ۶۱
۴-۴   معایب هم تکاملی                                                                            ۶۲
۴-۵   طبقه بندی الگوریتم های هم تکاملی                                                      ۶۴
۴-۵-۱   ارزیابی                                                                                       ۶۴
۴-۵-۱-۱   کیفیت و چگونگی Payoff                                                          ۶۶
۴-۵-۱-۲   روش های اختصاص برازندگی                                                       ۶۶
۴-۵-۱-۳   روش های تعامل بین افراد                                                            ۶۷
۴-۵-۱-۴   تنظیم زمان به هنگام سازی                                                         ۶۸
۴-۵-۲   نحوه نمایش                                                                               ۶۹
۴-۵-۲-۱   تجزیه مسأله به اجزای کوچکتر                                                    ۶۹
۴-۵-۲-۲   توپولوژی فضایی                                                                       ۶۹
۴-۵-۲-۳   ساختار جمعیت                                                                         ۶۹
۴-۶   چهارچوب کلی الگوریتم هم تکاملی همکارانه                                            ۷۰
۴-۷   مقاوم بودن در الگوریتم های هم تکاملی هم کارانه                                    ۷۰
۴-۸   تئوری بازیهاوتحلیل الگوریتم هم تکاملی براساس مفاهیم تئوری بازی تکاملی  ۷۲
۴-۹   زمینه های کاربرد الگوریتم های هم تکاملی                                              ۷۵
فصل پنجم   شبیه سازی ها و نتایج                                                                ۷۸
۵-۱   مقدمه                                                                                          ۷۸
۵-۲   کنترل بهینه فشارخون حین عمل جراحی توسط الگوریتم ژنتیک                  ۷۸
۵-۲-۱ شبیه سازی سیستم کنترل اتوماتیک فشارخون با کنترلر PID والگوریتم ژنتیک۷۹
۵-۲-۱-۱  انتخاب مدل ریاضی                                                                   ۷۹
۵-۲-۱-۲   انتخاب کنترلر                                                                          ۸۰
۵-۲-۱-۳   انتخاب تابع برازندگی برای الگوریتم ژنتیک                                       ۸۱
۵-۲-۱-۴   اعمال کنترلر و عمل کردن الگوریتم ژنتیک                                       ۸۲
۵-۲-۲   نتایج شبیه سازی                                                                        ۸۴
۵-۲-۳   پاسخ های حاصل از اجرای برنامه شبیه سازی شده                                 ۸۵
فصل ششم   نتیجه گیری و پیشنهادات                                                           ۸۸
۶-۱   نتیجه گیری                                                                                   ۸۸
۶-۲   پیشنهادات                                                                                     ۸۹
مراجع                                                                                                   ۹۰  

 چکیده

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

فشارخون بالا زمانی ایجاد می شود که فشارخون در دیواره رگ ها بیش از حد معمول بالا رود که این وضعیت بسیار خطرناک است چون گاهی اوقات تاْثیرات مخرب آن در مرور زمان افزایش می یابد ، پس ثابت نگه داشتن سطح فشارخون در حالت نرمال حائز اهمیت است . کنترل PID به دلیل سادگی و مقاوم بودن آن تا کنون در کنترل بسیاری از پروسه های صنعتی مورد استفاده قرار گرفته است. معمولا در کاربردهای صنعتی، پارامترهای کنترلر PID به صورت دستی و با سعی و خطا تنظیم می شود. تنظیم پارامترهای کنترلر به صورت دستی، کارایی آن را به ویژه در شرایطی که زمان اهمیت دارد و نیز در مواردی که پارامترهای پلانت از قبل مشخص نباشد، کاهش می دهد. لذا در سالهای اخیر کار تحقیقاتی زیادی در زمینه تنظیم اتوماتیک پارامترهای کنترلر PID انجام گرفته و از بسیاری از تکنیک های هوشمند مانند الگوریتم های ژنتیک، بهینه سازی انبوه ذرات و … برای تنظیم پارامترهای این کنترلر استفاده شده است.

در این پایان نامه، از الگوریتم ژنتیک جهت تنظیم پارامترهای کنترلر PID استفاده شده است. تنظیم اتوماتیک پارامترهای کنترلر توسط الگوریتم ژنتیک، دقت و سرعت کنترلر را به طرز قابل توجهی بهبود بخشیده و انعطاف کنترلر را برای برخورد با سیستمهای مختلف افزایش می دهد. کنترلر PID-GA پیشنهادی ، جهت تنظیم نرخ تزریق دارو به منظور کنترل فشار خون بیمار مورد استفاده قرار گرفته است. نتایج شبیه سازی ها نشان می دهد که این کنترلر با دقت و سرعت مناسب، سطح فشار خون بیمار را به حالت نرمال برمی گرداند و تغییر پارامترهای بیمار نیز در کارایی کنترلر تاثیری نخواهد داشت.

واژه های کلیدیتنظیم اتوماتیک فشارخون ، کنترلر PID ، الگوریتم ژنتیک ، تنظیم پارامترهای کنترلر PID با الگوریتم ژنتیک

فصل اول : مقدمه

امروزه کنترل اتوماتیک ، نقش مهمی در پزشکی مدرن ایفا می نماید . از کاربردهای کنترل در پزشکی ، سیستم های تزریق انسولین[۱،۲] ، کنترل تنفس[۳،۴] ، قلب مصنوعی[۵،۶] و کنترل اندام های مصنوعی[۷] را میتوان نام برد. 

از دیگر کاربردهای مهم و حیاتی کنترل در پزشکی ، کنترل فشار خون است . بطور ساده می توان گفت ، فشار خون متناسب با برون ده قلبی و مقاومت رگ ها است ، لذا برای کاهش فشار خون در فشار خون بالا می توان ، برون ده قلبی و یا مقاومت رگی را کاهش داد.[۸] روش معمول برای کاهش فشار خون ، کم کردن مقاومت رگی ، از طریق تزریق داروهای بازکننده رگ است .

داروی کاهنده فشار خون مورد استفاده در این پایان نامه ، داروی سدیم نیترو پروساید[۱] است که از طریق مهار پیام عصبی از گره های سمپاتیک و پاراسمپاتیک فشارخون را کاهش می دهد . [۹،۱۰]

می توان گفت ، یکی از مهمترین عوامل در عمل جراحی کنترل فشارخون است .[۱۱] زیرا در این حالت افزایش فشارخون ممکن است ، به خونریزی شدید و حتی مرگ بیمار منجر گردد . به طور کلی ،    می توان کنترل فشار خون در عمل جراحی را به دو دسته کلی کنترل فشار در حین عمل جراحی و بعد از عمل جراحی تقسیم بندی نمود. 

کنترل فشار خون بعد از عمل جراحی ، معمولاً در بیماران قلبی که عمل بای پس عروق کرونری[۲] داشته اند انجام می گیرد ،[۱۲،۱۳] زیرا در این بیماران خطر افزایش فشار خون وجود دارد .کنترل فشار خون در حین عمل جراحی از اهمیت ویژه ای برخوردار است ، از دلایل آن می توان به کاهش خون ریزی داخلی ، آشکارسازی جزئیات ساختارهای آناتومی بدن که ممکن است توسط خونریزی محو شده باشند و همچنین تسریع و تسهیل در عمل جراحی ، اشاره کرد .[۱۴]

محققین زیادی در رابطه با کنترل فشار خون به تحقیق پرداخته اند . در اواخر دهه ۱٩٧٠ سیستم های کنترل فشارخون گسترش زیادی یافتند . شپارد[۳] [۱۵] یک کنترل کننده PID را برای کنترل فشار خون بکار برد ، ولی این کنترل کننده نتوانست نسبت به اختلافات جزئی پاسخ به داروهای هایپوتنسیو عملکرد خوبی داشته باشد . استفاده از کنترل تطبیقی توسط ویدرو[۴] [۱۶] ، آنسپارگر[۵] و همکارانش[۱۷] بررسی شد ، ولی این روش نیز نسبت به اغتشاشهای موجود ، کارایی خوبی نداشت . کویوو[۶] [۱۸]، سیستم کنترل فشار خونی را در یک سطح پایین نگه می داشت ولی محدوده فشارخونی که می تواست به عنوان مرجع در نظر گرفته شود ، کم بود . فوکوی[۷] و ماسوزاوا[۸] [۱۹] از منطق فازی برای کنترل فشار خون استفاده کردند ، بطوریکه فشار خون را در یک سطح بالا ، برای بعضی کاربردهای پزشکی ، کنترل می نمودند ولی نوسانات به سادگی در پاسخ ظاهر می شدند ، زیرا وجود زمان مرده در پاسخ را در مرحله طراحی در نظر نگرفته بودند .[۴۷]

الگوریتم ژنتیک ، یک روش بهینه سازی تصادفی است که ایده اولیه آن از مکانیسم انتخاب طبیعی و ژنتیک تکاملی گرفته شده است ،[۲۰]  این روش بهینه سازی با روش جستجوی موازی از مؤثرترین روش های بهینه سازی است .

در این پروژه ، با استفاده از الگوریتم ژنتیک و الگوریتم های هم تکاملی هم کارانه  ، کنترل کننده PID بهینه برای کنترل فشارخون حین عمل جراحی طراحی گردیده است . با استفاده از این روش ، می توان سطح فشار خون را در سطح دلخواه با خطای حالت ماندگار صفر تنظیم نمود .

در فصل دوم این پایان نامه ، در رابطه با فشار خون و روش های درمان پزشکی آن صحبت خواهد شد . فصل سوم به بررسی کنترلر PID و الگوریتم ژنتیک و مدل های ریاضی موجود برای سیستم فشارخون و همچنین تنظیم پارامترهای کنترلر PID با استفاده از الگوریتم ژنتیک ، اختصاص داده می شود . در فصل  چهارم الگوریتم های هم تکاملی هم کارانه و استفاده از آن ها برای تنظیم پارامترهای کنترلر PID مورد بحث قرار خواهد گرفت .  در فصل پنجم نتایج به دست آمده از شبیه سازی سیستم فشار خون و طراحی کنترلر آن مورد مطالعه قرار گرفته و در نهایت در فصل ششم ، نتایج بدست آمده از این تحقیق بیان شده و پیشنهاداتی برای مطالعات آینده ارائه خواهد گردید .

فصل دوم : بیماری فشارخون و روش های درمان پزشکی

۲-۱  مقدمه 

در فصل قبل اهمیت ویژه کنترل اتوماتیک فشارخون در حین عمل جراحی و همچنین تحقیقاتی را که در این رابطه محققین زیادی انجام داده اند اشاره شد ، حال می خواهیم در مورد بیماری فشار خون مفصل تر بحث کنیم .

دستگاه قلب و عروق بدن انسان از یک پمپ با عنوان قلب و کیلومتر ها راه ارتباطی بین اعضا سراسر بدن با عنوان عروق تشکیل شده است.[۲۵]

 

خون تصفیه شده توسط یک رگ بزرگ با عنوان آئورت از قلب خارج می شود، در مسیر خود به قسمت های کوچکتر تقسیم شده و پس از چندین تقسیم سر انجام به مویرگ های کوچکی تبدیل می شود که به خاطر داشتن منافذ ریز در مسیر خود، کار تبادل مواد و انرژی را با بافت ها انجام می دهند.

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

به طور تقریبی کل خونی که در دستگاه قلب و عروق جریان دارد، چیزی حدود ۵ لیتر است و تمام این ۵ لیتر در طول یک دقیقه به قلب وارد شده و از آن خارج می شود. برای آنکه خون بتواند در بدن و در درون رگ ها گردش داشته باشد لازم است که همواره دارای فشار باشد، این فشار را قلب تامین می کند، یعنی با استفاده از قدرت عضلانی خود باز و بسته شده و خون را به گردش در می آورد.

در انتهای هر بار باز شدن، چیزی حدود ۱۰۰ میلی لیتر خون در قلب وجود دارد که وقتی بسته می شود حدود ۸۰-۷۰ درصد آن وارد ابتدای آئورت می کند. وقتی این خون وارد ابتدای آئورت، می شود، فشاری ایجاد می کند که به آن فشار ماکزیمم گفته می شود، حالا قلب شروع به باز شدن می کند تا خون را از ریه ها و همچنین از قسمت های مختلف بدن وارد خود کند. اکنون دریچه ای که در ابتدای آئورت وجود دارد بسته می شود و خون راهی ندارد جز اینکه در مسیر آئورت به راه خود ادامه دهد. خونی که وارد ابتدای آئورت شده بود و فشار ماکزیمم را ایجاد می کرد اکنون به تدریج کم می شود و بدنبال آن طبیعی است که فشار آن هم کم شود اما این فشار به صفر نمی رسد زیرا در مسیر تخلیه آئورت زمانی می رسد که قلب پر شده و مجددا می خواهد خون خود را تخلیه کند. فشار درون شریان آئورت، قبل از باز شدن مجدد دریچه، فشار مینیمم نامیده می شود. از آنجایی که دیواره ی عروق بزرگ و از جمله آئورت خاصیت الاستیسیته دارند ، این فشار ها در مسیر رگ های بزرگ بدن قابل انتقال و همچنین قابل اندازه گیری هستند. . فشار خون سرخرگ ها بوسیله میزان تلاش قلب و سلامتی عروقی خونی مشخص می شود. فشار خون بالا یا هیپرتاسیون[۹] زمانی رخ می دهد که این فشار افزایش یابد.

با توجه به آنچه گفته شد فشار خون در قسمت های مختلف بدن، قابل اندازه گیری است اما بر اساس تجربه بهترین محل اندازه گیری فشار خون، قسمت فوقانی ساعد است.

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

۲-۲  تعریف فشار خون

فشار خون از نظر همودینامیک عبارتست از  نیرویی که خون بر دیواره رگ هایی که در آن جریان دارد وارد می کند. ازدیاد فشار خون از افزایش برون ده قلبی با بالا رفتن مقاومت عروقی و یا هر دو ناشی می شوند. مطالعات مختلف نشان داده که در تمام سطوح فشار خون، خطر مرگ و میر در اثر بیماری های قلبی عروقی متناسب با بالا رفتن میزان فشار خون افزایش می یابد. در واقع نمی توان مرز مشخصی را به عنوان مرز فشار خون طبیعی و فشار خون بالا تعریف کرد، چون فشار خون متغیری است که به صورت پیوسته در جامعه توزیع شده و معیار مشخصی برای طبیعی و یا غیر طبیعی بودن آن وجود ندارد. در واقع فشار خون بالا سطحی از فشار خون است که در آن فواید درمان، بیش از خطر های عدم درمان باشد. فشار خون طبیعی بر اساس فشار سیستولی پایین تر از ۱۲۰mmHg و برای فشار خون دیاستولی پایین تر از ۸۰mmHg است و فشار خون دیاستولی ۸۰ تا ۹۰ و سیستولی ۱۲۰ تا ۱۳۹ به عنوان پره هایپرتانسیون شناخته می شود. شیوع فشار خون بالا در جوامع گوناگون متفاوت بوده و از حدود ۱۰ تا ۶۰ درصد متغیر می باشد. هر چه فشار خون بیشتر باشد، خطر بیماری های قلبی عروقی بیشتر و امید به زندگی کمتر خواهند بود.

فشار خون بالا زمانی ایجاد می شود، که فشار خون در دیواره ی رگ ها بیش از حد معمول بالا رود. این وضعیت بسیار خطرناک است، زیرا گاهی اوقات تاثیرات مخرب آن در مرور زمان افزایش می یابد و حتی ممکن است تا زمانی که به بالاترین حد ممکن نرسیده باشد، مشخص نشود، این مسئله باعث شده است که گاهی از فشار خون به “کشنده آرام” هم یاد کنند. مخالف آن یعنی فشار خون پایین زمانی اتفاق می افتد که فشاری که خون را در رگ ها به سمت قلب و مغز و سایر اعضا داخلی بدن می رساند، بسیار کم شود که باعث سر گیجه و منگی می شود.

فشار خون طبیعی اغلب متغیر است. میزان فشار خون از فردی به فرد دیگر تغییر کرده و در هر فرد طی روز به طور طبیعی بر اساس کار قلب بالا یا پایین می رود. با افزایش سن فشار خون به آرامی بالا می رود. در یک فرد جوان طبیعی، متوسط فشار خون حدود ۸۰/۱۲۰ است. به طور ایده آل فشار خون باید زیر ۸۵/۱۴۰ باشد. اگر فشار خون به طور مداوم از این میزان بالاتر رفت و مثلا به ۹۰/۱


دانلود با لینک مستقیم


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

دانلودمقاله آموزش میکرو کنترلر 8051

اختصاصی از فایلکو دانلودمقاله آموزش میکرو کنترلر 8051 دانلود با لینک مستقیم و پر سرعت .

 

 


قبل از همه چیز چرا 8051 ؟
میکرولنترلر 8051 پایه و اساسی است برای یادگیری دیگر میکروکنترلر ها دستورات اسمبلی این میکرو نسبت به AVR خیلی کمتر هست و دارای امکانات کمتری نسبت به دیگر میکرو ها است به همین دلیل یادگیری و فهم آن خیلی راحت و آسان می باشد که برای شروع ابتدا باید مفاهیم منطق و دیجیتال را خوب فهمیده باشید و بعد از آن باید سخت افرار 8051 و RAM و ROM داخلی آن را درک کرده باشید تا بتوانید یک برنامه کاربردی بنویسید تا یک پروسه را کنترل کند. خیلی ها برای یادگیری میگن که ما که می خواهیم برنامه نویسی میکرو را یاد بگیرم پس بهتر بالاترین میکرو یعنی AVR یا PIC یاد بگیریم در صورتی که به نظر من کاملا اشتاه بوده و کار غلطی است که اگه بخواهید تا آخر ادامه دهید کاری طاقت فرسا خواهد بود. مثل این خواهد بود که سقف طبقه اول یک ساختمان را درست نکرده باشیم و بخواهیم طبقه دوم را درست کنیم. در این وبلاگ من تا بتوانم به زبان ساده و روان مطالب را بیان خواهم کرد که البته اگه یکم علاقه و پشتکار داشته باشد مطمئن باشید به میکرو مسلط خواهید شد و می توانید آن را به راحتی برنامه ریزی کنید. قیمت این میکرو خیلی ارزان می باشد در حدود 1000 تومان و حافظه ROM آن قابل پاک کردن و استفاده مجدد می باشد پس شما به راحتی می توانید در خانه یا محل کار برای راحتی خود و افراد خانواده چیزهایی با آن بسازید که آدم باورش نشه که اینو خودش ساخته و طراحی کرده.

 


تشریح پایه های 8051 و RAM و ROM داخلی آن
8051 دارای 4 پورت ورودی یا خروجی می باشد یعنی اینکه هر کدام از این پورت ها را می توان در یک لحظه به عنوان ورودی استفاده کرد و همان پورت را دوباره در یک لحظه دیگر به عنوان خروجی از آن استفاده کرد. منظور از پورت چیست؟ پورت در میکرو یعنی 8 عدد پین یا 8 خط دیتا یا ذر اصطلاح 8بیتی، که 8051 دارای 4 پورت 8 بتی یعنی 32 پایه می باشد.
میکرو کنترلر AT89C51 دارای 128 بایت RAM و 4KB حافظه برنامه ROM می باشد. و AT89C52 دارای 256 بایت RAM و 8KB حافظه برنامه ROM می باشد. و AT89C55 دارای 256 بایت RAM و 20KB حافظه برنامه ROM می باشد. که بستگی به حجم برنامه ما دارد که از کدام میکرو استفاده کنیم.
کاربرد RAM چست؟ اصلا به چه دردی می خوره؟
RAM یعنی random access memory حافظه با دستیابی تصادفی. از این حافظه برای ذخیره اطلاعات موقت استفاده می شود یعنی اینکه تا زمانی که تغذیه میکرو وصل باشد این اطلاعات از بین نمی روند و با قطع کردن تغذیه این اطلاعات از بین می روند. ما در میکرو 8 ثبات 8 بتی برای ذخیره کردن داده ها داریم در بعضی از مواقع پیش می آید که این 8 ثبات در کل برنامه استفاده شوند و ما به یک ثبات 8 بیتی برای ذخیره سازی داده ها داریم مثلا یک شمارنده طراحی کردیم و همه ثبات ها هم استفاده شده و ما مثلا به دو ثبات احتیاج داریم که می توانیم از هر کدام از خانه های RAM استفاده کنیم. منظور از اطلاعات همان داده های 8 بیتی می باشند یعنی همون 0 یا 1 ها که به 8 تا از آنها یک بایت یا یک داده 8 بیتی می گویند.
حال به تقسیم بندی RAM توجه کنید. برای برنامه نویسی خیلی مهم است که ما از چه خانه های RAM مجاز هستیم استفاده کنیم آیا می توانیم در فلان خانه RAM داده را به صورت بیتی دستکاری کنیم یا داده را 8 بیتی دستکاری کنیم. اصلا در چه محدوده ای از RAM قادر هستیم داده ذخیره کنیم یا بانک های ثباتی در کجای RAM واقع شده اند و دیگر ثبات ها... به جدول زیر که مربوط به RAM خوب توجه کنید:
عملکرد ثبات خانه های 8 بتی RAM آدرس
FF
ثبات B B F0 F1 F2 F3 F4 F5 F6 F7 F0
ثبات A یا انباره ACC E0 E1 E2 E3 E4 E5 E6 E7 E0
کلمه وضعیت PSW D0 D1 D2 D3 D4 D5 D6 D7 D0
IP B8 B9 BA BB BC -- -- -- B8
پورت 3 P3 B0 B1 B2 B3 B4 B5 B6 B7 B0
کنترل وقفه ها IE A8 A9 AA AB AC -- -- AF A8
پورت 2 P2 A0 A1 A2 A3 A4 A5 A6 A7 A0
ارتباط سریال SBUF قابل آدرس دهی نیست 99
SCON 98 99 9A 9B 9C 9D 9E 9F 98
پورت 1 P1 90 91 92 93 94 95 96 97 90
بایت سنگین تایمر 1 TH1 قابل آدرس دهی نیست 8D
بایت سنگین تایمر 0 TH0 قابل آدرس دهی نیست 8C
بایت سبک تایمر 1 TL1 قابل آدرس دهی نیست 8B
بایت سبک تایمر 0 TL0 قابل آدرس دهی نیست 8A
مد تایمر TMOD قابل آدرس دهی نیست 89
مد شمارنده TCON 88 89 8A 8B 8C 8D 8E 8F 88
PCON قابل آدرس دهی نیست 87
بایت سنگین ثبات DPTR DPH قابل آدرس دهی نیست 83
بایت سبک ثبات DPTR DPL قابل آدرس دهی نیست 82
اشاره گر پشته SP قابل آدرس دهی نیست 81
پورت 0 P0 80 81 82 83 84 85 86 87 80
فقط بایتی 80 بایت برای خواندن و نوشتن موقت 30تا7F
بیتی و بایتی 16 بایت برای خواندن و نوشتن موقت 20تا2F

 

بانک های ثباتی شامل R0-R7 R0-R7 بانک 3 18تا1F
R0-R7 بانک 2 10تا17
R0-R7 بانک 1 08تا0F
R0-R7 بانک 0 00تا07
MGH MGH MGH MGH

 

8051 در کل 128 بایت RAM دارد که به صورت جدول بالا تقسیم بندی می شود:
1) 32 بایت از مکان های 00 تا 1F برای بانک های ثباتی و پشته کنار گذاشته شده.
2) 16 بایت از 20 تا2F برای خواندن و نوشتن آدرس پذیر بیتی کنار گذاشته شده.
3) 80 بایت از مکان های 30 تا7F برای خواندن و نوشتن بایتی و یا آنچه که عموما داده موقت گفته می شو به کار می رود.
نکته: جلوی خانه هایی که نوشته شده قابل آدرس دهی نیست یعنی اینکه نمی توان با آدرس هگز آن از این ثبات استفاده کرده به عنوان مثال برای SBUF در برنامه نویسی حتما باید خود SBUF را نوشت یعنی از آدرس هگز آن نمی توان استفاده کرد. ولی در بقه موارد مجاز هستیم. با یک مثال این قضیه را روشن می کنیم:
MOV A,#60H یعنی عدد 60 در مبنای هگز را در انباره کپی کن. حال این دستور را این طوری هم می توان نوشت یعنی از آدرس A استفاده کرد. MOV E0,#60H
در RAM /8051 ما چهار بانک ثباتی داریم که هر بانک داری 8 بایت(R0تاR7) 8بیتی می باشد یعنی:
بانک صفر
R7 D0 D1 D2 D3 D4 D5 D6 D7
R6 D0 D1 D2 D3 D4 D5 D6 D7
R5 D0 D1 D2 D3 D4 D5 D6 D7
R4 D0 D1 D2 D3 D4 D5 D6 D7
R3 D0 D1 D2 D3 D4 D5 D6 D7
R2 D0 D1 D2 D3 D4 D5 D6 D7
R1 D0 D1 D2 D3 D4 D5 D6 D7
R0 D0 D1 D2 D3 D4 D5 D6 D7

 

بقیه بانک ها نیز مانند جدول بانک صفر می باشد از این ثبات ها در برنامه نویسی خیلی زیاد استفاده می شودند.نحوی انتخاب بانک یا تغییر دادن آن به صورت زیر می باشد:
8051 هنگامی روشن می شود بانک صفر به صورت پیش فرض برای بانک ثباتی خود انتخاب می کند که برای تغییر دادن آن می توانیم به صورت زیر عمل کنیم.
RS0(PSW.3) RS1(PSW.4)
0 0 بانک صفر
1 0 بانک یک
0 1 بانک دو
1 1 بانک سه
به کمک دستورات بیتی می توان این بانک را تغییر داد به مثال زیر توجه کنید می خواهیم بانک 3 را به عنوان بانک ثباتی میکرو تغییر دهیم؟
SETB PSW.4
SETB PSW.3
می خواهیم بانک دو را انتخاب کنیم؟
SETB PSW.4
CLR PSW.3
پشته:
هنگامی که 8051 روشن می شود اشارگر پشته به صورت پیش فرض عدد 07 را در خود دارد که نهایت با عث انتخاب بانک 1 برای پشته خود می شود. SP=07H
برای تغییر پشته به مکان دیگری ازRAM یا بانک دیگری می توان به کمک دستور زیر پشته را تغییر داد: MOV SP,#XX که XX آدرس آن مکان از RAM می باشد.
حال کاربرد پشته چیست؟ پشته کاربرد زیادی دارد شاید ما زیاد با آن سرو کار نداشته باشیم ولی CPU با آن خیلی کار دارد به عنوان مثال برای اجرای یک زیر برنامه(برنامه فرعی) مثلا CALL LABEL پردازنده آدرس این مکانی را که در آن به این دستور برخورد کرده، را در پشته خود ذخیره می کند و بعد از اجرای پشته به کمک این آدرس بر می گردد تا ادامه برنامه اصلی را انجام دهد.
برای درج داده رد پشته از دستور PUSH استفاده می کنیم و برای بازیافت داده از پشته از دستور POP استفاده می کنیم. با هر بار درج در پشته اشارگز پشته یک واحد به آن اضافه می شود. و با هر بار بازیافت از پشته اشارگر پشته یک واحد از آن کم می شود.
ROM چیست؟
این حافظه از دست ما خارج است یعنی اینکه فقط توسط کامپیوتر می توان برنامه اصلی را توی این حافظه کپی کرد و ما بعدا توسط خود میکرو نمی توانیم محتوای آن را تغییر دهیم بلکه فقط می توانیم اطلاعات را این حافظه به حافظه RAM انتقال داده و بعد از پردازش می توان آنها را به خروجی فرستاد.
پایه RST(9) ریست
با فعال شدن این پایه یعنی یک شدن به مدت حداقل 2 سیکل ماشین میکرو ریست شده و به خانه 0000H پرش کرده و ار آنجا شروع به خواندن برنامه می کند.
پایه EA
اگر این پایه را یک کنیم میکرو برنامه را از ROM داخلی خودش شروع به خواندن می کند و اگر این پایه را صفر کنیم میکرو از ROM داخلی خودش هیچ اطلاعاتی نمی خواند و با برنامه ریزی که شده از ROM بیرونی شروع به خواندن اطلاعات می کند.
پایه PSE
این پایه برای زمانی است که بخواهیم از RAM یا ROM بیرونی استفاده کنیم که بسته به شرایط یا صف می شود یا یک.
پایه ALE
اگر از RAM یا ROM بیرونی استفاده کنیم این پایه پورت صفر را به عنوان خطوط آدرس معرفی می کند.
دستور EQU و DB
البته این دو دستور جزء قالب های دستوری 8051 نیست یعنی اصلا میکرو چنین دستوری را ندارد و اجرا هم نمی کند. این دو دستور را فقط کامپایلر ها می شناسد که به رهنمون هم معرف هستند اینها برای راحتی کار و برنامه نویسی هستند.
EQU به کمک این دستور می توان یه متغیر تهریف کنیم مثلا ما در یک پروژه داریم که در آن یک کلید به نام OK وجود دارد ما می خواهیم OK را روی بیت 3 از پورت 2 قرار دهیم یعنی اینکه P2.3=OK برای راحتی کار در طول برنامه ممکن از این کلید بخواهیم زیاد استفاده کنیم به همین دلیل اول برنامه این بیت را به متغییر OK نسبت می دهیم به روش زیر:
OK EQU P2.3
…………………….
JB OK,LOOP
برنامه اینطور می باشد که P2.3 به OK اختصاص داده شده و در برنامه اصلی ما می خواهیم که هر گاه این بیت یک شد به آدرس LOOP پرش کند. پس ما می نویسیم اگر OK یک شده به LOOP پرش کن.
DB اگه با LCD سرو کار داشته باشیم برای نمایش پیغام ها روی LCD باید کد اسکی آنها رو نوشت که خیلی کار سخت و وقت گیری به همین دلیل در برنامه پیغام خود را به صورت زیر می نویسیم:
ORG 600H
DB 'WWW.MC8051.BLOGFA.COM'
ابتدا باید مکان این پیغام را مشخص کنیم مثلا من در خانه 600 ROM این عبارت را نوشته توجه شود که هر کاراکتر 8 بیت دارد و هر یک از آنها در خانه 600و601و602و603 تا.... قرار می گیرد. قالب دستور به این صورت می باشد DB ' ' متن یا پیغام را باید حتما بین این دو علامت نوشت تا کامپایلر متوجه شود که متن ما همینی هست که توی این دو تا علامت قرار دارد و بعد از این علامت جزء پیغام ما نیست.
دستور MOV
این دستور پر کاربرد ترین دستور در میکرو می باشد معنی این دستور هم کپی کردن هست و انتقال دادن به مثال های زیر توجه کنید!
MOV A,#80H عدد 80 را در انباره کپی کن
MOV R1,#50H عدد50 را در ثبات R1 کپی کن
MOV P1,A محتوای انباره روی پورت 1 انتقال بده
مثال : برنامه یک چشمک زن بنویسید با دو تا LED که روی بیت های P1.1 , P1.2 وصل شده اند؟
ابتدا بیتهای پورت یک را به صورت زیر می نویسیم و کد هگز آن را بدست می آوریم توجه شود که باید حتما بعد از کد H بنویسیم.
P1 D0 D1 D2 D3 D4 D5 D6 D7
02 0 1 0 0 0 0 0 0
04 0 0 1 0 0 0 0 0

 

عدد 2 را روی پورت 1 انتقال بدهSTART: MOV P1,#02H
یک تاخیر ایجاد کن ACALL DELAY
عدد 4 را روی پورت 1 انتقال بده MOV P1,#04H
یک تاخیر ایجاد کن ACALL DELAY
به اول برنامه بر گردد و مراحل را تکرار کن SJMP START
یک زیر برنامه تاخیریDELAY:
نکته بجای اینکه کد هگز را بدست‌ بیاوریم می توانیم از قاعد زیر استفاده کنیم فقط توجه شود که باید از حرف B حتما استفاده کنیم.MGH
MOV P1,#00000010B , MOV P1,#00000100B
انواع مدهای آدرس دهی
الف) آدرس دهی ثباتی
این روش آدرس دهی به صورت ثباتی انجام می گیرد یعنی اینکه ثبات با ثبات کپی می شوند.
محتوای یکی از ثبات های 1 تا 7 را در انباره کپی می کندMOV A,R1…R7
محتوای R3 در خانه 30 از RAM کپی می شود MOV 30H,R3
ب) آدرس دهی مستقیم
یعنی اینکه ثبات با ثبات یا خانه ای از RAM با خانه ای دیگر به طور مستقیم و بدون واسطه انجام می گیرد.
محتوای R5 در R4 کپی می شودMOV R4,R5
محتوای ثبات B در انباره کپی می شودMOV A,B
محتوای خانه 30 از RAM در ثبات R3 کپی می شود MOV R3,30H
محتوای خانه 30 از RAM در ثبات B کپی می شود MOV B,30H
ج) آدرس دهی غیره مستقیم
همانطور از اسمش پیداست به صورت غیر مستقیم دیتایی از یک نقطه به نقطه دیگر کپی می شود.
محتوای خانه ای از RAM که آدرس آن در ثبات R0 می باشد را در انباره کپی کن MOV A,@R0
محتوای خانه ای از RAM که آدرس آن در ثبات R1 می باشد را در ثبات B کپی کن MOV B,@R1
محتوای خانه ای از RAM که آدرس آن در ثبات R0 می باشد را در خانه 40Hاز RAM کپی کن MOV 40H,@R0
محتوای خانه ای از RAM که آدرس آن در ثبات R1 می باشد را در TL0 کپی کن MOV TL0,@R1
نکته: برای آدرس دهی غیر مستقیم تنها مجاز هستیم از R0 و R1 استفاده کنیم.

 

 

فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد

تعداد صفحات این مقاله  66  صفحه

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


دانلود با لینک مستقیم


دانلودمقاله آموزش میکرو کنترلر 8051