دانلود پروژه عملكرد قدرت الكتریكی در توزیع و انتقال برق – قسمت دوم

دانلود پایان نامه

در این فصل طراحی مدارات فرستنده و گیرندة‌ مبتنی بر استاندارد X10 و با بكار گیری میكروكنترلرهای خانوادة‌PIC18F مورد بررسی قرار خواهد گرفت و در هر مور به تفكیك، ابتدا طراحی مدارات سخت افزاری مورد ارزیابی قرار خواهد گرفت و سپس الگوریتم و برنامة‌ ایجاد شده جهت برنامه‌ریزی میكروكنترلر ارائه خواهد شد. نكته ای كه در این میان حائز اهمیت است توجه به روش های بكار رفته جهت اتصال به خطوط برق(اعم از كوپلاژ و فیلتریزاسیون )‌ و همچنین دریافت و جداسازی سیگنال و پرش و رفع نویز و تقویت سیگنال می باشد. دقت در الگوریتم برنامه،‌ نحوة‌ بكارگیری وقفه های داخلی و خارجی و همچنین تولید، ارسال و دریافت پالس توسط میكروكنترلر نیز نحوة باپاس میكروكنترلرهای خانوادة‌ PIC18F برای علاقمندان به آشنایی با نحوة‌كار با میكروكنترلرها مفید خواهد بود. از این رو در ابتدای این فصل به توصیف مختصر معماری میكرو كنترلرهای PIC می پردازیم.

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

 3-1 توصیف ساختار میكروكنترلرهای PIC

   ٣-١-١-انواع میکروکنترلرهای PIC

   میکروکنترلر های PIC را در حالت کلی می توان به پنج دسته تقسیم نمود. دسته اول میکروکنترلرهای هشت پایه PIC12CXXX هستند که دارای دستور العملهای دوازده یا چهارده بیتی هستند. منظور از دستور العمل دوازده یا چهارده بیتی این است که Opcode دستور العملهای این میکروکنترلرها به صورت دوازده یا چهارده بیت در حافظه ذخیره می شود. از مشخصات این میکروکنترلرها می توان به ولتاژ تغذیه کم آنها ( در حدود 2.5V-5.5V)‌، کوچکی و پایه های کم آنها، دارا بودن قابلیت وقفه، دارا بودن فضای پشته جداگانه و حافظه EEPROM اشاره نمود. دسته دوم میکروکنترلرهای PIC16C5X هستند که دارای دستور العملهای دوازه بیتی بوده، در ابعاد 14، 18، 20 و 28 پایه ساخته شده اند. ولتاژ کاری این دسته 2V بوده، نوع PIC16HV5XX قابلیت کار کردن تا ولتاژ 15V را نیز داراست. نوع سوم میکروکنترلرهای خانواده PIC16CXXX هستند که دارای دستور العملهای چهارده بیتی بوده، در ابعاد 18 تا 68 پایه ساخته شده اند. این دسته از میکروکنترلرها علاوه بر قابلیت پشتیبانی از وقفه های متعدد، دارای ماژولهای جانبی متعددی هستند که اکثر نیازهای صنعتی را برآورده می کنند. میکروکنترلرهای PIC17CXXX و PIC18X دسته چهارم و پنجم از میکروکنترلرهای PIC هستند که از مشخصات آنها می توان به دارا بودن دستورالعملهای شانزده بیتی، قابلیت پشتیبانی از وقفه ها، دارا بودن ماژولهای جانبی متعدد و تعداد هفتاد و پنج دستور العمل اشاره نمود.

   میکروکنترلرهای PIC میکروکنترلرهایی طراحی شده با تکنولوژی Nanowatt بوده،‌دارای ماژولهای جانبی و قابلیت های متعددی هستند. از جمله ویژگی این میکروکنترلرها می توان به مدهای کاری مختلف، دارا بودن حافظه Flash با ظرفیت بین 48KByte تا 128 KByte ، دارا بودن 4Kbyte حافظه RAM و 1KByte حافظه EEPROM اشاره نمود. حافظه Flash و EEPROM این میکروکنترلر ها به ترتیب قابلیت خواندن و نوشتن تا صد هزار و یک میلیون مرتبه را دارا بوده،‌ مدت حفظ اطلاعات آنها بدون Refresh کردن، تا چهل سال تخمین زده می شود. از دیگر ویژگیهای این میکروکنترلرها دارا بودن ده نوع منبع پالس ساعت مختلف است که به کاربرد قابلیت انعطاف خاصی در انتخاب اسیلاتور مورد نیاز می دهد. چهار مد اسیلاتور کریستالی، مد اسیلاتور خارجی، مد اسیلاتورهای RC داخلی و حلقه قفل فاز داخلی برای ضرب فرکانس اسیلاتور خارجی در عدد چهار از جمله مدهای کاری اسیلاتور در این میکروکنترلرهاست.

   مدهای مختلف مدیریت توان از دیگر ویژگی این میکروکنترلرهاست که استفاده از پالس ساعت داخلی و پالس ساعت Timer 1 را در مد Run فراهم کرده و تلفات توان را کاهش می دهند. همچنین با فعال شدن مد Idle ،‌ ماژولهای خارجی به کار خود ادامه می دهند ولی CPU در این مد متوقف شده، تلفات توان را کاهش می دهد. تغییر مدها با استفاده از نرم افزار صورت گرفته و به کاربر اجازه می دهد تا توان تلفات را کنترل نماید.

   میکروکنترلرهای PIC دارای سه نوع حافظه RAM، EEPROM و حافظه Flash هستند. حافظه RAM برای ذخیره موقت اطلاعات به کار رفته و CPU برای اجرای برنامه و انجام محاسبات خود از آن استفاده می کند. به عبارت دیگر این نوع حافظه به عنوان یک چکنویس در اختیار CPU قرار گرفته، با قطع جریان برق اطلاعات آنها از بین نمی رود. حافظه Flash برای ذخیره کدهای برنامه به کار برده شده و با توجه به این که حافظه EEPROM دارای قابلیت خواندن و نوشتن به تعداد دفعات بسیار زیاد است. از این نوع حافظه برای ذخیره دیتاهایی استفاده می شود که ممکن است دارای تغییرات بسیار زیادی باشند.

