بررسی فانکشن ژنراتور کنترل شونده با میکرو کنترولر pdf

 

برای دریافت پروژه اینجا کلیک کنید

  بررسی فانکشن ژنراتور کنترل شونده با میکرو کنترولر pdf دارای 30 صفحه می باشد و دارای تنظیمات و فهرست کامل در microsoft word می باشد و آماده پرینت یا چاپ است

فایل ورد بررسی فانکشن ژنراتور کنترل شونده با میکرو کنترولر pdf   کاملا فرمت بندی و تنظیم شده در استاندارد دانشگاه  و مراکز دولتی می باشد.

این پروژه توسط مرکز مرکز پروژه های دانشجویی آماده و تنظیم شده است

 

فهرست مطالب

      مقدمه3   
      چکیده مطالب3
فصل اول
  - مشخصات و محدوده مدار5
- خلاصه ای از مدار5
- ایجاد موج مثلثی و مربعی6
- محاسبات مدار8-7
- موج سینوسی و محاسبه12-9
- کنترل خروجی12
فصل دوم
- میکرو کنترلر16-13
- ساختار برنامه17
- فلوچارت برنامه20-18
- برنامه میکرو30-210
- 31نتیجه گیری

 


مقدمه
سیگنال ژنراتور( مولد پالس) وسیله ای  است برای تولید انواع موجهای سینوسی، مربّعی و مثلثی که معمولا در در آزمایشگاههای الکترونیکی به عنوان منبع سیگنال برای مدارهای الکترونیکی ازآن استفاده می کنند. با توجه به عنوان پروژه ،کنترل این مدار به وسیله یک میکروکنترولر که واسط بین کاربر و سیستم می باشد صورت میگیرد.
چکیده مطالب:
 در این پروژه از آی سی های مولد این سه پالس استفاده نشده است و میبایست مدار داخلی این آی سی ها شبیه سازی می شد. بدین منظوراز آمپ امپها برای تولید امواج مربعی و مثلثی و از یک مدارشامل مقاومت و دیودها برای تولید موج مثلثی استفاده شده است که کنترل دامنه و فرکانس و نوع موج بوسیله یک میکرو صورت میگیرد. در فصل اول مشخصات و خلاصه ای از مدار و قطعات استفاده شده و  نحوه و مدار مولد پالس مربعی ومثلثی و  پالس سینوسی و محاسبات مدار و نحوه کنترل مدار بوسیله میکرو مورد نظر آورده شده است و در فصل دوم فلوچارت برنامه و برنامه میکرو که به زبان C نوشته شده و نتیجه پروژه تهیه شده  و در آخر پروژه ،DATA SHEET  قطعات استفاده شده آورده شده است.

فصل اول:
میکرو استفاده شده وسیله ای برای کنترل و  تنظیم نوع خروجی ،فرکانس وآفست و ...می باشد.
مشخصات و محدوه این  مدار:
انواع موج خروجی : مثلثی ، مربعی، سینوسی
محدوده دامنه : 15 الی 15-
محدوده فرکانس: 50HZ-30KHZ

خلاصه ای از مدار
در این سیستم از قطعات زیر  استفاده شده.
میکرو کنترولر سری AVR  (ATMega16L)  برای کنترل سیستم
یک عدد LCD  دو در شانزده  متنی برای نمایش خروجی با کاربر
چهار عدد میکرو سویچ برای کنترل سیستم
op amp  برای ایجاد موج مثلّثی و مربعی
چند عدد دیود زنر و 1N4148 و مقاومت برای ایجاد موج سینوسی
آی سی 4051 و 4052 و AD7523 برای کنترل فرکانس ،گین و نوع خروجی
LCDوچند عدد کلید برای نمایش اطلاعات و نیز تغییر امکانات
برای تغذیه از رگولاتور مثبت ومنفی 15و5 ولت استفاده شده است

ایجاد موج مثلثی و مربعی
 

در اینجا  برای ایجاد موج مثلثی  از یک انتگرال گیر با آپ امپ استفاده کرده ایم با توجه به شکل فوق .... آپ امپ  سمت راست این انتگرال گیر می باشد  در طرف چپ مدار از یک مدار اشمیت تریگر استفاده شده است   با بالا رفتن ولتاژ انتگرالگیر  این اشمیت تریگر سویچ میکند  سپس با فعال کردن ترانزیستور مقاومت R/2 فعال شده وباعث میشود که مدار انتگرال گیر به صورت معکوس عمل کرده و ایجاد یک رمپ منفی میکند. به این ترتیب از خروجی آپ امب اول موج مثلثی و از خروجی آپ امپ دوم   مربعی گرفته میشود.
محاسبات مدار
در صورتی که ترانزیستور غیر فعال باشد ولتاژ سر پایه منفی برابر Vc/2 میباشد و پس جریان عبوری از R برابر
(Vc - Vc/2) /R = Vc/(2R)
 و با شارژ شدن خازن و فرمول آن ولتاژ خروجی برابر
