اطلاعیه

Collapse
No announcement yet.

خداحافظی با نویز در adc avr

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

    خداحافظی با نویز در adc avr

    نکات مهم برای حذف نویز :
    1- استفاده از خازن 100 نانو فاراد در نزدیکترین محل برای اتصال تغذیه آی سی ها
    2- استفاده از فیلتر ال سی که می تواند با یک خازن صد نانو و یک سلف 10 میکرو هانری ایجاد شود برای تغذیه AVREF در میکرو کنترلر ها
    3- کشیدن یک لایه مسی در دور مدار چاپی و اتصال آن به زمین
    4- برنامه نویسی مناسب به طور مثال : استفاده از حذف بانس به صورت نرم افزاری در هنگام خواندن کلید و یا استفاده از مد ADC Noise reduction برای خواندن ADC
    یک نمونه برنامه نوشته شده برای حذف نویز در adc :
    که یک مولتی متر هست با مگا 8
    کد:
    $regfile = "m8def.dat"
    $crystal = 1000000
    
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Pind.4 , Db5 = Pind.5 , Db6 = Pind.6 , _
     Db7 = Pind.7 , E = Pind.2 , Rs = Pind.0
    Cursor Off
    
    Config Adc = Single , Prescaler = 8
    
    Config Debounce = 30
    Enable Interrupts
    Enable Adc
    On Adc Adc_isr
    
    Dim A As Word
    Dim B As Word
    Dim C As Word
    Dim Vac As Single
    Dim Vdc As Single
    Dim Iac As Single
    Dim Idc As Single
    Dim R As Single
    Config Single = Scientific , Digits = 1
    
    Dim I As Byte
    I = 1
    
    Declare Sub A1
    Declare Sub A2
    
    Ddrb.2 = 0 : Portb.2 = 1
    
    Cls
    
    Lcd " SYD SAJJAD MSV "
    Wait 1
    Lowerline
    Lcd " MULTI METER "
    Waitms 700
    
    Do
    Shiftlcd Left
    Waitms 600
    Debounce Pinb.2 , 0 , A1
    Shiftlcd Right
    Waitms 600
    Debounce Pinb.2 , 0 , A1
    Shiftlcd Right
    Waitms 600
    Debounce Pinb.2 , 0 , A1
    Shiftlcd Left
    Waitms 600
    Debounce Pinb.2 , 0 , A1
    Loop
    
    Main:
    Do
    Start Adc
    A = Getadc(0)
    B = Getadc(1)
    C = Getadc(2)
    Idle
    Stop Adc
    Debounce Pinb.2 , 0 , A2
    Waitms 450
    Select Case I
    Case 1:
    Goto Main1
    Case 2:
    Goto Main2
    Case 3:
    Goto Main3
    Case 4:
    Goto Main4
    Case 5:
    Goto Main5
    Case 6
    Goto Main6
    End Select
    Loop
    
    Main1:
    Cls
    Home
    Vac = B
    Vac = Vac / 37
    If Vac > 26 Then
    Vac = 222
    End If
    Lcd " AC VOLT METER "
    Lowerline
    Lcd "Vac is : " ; Vac ; " V "
    Goto Main
    
    Main2:
    Cls
    Home
    Vdc = B
    Vdc = Vdc / 27
    Lcd " DC VOLT METER "
    Lowerline
    Lcd "Vdc is : " ; Vdc ; " V "
    Goto Main
    
    Main3:
    Cls
    Home
    Iac = C * 1000
    Iac = Iac / 1440
    Iac = Iac - 602
    Lcd " AC AMPER METER "
    Lowerline
    Lcd "Iac is: " ; Iac ; " mA "
    Goto Main
    
    Main4:
    Cls
    Home
    Idc = C
    Idc = Idc - 871
    Lcd " DC AMPER METER "
    Lowerline
    Lcd "Idc is : " ; Idc ; " mA "
    Goto Main
    
    Main5:
    Cls
    Home
    Lcd " O H M METER 1K "
    Config Portb.1 = Output
    Portb.1 = 0
    Config Portb.0 = Input
    Reset Portb.0
    R = A
    R = R * 3
    R = R - 1250
    Locate 2 , 1
    If R > 1200 Then
    Lcd "RESis: over load"
    Else
    Lcd "RESis:" ; R ; "ohm"
    End If
    Goto Main
    
    Main6:
    Cls
    Home
    Lcd "O H M METER 100K"
    Config Portb.1 = Input
    Reset Portb.1
    Config Portb.0 = Output
    Portb.0 = 0
    R = A
    R = R / 4
    R = R - 97
    Locate 2 , 1
    If R > 110 Then
    Lcd "RESis: over load"
    Else
    Lcd "RESis:" ; R ; "K ohm"
    End If
    Goto Main
    End                             'end program
    
    Sub A1:
    Cls
    Goto Main
    End Sub A1
    
    Sub A2:
    If I < 6 Then
      Incr I
      Else
      I = 1
      End If
      Goto Main
    End Sub A2
    
    Adc_isr:
    Return

    sigpic

    #2
    مد adc noise reduction

    در این مد هنگامی که مبدل آنالوگ به دیجیتال کار می کند کلاک سی پی یو که روی کار adc تاثیر منفی دارد از کار می افتد و بعد از تمام شدن کار مبدل آنالوگ به دیجیتال کلاک سی پی یو دوباره متصل می شود و به نوعی میکرو دوباره بیدار می شود.
    از جمله نویز هایی که روی adc تاثیر دارد نویز های مدار هستند که با فیلتر های ال سی کاملا از بین می رود اما نویز داخلی که کلاک سی پی یو هست را باید توسط اصلاح نرم افزار و استفاده از این مد کارآمد از بین ببریم.
    نمونه این برنامه در پست قبلی مشاهده می شود.

    sigpic

    دیدگاه

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