현재 전압 분배기를 통해 정확한 전압 측정을 위해 0.1 % 저항을 사용합니다. 그러나 비용이 많이 들기 때문에 0.5 % 또는 1 % 저항을 사용하고 생산 중에 정밀 전압 레퍼런스를 사용하여 소프트웨어의 오류를 교정하려고 생각했습니다. 누구든지 이것을 성공적으로 했습니까? 어떤 함정이 발생할 수 있습니까?
현재 전압 분배기를 통해 정확한 전압 측정을 위해 0.1 % 저항을 사용합니다. 그러나 비용이 많이 들기 때문에 0.5 % 또는 1 % 저항을 사용하고 생산 중에 정밀 전압 레퍼런스를 사용하여 소프트웨어의 오류를 교정하려고 생각했습니다. 누구든지 이것을 성공적으로 했습니까? 어떤 함정이 발생할 수 있습니까?
답변:
그래서 당신은 가지고 있습니다 :
R_x R_fixed
Vcc -----^v^v^----+----^v^v^------- Gnd
|
|
+--- V_sensed --- ADC input
Rx는 알려지지 않은 저항 (아마도 어떤 종류의 센서)입니다. R_x를 효과적으로 계산하기 위해 지금 0.1 %에서 R_fixed를 사용하고 있지만 아마도 1 %의 낮은 공차로 더 저렴한 고정 저항기를 사용하려고합니다. 그렇게함으로써 생산 과정에서 어떤 종류의 캘리브레이션을 수행하여 증가 된 오류를 수정하고 싶습니까?
이 작업을 수행하는 방법은 계산에서 "오프셋"으로 작동하는 바이트를 EEPROM (또는 다른 비 휘발성 메모리)에 넣는 것입니다. 이는 완벽하게 실행 가능한 일입니다. 문제는 생산 중에 교정 활동을 수행하는 데 어느 정도의 시간이 소요된다는 것입니다. 교정을 수행하려면 R_x의 회로를 대체하기 위해 1 % 저항과 공칭 적으로 비교할 수있는 0.1 % 저항 (R_cal이라고 함) 중 하나가 필요합니다. V_sensed를 측정하면 R_fixed의 값을 더 정확하게 추론 할 수 있습니다 (예 : 0.2 %).
R_cal과 R_fixed가 공칭 적으로 동일한 값이면 V_sensed가 Vcc / 2와 같을 것으로 예상됩니다. Vcc / 2에서 측정 된 편차를 교정 오프셋 바이트로 저장하고 ADC에서 인식 한대로 V_sensed에 항상 추가합니다.
내가 본 것처럼 함정은 측정을 수행 한 다음 값을 저장하는 데 많은 작업이 필요하다는 것입니다. 함정으로 고려해야 할 또 다른 사항은 온도가 저항을 공칭 값에서 벗어나게 만드는 역할을 할 수 있다는 것이므로 온도를 적절히 제어하는 교정 환경을 원할 것입니다. 마지막으로 보정 된 측정 장비를 사용하는 것을 잊지 마십시오. 추가 오차의 또 다른 잠재적 원인이됩니다. 내가 생각할 수있는 마지막 함정은 캘리브레이션 바이트가 ADC의 lsb 단위로 저장되어야한다는 것입니다 (따라서 12 비트 ADC가있는 경우 캘리브레이션 오프셋 바이트 단위는 "Vcc / 2 ^ 12 Volts"이어야합니다) .
편집하다
두 개의 고정 저항을 사용하여 다음과 같이 큰 전압을 낮은 스케일로 나누는 경우 :
R1_fixed R2_fixed
V_in -----^v^v^----+----^v^v^------- Gnd
|
|
+--- V_sensed --- ADC input
재 편집 된 섹션
이제 생산의 교정 단계에서 V_in을 자극하기 위해 정밀 전압 레퍼런스 (V_cal이라고 함)를 사용하려고합니다. 당신이 가진 것은 이론에 있습니다 :
V_sensed = V_predicted = V_cal * R2_fixed / (R1_fixed + R2_fixed) = V_cal * slope_fixed
그러나 당신이 실제로 가지고있는 것은 :
V_sensed = V_measured = V_cal * R2_actual / (R1_actual + R2_actual) = V_cal * slope_actual
실제로 저항 값에서 예측 한 것과 실제적으로 다른 전달 함수 기울기가 있습니다. 예측 된 분배기 전달 함수와의 편차는 입력 전압과 관련하여 선형이며, 0V 입력은 0V 출력을 제공한다고 가정 할 수 있으므로 하나의 정밀 전압 기준 측정을 수행하면이 선형 스케일 팩터를 특성화하기에 충분한 정보를 제공해야합니다 . 즉:
V_measured / V_predicted = slope_fixed / slope_actual
slope_actual = slope_fixed * V_measured / V_predicted
그리고 측정 된 전압의 함수로 전압을 결정하기 위해 slope_actual을 교정 된 값으로 사용합니다.
@markrages 제공
저항 값에 대한 실제 기울기 감도를 얻으려면 부분 미분이 필요합니다.
저에게는 어렵지만 불가능하지는 않습니다.
이 접근법은 5 %에서 1 %로 잘 작동합니다. 1 %에서 0.1 %로 갈수록 저항과 전압을 변화시키는 온도 변동에 의해 정확도가 떨어지기 시작합니다.
알 수없는 이유로 등온 환경에서 작동하고 저항기가 모두 정전류이므로 자체 발열을 예측할 수 있으면 여전히 실행 가능합니다.
다음을 교정 할 수 있습니다.
그러나 다른 모든 허용 오차를 잊지 마십시오.
* 모든 값은 저항기 브랜드와 제품마다 다를 수 있습니다.
[1] https://www.vishay.com/docs/28809/driftcalculation.pdf
[3] https://industrial.panasonic.com/cdbs/www-data/pdf/RDA0000/AOA0000C304.pdf
[4] MIL-STD R-10509