Vo =  1/C( Vc/2R)t+V0 = (Vc/2RC)t
از آن طرف ولتاژ اشمیت ترگر برابر  با توجه به مقادیر داخل نقشه و نیز زمین بودن + V  برابر 1/3 ولتاژ تغذیه می باشد .
زمانی که این ولتاز نیاز دارد تا به ولتاژ ماکزیمم وسپس به حالت اول برسد  چهار برابر میباشد    در این صورت فرکانس ( 1/t )  به صورت زیر در می آید
f = 1/t =4 * (Vc / Vpp) * (1/2RC) = ( Vc/Vpp ) * (2/RC)
Vpp= 13 Vc   
برای تغییرات  در این فرکانس میتوان  باکمک  تغییر در مقدار Vc ویا خازن مدار پرداخت
در اینجا برای کنترل فرکانس در مقادیر کم از  Vc  استفاده شده است. برای این منظور از کنترل دیجیتال یکی از دو کانال مبدل آنالوگ به دیجیتال    آسی AD7528 استفاده میکنیم .
این ای سی دارای دو مبدل آنالوگ به دیجیتال  میباشد که یکی از آن برای این منظور ودیگری در جای دیگر بدان پرداخته میشود.   
  و برای تغییرات بالا خازن را می بایست تغییر داد که در اینجا از آنالوگ  سویچ 4051  که یک دیکدر یک به هشت میباشد استفاده میکنیم .
مقادیر خازنهای استفاده شده به صورت زیر میباشد.
2.2p , 22p, 220p, 2.2n, 22n ,220n



موج سینوسی
برای ایجاد موج سینوسی از چند منبع ولتاژ  که به وسیله  دیود زنر   ایجاد شده است وچند مقاومت خاص  از موج مثلثی تولید میگردد. (مدار شکل زیر)
 
این مدار موج مثلثی به شکل موج تقریبا سینوسی تبدیل میکند .منابع تغذیه انتخاب شده برابر 2.2 ولت 3.3، 4.7،5.1 میباشد  در پیک مثبت  در بین ولتاژ سفر تا  2.2+0.7  دیود هیچ کدام از دیودها فعال نمیباشند در این صورت ولتاژ ورودی با ولتاژ خروجی برابر می باشد  اما بعد از آن  تا ولتاژ 4 ولت فقط دیود اول فعال میباشد در این صورت مقاومت 62k و مقاومت 10k باعث کاهش نسبی ولتاژ میگردد برای بقیه دیودها این وضع ادامه میابد تا به ولتاژ سینوسی برسیم.
چگونگی محاسبه
چون شیب رمپ برابر شیب در نقطه صفر در موج سینوسی می باشد داریم
Vsin = A Sin(Pi/2 t);
Vramp = B t
Vsin’ (0) = Vramp’(0);
A Pi/2 Cos(Pi/2 t)  =  B
A = 2B / pi
A دامنه موج سینوسی و B  دامنه موج رمپ می باشد که با توجه به مقدار گرفته شده 10 ولت برای موج مثلثی مقدار موج سینوس در حدود 6.36 به دست می آید.
فرض کنید n  عدد دیود فعال شده باشند در این صورت  ولتاژ موج سینوسی برابر با Vsin1 باشد در این صورت  ولتاژ موج مثلثی برابر
(Vramp – Vsin)/R = (Vsin – V1)/R1 +(Vsin – V2)/R2+…+(Vsin – Vn)/R

برای محاسبه مقاومت اول فرض را بر این گذاشه که مقاومت 10K را انتخاب کرده چون دیود اول در ولتاژ 2.9 وصل میشود .میتوان  به راحتی مقدار 6.2 را برای مقاومت اول بدست آورد.وهمچنین با داشتن این مقاومت میتوان مقاومت بعدی را بدست آور تا به مقاومت نهایی رسید.
قابل ذکر است به علت متقارن بودن مدار فقط نیاز به محاسبه نصف مدار میباشد و مقاومت های منفی را ازآن همان مقاومتهای قسمت مثبت میباشد.

 
کنترل خروجی
 برای آنکه خروجی را نیز کنترول کرد از نظر نوع موج و دامنهاز دو آی سی 4052  وAD7528 نصف آن استفاده شده است .
آی سی 4052 یک آنالگ سویچ یک به چهار  میباشد که باآن نوع موج خروجی ( مربعی، مثلثی و سینوسی ) را انتخاب میکنیم این آی همانند ای سی 4051 میباشد .  خروجی این ای سی به Vref آسی AD7528  رفته که همان آسی که برای کنترل فرکانس هم استفاده میگردد.
ای اسی در این صورت مانند یک ولوم عمل کرده و ولتاژ را کاهش داده  که با یک تقویت کنده opamp ی به مقدار ولتاژ مورد نظر رسید در این صورت کار کنترول دامنه  نیز به صورت دیجیتال در آمده است.