در زیر به توصیف نحوة استفاده از حافظة Flash می پردازیم.

شکل(1-1 ) نماِیش بلوکی معماری میکروکنترلر PIC18F452

   ٣-١-٢-بیتهای پیکر بندی(‌Configuration Bits)‌

   قسمتی از حافظه Flash میکروکنترلرهای PIC18 که در محدوده آدرس 300000h-3FFFFFh قرار دارد، تحت عنوان فضای حافظه پیکربندی شناخته شده و محلی است که مقدار رجیسترهای پیکربندی، ID میکروکنترلر و ID برنامه نویس در آنجا ذخیره می شود. چنانچه مشاهده می شود، این رجیسترها دارای آدرسی بسیار بالاتر از آدرس قابل دسترسی حافظه Flash بوده، برای کاربردهای خاص که در ادامه بررسی خواهد شد، به کار گرفته می شوند.

رجیسترهای پیکربندی همان طور که از نام آنها پیداست، برای پیکربندی و انتخاب قابلیتهای خاص میکروکنترلر به کار برده می شوند. به عنوان مثال انتخاب مد کاری حافظه،‌ فعال یا غیر فعال کردن شمارنده Watchdog، انتخاب اسیلاتور تأمین کننده پالس ساعت میکروکنترلر و قابلیتهای دیگری که در طول پروژه بررسی خواهد شد، با استفاده از رجیسترهای پیکر بندی مختلف، تنظیم می شوند.

