K 3.1.1 Nuppude kasutamise võimalus

const int button1Pin = 9;
const int button2Pin = 4;
const int ledPin = 13;
void setup()
{
pinMode(button1Pin, INPUT);
pinMode(button2Pin, INPUT);
pinMode(ledPin, OUTPUT);
}
void loop()
{
int button1State, button2State;
button1State = digitalRead(button1Pin);
button2State = digitalRead(button2Pin);
if (((button1State == LOW) || (button2State == LOW))
&& !
((button1State == LOW) && (button2State == LOW)))
{
digitalWrite(ledPin, HIGH);
}
else
{
digitalWrite(ledPin, LOW);
}
}
K 3.1.2 Nuppude kasutamise võimalus

int swPin=4;
int ledPin=13;
int switchstate=0;
void setup()
{
pinMode(swPin, INPUT);
pinMode(ledPin, OUTPUT);
}
void loop()
{
switchstate=digitalRead(swPin);
if (switchstate==HIGH)
{
digitalWrite(ledPin,HIGH);
}
else
{
digitalWrite(ledPin,LOW);
}
}
K 3.2 Fototakisti abil valguse mõõtmine, valgustundlik LED

const int sensorPin = 0;
const int ledPin = 9;
int lightLevel, high = 0, low = 1023;
void setup()
{
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop()
{
lightLevel = analogRead(sensorPin);
manualTune();
analogWrite(ledPin, lightLevel);
Serial.print(lightLevel);
Serial.println("");
delay(1000);
}
void manualTune()
{
lightLevel = map(lightLevel, 300, 800, 0, 255);
lightLevel = constrain(lightLevel, 0, 255);
}
void autoTune()
{
if (lightLevel < low)
{
low = lightLevel;
}
if (lightLevel > high)
{
high = lightLevel;
}
lightLevel = map(lightLevel, low+0, high-30, 0, 255);
lightLevel = constrain(lightLevel, 0, 255);
}
Ülesanne “Öölamp”

int value;
int value1;
void setup()
{
pinMode(5, OUTPUT);
pinMode(3, OUTPUT);
pinMode(6, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, INPUT);
Serial.begin(9600);
}
void loop()
{
value = analogRead(A0); //считываю значения с фоторезистора
value = map(value,49,969,0,255); //меняю его значения с 49 до 969 на 0 до 255
value = constrain(value,0,255); //ограничиваю значения
value1 = analogRead(A1); //считываю значения с потенциометра
value1 = map(value1,0,1023,0,2); //меняю его значения с 0 до 1023 на 0 до 2
if (value1==1) //если состояние потенциометра равна 1
{
analogWrite(3,value); //изменить яркость LED на значения фоторезистра
analogWrite(5,value); //изменить яркость LED на значения фоторезистра
analogWrite(6,value); //изменить яркость LED на значения фоторезистра
analogWrite(9,value); //изменить яркость LED на значения фоторезистра
}
else if (value1==0) //если состояние потенциометра равна 0
{
digitalWrite(3,LOW); //выключить LED
digitalWrite(5,LOW); //выключить LED
digitalWrite(6,LOW); //выключить LED
digitalWrite(9,LOW); //выключить LED
}
else //если состояние потенциометра равна 2 / исключение
{
digitalWrite(3,HIGH); //включить LED
digitalWrite(5,HIGH); //включить LED
digitalWrite(6,HIGH); //включить LED
digitalWrite(9,HIGH); //включить LED
}
}
Töö kirjeldus:
See on öölamp, mis koosneb 4 LED-ist, 1 potentsiomeetrist ja 1 fototakistist. Potentsiomeetril on 3 režiimi, kui režiim on 0, siis on kõik LED-id välja lülitatud, kui režiim on 1, siis sõltub kõigi LED-ide heledus fototakistist ehk kui see on hele siis on kõik LEDid eredad ja kui režiim 2 siis kõik LEDid põlevad lihtsalt.
Komponendid:
- Arduino Uno
- Arendusplaat
- Takisti – 4 (220 ohm)
- Takisti – 1 (10 kilooomi)
- LED lamp – 4
- juhtmed – 12
- fototakisti – 1
- potentsiomeeter – 1
https://www.tinkercad.com/things/jnxsCdASuH8
fototakisti kasutamine elus:
- Fotogalvaanilised seadmed: fototakisteid kasutatakse fotodetektorites ja fotoelementides valguse tuvastamiseks ja selle muundamiseks elektrisignaaliks. Neid kasutatakse kaamerates, automaatsetes valgusandurites, turvasüsteemides ja muudes seadmetes.
- Valgustus ja automaatjuhtimissüsteemid: valgustuse heleduse reguleerimiseks ja valgustite automaatseks hämardamiseks kasutatakse fototakisteid. Näiteks saab neid kasutada tänavavalgustites või targa kodu süsteemides, et vastavalt valgustasemele tuled automaatselt sisse ja välja lülitada.
- Elektroonika ja side: fototakisteid kasutatakse optilistes sidesüsteemides (nt optilistes kiududes) optilise signaali tuvastamiseks ja teisendamiseks. Neid kasutatakse ka elektroonikas valgustugevuse mõõtmiseks või tagasisideelementidena optilistes ahelates.
- Meditsiinitehnoloogia: fototakisteid kasutatakse meditsiiniseadmetes, näiteks vere hapnikusisalduse mõõtmiseks (pulssoksümeetrid). Neid kasutatakse ka pulsikellades ja muudes meditsiiniseadmetes, kus valgussignaale on vaja mõõta.
- Autotööstus: fototakisteid kasutatakse autotööstuses, näiteks valgusandurid esitulede automaatseks aktiveerimiseks või sisevalgustuse juhtimissüsteemid. Neid kasutatakse ka takistuste kaugtuvastussüsteemides või armatuurlaua heleduse juhtimiseks.