Cách đơn giản nhất để hiệu chỉnh nhiệt điện trở là gì?


11

Là một người có sở thích không có quyền truy cập vào thiết bị phòng thí nghiệm, tôi thực sự không thể hiệu chỉnh nhiệt điện trở mà tôi có.

Tất nhiên có các cảm biến nhiệt độ được hiệu chỉnh như DS18B20, nhưng các bộ ổn nhiệt đặc biệt trên các MCU chậm như Aruino UNO (so với MCU mới) thì nhanh hơn.

Chúng ta có những lựa chọn nào để hiệu chỉnh nhiệt điện trở mà không cần sử dụng thiết bị thí nghiệm?


1
Sử dụng một cảm biến được hiệu chỉnh là DS18B20 để lấy một đặc tính của nhiệt điện trở.
Janka

"Snappier" nghĩa là gì? Điều đó không có vẻ là một lời biện minh tốt nếu bạn cần chỉnh sửa phần mềm trên nhiệt điện trở nhưng bạn không dùng DS18B20.
Elliot Alderson

Nếu độ trễ một giây của DS18B20 ở độ phân giải đầy đủ là mối quan tâm của bạn, hãy sử dụng một trong các cảm biến trên màn hình pin, ví dụ DS2438. Nó có một cảm biến nhiệt độ nhanh trên chip.
Janka

2
@newbie Hiệu chỉnh nhiệt độ, cho chính xác, nói chung là khó khăn. Một số phạm vi khó khăn hơn những phạm vi khác. Điểm đóng băng của các vật liệu thường có sẵn có thể giúp ích rất nhiều, vì vậy nếu phạm vi của bạn bao gồm nhiều vật liệu hơn. Nhưng các tài liệu tham khảo chính xác sẽ có thể truy nguyên theo các tiêu chuẩn NIST hoặc DIN (hoặc nhóm tương tự) được lưu giữ trong phòng thí nghiệm ở đâu đó và được quản lý bởi một hoặc hai nhà vật lý. Nó sẽ giúp câu hỏi của bạn nếu bạn chỉ định phạm vi nhiệt độ và độ chính xác và độ chính xác bạn tìm kiếm trong phạm vi đó.
jonk

1
@newbie Nhưng ở nhà? Tìm kiếm độ tinh khiết và sau đó tạo ra sự kết hợp nước đá / chất lỏng hoặc nồi hơi ngưng tụ tinh khiết khác. Ví dụ, nước đá trộn với nước được sử dụng rất phổ biến - nhưng việc nó có đủ hay không có thể phụ thuộc vào số liệu chính xác của bạn và công việc bạn sẵn sàng làm. Bạn cũng có thể sử dụng nước sôi hoặc axit sulfuric được phép ngưng tụ dưới đáy bình hoa. (Tôi đã sử dụng cả hai.) Nhưng kết quả cũng phụ thuộc vào tạp chất và sự thay đổi áp suất khí quyển và các yếu tố khác. Yêu cầu của bạn có rất nhiều để chịu đựng những gì có thể được đề xuất cho các nỗ lực homebrew.
jonk

Câu trả lời:


5

Hiệu chỉnh một nhiệt điện trở (hoặc hầu hết mọi cảm biến cho vấn đề đó) là một quá trình gồm hai bước:

  1. đo dữ liệu hiệu chuẩn
  2. đưa ra một luật hiệu chuẩn phù hợp với dữ liệu đó

Bước đầu tiên là khó nhất, và thật không may là người tôi có ít kinh nghiệm nhất. Sau đó tôi sẽ chỉ mô tả nó một cách rất chung chung. Bước thứ hai chủ yếu là toán học.

Đo dữ liệu hiệu chuẩn

Bạn phải điền vào một bảng với các cặp (T, R), tức là với các giá trị điện trở được đo ở nhiệt độ đã biết. Dữ liệu hiệu chuẩn của bạn phải bao gồm toàn bộ phạm vi nhiệt độ mà bạn sẽ cần trong sử dụng thực tế. Điểm dữ liệu cách ra khỏi phạm vi này không phải là rất hữu ích. Nếu không, bạn càng có nhiều điểm dữ liệu thì càng tốt.

