Ülesanne 3 ÖölampTöökirjeldusLuua öölamp, mida saab potentsiomeeteri abiga sisse ja välja lülitada ning valgustakisti abiga erksuse reguleerida.Valgustugevus (analogdigitalWrite(PIN ,0..255) / põlevate ledide hulk sõltub ümbritsevast valgusest. Ehk siis pimeajal lamp töötab.Päeval , kui valgust on tohutu suur – ei tööta. Kusjuures potentsiomeeteri vajutamisel võiks LED lampi värvi muutaValgustugevuse korral kasuta analogdigitalWrite(PIN ,0..255), kasutasin LEDid, digitalWrite(PIN,HIGH/LOW).Kasutatud komponenidArduino UNO plaat (1tk)Arendusplaat (1tk)takisti (4tk)juhet (12tk)valgustakisti (1tk)potentsiomeeter (1tk)KasutamineÖölamp töötab potensiomeetri vajutamisel ning peale sisselülitamist võiks erksuse reguleerida valgustakisti abiga (0st – 255ni)Kood kommetaridegaconst int potensiometr = 1; // Potentsiomeetri analoogsisendi pin int fototakisti = 0; // Fototakisti analoogsisendi pin int lightLevel = 0; // Muutuja valguse taseme jälgimiseks int Value_new = 0; // Muutuja potentsiomeetri väärtuse hoidmiseks const int RED1 = 11; const int BLUE1 = 10; const int GREEN1 = 9; void setup() { pinMode(RED1, OUTPUT); // LEDi pin väljundiks pinMode(BLUE1, OUTPUT); pinMode(GREEN1, OUTPUT); } void loop() { // Lülita kõik LEDid välja digitalWrite(RED1, LOW); digitalWrite(BLUE1, LOW); digitalWrite(GREEN1, LOW); // Loe fototakisti väärtus lightLevel = analogRead(fototakisti); // Reguleeri valguse taset manualTune(); // Loe potentsiomeetri väärtus Value_new = analogRead(potensiometr); // Kaardista potentsiomeetri väärtus vahemikku 0 kuni 3 Value_new = map(Value_new, 0, 1023, 0, 3); if (Value_new == 2) { BLUE(); } else if (Value_new == 1) { RED(); } else if (Value_new == 3) { GREEN(); } else { digitalWrite(RED1, LOW); digitalWrite(BLUE1, LOW); digitalWrite(GREEN1, LOW); } } void manualTune() { lightLevel = map(lightLevel, 300, 800, 0, 255); lightLevel = constrain(lightLevel, 0, 255); } void GREEN() { // Kasuta analogWrite funktsiooni valguse taseme reguleerimiseks analogWrite(GREEN1, lightLevel); } void RED() { reguleerimiseks analogWrite(RED1, lightLevel); } void BLUE() { reguleerimiseks analogWrite(BLUE1, lightLevel); } Link Konstruktsioon Tinkercad