اطلاعیه

Collapse
No announcement yet.

سنسور التراسونیک

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

    سنسور التراسونیک

    سلام خدمت دوستان
    چند روز پیش دوتا سنسور الترا مدل US15 خریدم حالا که وصلش کردم به میکرو درست جواب نمیده
    توی اکثر سایتها برای پروژشون از SRF05 استفاده کردن که ظاهرا تا 4.5 متر قدرت تشخیص داره
    حالا باید چکار کنم یعنی این دوتایی که خریدم جوابگو نخواهند بود ؟؟

    اضافه شده در تاریخ :
    راستی این خطوط برنامه نویسی که استفاده کردم شاید عیب از برنامه باشه :
    [pre]
    $regfile = "m32def.dat"
    $crystal = 8000000

    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Pinb.0 , Db5 = Pinb.1 , Db6 = Pinb.2 , Db7 = Pinb.3 , Rs = Pinb.4 , E = Pinb.5
    Cursor Off
    Cls

    Config Porta.7 = Output 'tarife paye haye eco va trig
    Config Pina.6 = Input
    Dim A As Word
    Dim B As Single
    Dim F As String * 10 'tarife moteghayer
    Dim E As Byte
    Dim C As Byte
    C = 0
    Cls
    Locate 1 , 1
    Lcd "UltraSonic.Radar"
    Waitms 500

    Do
    Toggle Portb.0
    Toggle Portb.1

    Pulseout Porta , 7 , C 'ersale pulse
    Pulsein A , Pina , 6 , 1 'daryafte pulse
    B = A * 0.1735
    F = Fusing(b , "&.&&&quot

    Cls
    Home
    Lcd "distance:" ; F ; "cm"
    Locate 2 , 1
    Lcd "Trazges.990"
    Waitms 300

    Loop
    End
    [/pre]

    اکثر مواقع بااینکه جسم روبروش هست ولی عدد 0 نشون میده

    #2
    پاسخ : سنسور التراسونیک

    همونطور که حدس زده بودم فاصله ای کوتاه باید بین ارسال پالس و دریافت اون باشه
    مگه میشه پالس رو بفرستی همون لظحه منتظر برگشت باشی

    این کد خدمت دوستان،عالی جواب میده با همون ماژول US-15

    $regfile = "m32def.dat"
    $crystal = 8000000

    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Pinb.0 , Db5 = Pinb.1 , Db6 = Pinb.2 , Db7 = Pinb.3 , Rs = Pinb.4 , E = Pinb.5

    Config Porta.7 = Output
    Trigger Alias Porta.7
    Trigger = 0

    Config Porta.6 = Input

    Config Portd.7 = Output
    Led Alias Portd.7
    Led = 0

    Dim A As Word
    Dim S As Single
    Config Single = Scientific , Digits = 2
    Const K = 0.1725

    Waitms 50

    Cursor Off
    Cls
    Lcd "SRF-05"
    Locate 2 , 1
    Lcd "AUTO Range"

    Led = 1
    Waitms 100
    Led = 0

    Wait 3

    Do

    Trigger = 1
    Waitus 15
    Trigger = 0

    Waitus 10
    Pulsein A , Pina , 6 , 1

    S = A * K

    Cls
    Locate 2 , 1
    Lcd "dis: " ; S ; " cm"

    If S < 20 Then
    Led = 1
    Waitms 20
    Led = 0
    End If

    Waitms 100

    Loop

    End

    دیدگاه

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