ايران ويج

نسخه‌ی کامل: راهنمایی برای ساخت قطار پالس توسط atmega32
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام به همه دوستان
من یه پروژه ساخت دارم برای روشن کردن تریستور. تو یه مرحله ای از پروژه احتیاج دارم که یه قطار پالس به شکل زیر بسازم.
[تصویر:  8a4p_pulse_train.jpg]
تو این پروژه باید L1 و L2 و L3 توسط کاربر قابل تغییر باشه؛ L4 که باید 50Hz باشه، ولی اگه L4 رو هم بشه تغییر داد که خیلی عالی میشه.
من تو زمینه تایمر کانتر صفر کمی تحقیق کردم، تونستم شکل پایین رو بسازم؛ ولی در مورد شکل اصلی هرچی گشتم، چیزی پیدا نکردم.
[تصویر:  xcbm_pulse_train_2.jpg]
L1 و L2 رو هم بلدم با مد Fast PWM کنترل کنم.
اگه بتونید راهنماییم کنید خیلی ممنون میشم.
سلام.
تعداد اون 4 تا پالس ثابت هست؟ فرکانسشون تو چه رنجی تغییر می کنه؟
می تونید از 2 کانال PWM استفاده کنید، یکی فرکانس 50 هرتز رو بسازه، دیگری فرکانس بالای اون 4 تا پالس رو.
خروجی هر 2 موج PWM رو بدید به ورودی گیت AND ، خروجی می شه شکل موجی که می خواید. تمام عرض ها و فرکانس ها رو هم می شه کنترل کرد.

موفق باشید.
سلام، ممنون از راهنماییتون.
راجع به سوالایی که پرسیدین، باید بگم که L3 باید تقریبا 0.002 ثانیه طول بکشه؛ ولی L1 و L2 با یه نسبت ثابت قابل تغییر باشن. مثلا L2 همیشه چهار برابر L1 باشه. فرکانس L2 هم باید بین 500Hz تا 10kHz باشه. یعنی تعداد پالس هایی که تو شکل چهار تا رسم کردم، در واقع از 1 تا 20 متغیره. در مجموع میشه گفت که کوچیکترین پالسی که باید تولید بشه (یعنی همون L1) چیزی حدود 20 میکرو ثانیه زمان میبره.
اونجوری که شما گفتین روش خوبیه، ولی فکر کنم تو این رنج فرکانسی نویز زیادی داشته باشه. روشی سراغ ندارین که بشه همچین موجی رو با یه PWM ساخت که مشکل نویز رو نداشته باشه؟
خطاي بازه هاي زماني ذكر شده تا چ ميزان قابل قبول هست؟
نقل قول: سلام، ممنون از راهنماییتون.
راجع به سوالایی که پرسیدین، باید بگم که L3 باید تقریبا 0.002 ثانیه طول بکشه؛ ولی L1 و L2 با یه نسبت ثابت قابل تغییر باشن. مثلا L2 همیشه چهار برابر L1 باشه. فرکانس L2 هم باید بین 500Hz تا 10kHz باشه. یعنی تعداد پالس هایی که تو شکل چهار تا رسم کردم، در واقع از 1 تا 20 متغیره. در مجموع میشه گفت که کوچیکترین پالسی که باید تولید بشه (یعنی همون L1) چیزی حدود 20 میکرو ثانیه زمان میبره.
اونجوری که شما گفتین روش خوبیه، ولی فکر کنم تو این رنج فرکانسی نویز زیادی داشته باشه. روشی سراغ ندارین که بشه همچین موجی رو با یه PWM ساخت که مشکل نویز رو نداشته باشه؟
با PWM سخت افزاری روش ندارهه ، مگر اینکه نرم افزاری بخواید PWM تولید کنید. گرچه 10KHz خیلی زیاد هست و در این حالت برای تغییر عرض پالس کوچیکه تفکیک پذیزی کم می شه.

موفق باشید.
(۱۳-اردیبهشت-۱۳۹۴, ۰۹:۳۲:۰۸)student-p نوشته است: [ -> ]خطاي بازه هاي زماني ذكر شده تا چ ميزان قابل قبول هست؟

چون این قطار پالس برای راه اندازی تریستور استفاده میشه، نباید تو دراز مدت خطای قابل توجهی داشته باشه، چون اگه تو هر سیکل مثلا 1 میکرو ثانیه جا به جا بشه، بعد از یکی دو دقیقه دیگه نمیتونه تریستور رو روشن کنه. فک کنم بشه تا 0.1 میکرو ثانیه رو نادیده گرفت.
(۱۳-اردیبهشت-۱۳۹۴, ۱۰:۱۸:۳۳)sharin نوشته است: [ -> ]با PWM سخت افزاری روش ندارهه ، مگر اینکه نرم افزاری بخواید PWM تولید کنید. گرچه 10KHz خیلی زیاد هست و در این حالت برای تغییر عرض پالس کوچیکه تفکیک پذیزی کم می شه.

موفق باشید.
ممنون
میشه درباره همون روش نرم افزاری کمی توضیح بدین. شاید کارم رو راه بندازه. امتحان کردنش ضرر که ندارهShy
نقل قول: ممنون
میشه درباره همون روش نرم افزاری کمی توضیح بدین. شاید کارم رو راه بندازه. امتحان کردنش ضرر که نداره

لینک زیر رو ببینید. روش تولید چندین کانال PWM هست که اگر درکش کنید کار مد نظرتون هم می تونید انجام بدید ...


http://mbed.ir/fa/%D8%AA%D9%88%D9%84%DB%...D8%B7-avr/

موفق باشید.
اگه خطاي كم قابل چشم پوشي باشه شايد بتونيد با دستورات time delay و معرفي پين مورد نظر بعنوان خروجي اي كار و انجام بدين؛

و بطرق مختلفي زمانهاي مورد نظرتون ايجاد كنيد.