اطلاعیه

Collapse
No announcement yet.

گرفتن ولتاژ متغیر از avr

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    گرفتن ولتاژ متغیر از avr

    سلام به دوستان گرامی سایت خوب ECA

    با چه دستوری میتوان از AVR یک ولتاژ در حدود 0.4 ولت الی 2 ولت که با پتانسومتر قابل تنظیم باشد گرفت؟

    با تشکر
    قال امام صادق (ع):
    هر چیزی زکاتی دارد و زکات علم آنست که به اهلش بیاموزی.

    #2
    پاسخ : گرفتن ولتاژ متغیر از avr

    AVR خروجی آنالوگ نداره . می تونی برای دریافت خروجی آنالوگ از مبدل های دیجیتال به آنالوگ استفاده کنی .

    دیدگاه


      #3
      پاسخ : گرفتن ولتاژ متغیر از avr

      با پ امپ یه مبدل D/A بصورت R/2R ببند.

      میتونی با یه LM358 اینکار رو بکنی. یا اینکه یه کوچولو بیشتر خرج کن یه D/A آماده بگیر
      آموزش نرم افزار Matlab برای دانشجویان رشته های مهندسیhttp://alidoost.ir/news.php?readmore=22

      دیدگاه


        #4
        پاسخ : گرفتن ولتاژ متغیر از avr

        با سلام
        میتونی PWMرو فعال کنی به ازای هر مقدار که به PWM0Aمثلا در تایمر صفر بدی با یه مقاومت وخازن(انتگرال گیر )یه ولتاژ دقیق میده.
        من خودم از این طریق ولتازهای مختلفی گرفتم حتی از خروجی PWMیه موج سینوسی گرفتم.
        اگه برنامه هر کدامشون رو خواستی بگو.

        دیدگاه


          #5
          پاسخ : گرفتن ولتاژ متغیر از avr

          سلام.
          PWM هم روش خوبیه اما حتما با یه بافر باید استفاده بشه , وگرنه با کشیدن یه کوچولو جریان افت میکنه ولتاژت
          آموزش نرم افزار Matlab برای دانشجویان رشته های مهندسیhttp://alidoost.ir/news.php?readmore=22

          دیدگاه


            #6
            پاسخ : گرفتن ولتاژ متغیر از avr

            سلام

            3 راه داری:

            1.PWM و برای افت جریان پالسها رو به یک ترانزیستور بده.

            2.یک جمع کننده با مقاومت و opamp بساز

            3.D/A بزار.البته خودت هم میتونی بسازیش با مقاومت
            خدا گفت : به جهنم ببریدش، او برگشت و با تعجب به خدا نگاه کرد. خدا گفت : به بهشت ببریدش. فرشتگان پرسیدند: چرا؟! خدا گفت : او هنوز به من امیدوار است...

            دیدگاه


              #7
              پاسخ : گرفتن ولتاژ متغیر از avr

              نوشته اصلی توسط dr21
              با سلام
              میتونی PWMرو فعال کنی به ازای هر مقدار که به PWM0Aمثلا در تایمر صفر بدی با یه مقاومت وخازن(انتگرال گیر )یه ولتاژ دقیق میده.
              من خودم از این طریق ولتازهای مختلفی گرفتم حتی از خروجی PWMیه موج سینوسی گرفتم.
              اگه برنامه هر کدامشون رو خواستی بگو.
              [quote author=dr21 link=topic=25225.msg118702#msg118702 date=1234221992]

              با سلام
              نتونستم مشکل رو حل کنم اگه بذارید ممنون میشم
              قال امام صادق (ع):
              هر چیزی زکاتی دارد و زکات علم آنست که به اهلش بیاموزی.

              دیدگاه


                #8
                پاسخ : گرفتن ولتاژ متغیر از avr

                با سلام
                نتونستم مشکل رو حل کنم اگه دستور رو بذارید ممنون میشم
                قال امام صادق (ع):
                هر چیزی زکاتی دارد و زکات علم آنست که به اهلش بیاموزی.

                دیدگاه


                  #9
                  پاسخ : گرفتن ولتاژ متغیر از avr

                  سلام من تازه توی این خط اومدم این روش pwm رو نمیدونم
                  قال امام صادق (ع):
                  هر چیزی زکاتی دارد و زکات علم آنست که به اهلش بیاموزی.

                  دیدگاه


                    #10
                    پاسخ : گرفتن ولتاژ متغیر از avr

                    من در مورد روشهای دوستان موافقم
                    ولی بهتره از یک آی سی A/D استفاده کنی که در کل یک پورت رو میگیره !
                    دستوراتش هم خیلی سادس ؟

                    سی و بیسیک PX=12H
                    Mov PX,#12Hاسمبلی



                    در ضمن در مورد دستورات بالا زیاد جدی نگیر ! فالبداهه اومد ! :biggrin: :biggrin:

                    پهترین روش همین آی سیه !

                    البته اگه ARM کار باشی که خیلی سادست !

                    می دونی چرا ؟!!!! :question:

                    چون خودش A/D دار :rolleyes: :rolleyes:
                    Aristar Group - Always And Forever

                    دیدگاه


                      #11
                      پاسخ : گرفتن ولتاژ متغیر از avr

                      نوشته اصلی توسط Aristar
                      من در مورد روشهای دوستان موافقم
                      ولی بهتره از یک آی سی A/D استفاده کنی که در کل یک پورت رو میگیره !
                      دستوراتش هم خیلی سادس ؟

                      سی و بیسیک PX=12H
                      Mov PX,#12Hاسمبلی



                      در ضمن در مورد دستورات بالا زیاد جدی نگیر ! فالبداهه اومد ! :biggrin: :biggrin:

                      پهترین روش همین آی سیه !

                      البته اگه ARM کار باشی که خیلی سادست !

                      می دونی چرا ؟!!!! :question:

                      چون خودش A/D دار :rolleyes: :rolleyes:
                      سلام
                      دوست عزیز شما منظورتون از A/D مبدل آنالوگ به دیجیتال است؟؟
                      اگر اینطور است دوستمون می خواد ولتاژ آنالوگ تولید کنه میشه بگید چطوری میشه با مبدل آنالوگ به دیجیتال این کار رو انجام داد؟؟؟ چون به نظر من این روش اشتباه است.

                      دیدگاه


                        #12
                        پاسخ : گرفتن ولتاژ متغیر از avr

                        دوست عزیز
                        همانطور که می دونید موجpwm پالسهای است با پهنای متغییر که این پهنای متغییر را با اعداد مختلفی که به مقایسه گر تایمر می دهیم میتوانیم ایجاد کنیم یعنی هر عدد یک پهنای پالس و در نهایت یک ولتاژ ویک جریان خاص را در خروجی میدهد مثلا اگر از تایمر 0 استفاده کنیم 5 ولت تغذیه را به 255 قسمت می توان تقسیم کرد (با افزایش هر عدد مقایسه گرحدودا در خروجی 0.02 ولت افزایش ولتاژ در مد pwmداریم حتی با همین روش و استفاده از حلقه های for می توان یک موج سینوسی داشته باشیم )
                        در برنامه زیر بنا به درخواست شما با استفاده از خروجی pwmیک ولتاژ متغیر از 0 تا 2 ولت داریم (با فاصله 0.1 ولت تقریبا در هر ثانیه) که البته عدد مقایسه گر را می توان از خارج وارد برنامه کرد و همیشه یک ولتاژ ثابت در خروجی داشته باشیم به وسیله یک فیلتر و یک بافر میتوانیم از این ولتاژ در مدارات دیگر استفاده کنیم. با توجه به اینکه همیشه بایستی سادگی را در مدارات رعایت کنیم برنامه فوق را با یک میکرو Attiny 13 اجرا کردم

                        فیوزبیت میکرو باید روی فرکانس داخلی (مگا9.6) تنظیم بشه
                        خروجی ازپایه5میکروگرفته میشه
                        کل برنامه228 بایت است که میتوانی از بقیه حافظه وپا یه های دیگر میکرو برای کارهای دیگه استفاده کنی.
                        یکی از مزایای این روش تولید ولتاژبصورت کاملا تثبیت شده میباشد

                        دستورif خروجی را در حد 2 ولت نگه میدارد.
                        اگر در برنامه مشکلی بود در خدمتم.

                        $regfile = "ATTINY13.dat"
                        $crystal = 9600000
                        Config Portb.0 = Output
                        Config Timer0 = Pwm , Pwm = On , Compare A Pwm = Clear Down , Prescale = 1
                        Enable Timer0
                        $swstack = 10
                        Dim A As Word
                        Dim B As Word
                        B = 0
                        Do
                        For A = 0 To 100000
                        Pwm0a = B
                        Next
                        B = B + 5
                        If B > 105 Then B = 0
                        Loop


                        End

                        دیدگاه


                          #13
                          پاسخ : گرفتن ولتاژ متغیر از avr

                          منظور من D to A بود مثل اینکه اشتباهی تایپ شده !
                          Aristar Group - Always And Forever

                          دیدگاه

                          لطفا صبر کنید...
                          X