Để đo điện trở của nhiệt điện trở, tôi khuyên bạn chống lại việc sử dụng một Ôm kế. Sử dụng thay vì thiết lập tương tự bạn sẽ sử dụng cho các phép đo sau hiệu chuẩn thực tế. Bằng cách này, mọi lỗi hệ thống trong phép đo điện trở (như lỗi bù và độ khuếch đại ADC) sẽ được hiệu chỉnh.

Để biết nhiệt độ, bạn có hai lựa chọn: sử dụng các điểm nhiệt độ cố định (như, ví dụ như nước sôi hoặc đá tan) hoặc sử dụng nhiệt kế đã được hiệu chuẩn. Điểm cố định là tiêu chuẩn vàng của hiệu chuẩn nhiệt độ, nhưng thật khó để làm cho đúng, và bạn có thể sẽ không tìm thấy nhiều trong số chúng trong phạm vi nhiệt độ bạn quan tâm.

Sử dụng một nhiệt kế tốt đã biết có thể sẽ dễ dàng hơn, nhưng vẫn còn một vài lưu ý:

  • bạn nên chắc chắn rằng nhiệt điện trở và nhiệt kế tham chiếu ở cùng nhiệt độ
  • bạn nên giữ nhiệt độ ổn định đủ lâu để cả hai đạt được trạng thái cân bằng nhiệt.

Đặt cả hai gần nhau, trong một vỏ bọc có quán tính nhiệt cao (tủ lạnh hoặc lò nướng) có thể giúp đỡ ở đây.

Rõ ràng, độ chính xác của nhiệt kế tham chiếu là một yếu tố rất quan trọng ở đây. Cần phải chính xác hơn đáng kể rằng các yêu cầu bạn có về độ chính xác đo lường cuối cùng của bạn.

Phù hợp với một luật hiệu chuẩn

Bây giờ bạn cần tìm một hàm toán học phù hợp với dữ liệu của bạn. Điều này được gọi là phù hợp với kinh nghiệm của người Viking. Về nguyên tắc, bất kỳ luật nào cũng có thể làm miễn là nó nằm đủ gần các điểm dữ liệu. Đa thức là một yêu thích ở đây, vì sự phù hợp luôn hội tụ (vì hàm này là tuyến tính so với các hệ số của nó) và chúng rất rẻ để đánh giá, ngay cả trên một vi điều khiển thấp. Trong trường hợp đặc biệt, hồi quy tuyến tính có thể là luật đơn giản nhất bạn có thể thử.

Tuy nhiên, trừ khi bạn quan tâm đến một phạm vi nhiệt độ rất hẹp, phản ứng của nhiệt điện trở NTC rất phi tuyến tính và không phù hợp với đa thức mức độ thấp. Tuy nhiên, một sự thay đổi chiến lược của các biến có thể làm cho luật của bạn gần như tuyến tính và rất dễ phù hợp. Đối với điều này, chúng ta sẽ chuyển hướng thông qua một số vật lý cơ bản ...

Sự dẫn điện trong một nhiệt điện trở NTC là một quá trình kích hoạt nhiệt. Độ dẫn sau đó có thể được mô hình hóa bằng phương trình Arrhenius :

G = G exp (−E a / (k B T))

nơi G được gọi là “yếu tố trước mũ”, E mộtnăng lượng kích hoạt , k Bhằng số Boltzmann , T là nhiệt độ tuyệt đối.

Điều này có thể được sắp xếp lại như là một luật tuyến tính:

Nhật ký 1 / T = A + B (R)

trong đó B = k B / E a ; A = B log (G ); và log () là logarit tự nhiên.

