IT Info

아두이노 - 포토트랜지스터 수신 광을 전압으로

로픽 2017. 4. 22. 08:59
300x250

포토트랜지스터 수신 광을 전압으로

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 공식을 통해서 만약 저항의 값을 올려준다면 전압이 올려가고 저항의 값을 내려준다면 전압이 내려가는 효과를 볼 수 있다.


반응형