سلام و ارض ادب خدمت مهندسین و اساتید گرامی
خواستم یه سوال کنم اینکه من برای یه پروژه میخوام شکل موج یک فاز رو به صورت گسسته بتونم تحلیل و آنالیزش کنم. خواستم بدونم با میکرو میشه این کار رو انجام داد؟
ممنون میشم کمکم کنید.
سلام و ارض ادب خدمت مهندسین و اساتید گرامی
خواستم یه سوال کنم اینکه من برای یه پروژه میخوام شکل موج یک فاز رو به صورت گسسته بتونم تحلیل و آنالیزش کنم. خواستم بدونم با میکرو میشه این کار رو انجام داد؟
ممنون میشم کمکم کنید.
منظور از تحلیل گسسته چیه ؟؟ یعنی میخوای هارمونی ها و اینا شوو بررسی کنی و یا میخوای دامنه و فرکانس و فازشوو بررسی کنی ؟؟؟
بستگی به حجم و فرکانس نمونه برداری شما داره. مثلا اگه میکرو 100 مگاهرتز باشه و برنامه خیلی کوتاه باشه شاید تا فرکانس نمونه برداری 100 کیلو تا 1 مگا هرتز جواب بده
در کل به فرکانس میکرو و فرکانس نمونه برداری و تعداد دستورات پردازنده در هر دوره داره
پروژه های مهم من در ایران میکرو:
" انتقال اطلاعات با SIM900 " ، " آموزش پورت USB " ، " راه اندازی MFRC522 " ، " راه اندازی SLE4442 " ، ""
بله برای 50 هرتز نباید مشکلی باشه. البته بستگی به میزان پردازش هم داره.
خوب کافیه که با adc میکرو با سرعت نمونه برداری مناسب ( بین 5 تا 10 برابر فرکانس آنالوگ) نمونه برداری کنید. در اینجا مثلا 400 هرتز خوبه.
پروژه های مهم من در ایران میکرو:
" انتقال اطلاعات با SIM900 " ، " آموزش پورت USB " ، " راه اندازی MFRC522 " ، " راه اندازی SLE4442 " ، ""
به نظرتون با کدوم میکرو انجام بدم؟ آرم یا pic یا avr
برای پروژه صنعتی میخوام انجام بدم. آرم یا پی ای سی؟
هر سه میکرو میتونند این کار رو انجام بدهند ولی arm pic برای این کار مناسب تر هستند با توجه به محیط صنعتی هر چند از avr هم مشکلی نداره ولی بدگمانی در موردش زیاده شما روی یه PIC سری 18 میتونی این کاروو انجام بدی و جواب بگیری
با میکرو pic18f452 میخوام انجامش بدم.
ممنونم البته به مشکل برخوردم میام و ازتون کمک میخوام
سلام دوستان
میشه یه نگاه به این برنامه بندازید ؟
ممنون
[PHP]
#include "18f452.h"
#device adc=10
#use delay (clock = 20000000)
#fuses HS
int16 VADC;
void main()
{
set_tris_e(0x00);
set_tris_a(0xff);
setup_adc_ports(AN0);
setup_adc(ADC_CLOCK_DIV_64);
setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_wdt(WDT_OFF);
setup_timer_0(RTCC_INTERNAL);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
//Setup_Oscillator parameter not selected from Intr Oscillator Config tab
// TODO: USER CODE!!
while(true) {
VADC=0.048875*read_adc();
output_bit(pin_e0,VADC);
delay_us(10);
}
}
[/PHP]
توی شبیه سازی به اینصورت نشون میده
ایـــــــــران میـــــــکرو ™
اما من میخوام به اینصورت بتونم شکل موج رو نمونه بر داری کنم
ایـــــــــران میـــــــکرو ™
دوستان ممنون میشم کمکم کنید.
ویرایش توسط mohamad_musav : 18-02-2013 در ساعت 12:20
ویرایش توسط mohamad_musav : 18-02-2013 در ساعت 23:38
با توابع و کامپایلری که شما کار کردین من تا حالا کار نکردم و نمیتونم بگم که مشکل داره یا نه.
ولی میتونم بگم که کل کار به این صورت هست که در زمانهای مشخصی مقدار adc خونده بشه.
حالا اینکه کامپایلر شما چطور داده ها رو میخونه و ... نمیتونم کمکی بکنم مخصوصا که تا حالا با این میکرو هم کار نکردم
پروژه های مهم من در ایران میکرو:
" انتقال اطلاعات با SIM900 " ، " آموزش پورت USB " ، " راه اندازی MFRC522 " ، " راه اندازی SLE4442 " ، ""
همینم که اومدید و راهنمایی کردید همینم واقعا عالیه. تشکر
برای باز یابی سیگنال شما باید از یک فیلتر پایین گذر که فرکانس قطعش یک دهه کمتر از فرکانس نمونه برداریتون هست استفاده کنین به علاوه باید از pwm استفاده کنین و اونطوری سیگنالرو بازیابی کنین به شکل نمونه های گسسته هم تو پرو تیوز فکر نکنم بتونین بیبنین
مدارتونو بزارین تا بگم دقیقا باید چکار کنین
جواب دادین یک پیغام خصوصی بهم بدین یاداوری کنین تا بیام تاپیک جوابتونو بدم
خوب دوست عزیز از شواهد همین طور که بر میاید فرکانس سیگنالتون باید ثابت باشه مثلا فرض میکنیم 50 هرتز که کل زمان یه سیکلمون میشه 20 میلی ثانیه خوب اینطور که عکسی که گذاشتین 10 بار نمونه برداری شده
خوب پس باید هر دو میلی ثانیه یه بار ! خوب حالا شما باید تایمری راه اندازی کنید که هر دو میلی ثانیه یه بار وارد وقفه بشه (سرریز بشه ) و مقدار adc را بخونه
حال موج شما سینوسی هست یعنی مقدار منفی و مثبت داره خوب باید با یه مدار این موج را شیفت بدی که ویا قسمت منفیش از بین بره بعد با adc مقدارشو بخونی ،نکته دیگه کاهش دامنه
در کل سخت افزار جانبی مدار خیلی تاثیر گذار میتونه باشه
مدارتونو بگذارید من با کامپایلر CCS کار کردم بتونم کمکتون میکنم
ممنون. دوست عزیز
حتما هم فایله برنامه رو قرار میدم و هم شبیه سازیش رو. که بعید میدونم تو پروتیوس بشه نمونه برداری شده ها رو دید. میشه؟
برا اینکه بخوان نیم موج منفی رو شیفت بدم بالا از چه مدل اپ امپی باید استفاده کنم؟ممنون.
ویرایش توسط mohamad_musav : 02-03-2013 در ساعت 18:56