제품에 온도 센서로, 일반적으로 흔히 사용하는 TR(MMBT3904)를 적용해 봤습니다.
20bit - ADC 를 사용해서 CPU 가격이 올라가서 부담되시면 12비트 ADC 회로도 Cypress에서 제공하고 있습니다.
저는 열전대를 사용해야 하므로 좀 더 정밀한 ADC가 필요해서 20비트 ADC를 사용하다 보니,
TR쪽도 남은 ADC 채널에 연결했습니다. 열전대는 각 단자의 온도차만 센싱을 할 수 있어서, 기준 온도가 필요합니다.
그래서 열전대가 위치한 가장 가까운 곳에 이 TR 온도센서를 연결하게 되었습니다.
이 TR 센서는 다른 온도센서보다 정말 저렴합니다. 10원정도 밖에 안하거든요. ^^
범용 트랜지스터를 선택하는 이유는 덜 엄격한 정확도 요구 사항과 함께 매우 낮은 트랜지스터 비용입니다.
[왜 TR의 다이오드를 사용하는가?]
일반 다이오드 제조사와 종류가 어마어마 하게 많고 특성도 각각 많이 달라서, 그나마 Transistor에 들어있는
다이오드가 훨씬 더 규격적이고 제조사마다 차이가 적어서 그렇다고 합니다.
[실제 회로기판에 장착된 사진]
참고자로로서 Cypress 의 AN60590 문서가 있고, 샘플 프로그램도 함께 제공되어 있어서 사용했습니다.
문서를 좀 더 자세히 읽어 봐야 하는데, 읽어 봐도 너무 어려운 수학,물리 계산식들이 나와서 정확히 적용은 못하고 있습니다.
하지만 온도에 따라서 값이 오르고 내리는 것은 확실헀습니다.
테스트를 해 보니, TR을 딥타입 --> SMD 타입으로 바꿔서 사용해서 그런지 온도 값이 너무 높게 나오더라고요. ^^
아마도 딥타입(TO-92)과 SMD 타입(SOT-23)의 특성이 좀 다른 것 같습니다.
TR 자료를 좀 더 찾아보니 다음과 같은 내용이 있네요. TR이 패키지마다 온도 특성이 다르네요.
이 내용으로 적당한 계산값을 찾아 봐야 할 것 같은데, 해 보고 자료 업데이트 하겠습니다.
[업데이트]
좀 더 구글링을 해서 자료를 찾아봤습니다. 그 결과, 온도의 차이는 Package의 차이때문에 생기는 문제는 아닌 것 같습니다.온도의 차이는 IDEALITY FATOR 에 따라 발생하는데, 제조 회사마다 IDEALITY FATOR가 조금씩 다르다고 합니다.다음은 MICROCHIPS 사에서 제공하는 TR 특성 조사 문서입니다.
여기서 테스트에 사용한 TR에도 MMBT3904가 있었습니다. 제가 사용한 TR의 제조사를 몰라서 팩터값을 잘 모르겠네요.만약 TR로 온도를 측정하려고 한다면 제조사와 파트넘버를 잘 보고 사야겠습니다.
아니면 IDEALITY FATOR를 측정하는 방법을 알아야 하고, 측정 장비도 있어야 겠고 고생할 시간도 있어야 겠죠.
다음은 위의 링크에서 추출한 제조사 별 TR 특성표입니다.
다음은 제가 PSOC5에서 적용한 TopDesign.cysch 회로입니다.
참고로 한 AN60590 문서의 ref 회로는 다음과 같고요.
이 예제 프로그램에서 TR의 특성에 따른 상수(Ideality Fator)가 있는데,
이 값을 일단은 대 충 바꿔서 현재 온도와 비슷하게 맞췄습니다.
아직까지 실제 온도와는 좀 다른 것 같은데, 이 값을 고치는 것은 맞는 것 같습니다.
다음은 이 상수가 위치해 있는 singleDiode.h 파일의 내용입니다.
(위의 Microchips 사의 TR 특성표 참조)
예제의 값은 다음과 같고,
1 2 3 4 | /* For the 2N3904 transistor that comes with the CY8CKIT-025 kit, * the ideality factor of 1.004 is used. **********************************************************************************/ #define IDEALITY_FACTOR ((float)1.004) | cs |
제가 수정한 값은 다음과 같습니다.
1 2 3 4 5 | /* For the 2N3904 transistor that comes with the CY8CKIT-025 kit, * the ideality factor of 1.004 is used. **********************************************************************************/ //#define IDEALITY_FACTOR ((float)1.004) #define IDEALITY_FACTOR ((float)1.15) | cs |
'IC 소개' 카테고리의 다른 글
[IC 소개] 앞으로 사용할 MCU 키트 소개. (0) | 2017.02.28 |
---|---|
[IC 소개] TR 작은 사이즈 NPN/PNP (0) | 2017.02.19 |
[IC 소개] 싸고 간단한 DC Motor Driver IC 2 (DRV8871) (0) | 2017.02.13 |
최신 Wifi 모듈 정보. (0) | 2016.12.03 |
새로나온 MCU 인가? (4-core,400MHz 인데 $2대 네요) (0) | 2016.11.08 |