اطلاعیه

Collapse
No announcement yet.

سوال درمورد pwm در bascom

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

    سوال درمورد pwm در bascom

    با سلام به همه استادان و بروبچ سایت
    من امروز مبحث( pwm (bascom رو از روی کتاب کاهه داشتم میخوندم و یه چیزایی دستگیرم شد ولی :redface: چند سوال واسم پیش اومد
    1- پایه های oc1a , oc1b بطور همزمان میتونن خروجی داشته باشن ؟ و اینکه فرکانس خروجی هر دو یکیه یا میتونه فرق داشته باشه /

    2- موج مثلثی که توی کتاب شکلش کشیده شده توسط خود میکرو تولید میشه ؟
    3- در مورد نحوه تولید pwm به زبان ساده یه توضیحی واسم بدین ،

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

    #2
    پاسخ : سوال درمورد pwm در bascom

    سلام
    برای استفاده از PWM شما دو ثبات جدا از هم دارید که در صورت وقوع شرایط، تغییر سطوح ولتاژ که نتیجه مقایسه دوتا ثبات با تایمر هست روی دوتا پایه جدا oc1a و oc1b رخ میده. با تنظیم مقدارهای این ثباتها می تونی PWM های مختلفی را داشته باشی.
    شکل توی کتاب در حقیقت موج مثلثی نیست. بلکه داره نمودار رشد مقادیر تایمر رو نشون می ده که هر جا با ثباتهای مقایسه ای برابر شده، سطح ولتاژ خروجی هم متعاقبا عوض میشه. این شکل مال حالتیه که تایمر رو بعد از وقوع برابری، طوری تنظیم کرده باشی که رو به بالا بشمره. تنظیمهای دیگه اینجوریه که می تونه تایمر بعد از وقوع برابری ریست بشه یا رو به پایین بشمره.
    در حقیقت موجی که فرکانس اون با PWM کنترل می شه یا به واقع Duty Cycle موج رو تحت کنترل در میاریم برای اینکه بتونیم از توان موج برای اهداف خاصی استفاده کنیم. بیشتر این اهداف کنترلی هستند. بنابراین با عوض کردن سطح موج در زمانهای مشخص که معادل عوض کردن عرض سطح فعال یا همون Duty cycle، توان موج خروجی رو کنترل می کنیم. می شه در خروجی یک خازن مناسب رو هم قرار داد تا حالتی مانند یک موج آنالوگ رو هم بدست بیاریم.
    موفق باشی

    دیدگاه


      #3
      پاسخ : سوال درمورد pwm در bascom

      ممنون از توضیحاتت یه چیزایی دسگیرم شد توی کتاب من چیزی در مورد duty cycle ندیدم فقط در مورد پیکر بندی و فرکانس pwm بحث شده اگه ممکنه در این مورد بیشتر توضیح بدین :bye و پیکر بندیش به چه صورته
      کمتر به سایت میام .....

      دیدگاه


        #4
        پاسخ : سوال درمورد pwm در bascom

        کسی نبود یه توضیحی در مورد duty cyclr پالس خروجی واسه من بده اگه با یه مثال ساده باشه که بهتر
        کمتر به سایت میام .....

        دیدگاه


          #5
          پاسخ : سوال درمورد pwm در bascom

          سلام
          pwm مدلاسیون پهنای باند

          duty cycle
          مثلا تو یک موج مربعی مقدار زمانی که پالس یک هستش به کل زمان یک دوره تناوب پالسduty cycle می گن
          زندگی یه فرصته

          دیدگاه


            #6
            پاسخ : سوال درمورد pwm در bascom

            نوشته اصلی توسط علیرضا خلیلی
            سلام
            pwm مدلاسیون پهنای باند

            duty cycle
            مثلا تو یک موج مربعی مقدار زمانی که پالس یک هستش به کل زمان یک دوره تناوب پالسduty cycle می گن
            ممنون از توضیحت ولی منظور من این بود که چطور میتونم زمان وظیفه پالس خروجی رو کم و زیلد کنم با چه دستوری یا دستوراتی اگه یکی یه مثال واسم بزنه حله
            کمتر به سایت میام .....

            دیدگاه


              #7
              پاسخ : سوال درمورد pwm در bascom

              سلام

              این پروژه pwm

              سورس بسکام+فایل شبیه سازی پروتیوس با همه دستورات

              :nice: :nerd: :nerd:
              زندگی یه فرصته

              دیدگاه


                #8
                پاسخ : سوال درمورد pwm در bascom

                این پروژه pwm

                سورس بسکام+فایل شبیه سازی پروتیوس با همه دستورات


                http://www.4shared.com/file/60318459/ea771c3e/pwm____00.html
                زندگی یه فرصته

                دیدگاه


                  #9
                  پاسخ : سوال درمورد pwm در bascom

                  سلام!
                  در این برنامه با تغییر w به هر شیوه ای توی برنامه از 255(duty cycle 0%) تا 0 (duty cycle 100%) میتوان duty cycle رو تغییر داد.
                  البته چون pwm 8 بیتی config شده تا 255 مقدار میگیره.مثلا برای 10 بیتی میشه 1023.

                  $regfile = "m8def.dat"
                  $crystal = 1000000

                  Dim W As Word

                  Config Timer1 = Pwm , Pwm = 8 , Prescale = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up

                  do

                  Pwm1a =w
                  Pwm1b = 0

                  Loop
                  End
                  چرخ بر هم زنم ار غیر مرادم گردد من نه آنم که زبونی کشم از چرخ فلک

                  دیدگاه


                    #10
                    پاسخ : سوال درمورد pwm در bascom

                    ممنون از برنامه ای که گذاشتی خود برنامه گویای همه چیز هست فقط یه نکته ابهام امیز واسه من اینه که مقدار Pwm1a رو که مقدار دهی کردی چرا pwm1b رو مقدار دهی نکردی ؟ و سوال دیگه این دوتا با هم مقایسه میشن و حاصل pwm در خروجیه یا مقدار Pwm1a با تایمر :question:

                    چرا توی فایل شبیه سازی پالس خروجی رو مستقیما به موتور وصل نکردی و به یه رله وصل کردی ?
                    Do
                    Cursor Off Noblink
                    If Pind.7 = 0 Then A = A - 50
                    If A < 50 Then A = 400
                    Waitms 500

                    If A < 100 Then : Locate 1 , 8 : Lcd "value" ; "=" ; " " ; A
                    Elseif A <= 400 Then : Locate 1 , 8 : Lcd "value" ; "=" ; A
                    End If
                    Pwm1a = A
                    کمتر به سایت میام .....

                    دیدگاه

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