작품명 : 등대가 필요한 이유
<제작의도>등대 : 밤에 다니는 배에 목표, 뱃길, 위험한 곳 따위를 알려 주려고 불을 켜 비춰주는 존재
등대는 어두울수록 밝게빛나는 존재이다. 광센서로 등대를 표현하고자 하였다.
동영상:
광센서를 어둠게하면 등대는 더 활발하게 움직인다.
소스코드:
int cds=A1;
int cds_val=0;
int cds_newVal=0;
int reverse_val=0;
int reverse_newVal=0;
int delayTime = 0;
void setup()
{
Serial.begin(9600);
pinMode(1,OUTPUT);
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
pinMode(11,OUTPUT);
}
void loop()
{
cds_val = analogRead(cds);
cds_newVal = cds_val/1024;
reverse_val = cds_newVal-cds_val+1023;
reverse_newVal = reverse_val/4;
delayTime = cds_val/4+10;
Serial.println(reverse_newVal);
analogWrite(3, reverse_newVal);
delay(delayTime);
analogWrite(3, LOW);
delay(delayTime);
analogWrite(5, reverse_newVal);
delay(delayTime);
analogWrite(5, LOW);
delay(delayTime);
analogWrite(6, reverse_newVal);
delay(delayTime);
analogWrite(6, LOW);
delay(delayTime);
analogWrite(9, reverse_newVal);
delay(delayTime);
analogWrite(9, LOW);
delay(delayTime);
analogWrite(10, reverse_newVal);
delay(delayTime);
analogWrite(10, LOW);
delay(delayTime);
analogWrite(11, reverse_newVal);
delay(delayTime);
analogWrite(11, LOW);
delay(delayTime);
}
회로도:
작품재료: 나무판, 종이컵, 한지공예재료, led, cds센서