안녕하세요, 아주대학교 메이커스페이스입니다
귀사 아두이노 미세먼지 키트 구동중 오류가 발생해서 문의 드립니다.
예제 프로그램, 5_Dust 프로그램 동작 중 측정 오류가 발생합니다
1. dust_value = analogRead(dust_sensor); // 센서 값 읽어오기
위 명령어 중 dust_value 값은 얼마가 나오나요?
조립 키트에는 센서 출력값(dust_value)이 5.0, 8.0 이 나오는데,
Data sheet상에는 0.6 ~ 3.7V 가 나와야 하는걸로 보입니다.
2. recent_dust = (0.17*(dust_value*(5.0/1024)) - 0.1) *1000;
위 명령어의 근거는 무엇 입니까 ?
Data sheet에는 0.0 ~ 0.6mg/m^3 에서 0.6~3.7V 출력이 나오는 것으로 되어 있는데,
dust_value*(5.0/1024) 목적은 무엇입니까?
다른 예제의 comment에 0~5V를 0~1023으로 mapping 한다고 되어 있는데,
그렇다면 dust_value*(1023.0/5.0) 이 맞는거 같은데요
Datasheet 에는 측정값이 0.0 ~ 0.6mg/m^3 인데
*1000을 하면 g/m^3 인데 ug/m^3 인 이유는 무엇입니까?
현 오류가 센서 동작불량인지, 프로그램 오류인지 문의 드립니다.
(다른 센서로 교체해도 같은 문제가 나오네요)