akbn
۸ مهر ۱۳۸۷, ۱۵:۰۰
روش سوم) پياده سازي با مبدل آنالوگ به ديجيتال
با تو جه به دقت بسيار بالاي توليد كننده هاي PWM با پايه ديجيتال و سهولت توليد سيگنال كنترلي آنالوگ ، گاهي لازم مي شود تا كنترل كننده PWM آنالوگ اما فرايند توليد ديجيتال باشد . براي تحقق اين موضوع سيستم توليد قبل را به شكل زير اصلاح ميكنيم :
مشاهده مي شود كه به جاي يك رجيستر از يك مبدل آنالوگ به ديجيتال استفاده شده تا در ورودي B از مقايسه كننده ، يك مقدار ديجيتال متناسب با ورودي آنالوگ خود ايجاد كند ، كه پس از اين تبديل ديجيتال ، منطق عملكرد مدار همانند سيستم توليد قبل خواهد بود مقدار سيگنال آنالوگ كنترلي ما به پايانه 6 تراشه اعمال مي شود پس از تثبيت كامل مقدار dc لازم است ورودي Rx به مدت 20ms پايين نگه داشته شود تا مقدار ورودي به ديجيتال تبديل و پالس PWM متناسب توليد گردد. مقدار ورودي آنالوگ بين 0 تا 2.5 ولت مي تواند باشد .
لازم به ذكر است كه ADC استفاده شده ((ADC 0804 براي تبديل ا ز يك نوسان ساز داخلي استفاده مي كند كه مقادير اين فركانس را R2 و C2 تعيين مي نمايند كه در اينجا با مقادير 10K و 150pF بروي 640KHz تثبيت گرديده است.
روش چهارم) پياده سازي در سطح سيستم
سيستمها از نظر دايره انجام وظايف به سيستمهاي تك منظوره و همه منظوره تقسيم و از ديدگاه سيستم عامل به سيستمهاي با سيستم عامل و بدون سيستم عامل تقسيم مي شود.
از ميان اين سيستمها انتخاب ما يك سيستم تك منظوره بدون سيستم عامل است كه ميكرو كنترلر ها در اين مجموعه گنجانيده شده اند. سيستم مورد استفاده در اين نوع توليد يك ميكرو كنترلر ATMega 16 از خانواده بزرگ AVRاست.
در كنار سخت افزار هاي متفاوت در AVRها تايمر ها تقريبا از اجزا لاينفك هر سيستم طراحي شده هستند . يكي از خصوصيات بار اين تايمرها ، استفاده از آنان در مد PWM بوده كه به كاربر اجازه مي دهند تا تنها با تايپ چند خط دستور در يك اديتور اسمبلي يا زبانهاي سطح بالا ، ماشين را آماده توليد PWM نمايند.
نحوه عملكرد تايمر 1 در مد PWM در تراشه ATMega 16
اين تايمر همانند تايمرهاي موجود در ديگر ميكرو كنترلرها داراي رجيسترهاي متفاوتي جهت كنترل و دريافت مقادير آن مي باشد . اين تايمر را ميتوان با تنظيم مناسب اين رجيستر (TCCR1A , TCCR1B) در مد توليد PWMقرار داد. در اين حالت مقدار عرض پالس توليدي در تايمر بستگي به عددي دارد كه در ثباتهاي خاص اين تراشه قرار گرفته است. ثباتهاي OCR1A و OCR1B همين رجيسترهاي نگه دارنده اند. اين تايمر داراي دو خروجي OC1Aو OC1B است. شيوه عملكرد تايمر در حالت PWM بدين صورت است كه ابتدا تايمر به صورت افزايشي شروع به شمارش مي كند تا به مقدار نگهداري شده در OCR1A برسد آنگه با توجه به تنظيمات مقدار OC1A را تغيير داده ( در صورت صفر بودن يك و در صورت يك بودن صفر ميشود ) و شمارنده به شمارش ادامه داده تا ب ه مقدار ماكزيمم خود برسد . پس از آن برخلاف ساير شمارنده ها به جاي شروع سيكل از ابتدا بازه شمارش خود را به صورت نزولي از انتها به ابتدا مي شمارد تا باز هم به مقدار ذخيره شده در رجيستر OCR1A برسد و دوباره مقدار آن را تغيير دهد ، پس از شمارش شمارنده به سير نزولي خود ادامه داده تا به صفر برسد و دوباره شمارش صعودي را آغاز كند .
اين سيكل سبب توليد يك سيگنال با فركانس ميشود ، مقدار پهناي پالس را مي توان با تغيير محتواي رجيستر OCR1A تغيير داد.
در شكل زير يك سخت افزار به همراه برنامه نگاشته شده توليد PWM به زبان C آمده است به نحوه تغيير مقدار رجيستر توجه كنيد. مقدار رجيستر نگه دارنده توسط دو كليد از دنياي خارج كنترل شده و متناسبا مقدار پهناي پالس خروجي را تغيير مي دهند .
روش پنجم) پياده سازي در سطح تراشه
PWM هم همانند تمامي فرايندهاي پر مصرف شبيه تقويت كننده ها ، مقايسه كننده ها ، شمارنده ها و . . . از تكنولوژي مدارات مجتمع ناكام نمانده و تراشه هايي اختصاصي براي توليد آن آفريده شده است كه هر يك داراي خصوصياتي است و تنها با چند المان كوچك مي توان آنها را به توليد PWM وا داشت، اين تراشه ها را گاه مبدل سطوح DC به PWM نيز مي خوانند. ليستي از تراشه هاي توليد شده به همين منظور در جدول زير آمده است :
توليد سيگنال PWM با كمك تراشه TL494
تراشه TL494 يك مدار كنترلي براي مدولاسيون عرض پالس با فركانس ثابت مي باشد. در مدار شكل زير نمايي از يك نمونه تراشه TL494 كه آورده شده است.
براي تشريح بهتر عملكرد تراشه فوق نماي داخلي اين تراشه در شكل زير آمده است.
همان طور كه در شكل ملاحظه مي شود تراشه فوق از دو تقويت كننده تشخيص خطا (error amplifiers)، يك اسيلاتور قابل تنظيم (adjustable oscillator) ، يك مقايسه كننده براي كنترل زمان تلف شده (Ddead Ttime Ccontrol Compartor) ، يك فيليپ فلاپ كنترل جهت هدايت پالس (pulse-steering control flip-flop) و يك رگولاتور 5V با دقت %5 و مدار كنترلي خروجي تشكيل شده است.
سيگنال اعمالي dc به ورودي 1 كه خود يك ورودي ناوارونساز op amp است، وارد مي شود. با عملكرد op amp مذكور بعنوان يك بافر، سيگنال dc مورد نظر به ورودي مقايسه كننده وارد مي شود. بايستي توجه كرد كه اين سيگنال dc همان سيگنالي است كه پهناي سيگنال را در مدولاسيون PWM تغيير مي دهد. از سويي خروجي اسيلاتور نيز به ورودي مقايسه كننده آمده تا فرايند مقايسه براي توليد PWM صورت پذيرد . فركانس پايه اسيلاتور را مقاومت متصل به پايه RT و خازن متصل به پايه CT تعيين مي كنند. مدولاسيون پالس خروجي از طريق مقايسه شكل موج دندان اره اي توليد شده روي پايه CT (كه توسط اسيلاتور داخلي تراشه تامين مي شود) با سيگنال كنترلي كه قبلاً توضيح داده شد، انجام مي گردد. توسط فيليپ فلاپ موجود روي تراشه پالس پالس مدوله شده بطور متناوب براي هر يك از دو ترانزيستور خروجي هدايت مي شود. ترانزيستورهاي خروجي نيز براي انتقال سيگنال PWM ايجاد شده به خارج استفاده مي شوند. اين ترانزيستورها با استفاده از مدارات مناسب در خروجي مي توانند در آرايشهاي اميتر مشترك و يا اميتر پيرو مورد استفاده قرار گيرند. در شكل زير اين آرايشها آورده شده است.
در شكل زير مدار داخلي اسيلاتور موجود روي تراشه فوق نشان داده شده است.
همچنين در شكل زير مدار داخلي رگولاتور مورد استفاده براي تراشه TL494 آورده شده است.
مدار داخلي مقايسه كننده مورد استفاده در تراشه فوق جهت نوليد سيگنال PWM هم در شكل زير آمده است.
مدار داخلي تقويت كننده هاي خطا هم بصورت زير مي باشد.
مدار داخلي فيليپ فلاپ مورد استفاده در تراشه فوق بصورت زير مي باشد:
در پايان مدار مورد نياز براي طراحي يك مولد PWM با استفاده از تراشه TL494 به همراه شكل موجهاي ايجاد شده بروي پايه هاي مختلف اين تراشه در شكل زير آورده شده است.
با تو جه به دقت بسيار بالاي توليد كننده هاي PWM با پايه ديجيتال و سهولت توليد سيگنال كنترلي آنالوگ ، گاهي لازم مي شود تا كنترل كننده PWM آنالوگ اما فرايند توليد ديجيتال باشد . براي تحقق اين موضوع سيستم توليد قبل را به شكل زير اصلاح ميكنيم :
مشاهده مي شود كه به جاي يك رجيستر از يك مبدل آنالوگ به ديجيتال استفاده شده تا در ورودي B از مقايسه كننده ، يك مقدار ديجيتال متناسب با ورودي آنالوگ خود ايجاد كند ، كه پس از اين تبديل ديجيتال ، منطق عملكرد مدار همانند سيستم توليد قبل خواهد بود مقدار سيگنال آنالوگ كنترلي ما به پايانه 6 تراشه اعمال مي شود پس از تثبيت كامل مقدار dc لازم است ورودي Rx به مدت 20ms پايين نگه داشته شود تا مقدار ورودي به ديجيتال تبديل و پالس PWM متناسب توليد گردد. مقدار ورودي آنالوگ بين 0 تا 2.5 ولت مي تواند باشد .
لازم به ذكر است كه ADC استفاده شده ((ADC 0804 براي تبديل ا ز يك نوسان ساز داخلي استفاده مي كند كه مقادير اين فركانس را R2 و C2 تعيين مي نمايند كه در اينجا با مقادير 10K و 150pF بروي 640KHz تثبيت گرديده است.
روش چهارم) پياده سازي در سطح سيستم
سيستمها از نظر دايره انجام وظايف به سيستمهاي تك منظوره و همه منظوره تقسيم و از ديدگاه سيستم عامل به سيستمهاي با سيستم عامل و بدون سيستم عامل تقسيم مي شود.
از ميان اين سيستمها انتخاب ما يك سيستم تك منظوره بدون سيستم عامل است كه ميكرو كنترلر ها در اين مجموعه گنجانيده شده اند. سيستم مورد استفاده در اين نوع توليد يك ميكرو كنترلر ATMega 16 از خانواده بزرگ AVRاست.
در كنار سخت افزار هاي متفاوت در AVRها تايمر ها تقريبا از اجزا لاينفك هر سيستم طراحي شده هستند . يكي از خصوصيات بار اين تايمرها ، استفاده از آنان در مد PWM بوده كه به كاربر اجازه مي دهند تا تنها با تايپ چند خط دستور در يك اديتور اسمبلي يا زبانهاي سطح بالا ، ماشين را آماده توليد PWM نمايند.
نحوه عملكرد تايمر 1 در مد PWM در تراشه ATMega 16
اين تايمر همانند تايمرهاي موجود در ديگر ميكرو كنترلرها داراي رجيسترهاي متفاوتي جهت كنترل و دريافت مقادير آن مي باشد . اين تايمر را ميتوان با تنظيم مناسب اين رجيستر (TCCR1A , TCCR1B) در مد توليد PWMقرار داد. در اين حالت مقدار عرض پالس توليدي در تايمر بستگي به عددي دارد كه در ثباتهاي خاص اين تراشه قرار گرفته است. ثباتهاي OCR1A و OCR1B همين رجيسترهاي نگه دارنده اند. اين تايمر داراي دو خروجي OC1Aو OC1B است. شيوه عملكرد تايمر در حالت PWM بدين صورت است كه ابتدا تايمر به صورت افزايشي شروع به شمارش مي كند تا به مقدار نگهداري شده در OCR1A برسد آنگه با توجه به تنظيمات مقدار OC1A را تغيير داده ( در صورت صفر بودن يك و در صورت يك بودن صفر ميشود ) و شمارنده به شمارش ادامه داده تا ب ه مقدار ماكزيمم خود برسد . پس از آن برخلاف ساير شمارنده ها به جاي شروع سيكل از ابتدا بازه شمارش خود را به صورت نزولي از انتها به ابتدا مي شمارد تا باز هم به مقدار ذخيره شده در رجيستر OCR1A برسد و دوباره مقدار آن را تغيير دهد ، پس از شمارش شمارنده به سير نزولي خود ادامه داده تا به صفر برسد و دوباره شمارش صعودي را آغاز كند .
اين سيكل سبب توليد يك سيگنال با فركانس ميشود ، مقدار پهناي پالس را مي توان با تغيير محتواي رجيستر OCR1A تغيير داد.
در شكل زير يك سخت افزار به همراه برنامه نگاشته شده توليد PWM به زبان C آمده است به نحوه تغيير مقدار رجيستر توجه كنيد. مقدار رجيستر نگه دارنده توسط دو كليد از دنياي خارج كنترل شده و متناسبا مقدار پهناي پالس خروجي را تغيير مي دهند .
روش پنجم) پياده سازي در سطح تراشه
PWM هم همانند تمامي فرايندهاي پر مصرف شبيه تقويت كننده ها ، مقايسه كننده ها ، شمارنده ها و . . . از تكنولوژي مدارات مجتمع ناكام نمانده و تراشه هايي اختصاصي براي توليد آن آفريده شده است كه هر يك داراي خصوصياتي است و تنها با چند المان كوچك مي توان آنها را به توليد PWM وا داشت، اين تراشه ها را گاه مبدل سطوح DC به PWM نيز مي خوانند. ليستي از تراشه هاي توليد شده به همين منظور در جدول زير آمده است :
توليد سيگنال PWM با كمك تراشه TL494
تراشه TL494 يك مدار كنترلي براي مدولاسيون عرض پالس با فركانس ثابت مي باشد. در مدار شكل زير نمايي از يك نمونه تراشه TL494 كه آورده شده است.
براي تشريح بهتر عملكرد تراشه فوق نماي داخلي اين تراشه در شكل زير آمده است.
همان طور كه در شكل ملاحظه مي شود تراشه فوق از دو تقويت كننده تشخيص خطا (error amplifiers)، يك اسيلاتور قابل تنظيم (adjustable oscillator) ، يك مقايسه كننده براي كنترل زمان تلف شده (Ddead Ttime Ccontrol Compartor) ، يك فيليپ فلاپ كنترل جهت هدايت پالس (pulse-steering control flip-flop) و يك رگولاتور 5V با دقت %5 و مدار كنترلي خروجي تشكيل شده است.
سيگنال اعمالي dc به ورودي 1 كه خود يك ورودي ناوارونساز op amp است، وارد مي شود. با عملكرد op amp مذكور بعنوان يك بافر، سيگنال dc مورد نظر به ورودي مقايسه كننده وارد مي شود. بايستي توجه كرد كه اين سيگنال dc همان سيگنالي است كه پهناي سيگنال را در مدولاسيون PWM تغيير مي دهد. از سويي خروجي اسيلاتور نيز به ورودي مقايسه كننده آمده تا فرايند مقايسه براي توليد PWM صورت پذيرد . فركانس پايه اسيلاتور را مقاومت متصل به پايه RT و خازن متصل به پايه CT تعيين مي كنند. مدولاسيون پالس خروجي از طريق مقايسه شكل موج دندان اره اي توليد شده روي پايه CT (كه توسط اسيلاتور داخلي تراشه تامين مي شود) با سيگنال كنترلي كه قبلاً توضيح داده شد، انجام مي گردد. توسط فيليپ فلاپ موجود روي تراشه پالس پالس مدوله شده بطور متناوب براي هر يك از دو ترانزيستور خروجي هدايت مي شود. ترانزيستورهاي خروجي نيز براي انتقال سيگنال PWM ايجاد شده به خارج استفاده مي شوند. اين ترانزيستورها با استفاده از مدارات مناسب در خروجي مي توانند در آرايشهاي اميتر مشترك و يا اميتر پيرو مورد استفاده قرار گيرند. در شكل زير اين آرايشها آورده شده است.
در شكل زير مدار داخلي اسيلاتور موجود روي تراشه فوق نشان داده شده است.
همچنين در شكل زير مدار داخلي رگولاتور مورد استفاده براي تراشه TL494 آورده شده است.
مدار داخلي مقايسه كننده مورد استفاده در تراشه فوق جهت نوليد سيگنال PWM هم در شكل زير آمده است.
مدار داخلي تقويت كننده هاي خطا هم بصورت زير مي باشد.
مدار داخلي فيليپ فلاپ مورد استفاده در تراشه فوق بصورت زير مي باشد:
در پايان مدار مورد نياز براي طراحي يك مولد PWM با استفاده از تراشه TL494 به همراه شكل موجهاي ايجاد شده بروي پايه هاي مختلف اين تراشه در شكل زير آورده شده است.