전류 측정 모듈(ACS712): 두 판 사이의 차이
(새 문서: {{#seo:|title=아두위키 : 아두이노 전류 측정 모듈(ACS712) 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, 전류 측정 모듈(ACS712), 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 전류 측정 모듈(ACS712)을 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다.}}) |
잔글편집 요약 없음 |
||
(같은 사용자의 중간 판 2개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
{{#seo:|title=아두위키 : 아두이노 전류 측정 모듈(ACS712) 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, 전류 측정 모듈(ACS712), 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 전류 측정 모듈(ACS712)을 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다.}} | {{#seo:|title=아두위키 : 아두이노 전류 측정 모듈(ACS712) 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, 전류 측정 모듈(ACS712), 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 전류 측정 모듈(ACS712)을 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다.}}[[파일:전류측정모듈acs712사진.jpg|935x935픽셀]] | ||
== '''개요''' == | |||
ACS712는 전류 센서 모듈로, DC/AC 전류를 측정하여 아날로그 신호로 출력하는 장치입니다. 주로 전력 소비 모니터링, 배터리 관리, 전력 시스템 보호 등 다양한 응용 분야에서 사용됩니다. | |||
==== 작동 원리 ==== | |||
ACS712는 홀 효과를 기반으로 작동합니다. 전류가 흐를 때 발생하는 자기장을 감지하여 전류의 크기를 측정합니다. 이 과정에서 출력 전압이 비례하여 변화하며, 아날로그 출력 핀에서 전압 값을 읽어 아두이노와 같은 마이크로컨트롤러로 전류 값을 계산할 수 있습니다. | |||
== '''사양''' == | |||
{| class="wikitable" | |||
!항목 | |||
!설명 | |||
|- | |||
|작동 전압 | |||
|5V | |||
|- | |||
|전류 측정 범위 | |||
|±5A / ±20A / ±30A (모듈 종류에 따라 다름) | |||
|- | |||
|출력 전압 | |||
|0V ~ Vcc/2 (Vcc의 절반에서 0A) | |||
|- | |||
|정확도 | |||
|±1.5% (주변 온도 25ºC에서) | |||
|- | |||
|작동 온도 | |||
| -40°C ~ +85°C | |||
|} | |||
== '''활용 예제''' == | |||
=== 회로 구성 === | |||
=== 1. 초기값 시리얼 모니터로 출력하기 === | |||
<syntaxhighlight lang="c++" line="1"> | |||
//추가 예정 | |||
</syntaxhighlight> | |||
==== 실행 결과 ==== | |||
시리얼 모니터 | |||
==== 출력 전압 (Vout) = 2.5V + (전류 (I) × 감도 (S)) ==== | |||
예제에서 전압에 해당하는 아날로그 값이 출력되는 것을 확인할 수 있습니다. | |||
여기서, 감도(S)는 모듈의 사양에 따라 다르니 참고하시기 바랍니다. (5A 모델 : 185mV/A, 20A 모델 : 100mV/A, 30A 모델 : 66mV/A) | |||
사양에서 보면 출력 전압의 범위는 '''0V ~ VCC/2''' 인데, 5V에 연결하기 때문에 전류가 흐를 때 출력 전압은 '''2.5V 기준'''으로 증가하거나 감소하게 됩니다. | |||
ACS712 전류 측정 모듈은 전압 값을 아날로그 값으로 출력하기 때문에 0V ~ 5V를 0 ~ 1023로 출력하며, 실제로는 출력 전압 범위가 0 ~ 2.5V이기 때문에 0 ~ 511 범위로 출력하는 것을 확인하실 수 있습니다. 전류가 흐르지 않을 때는 508 ~ 515 사이로 511을 기준으로 노이즈가 발생하는 것을 확인할 수 있는데 이를 전압 값으로 환산하면 약 2.48V ~ 2.52V가 됩니다. 환산 과정은 다음과 같습니다. | |||
<syntaxhighlight lang="c++" line="1"> | |||
Vout = analogRead(A0); // 아날로그 값 | |||
amp = Vout - 511; // 공급 전압의 0.5배를 빼줌 | |||
amp = (Vout - 511) * 5.0 / 1023.0; // 0 ~ 1023 값을 0 ~ 5 값으로 변환 (전압 / V) | |||
amp = ((Vout - 511) * 5.0 / 1023.0) / 0.185; // 민감도를 적용 (전류 / A, 1000을 곱해주면 mA 단위) | |||
</syntaxhighlight> | |||
전압을 기반으로 전류를 측정하기 때문에 공급 전압이 4.8V, 5.2V 같이 노이즈가 발생한다면 전류 값에 영향을 미치게 됩니다. | |||
따라서 공급 전압이 안정적일수록 전류의 측정값 역시 더 좋은 값을 출력한다고 볼 수 있습니다. | |||
=== 2. 전류 값으로 수정하여 출력 === | |||
<syntaxhighlight lang="c++" line="1"> | |||
// 추가 예정 | |||
</syntaxhighlight> | |||
==== 실행 결과 ==== | |||
시리얼 모니터 | |||
== '''구매 링크''' == | |||
[https://gongzipsa.com/shop/1715254924 공집사몰] |
2024년 8월 3일 (토) 16:26 기준 최신판
개요
ACS712는 전류 센서 모듈로, DC/AC 전류를 측정하여 아날로그 신호로 출력하는 장치입니다. 주로 전력 소비 모니터링, 배터리 관리, 전력 시스템 보호 등 다양한 응용 분야에서 사용됩니다.
작동 원리
ACS712는 홀 효과를 기반으로 작동합니다. 전류가 흐를 때 발생하는 자기장을 감지하여 전류의 크기를 측정합니다. 이 과정에서 출력 전압이 비례하여 변화하며, 아날로그 출력 핀에서 전압 값을 읽어 아두이노와 같은 마이크로컨트롤러로 전류 값을 계산할 수 있습니다.
사양
항목 | 설명 |
---|---|
작동 전압 | 5V |
전류 측정 범위 | ±5A / ±20A / ±30A (모듈 종류에 따라 다름) |
출력 전압 | 0V ~ Vcc/2 (Vcc의 절반에서 0A) |
정확도 | ±1.5% (주변 온도 25ºC에서) |
작동 온도 | -40°C ~ +85°C |
활용 예제
회로 구성
1. 초기값 시리얼 모니터로 출력하기
//추가 예정
실행 결과
시리얼 모니터
출력 전압 (Vout) = 2.5V + (전류 (I) × 감도 (S))
예제에서 전압에 해당하는 아날로그 값이 출력되는 것을 확인할 수 있습니다.
여기서, 감도(S)는 모듈의 사양에 따라 다르니 참고하시기 바랍니다. (5A 모델 : 185mV/A, 20A 모델 : 100mV/A, 30A 모델 : 66mV/A)
사양에서 보면 출력 전압의 범위는 0V ~ VCC/2 인데, 5V에 연결하기 때문에 전류가 흐를 때 출력 전압은 2.5V 기준으로 증가하거나 감소하게 됩니다.
ACS712 전류 측정 모듈은 전압 값을 아날로그 값으로 출력하기 때문에 0V ~ 5V를 0 ~ 1023로 출력하며, 실제로는 출력 전압 범위가 0 ~ 2.5V이기 때문에 0 ~ 511 범위로 출력하는 것을 확인하실 수 있습니다. 전류가 흐르지 않을 때는 508 ~ 515 사이로 511을 기준으로 노이즈가 발생하는 것을 확인할 수 있는데 이를 전압 값으로 환산하면 약 2.48V ~ 2.52V가 됩니다. 환산 과정은 다음과 같습니다.
Vout = analogRead(A0); // 아날로그 값
amp = Vout - 511; // 공급 전압의 0.5배를 빼줌
amp = (Vout - 511) * 5.0 / 1023.0; // 0 ~ 1023 값을 0 ~ 5 값으로 변환 (전압 / V)
amp = ((Vout - 511) * 5.0 / 1023.0) / 0.185; // 민감도를 적용 (전류 / A, 1000을 곱해주면 mA 단위)
전압을 기반으로 전류를 측정하기 때문에 공급 전압이 4.8V, 5.2V 같이 노이즈가 발생한다면 전류 값에 영향을 미치게 됩니다.
따라서 공급 전압이 안정적일수록 전류의 측정값 역시 더 좋은 값을 출력한다고 볼 수 있습니다.
2. 전류 값으로 수정하여 출력
// 추가 예정
실행 결과
시리얼 모니터