Nếu bạn lấy dữ liệu hiệu chuẩn của mình và vẽ đồ thị 1 / T làm hàm của log (R) (về cơ bản là một đồ thị Arrhenius với các trục được hoán đổi), bạn sẽ nhận thấy nó gần như, nhưng không hoàn toàn là một đường thẳng. Sự khởi đầu từ tuyến tính chủ yếu đến từ thực tế là yếu tố tiền hàm mũ phụ thuộc một chút vào nhiệt độ. Đường cong tuy nhiên đủ mịn để rất dễ dàng được trang bị bởi một đa thức bậc thấp:

1 / T = c 0 + c 1 log (R) + c 2 log (R) 2 + c 3 log (R) 3 + ...

Nếu phạm vi nhiệt độ bạn quan tâm là đủ ngắn, một xấp xỉ tuyến tính có thể đủ tốt cho bạn. Sau đó, bạn sẽ sử dụng cái gọi là mô hình β mô hình, trong đó hệ số is là 1 / B. Nếu bạn sử dụng đa thức bậc ba, bạn có thể nhận thấy rằng hệ số c 2 có thể bị bỏ qua. Nếu bạn bỏ bê nó, thì bạn có phương trình Steinhart ăn Hart nổi tiếng .

Nói chung, mức độ đa thức càng cao thì càng phù hợp với dữ liệu. Nhưng nếu mức độ quá cao, bạn sẽ kết thúc quá mức . Trong mọi trường hợp, số lượng tham số miễn phí phù hợp không bao giờ vượt quá số điểm dữ liệu. Nếu những con số này bằng nhau, thì luật sẽ khớp chính xác với dữ liệu , nhưng bạn không có cách nào để đánh giá mức độ phù hợp. Lưu ý rằng máy tính nhiệt điện trở này (được liên kết trong một nhận xét) chỉ sử dụng ba điểm dữ liệu để cung cấp ba hệ số. Đây là thần cho một hiệu chuẩn gần đúng sơ bộ, nhưng tôi sẽ không dựa vào nó nếu tôi cần độ chính xác.

Tôi sẽ không thảo luận ở đây làm thế nào để thực sự phù hợp. Gói phần mềm để làm cho dữ liệu tùy ý phù hợp rất nhiều.


Cảm ơn câu trả lời cũng chi tiết và giải thích. câu hỏi phụ; tôi đã sử dụng cảm biến DS18B20 làm nguồn đọc nhiệt độ của mình và nhận thấy việc đọc nhiệt điện trở giảm khoảng 2,2 độ. sau đó tôi đã thêm 2,2 độ trong tính toán nhiệt độ nhiệt điện trở. bây giờ cả hai bài đọc từ DS18b20 và nhiệt điện trở gần như giống nhau. tôi đã thử nghiệm sự thay đổi nhiệt độ trong phạm vi từ 25 đến 35 độ và mặc dù nhiệt điện trở nhạy hơn với thay đổi nhiệt độ nhưng kết quả cuối cùng là gần như nhau. mặt trái của phương pháp này mà tôi đã sử dụng là gì?
ElectronSurf

2
@newbie: Tôi không hiểu về cách đọc nhiệt kế là khoảng 2,2 độ. Một nhiệt điện trở không cho đọc bằng độ. Bạn có nghĩa là bạn đã thử một số luật hiệu chuẩn (đến từ đâu?) Đã cho phép đọc 2.2 ° C? Nếu đây là trường hợp và phần bù này hoàn toàn không đổi, cách tiếp cận của bạn có nhược điểm nhỏ là có luật chuyển đổi phức tạp hơn với một bước số học bổ sung. Nếu phần bù không hoàn toàn không đổi, việc làm lại phần phù hợp sẽ cho bạn kết quả tốt hơn.
Edgar Bonet

11