بیتهای این رجیستر ها در صورت برنامه ریزی صفر و در غیر این صورت یک خواهند بود برنامه ربزی این بیتها مشابه خواندن و نوشتن حافظه Flash بوده،‌ مورد بررسی قرار خواهد گرفت. به عنوان مثال مد کاری حافظه میکروکنترلر با برنامه ریزی دو بیت کم ارزش رجیستر پیکر بندی CONFIG3L تنظیم می شود.

   ٣-١-٣-نحوه ذخیره و اجرای دستورالعملها در حافظه Flash

   با توجه به آدرس دهی شدن حافظه Flash به صورت بایتی و شانزده یا سی و دو بیتی بودن دستورالعملها،‌هر دستورالعمل در دو یا چهار بایت از حافظه ذخیره می شود. بایت کم ارزش دستور العمل همیشه در یک آدرس زوج از حافظه ذخیره می شود. به عبارت دیگر آدرس ذخیره بایت کم ارزش صفر است. در نتیجه با توجه به شانزده بیتی بودن حافظه Flash، PC به صورت دو واحدی افزایش یافته و بیت کم ارزش آن همیشه صفر خواهد بود.

     میکروکنترلر های خانواده PIC18 دارای هشت دستورالعمل چهار بایتی CALL، MOVFF ، GOTO، LSFR، ADDULNK، CALLW، ‌MOVSS‌ ، SUBLNK هستند. در تمام این دستورالعملها، چهار بیت پر ارزش Word دوم یک بوده، مشابه دستورالعمل NOP عمل کرده و دوازده بیت دیگر دیتایی است که برای آدرس دهی بایتی از حافظه به کار می رود. در نتیجه در هنگام اجرای دستورالعمها، پس از واکشی دو بایت اول، دو بایت دوم واکشی و دستورالعمل اجرا می شود ولی اگر به دلایلی دو بایت اول واکشی نشد و دو بایت دوم واکشی و اجرا شد، در این صورت فقط با یک دستور العمل NOP اجرا خواهد شد.

   ٣-١-٤-سیکل دستورالعمل میکروکنترلرهای PIC

   پالس ساعت اعمالی به میکروکنترلر( داخلی یا خارجی)، در داخل میکروکنترلر بر چهار تقسیم شده و چهار پالس ساعت غیر همپوشان ایجاد می کند. در زمانهای خاص هر کدام از این پالسها، اتفاق تعیین شده ای رخ می دهد. به عنوان مثال فقط در لبه بالارونده پالس ساعت Q1 مقدار PC تغییر و واکشی دستورالعملها انجام می شود. دستورالعمل واکشی شده در رجیستر دستور العمل[1] ذخیره و در مدت زمان Q1 تا Q4 بعدی تشخیص داده شده و اجرا می شود. پالسهای ساعت ایجاد شده و نحوه اجرای یک دستور العمل در شکل ٣-٢ نشان داده شده است. به چهار سیکل Q1 تا Q4 که مدت زمان اجرای یک دستورالعمل می باشد. اصطلاحاً یک سیکل دستورالعمل گفنه شده، با TCY نمایش داده می شود. هنگام اجرای یک دستورالعمل که در سیکل قبلی واکشی شده است، دستورالعمل بعدی واکشی می شود. در نتیجه بر اساس معماری Pipeline ، هر دستورالعمل در یک سیکل دستور العمل اجرا می شود. روند واکشی و اجرای دستورالعملهای یک مثال ساده در شکل ٣-٣ نشان داده شده است. همان طور که در شکل نشان داده شده است، دستورالعملهای پرش که باعث تغییر PC می شوند، در دو سیکل دستورالعمل اجرا می شوند

شکل 2-3 ، نشاندهنده پالس ساعت و سیکل اجرای یک دستورالعمل

شکل ٣-٣، نشاندهنده روند واکشی و اجرای دستورالعملها

