help: công thức tính nhiệt độ cho LM35

Thảo luận trong 'AVR' bắt đầu bởi huan.ddh, 26 Tháng sáu 2013.

Users Viewing Thread (Users: 0, Guests: 0)

  1. huan.ddh

    huan.ddh Member

    Tiền:
    $1,631
    e chào các bác.
    e đang tìm hiểu LM35 để đo hiển thị nhiệt độ lên LCD1602 dùng avr.
    e có tham khảo trên mạng cách tính như sau:
    Dùng ADC 10 bit! Giá trị của ADC lầy từ [-1024 đến 1024] nên ta chỉ lấy giá trị dương giá trị ADC của nó là 0 đến 2048.
    + Bước thay đổi của ADC là n = 5/2048 = 2.44mV
    + Tại 0 độ C thì giá trị đầu ra của LM35 là 0mV tương ứng với ADC = 0
    Với ADC = 1 thì điện áp tương úng là 2.44mV mà LM35 thay đổi trong 10mV. Nên giá trị ADC thay đổi trong 1 đơn vị thì nhiệt độ phải thay đổi là (2.44mV/10mV) = 0.244
    Vậy ta có công thức tính toán đầy đủ cho nhiệt độ đầu ra là
    nhiệt đọ = ADC * 0.244 = ?
    xin hỏi các bác công thức này có đúng ko?nêu sai bác nào có thể chỉ cho e cách tính được ko?
    thank các bác!
    CHỦ ĐỀ NGẪU NHIÊN CÙNG CHUYÊN MỤC
    CHIA SẺ Share





    phongict thích bài này.
  2. Dukebk.dt7

    Dukebk.dt7 Member

    Tiền:
    $5,306
    Chào bạn!
    Bộ ADC 10 bit thì giá trị của ADC sẽ là từ 0-1024 (2^10).
    Vì thế bước thay đổi sẽ là n=5/1024.
    Khi thay đổi 1 độ thì điện áp ra của LM35 sẽ thay đổi 10mV.
    Vì vậy công thức nhiệt độ sẽ là T=ADC x n /10^-2.
    Bạn chỉ bị nhầm về bộ ADC 10bit thôi, vì thế công thức tính sẽ bị sai.
    Chúc bạn thành công.
  3. huan.ddh

    huan.ddh Member

    Tiền:
    $1,631
  4. huan.ddh

    huan.ddh Member

    Tiền:
    $1,631
  5. huan.ddh

    huan.ddh Member

    Tiền:
    $1,631
    e tính theo công thức của bác nhưng thấy nó không đúng
    ADC của e đọc từ LM35=14
    e thay vào công thức của bác thì nó là 6.835975
    thế có nghĩa là sao hả bác?
  6. huan.ddh

    huan.ddh Member

    Tiền:
    $1,631
    e tính mấy lần rồi mà vẫn thế:(
  7. an.dxuan

    an.dxuan Nhóm MCU

    Tiền:
    $3,305
    bạn gửi code với mo phỏng lên đi mọi người xem rồi chỉnh cho
  8. an.dxuan

    an.dxuan Nhóm MCU

    Tiền:
    $3,305
    bạn gửi code với mo phỏng lên đi mọi người xem rồi chỉnh cho
  9. huan.ddh

    huan.ddh Member

    Tiền:
    $1,631
    e tính ra rồi ,do e khai báo sai. bác xem hộ e nó hiển thị nhưng nhiệt độ cứ nhảy từ 27-31.
    thanks bác!

    Các file đính kèm:

  10. huan.ddh

    huan.ddh Member

    Tiền:
    $1,631
    e tính ra rồi ,do e khai báo sai. bác xem hộ e nó hiển thị nhưng nhiệt độ cứ nhảy từ 27-31.
    thanks bác!
  11. huan.ddh

    huan.ddh Member

    Tiền:
    $1,631
    e ko mô phỏng proteus. e nạp trực tiếp vào mạch
  12. an.dxuan

    an.dxuan Nhóm MCU

    Tiền:
    $3,305
    trong công thức Temp=((read_adc(4)*4.45)/(0.01*1024)); thì read_adc(4) là kiểu int ,4.45 là kiểu float nên phép tính của bạn sẽ tự ép thành kiểu int ,bạn thay đổi công thức đó thành Temp=(((float)read_adc(4)*4.45)/(0.01*1024)); rồi biên dịch lại và nạp xem nhé
  13. an.dxuan

    an.dxuan Nhóm MCU

    Tiền:
    $3,305
    trong công thức Temp=((read_adc(4)*4.45)/(0.01*1024)); thì read_adc(4) là kiểu int ,4.45 là kiểu float nên phép tính của bạn sẽ tự ép thành kiểu int ,bạn thay đổi công thức đó thành Temp=(((float)read_adc(4)*4.45)/(0.01*1024)); rồi biên dịch lại và nạp xem nhé
  14. coolchicken01

    coolchicken01 New Member

    Tiền:
    $2
    bạn ơi cho mình hỏi? tính theo công thức này nhiệt độ nếu có thay đổi thì mỗi lần thay đổi 2 độ, vd: từ 29 lên 31 hay 33. làm thế nào để chỉ thay đổi 1 độ thôi??
  15. BanLinhKien.Vn

    BanLinhKien.Vn Nhóm MCU

    Chào bạn!
    Việc giá trị nhiệt độ thay đổi 2 độ thì vi điều khiển mới xác định được là không phải do công thức tính này mà do bộ ADC bạn sử dụng. Nếu bạn sử dụng bộ ADC có độ phân giải lớn thì bạn sẽ phát hiện được những bước thay đổi nhiệt độ nhỏ hơn.
  16. bienhaui

    bienhaui New Member

    Tiền:
    $4
    Sai luồng chút. nhưng mình dùng DS18B20

    mình dùng bản codevisions1.24 , thư viện của nó chỉ có hàm này thôi

    int Temp;
    Temp=ds1820_temperature_10(0);

    Mình đọc và in lên màn hình sao nó toàn là giá trị 10240 thôi, bạn nào giải thích giùm với
  17. BanLinhKien.Vn

    BanLinhKien.Vn Nhóm MCU

    Bạn có thể tải bạn 2.0.5 về dùng.
    Đăng ký hoặc đăng nhập để thấy Link -  Ủng hộ bài viết bằng nút " Thích"

Chia sẻ trang này