Đọc Thermistor là một chút khó khăn. Phương pháp hiệu chuẩn ở trên, không mang lại kết quả phát hiện lỗi, Nó sẽ tạo ra hai điểm của đường cong logarit (đường cong phản ứng nhiệt điện trở.

Điều này có nghĩa, cứ sau 0,1 ° C thay đổi nhiệt độ, sự thay đổi tương ứng về điện trở sẽ thay đổi, tùy thuộc vào phạm vi của nhiệt độ. nhập mô tả hình ảnh ở đây

Lúc đầu, bạn có thể nhìn thấy một lỗi khoảng 2 đến 5 ° C so với nhiệt độ thực, nhưng không có lỗi, chỉ có một kết quả xấu.

Bạn không đăng bất kỳ chi tiết nào về cách bạn đọc nhiệt điện trở này, Arduino có thể? Tôi phải nói rằng, một số thư viện hoàn toàn không hoạt động, vì vậy bạn phải tạo một chức năng đặc biệt để làm như vậy.

Đăng về giải thích chi tiết về cách đặc trưng và đọc một nhiệt điện trở. Bài viết bằng tiếng Tây Ban Nha, nhưng trong các thẻ mã, tất cả các giải thích bằng tiếng Anh.

Khi bạn đã có được hệ số ABC, sai số của bạn sẽ là khoảng 0,1 ° C từ một phép đo khác, ngay cả trong một dây LAN dài 6m.

Một thử nghiệm trên 4 nhiệt điện Bài kiểm tra này đọc cùng lúc với 4 nhiệt điện trở, Bạn có thể thấy một sự khác biệt nhỏ về nhiệt độ so với 2 trong số chúng tôi đang cầm trong tay một thời gian ngắn.


@newbie Đây là cách tiếp cận đúng. Nếu bạn không thể làm theo hướng dẫn, hãy trả lời tôi sau một ngày hoặc tôi sẽ tìm mã arduino của mình và tìm các tài liệu tham khảo có trong đó và viết câu trả lời tại đây.
piojo

1
Liên kết chết, và khả năng của câu trả lời này để tạo ra một giải pháp trong tương lai phụ thuộc nhiều vào liên kết đang hoạt động. Bạn có thể thêm các bước để trả lời của bạn?
Keeta - phục hồi Monica

Tôi sao chép và dán phần mã của câu trả lời; // Đây là một mã ví dụ về cách đọc nhiệt điện trở, "Thermimistor.h" Lib ngoài đó chỉ chấp nhận Beta // coeficient và trong trường hợp của tôi mang lại kết quả, đây là cách dễ hiểu hơn để đọc // nhiệt điện trở , trong trường hợp bạn mắc bệnh sởi lẻ hoặc sai, vui lòng làm theo các bước sau: // // Để có kết quả nhanh chóng cho mã này, bạn sẽ cần; // một multymeter, một nhiệt điện trở NTC, một nhiệt kế khác theo nhiệt độ // đầu dò. // Bước 1.- Đặt multimiter trên chế độ mua sắm kháng thuốc
Alejandro Santiago

// Bước 2.- Đọc và giải thích điện trở thực tế của nhiệt điện trở // và nhiệt độ thực tế (cho phép 1 phút để có được dịch bệnh sởi ổn định). // Một ít nước nóng và một cốc. // Bước 3.- đặt cả hai cảm biến (Thermistor và đầu dò nhiệt độ vào // người nhận chứa nước ở nhiệt độ môi trường). // Trong một cốc khác đun nóng một ít nước. // Thêm nước nóng cho đến khi bạn làm nóng hơn 10 ° C đầu dò nhiệt độ, đợi // mua thuốc ổn định và anot nhiệt độ và điện trở. // Thêm nhiều nước hơn để làm nóng phần tử 20 ° từ lần mua sắm đầu tiên. // Lưu ý về nhiệt độ và điện trở
Alejandro Santiago

1
@newbie Nếu bạn có nhiệt điện trở NTC, bạn cần tính các hằng số A, B và C và cắm chúng vào phương trình Steinhart Hart để giải quyết nhiệt độ từ điện trở. Bạn cần ba phép đo nhiệt độ / điện trở để tìm các hằng số này. (Các hằng số khác nhau trên mỗi nhiệt điện trở và việc tìm các hằng số là hiệu chuẩn của bạn.) Bài viết này cho biết cách thực hiện, nhưng vì nó sử dụng toán học ma trận, tôi khuyên bạn nên tìm một máy tính trực tuyến. thinkrs.com/doads/pdfs/applicationnotes/ từ
piojo

9

Đổ đầy một cốc với đá viên và đổ vào nước để đổ đầy miệng. Cho nó thỉnh thoảng khuấy. Khi băng bắt đầu tan chảy, bạn sẽ ở 0 ° C. Dán cảm biến vào nước và đọc.

Nếu cảm biến của bạn có thể chịu đựng được, hãy thả nó vào ấm nước sôi. Ở mực nước biển sẽ cho bạn đọc tài liệu tham khảo 100 ° C.

Nếu bạn cần tản nhiệt cảm biến để chống thấm, bạn sẽ phải chờ một thời gian để việc đọc ổn định.

sơ đồ

mô phỏng mạch này - Sơ đồ được tạo bằng CircuitLab

Hình 1. Đường cong hiệu chuẩn tuyến tính đơn giản.

  • y1 là điện trở, điện áp hoặc đọc ADC ở 0 ° C.
  • y2 là điện trở, điện áp hoặc đọc ADC ở 100 ° C.

T= =100y-y1y2-y1

Như đã chỉ ra trong các ý kiến, nếu bạn đang sử dụng một nhiệt điện trở, bạn sẽ cần kiểm tra bảng dữ liệu cho tuyến tính. Nếu cách tiếp cận đơn giản này không đủ tốt, bạn sẽ phải sử dụng phép tính đa thức hoặc bảng tra cứu trong bộ điều khiển vi mô.


3
Điều này sẽ cung cấp cho bạn hai điểm, bạn có thể sử dụng để tính beta cho hai temps đó. Phản hồi trong phạm vi đó sẽ không ở đâu gần tuyến tính (giả sử OP có nghĩa là khi anh ấy gọi nó là "nhiệt điện trở"),
Scott Seidman

1
@newbie: Xem bản cập nhật.
Transitor

5
@newbie Khi Transistor viết ở cuối, cách tiếp cận này có thể không đủ tốt. Tôi không thể tưởng tượng nó sẽ đủ tốt, thẳng thắn. Điều duy nhất phương pháp này sẽ giúp bạn có được độ lặp lại (được cho là 40 ° C sẽ luôn giống như được cho là 40 ° C, nhưng nó thực sự có thể là 20 ° C hoặc 60 ° C).
piojo

2
Nước tinh khiết sôi ở 100 ° C nếu áp suất là 1.01325 bar hoặc 1013.25 millibar hoặc haopascal. Áp lực ở mực nước biển phụ thuộc vào thời tiết.
Uwe

1
@newbie. Điều đó có vẻ hữu ích. Nếu bạn làm cho nó hoạt động sau đó gửi một số mã mẫu vào câu hỏi của bạn hoặc như là một câu trả lời. Tôi chắc rằng những người khác sẽ thấy nó hữu ích hơn câu trả lời của tôi.
Transitor

2

Nhiệt kế tuyến tính có một lỗi tăng & bù.

  • Nguồn cung lưỡng cực có thể sẽ có giá trị bù ở 0V.
  • cầu cung cấp đơn sẽ có một số tỷ lệ Vref hoặc R của Vref hoặc Vcc trong đó phần bù được làm trống ở nhiệt độ sắp xếp đó. Thông thường điều này là đối xứng, do đó sẽ tương ứng với điểm giữa của phạm vi thiết kế của bạn.
  • nhiệt điện trở được hiệu chuẩn ở 25'C với đường cong độ nhạy cụ thể với 2 biến.

  • để hiệu chỉnh nó, bạn chỉ cần 2 lần đo

    • Null điều chỉnh trong đó lỗi điện áp = null = 0, Vt = Vref
    • điều chỉnh mức tăng tối đa
      • đối với một cây cầu 4 R điển hình, đó thường là temp giữa.
  • sử dụng bất kỳ nhiệt kế tốt hơn để hiệu chuẩn hoặc
    • sử dụng nước đá và nước sôi trong 0, 100'C
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.