٣-١-٥- منابع وقفه درمیکروکتترلرهای PIC

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

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

   برای درک نحوه عملکرد وقفه فرض می شود، دستور العمل0x14 movlw در آدرس 0x200 حافظه Flash ذخیره شده باشدو هنگام اجرای این دستورالعمل در برنامه اصلی از طریق رابط میکروکنترلر اطلاعاتی دریافت شود. با توجه به این که وقفه دریافت اطلاعات رابط، فعّال شده است،‌ در نتیجه در این مرحله مقدار 0x202یا آدرس دستورالعمل بعدی در پشته ذخیره می شود. سپس مقدار PC برابر 0008h شده و پرش به بردار وقفه انجام می شود. با توجه به اینکه ممکن است وقفه دریافت یا ارسال باعث پرش به این نقطه شده باشد، در نتیجه در آدرس 0008h با بررسی پرچمهای وقفه، منبع تشخیص داده شده و با توجه به این که در این حالت فرض شده است. وقفه دریافت اطلاعات باعث پرش به بردار وقفه شده است، در نتیجه پرش به برنامه سرویس وقفه دریافت باید اجرا شود. برای این کار آدرس این برنامه در PC نوشته شده و پرش به این برنامه انجام می شود. در ابتدای این برنامه مطابق آنچه قبلاً گفته شد، ابتدا مقدار رجیستر STATUS WREG,و BSR در محل مشخص شده در ابتدای برنامه ذخیره و در انتهای برنامه سرویس وقفه بازیابی شده است.

   ٣-١-٥-١-وقفه های خارجی

   همان طور که ابتدای بحث گفته شد، وقفه ها به دو دسته داخلی و خارجی تقسیم می شوند. وقفه های داخلی توسط ماژولهای جانبی ایجاد می شوند در حالی که وقفه های خارجی وقفه هایی هستند که از دنیای خارج و توسط پایه های RB0/INT0، RB1/INT1 ، RB2/INT2 وRB3/INT3 در روند اجرای برنامه اصلی وقفه ایجاد کرده و باعث اجرای برنامه سرویس وقفه خود می شوند. وقفه های خارجی حسّاس به لبه بوده و لبه تحریک کننده آنها توسط بیتهای رجیستر INTCON2 تعیین می شود. وقفه های خارجی با استفاده از بیتهای INTxIE فعّال می شوند. در صورتی که بیت INTxIE قبل از ورود میکروکنترلر به یکی از مدهای مدیریت توان یک شده باشد، وقفه های خارجی می توانند میکروکنترلر را به حالت Wake- Up منتقل نمایند و در صورتی که بیت فعال ساز وقفه عمومی GIE یک باشد، برنامه پس از Wake- Up، به بردار وقفه پرش می کند. برای تعیین اولویت وقفه های خارجی نیز از بیتهای INT1IP ، INP2IP و INP31P استفاده می شود. برای وقفه خارجی INT0 بیت اولویت وقفه وجود نداشته و این وقفه همیشه دارای بالاترین اولویت است.

   ٣-١-٦-کلیاتی درباره عملکرد ماژول CCP در تولید پالس PWM

   هر کدام از ماژولهای CCP/ECCP دارای یک رجیستر شانزده بیتی هستند که بسته به مد کاری ماژول، می تواند به عنوان رجیستر دریافت یا رجیستر مقایسه یا رجیستر Duty Cycle به کار برده شود(Duty Cycle قسمتی از شکل موج پالس است که در منطق Active High دارای سطح منطقی یک و در منطق Active Low دارای سطح منطقی Low است). ماژولهای CCP به همراه شمارنده های گفته شده به کار برده شده، بسته به پیکربندی آنها می توانند در یکی از سه مد عنوان شده در بالا کار کنند. در مد دریافت، هنگامی که سیگنال پایه CCPx مطابق تنظیمات آن تغییر کند، مقدار شمارنده مورد استفاده در رجیستر CCPRx نوشته می شود. به عبارت دیگر با استفاده از این قابلیت می توان زمان وقوع یک رویداد خارجی را ثبت نمود. در مد مقایسه مقدار رجیستر CCPRx با مقدار شمارنده مورد استفاده مقایسه شده و در صورت تساوی پایه CCPx بسته به نحوه انجام تنظیمات آن تغییر خواهد کرد. مد PWM نیز چنانچه از نام آن مشخص است برای تولید شکل موج PWM به کار برده می شود. در ادامه، به تشریح عملکرد مد PWM می پردازیم.

   در مد PWM خروجی قرار گرفته بر روی پایه CCPx یک شکل موج PWM با دقت حداکثر ده بیت می باشد از آنجایی که پایه های ماژولهای CCP4 و CCP5 از طریق PORTG انتخاب می شوند، باید پایه CCP4 یا CCP5 با صفر کردن بیت TRISG متناظر به صورت خروجی پیکر بندی شوند.

در شکل 8-3 بلوک دیاگرام داخلی ماژول CCP در مد PWM نشان داده شده است. این بلوک دیاگرام دارای دو قسمت شمارنده و ماژول CCP است. رجیستر PR2 در این مد برای تعیین پریود شکل موج PWM و رجیستر CCPRxL برای تعیین Duty Cycle آن به کار برده می شوند.

