DS18x20 온도 센서의 신뢰성


11

Maxim의 DS18x20 (실제로 하나 이상의 변형이 있음) 1-Wire 온도 센서를 사용하여 1 분에 한 번 집안의 다양한 방의 온도를 기록합니다. 천 번에 한 번의 독서에 대해, 나는 완전히 가짜를 얻습니다. 65F에서 70F로 점차 증가하는 시퀀스 중간에 -32.1F 또는 15.64F와 같은 것을 얻습니다.

다른 사람이 그런 종류의 문제를 겪었습니까, 아니면 내 설정에 문제가 있습니까? 이것이 이것들과 관련된 알려진 문제라면, 나는 세 번의 독서를하고 이상 값을 버리는 것과 같은 일을해야합니다.

내 설정에 대한 몇 가지 진술 :

  • 3.3V에서 실행 중입니다
  • 나는 arduino로 돌아갈 때 판독의 체크섬을 확인하고 있으며 일치합니다 (또는 그렇게 생각합니다-항상 해당 코드에 버그가있을 수 있음).
  • 이것들은 기생충의 힘이 아니라 정상적인 힘으로 고갈되고 있습니다.
  • 4.7K 풀업 저항이 제자리에 있습니다.
  • 각 감지 플랫폼에서 단일 센서 만 사용하고 있습니다.
  • 센서는 그것을 읽는 arduino에 연결된 PCB에 있습니다.
  • 다양한 arduino (diecimilla, pro-mini, homemade custom)에서 동일한 문제를 읽습니다.

답변:


5

DS18B20과 함께이 문제를 가끔 보았습니다. 내 응용 프로그램의 경우 코드로 가짜 결과를 필터링하는 것이 간단했습니다.


다른 사람이 그런 것 같다는 말을 듣는 것이 좋습니다. 필터링 알고리즘은 무엇입니까?
edebill

나는 당신이 말한 것을하고, 3 독서를하고, 5가 더 좋으며, 7이 그보다 7 더 낫다는 것을 제안 할 것입니다. 그러나 1/1000 주위에 오류가 있으면 3이 필요합니다. 문제가 해결됩니다. 5를 복용하면 문제가 발생하기 위해 괴물이 발생합니다.
Kortuk

나는 지금 5를하고 있습니다. 2를 더 높이려고했지만 어젯밤에도 여전히 오류가 발생합니다 (매 분마다 3 개의 센서를 읽으므로 하루에 수천 개의 데이터 포인트를 얻습니다).
edebill 2009

3

잘못된 판독 값의 소스를 찾을 수없는 경우이를 쉽게 필터링하고 이전 판독 값에서 외삽 하거나이면이 중요한 경우 판독 값 사이를 보간해야합니다. 분당 한 번 샘플링하기 때문에 마지막 판독 값을 복사 할 수도 있습니다. 실내 온도는 1 분 안에 거의 변하지 않습니다.


3

이는 특정 고부하 조건에서 컨트롤러가 온도 응답의 하나 이상의 비트를 잘못 읽거나 하나 이상의 비트를 손상시키는 전기적 간섭 때문일 수 있습니다.

http://www.rentron.com/Files/ds18b20.pdf 의 데이터 시트를 자세히 살펴보십시오 .

5 페이지에서 85C의 정확한 이진 시퀀스는 다음과 같습니다.

+85°C 0000 0101 0101 0000

마찬가지로 25C의 경우 다음과 같습니다.

+25.0625°C 0000 0001 1001 0001

경우에 따라 컨트롤러가 비트를 놓치면 이진 및 비트 시프트로 표현 된 실제 온도 값을 얻습니다. 종종 이것은 C의 목표 값의 1/2 배입니다.

때로는 회선에서 전기 간섭을받을 수 있고 컨트롤러가 1의 전체 니블을 읽습니다.이 경우 15.64와 같은 숫자를 얻습니다. 이진수는 실제로 65-70F 사이의 숫자에 매우 가깝습니다. 처음에 1의 무리.


2

그만한 가치가 있기 때문에 몇 개월 전에 DS18B20과 약간의 작업을 수행했습니다. 짧은 비디오를 촬영하고 블로그에 글을 올렸습니다. 여기에는 예제 및 샘플 코드에 대한 링크가 있습니다. 이것이 조금 도움이되기를 바랍니다! http://dailyduino.com/archives/552


2

약 4 년이 지난 지금 13 명이 내 집에서 달리고 있습니다. 데이터베이스는 더 이상 처리하기가 어렵습니다 (모든 샘플을 추적했습니다). 그러나 나는 이런 종류의 행동을 보지 못했습니다. 대신, 지금마다 하나의 센서가 다른 센서를 동결시키고 다른 센서를 모두 차단합니다.이 방법의 유일한 방법은 몇 초 동안 공급 전압을 차단하는 것입니다. 그래서 보드에 작은 릴레이를 추가했으며 마이크로가이 동작을 감지 할 때마다 센서의 전체 체인을 재설정합니다. 일주일에 몇 번 발생합니다.


흠. 아마도 내가 독서를 할 때만 전원을 켜야 할 것입니다.
edebill 2009
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.