포토트랜지스터 수신 광을 전압으로
void setup() // Built-in initialization block
{
Serial.begin(9600); // Set data rate to 9600 bps
}
void loop() // Main loop auto-repeats
{
Serial.print("A3 = "); // Display "A3 = "
Serial.print(volts(A3)); // Display measured A3 volts
Serial.println(" volts"); // Display " volts" & newline
delay(1000); // Delay for 1 second
}
float volts(int adPin) //Measures volts at adPin, Returns floating point voltage
{
return float(analogRead(adPin)) * 5.0 / 1023.0;
}
* 포토트랜지스터는 빛이 많으면 전류를 많이 흘리고, 빛이 적으면 전류를 적게 흘리는 성질이 있다.
* 그래서 빛의 세기의 따라서 전압이 달라지는데 아날로그로 받은 값을 우리가 알 수 있는 전압값으로 변경시킨다.
* float(analogRead(adPin)) * 5.0/1023.0; // 소수점까지 출력하기 위해 float형변환과 .0 계산을 한다.
* V=IR 공식을 통해서 만약 저항의 값을 올려준다면 전압이 올려가고 저항의 값을 내려준다면 전압이 내려가는 효과를 볼 수 있다.
'IT Info' 카테고리의 다른 글
아두이노 - 커패시터 이용 빛 감지 (0) | 2017.04.22 |
---|---|
아두이노 - 밝은 빛에서 주행 멈추기 (0) | 2017.04.22 |
Arduino - 아두이노 IDE(소프트웨어) 설치 (0) | 2016.10.10 |
아두이노 개념, 개발환경 (0) | 2016.09.20 |
오라클 ORA-12560 : protocol adapter error(window 10) (0) | 2016.06.05 |