پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
نوشته اصلی توسط m e h r d a d
راستش تا حالا نیاز نداشتم که از DAC استفاده کنم . میشه بپرسم برای چه کاری میخواید؟
من میخام ولتاژ ثابت 1 تا 5 ولت رو از طریق کامپیوتر (ویژوال بیسیک) به سخت افزارم فرمان بدم و از طریق RS232 با بردم ارتباط برقرار کنم سپس بر اساس ولتاژ فرمان داده شده یه شکل موج با دیوتی سایکل متناسب با اون در خروجی تایمر 1 PWM ایجاد کنم و این موج را به آنالوگ تبدیل کنم، حالا مداری برای تبدیل این موج دیجیتال به مقدار ثابت میخام طوری که ریپل نده، توی نت برای اینکار از فیلترهای پایینگذر استفاده کرده ولی من مشکوکم که شاید اینکار جواب نده برای همین میخام از DAC استفاده کنم، از اونجاییکه بردمو باید بسازم واسه همین الان باید در مورد قطعات اون تصمیم بگیرم و این کار رو مشکل کرده...
پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
من سه تا راه حل به نظرم میاد.
1. استفاده از فیلتر LC تو خروجی PWM. چون سطح DC با این فیلتر میانگیری میشه و با توجه به duty cycle پالس pwm تو خروجی یه مقدار DC دارید. (این شاید خوب جواب نده).
2. استفاده از مدار مقاومتی نردبانی که باهاش می تونید چند تا سطح DC به دست بیارید. (این روش اتلاف توان توش بیشتره ولی ساده تره)
3. استفاده از DAC که به یکی از پایه های ATmega32 وصل بشه. مثلا DAC0808 هستش که قیمتش حدود 4 تومانه و یک DAC 8 بیتی هستش. تو ایران هم راحت پیدا میشه. (این روش مطمئن تره اما هزینه اش بیشتره)
پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
نوشته اصلی توسط ajapyy
من سه تا راه حل به نظرم میاد.
1. استفاده از فیلتر LC تو خروجی PWM. چون سطح DC با این فیلتر میانگیری میشه و با توجه به duty cycle پالس pwm تو خروجی یه مقدار DC دارید. (این شاید خوب جواب نده).
2. استفاده از مدار مقاومتی نردبانی که باهاش می تونید چند تا سطح DC به دست بیارید. (این روش اتلاف توان توش بیشتره ولی ساده تره)
3. استفاده از DAC که به یکی از پایه های ATmega32 وصل بشه. مثلا DAC0808 هستش که قیمتش حدود 4 تومانه و یک DAC 8 بیتی هستش. تو ایران هم راحت پیدا میشه. (این روش مطمئن تره اما هزینه اش بیشتره)
ممنونم، شما برای این DAC0808 هیچ مدار نمونه ای ندارین؟ من چیزی نتونستم پیدا کنم؛ واسم مهمه خروجی که میگیرم حتما DC باشه (بدون ریپل و کاملا صاف)، نحوه اتصالش با این مبدل دیجیتال به آنالوگ برام سواله، باید به خروجی PWM وصل بشه؟! مگه این خروجی PWM یک عدد نیست؟ (واسه تایمر 0) یعنی من یه خروجی PWM دارم، و میخام تا 4 ولت بگیرم از خروجی...فکر میکنم حدالامکان باید 2 تا ورودی داشته باشم که خروجی تا سطح 4 ولت رو بگیرم، اگه بخام 5 ولت بگیرم چی؟ اخه خروجی PWM کم دارم که وصل کنم بهش؛ کسی میتونه به من کمک کنه؟
نحوه اتصالش با این مبدل دیجیتال به آنالوگ برام سواله، باید به خروجی PWM وصل بشه؟! مگه این خروجی PWM یک عدد نیست؟
خیر . نیازی به pwm نیست . شما به ورودی این آی سی میتونی حتی یدونه از این کلید ها :NO:
وصل کنی یا اگه خواستی میتونی به جای کلید از میکرو یا هر چیزی استفاده کنی و با دادن ورودی باینری از 0 تا 255 در خروجی معادل آنالوگ اون رو داشته باشی .
پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
نوشته اصلی توسط m e h r d a d
خیر . نیازی به pwm نیست . شما به ورودی این آی سی میتونی حتی یدونه از این کلید ها :NO:
وصل کنی یا اگه خواستی میتونی به جای کلید از میکرو یا هر چیزی استفاده کنی و با دادن ورودی باینری از 0 تا 255 در خروجی معادل آنالوگ اون رو داشته باشی .
بله دیتاشیت رو دیدم، خیلی ایدتون جالب بود آقا، دمتون گرم! یعنی نظرتون اینه که برای تولید 5 ولت، من از سه تا پین میکرو استفاده کنم و بعد با صفر و یک کردن اونها و بعد اتصال اون به DAC0808 مقدار ولتاژ انالوگ موردنیاز رو ایجاد کنم؟! یعنی میشه؟ بدون استفاده از PWM? جواب میده؟
پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
بله دیتاشیت رو دیدم، خیلی ایدتون جالب بود آقا، دمتون گرم! یعنی نظرتون اینه که برای تولید 5 ولت، من از سه تا پین میکرو استفاده کنم و بعد با صفر و یک کردن اونها و بعد اتصال اون به DAC0808 مقدار ولتاژ انالوگ موردنیاز رو ایجاد کنم؟! یعنی میشه؟ بدون استفاده از PWM? جواب میده؟
پست قبلی رو یکم ویرایش کردم . دوباره یه نگاه بنداز .
پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
اون جور که من فهمیدم شما میخوای که با یک اینترفیس روی کامپیوتر، ولتاژ خروجی مدار رو تغییر بدی.
شما یه کاری کنید.
تو روش استفاده از DAC دیگه نیازی به PWM نیست.
بیایید و اول از همه مشخص کنید چند سطح ولتاژ میخواهید. مثلا این که من پیشنهاد کردم 8 بیتیه، پس شما 256 سطح ولتاژ می تونید داشته باشید اما ممکنه از همه نخواهید استفاده کنید. پس تا ایجنا و مرحله اول، میای و سطوح ولتاژی رو مشخص می کنی. اینا رو روی برنامه VB انجام میدی و یک پروتکلی واسه خودت تعریف کن. مثلا اگه 2 ولت خواستی یا همون عدد رو بفرست یا اینکه عدد 8 بیتی که اون ولتاژ را روی DAC به وجود میاره. (دومی بهتره).
مرحله بعدی میایید و روی میکرو برنامه ای بنویس که مقدار گرفته شد رو روی یکی از پورت ها بریزه. اون پورت رو هم متصل می کنی به ورودی DAC مثل دیتاشیتش.
حالا با ارتباط سریال می تونید ولتاژ متغیر تو خروجی داشته باشی.
اگر هم حوصله DAC نداری از روش دوم یعنی روش ارتباطی استفاده کن. اون روشی که دوستمون گفتند کلید هم نیاز نیست چون شما میخوای تنضیمات رو از طریق کامپیوتر بهش بدی.
پروژه ساده ای، شما میتونی با دستکاری تو مدار و اضافه کردن یه سری چیزا، مدار کاملتری داشته باشید.
پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
البته حواستون باشه که دیتا شیت رو خوب مطالعه کنید . چون ممکنه مقادیر اون جدول و مدار بالاش با هم تفاوت داشته باشند . که در اینصورت احتمالا با تغییر Vref بتوان تغییرات مورد نیاز رو اعمال کرد .
پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
نوشته اصلی توسط ajapyy
اون جور که من فهمیدم شما میخوای که با یک اینترفیس روی کامپیوتر، ولتاژ خروجی مدار رو تغییر بدی.
شما یه کاری کنید.
تو روش استفاده از DAC دیگه نیازی به PWM نیست.
بیایید و اول از همه مشخص کنید چند سطح ولتاژ میخواهید. مثلا این که من پیشنهاد کردم 8 بیتیه، پس شما 256 سطح ولتاژ می تونید داشته باشید اما ممکنه از همه نخواهید استفاده کنید. پس تا ایجنا و مرحله اول، میای و سطوح ولتاژی رو مشخص می کنی. اینا رو روی برنامه VB انجام میدی و یک پروتکلی واسه خودت تعریف کن. مثلا اگه 2 ولت خواستی یا همون عدد رو بفرست یا اینکه عدد 8 بیتی که اون ولتاژ را روی DAC به وجود میاره. (دومی بهتره).
مرحله بعدی میایید و روی میکرو برنامه ای بنویس که مقدار گرفته شد رو روی یکی از پورت ها بریزه. اون پورت رو هم متصل می کنی به ورودی DAC مثل دیتاشیتش.
حالا با ارتباط سریال می تونید ولتاژ متغیر تو خروجی داشته باشی.
اگر هم حوصله DAC نداری از روش دوم یعنی روش ارتباطی استفاده کن. اون روشی که دوستمون گفتند کلید هم نیاز نیست چون شما میخوای تنضیمات رو از طریق کامپیوتر بهش بدی.
پروژه ساده ای، شما میتونی با دستکاری تو مدار و اضافه کردن یه سری چیزا، مدار کاملتری داشته باشید.
پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
نوشته اصلی توسط m e h r d a d
البته حواستون باشه که دیتا شیت رو خوب مطالعه کنید . چون ممکنه مقادیر اون جدول و مدار بالاش با هم تفاوت داشته باشند . که در اینصورت احتمالا با تغییر Vref بتوان تغییرات مورد نیاز رو اعمال کرد .
ممنونم از توضیحاتتون و زحمتی که کشیدید برای کمک به من، فکر میکنم متوجه شدم، بازم ممنون
پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
دوست عزیز این پروژه کنترل هشت LED به صورت PWM با کامپیوتره. مدارو خیلی وقت پیش بستم و قشنگ کارداد. فقط کافیه خروجی هرکدوم رو به مداری که در پست اول بود بذاری.
http://s5.picofile.com/file/8136052692/8_relay_control_with_pwm.zip.html :nice:
پاسخ : ایجاد ولتاژ ثابت با atmega32 و کنترل آن از طریق visual basic
نوشته اصلی توسط meysamjet
درضمن مزایای این پروژه اینه که بدون میکرو هست و با LPT کامپیوتر کار میکنه
ممنون از راهنماییتون و کمکتون، راستش من کارهای دیگه ای مثل تولید شکلموج با فرکانس متغیر و خوندن دما و... رو هم باید انجام بدم بخاطر همین مجبورم از میکرو استفاده کنممم
دیدگاه