میکروکنترولر Atmega16L
این میکرو دارای 32 تا I/O میباشد
ولتاژ تغذیه 5.5  تا 2.7 را میتواند تحمل کند
دارای K16 بایت حافظه فلش (قابل برنامه ریزی)
و1024 بایت Ram میباشد
واز فرکانسهای m1وm2وm4وM8 را بطور داخلی استفاده میکند

در اینجا این میکرو برای کنترول سیستم استفاده میشود که به وسیله 4 کلید که برروی برد تعبیه شده است  میتوان کنترول سیستم را به دست گرفت .
برای برنامه نویسی میکرو کنترلر AVR  زبان C  که در قالب codveiton  استفاده میکنیم.
برای کنترل کلیدها  که یک سر آنها به زمین وصل شده است و دیگری به میکرو، به طور داخلی به وسیله ریجسترهای کنترول پورت میکرو پولاپ شده که  هنگامی که کلیدی فشار داده نشده باشد عدد یک خوانده و در صورت فشار دادن کلید عدد صفر را میکرو بخواند.
برای خواندن    کلید از تابع GetKey()   استفاده شده است
این تابع چک میکند که آیا کلیدی فشار داده شده است یا خیر . در صورتی که کلید ی فشار داده شود مطابق با آن در خروجی  عددی قرار میدهد .
LCD Text
این وسیله برای نمایش خروجی  سیستم میباشد.که دارای دو سطر 16 کاراکتری است.
فرکانس خروجی ،دامنه خروجی ونوع موج خروجی در اینLCD قابل نمایش   میباشد.
دستورات مورد نیاز

lcd_init(16);
این دستور راه انداز   LCD Text میباشد که چگونگی کارکرد آنرا تنظیم میکند.
lcd_gotoxy(0,3);
این دستور برای بردن خط نشان به نقطه مورد نظر میباشد به عنوان مثال مکان نما را به خط اول کاراکتر چهارم میبرد .
lcd_putchar("0");
این دستور یک کاراکتر مورد نظر را در  جای مکان نما  قرار می دهد .
lcd_puts   (str);
این دستور برای نمایش یک سری کاراکتر بر روی LCD  میباشد. این دستور کاراکتر ها را از داخل حافظه RAM برداشته و بر روی LCD  نشان می دهد.  
lcd_putsf("KHz   "); 
این دستور برای نمایش یک سری کاراکتر بر روی LCD  میباشد. این دستور کاراکتر ها را از داخل حافظه Flash برداشته و بر روی LCD  نشان می دهد.
 این دستورات در فایل Lcd.H ذخیره شده است  که با دستورinclude <lcd.h>#_ فرا خوانی میگردد .
دستور دیگری که در این برنامه استفاده شده است دستور
void define_char(char flash *pc,char char_code)
میباشد که برای ایجاد کاراکتر جدید میتوان از آن استفاده نمود.برای اطلاع بیشتر به راهنمای این برنامه مراجعه شود.
در اینجا چند دستور دیگر مورد برسی قرار میگیرد.
delay_ms(100);   
این دستور برای ایجاد تاخیر در برنامه میشود .
 ltoa(256,srt);  
این دستور برای تبدیل عدد به کدASCII که LCD  بتواند آن را نمایش بدهد.


ساختار برنامه :
این برنامه ابتدا بعد از تظیم نمودن مقادیر اولیه سیستم  به داخل حلقه بی نهایت While()  می افتد که اصل بر نامه در اینجا قرار دارد. سیستم منتظر میماند تا کلیدی فشار داده شود .
در صورتی که کلید Select  باشد باعث تعویض متغیر سیستم می شود  که بین متغیر های  نوع خروجی ، دامنه  خروجی و فرکانس آن در حال گردش می باشد به عنوان مثال در صورتی بروی نوع موج باشد به سراغ دامنه می رود.  
در صورتی که کلید up وDown باشد متغیر مورد نظر را تغیر داده و خروجی آنرا در سخت افزار اجرا میکند   ...
نتیجه گیری :
این مدار برای تولید امواج سینوسی، مثلثی، مربعی در محدوده دامنه 15 الی 15- ولت در محدوده  فرکانس 50 هرتز الی 30 کیلو هرتز کار میکند. در اینجا به چند مورد از اشکالات مدار اشاره می شود که این مشکلات ناشی از قطعات استفاده شده در این مدار می باشد.
Opamp : این المان تا فرکانس 1MHZ می تواند کار کند ولی به دلیل Slowreat آن  برای پیک ولتاژ بالاتر کاربرد   ...

 

برای دریافت پروژه اینجا کلیک کنید

کلمات کلیدی :