برای تغییر پریود یا Duty Cycle شکل موج PWM باید به ترتیب و در زمانهای مناسب مقدار رجیسترهای (PR4) PR2 و رجیستر CCPRxL و بیتهای CCPxCON<4:5> را تغییر داد. مقدار رجیستر CCPRxL و بیتهای CCPxCON<4:5> را در هر زمانی می توان تغییر داد ولی این مقادیر پس از مساوی شدن شمارنده و مقدار رجیستر (PR4) PR2 در رجیستر CCPRxH نوشته می شود. در مد PWM رجیستر CCPRxH فقط قابل خواندن بوده و نمی توان مقدار آن را به طور مستقیم تغییر داد. رجیستر CCPRxH و دو بیت CCPxCON<4:5> در مد PWM دارای بافر دو گانه هستند. این بافر دوگانه باعث ایجاد خروجی PWM مناسب و حذف تداخلها می شود

   ٣-١-٧-مدهای مختلف پالس ساعت

   مد کریستال خارجی: مطابق شکل ٣-٤در مدهای XT ، LP، HSPLL یک کریستال یا رزوناتور موازی به پایه های OSC1 و OSC2 متصل می شود. استفاده از کریستال سری ممکن است منجر به تولید فرکانس خارج از محدوده تعیین شده توسط کارخانه شود. مقاوت سری RS در شکل ٣-٤ برای کریستالهای AT Strip Cut به کار برده شده و مقاومت RF دارای مقداری در حدود 10 M – 2 M است. توجه به این نکته الزامی است که رزوناتور و کریستال دارای ساختار داخلی یکسانی هستند. با این تفاوت که ضریب کیفیت کریستال پایین تر بوده و در مواقعی که نیاز به دقت بالا نباشد، به کار برده می‌شود. در مد HS یک پالس ساعت خارجی نیز می تواند پالس ساعت میکروکنترلر را تأمین کند ولی در این حالت پایه به OSC2 به صورت I/O عمل خواهد کرد

شكل( 3-4) ، اتصال كریستال به میكروكنترلر

   3-2- طراحی مدارات فرستنده

   این بخش،‌ شامل مدارات منبع تغذیه،‌ فیلترینگ و كوپلاژ، آشكار ساز عبور از صفر جهت همزمان سازی و مشخص شدن زمان ارسال پالس،‌ مولد پالس مربعی جهت تولید سیگنال X10 ،‌ تقویت كنندة‌ سیگنال و همینطور میكروكنترلر و مدارات جانبی است. در زیر به تشریح اجزاء‌ مدارات فوق می پردازیم.

3-2-1- منبع تغذیه

   در اینگونه مدارات متصل به خطوط برق،‌ تأمین تغذیة‌میكروكنترلر و دیگر بخشهای مدار از طریق یكسره سازی و رگوله نمودن برق ورودی دستگاه انجام می شود. از این جهت دوكاربرد منبع تغذیة‌ترانسفورماتوری و بدون ترانسفورماتور پیش رو است. كاربرد ترانسفورماتور از نظر هزینه بر بودن و نیز حجم قابل ملاحظه در این گونه مدارات فرستنده و گیرنده، كمتر مورد توجه قرار گرفته است.

هرچند منابع تغذیة‌ بدون ترانسفورماتور از نقطه نظر هزینه و حجم و وزن مورد استفاده اند اما معایب آنها اعم از جریان كم دهی و عدم قرنتینگی از خطوط برق را نباید از خاطر دور داشت.

   در طراحی مدار فرستنده و گیرنده نیز به مانند مدارات مشابه،‌ از منبع تغذیة بدون ترانسفورماتور بهره برده ایم.

   شكل٣-١ را در نظر بگیرید. در این مدار در صورتی كه راكتانس خازن بسیار بزرگتر از امپدانس مقاومت بار باشد، جریان ثابتی از مقاومت بار خواهد گذشت. این ایدة ‌اولیه منجر به ساخت منبع تغذیه خواهد شد چنانكه برای دستیابی به ولتاژ تغذیه DC نیاز به مدار یكسو ساز دیودی و فیلتر خازنی و رگولاسیون توسط دیود زنر می باشد كه قابل اضافه نمودن به مدار شكل ٣-١ خواهند بود.

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

با فرمت ورد

Leave a comment