Katse Nuppude ja Slideswitch’i kasutamise võimalus
1. Näidis- Nupp
Komponendid:
- 3 resistor;
- 1 LED ;
- 7 juhtmed;
- 2 pushbutton;
- 1 Breadboard Small ;
- 1 Arduino Uno R3.
Tööpõhimõte :
- Üks LED;
- LED-i sisselülitamiseks kasutatakse pushbutton;
- Koostas skeemi ja salvestas koodi keskkonda “tinkercad.com”;
- Koostas skeemi Arduino;
- Loos skeemi, mis töötab foto;
Nuppude vajutamisel süttib LED. Kui nupud on maas, lülitub LED välja.
Ühendamise skeem:

Kood:
// Nuppud.
const int button1Pin = 2; //viik kunu on ühebdatud nupp1
const int button2Pin = 3; //viik kuhu on ühendatud nupp2
const int ledPin = 13;
void setup()
{
pinMode(button1Pin, INPUT); //algväärtuse nupu viigu sisendiks
pinMode(button2Pin, INPUT); //algväärtuse nupu viigu sisendiks
pinMode(ledPin, OUTPUT); //algväärtuse LED viigu väljundiks
}
void loop()
{
int button1State, button2State; //nupu oleku muutujad
button1State = digitalRead(button1Pin);// salvestame muutujasse nupu hetke väärtuse(HIGH või LOW)
button2State = digitalRead(button2Pin);
if (((button1State == LOW) || (button2State == LOW)) // kui nupu on alla vajutatud
&& !
((button1State == LOW) && (button2State == LOW))) // kui nupude on alla vajutatud
{
digitalWrite(ledPin, HIGH); // lülitame LED sisse
}
else
{
digitalWrite(ledPin, LOW); // lülitame LED välja
}
}
https://www.tinkercad.com/things/g82EhVfV94r-brilliant-jofo-curcan
FOTO


2. Näidis- Slideswitch’i kasutamine
Komponendid:
- 1 resistor;
- 1 LED ;
- 7 juhtmed;
- 1 slideswitch;
- 1 – 9V Battery;
- 1 Breadboard Small ;
- 1 Arduino Uno R3.
Tööpõhimõte :
- Üks LED;
- Kasutades 9V Battery, kasutatakse slideswich sisse ja välja LED;
- Koostas skeemi ja salvestas koodi keskkonda “tinkercad.com”;
- Koostas skeemi Arduino;
- Loos skeemi, mis töötab foto;
Kui slideswitch LED on sisse lülitatud, hakkab see helendama. Kui slideswitch on välja lülitatud, siis LED enam ei sära.
Ühendamise skeem:

Kood:
// C++ code
//
int swPin=4;
int ledPin=10;
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);
}
}
https://www.tinkercad.com/things/aXH9ri5yEJy-shiny-jarv-waasa
FOTO


Katse Photoresistor
Fototakisti abil valguse mõõtmine, valgustundlik LED
Komponendid:
- 1 resistor (330 Om);
- 1 resistor (10k Om);
- 1 LED ;
- 6 juhtmed;
- 1 photoresist (components All);
- 1 Breadboard Small ;
- 1 Arduino Uno R3.
Ühendamine:
Ühendada kõigepealt maketeerimislaua ühte äärde sarnaselt järgneva joonisega fototakisti nii et üks jalg oleks ühendatud toite ning teine läbi maandusesse mineva takisti analoogsignaaliga. Nüüd lisada maketeerimislaua teise otsa, et LED-i valgus ei mõjutaks andurit.
Monitori jälgimiseks avada see arenduskeskkonna ülemise rohelise riba paremas ääres asuvast luubi ikoonist.
Tööpõhimõte:
- Üks LED;
- Photoresistori abil reguleeritakse LED-i heledust;
- Koostas skeemi ja salvestas koodi keskkonda “tinkercad.com”;
- Koostas skeemi Arduino;
- Loos skeemi, mis töötab videos;
Kasutades photoresist läheb sujuv sisselülitamine LED alates 0 (ei põle) kuni 255 (põleb maksimaalselt). Muudab LED heledust koos valgustustasemega.
Ühendamise skeem:

Kood:
const int sensorPin = 0;
const int ledPin = 9;
int lightLevel, high = 0, low = 1023;
void setup()
{
pinMode(ledPin, OUTPUT);
Serial.begin(9600); // //Serial monitori seadistamine
}
void loop()
{
// AnalogRead() kasutab väärtused vahemikus 0 (0 вольт) и 1023 (5 вольт).
// AnalogWrite(), kasutatakse, et LEDi sujuvalt sisselülitada 0(ei põle) kuni 255(põleb maksimalselt).
lightLevel = analogRead(sensorPin); //loeme mõõdetud analoogväärtuse
// Map() teisendab sisendi väärtused ühest vahemikust teisse. Näiteks, "from" 0-1023 "to" 0-255.
// Constrain() saed muutujale kindlad piirväärtused.
// Näiteks: kui constrain() kohtub arvudega 1024, 1025, 1026.., siis ta teisendab need 1023, 1023, 1023..). Kui arvud vähem kui 0, siis teisendab need 0:.
// lightLevel = constrain(lightLevel, 0, 255);
manualTune(); //
//autoTune(); //
analogWrite(ledPin, lightLevel);
// Выражение выше, будет изменять яркость светодиода вместе с уровнем освещенности. Чтобы сделать наоборот, заменить в analogWrite(ledPin, lightLevel) "lightLevel" на "255-lightLevel". Теперь у нас получился ночник!
Serial.print(lightLevel); // prindime tulemused Serial Monitori (вывод данных с фоторезистора (0-1023))
Serial.println("");
delay(1000);
}
void manualTune()
{
lightLevel = map(lightLevel, 300, 800, 0, 255); // kaardistame selle analoogväljundi vahemikku (будет от 300 темно, до 800 (светло)).
lightLevel = constrain(lightLevel, 0, 255);
}
void autoTune()
{
if (lightLevel < low)
{
low = lightLevel;
}
if (lightLevel > high)
{
high = lightLevel;
}
lightLevel = map(lightLevel, low+10, high-30, 0, 255);
lightLevel = constrain(lightLevel, 0, 255);
}
https://www.tinkercad.com/things/ewyKMchThbb-sizzling-maimu-duup
FOTO

Video
https://drive.google.com/file/d/1C-xXs5w9j3Ecx1qMx1Y0EgWzVpaho6Ik/view?usp=drivesdk
Öölamp
Komponendid:
- 3 resistor (220 Om);
- 1 resistor (10k Om);
- 1 LED RGB;
- 12 juhtmed;
- 1 photoresist (components All);
- 1 Potentiometer;
- 1 Breadboard Small ;
- 1 Arduino Uno R3.
Tööpõhimõte:
- Üks LED RGB;
- Photoresistori abil reguleeritakse LED RGB-i heledust;
- Üleminek ühelt värvilt teisele toimub kasutades potentiomeeter;
- Koostas skeemi ja salvestas koodi keskkonda “tinkercad.com”;
- Koostas skeemi Arduino;
- Loos skeemi, mis töötab videos;
Öölamp töötab nii:
- LED RGB ei põle;
- LED RGB põleb valge;
- LED RGB põleb roosa;
- LED RGB põleb kollane;
- LED RGB põleb helesinine;
- LED RGB põleb sinine;
- LED RGB põleb punane;
- Kui lisate veidi valgust (kui kollane põleb), näete rohelist;
- Kui valgust on palju, siis LED RGB ei põle.
Ühendamise skeem:

https://www.tinkercad.com/things/8I7aBhshxMH-exquisite-gogo-bombul
Kood:
const int ledPin = 12;
const int led2Pin = 10;
const int led3Pin = 11;
int sensorPote = A0;
int sensorPoteValue;
int sensorPhoto=A1;
int sensorPhotoValue;
int Value;
void setup()
{
pinMode(ledPin, OUTPUT);
pinMode(led2Pin, OUTPUT);
pinMode(led3Pin, OUTPUT);
Serial.begin(9600);
}
void pinidOFF()
{
digitalWrite(ledPin, LOW);
digitalWrite(led2Pin, LOW);
digitalWrite(led3Pin, LOW);
}
void red(int sensorPhotoValue)
{
analogWrite(ledPin, sensorPhotoValue);
analogWrite(led2Pin, 0);
analogWrite(led3Pin, 0);
}
void green(int sensorPhotoValue)
{
analogWrite(ledPin, 0);
analogWrite(led2Pin, 0);
analogWrite(led3Pin, sensorPhotoValue);
}
void white(int sensorPhotoValue)
{
analogWrite(ledPin, sensorPhotoValue);
analogWrite(led2Pin, sensorPhotoValue);
analogWrite(led3Pin, sensorPhotoValue);
}
void blue(int sensorPhotoValue)
{
analogWrite(ledPin, 0);
analogWrite(led2Pin, sensorPhotoValue);
analogWrite(led3Pin, sensorPhotoValue);
}
void yellow(int sensorPhotoValue)
{
analogWrite(ledPin, sensorPhotoValue);
analogWrite(led2Pin, sensorPhotoValue);
analogWrite(led3Pin, 0);
}
void pink(int sensorPhotoValue)
{
analogWrite(ledPin, sensorPhotoValue);
analogWrite(led2Pin, 0);
analogWrite(led3Pin, sensorPhotoValue);
}
void loop()
{
sensorPoteValue = analogRead(sensorPote);
Value=map(sensorPoteValue,0,1023,0,8);
sensorPhotoValue=analogRead(sensorPhoto);
sensorPhotoValue=map(sensorPhotoValue,300,800,0,255);
sensorPhotoValue=constrain(sensorPhotoValue,0,255);
Serial.print(sensorPhotoValue);
Serial.print("->");
Serial.println(sensorPhotoValue);
if (Value==0 )
{
pinidOFF();
}
else if (Value==1)
{
red(sensorPhotoValue);
}
else if (Value==2)
{
green(sensorPhotoValue);
}
else if (Value==3)
{
blue(sensorPhotoValue);
}
else if (Value==4)
{
yellow(sensorPhotoValue);
}
else if (Value==5)
{
pink(sensorPhotoValue);
}
else
{
white(sensorPhotoValue);
}
delay(500);
}
FOTO


Video
https://drive.google.com/file/d/1Bbd9O6lVli22K9q7H1-9XkzYqFSmEUua/view?usp=drivesdk
Kommentaatorid (uued võimalused):
begin()
Algatab jadaühenduse ja määrab andmeedastuskiiruse
const int buttonPin = 2; // nupu väljund (вывод для кнопки)
const int ledPin = 13; // LED-i väljund (вывод для светодиода)
Serial.begin(9600); // //Serial monitori seadistamine (Настройка серийного монитора)
pinMode(button1Pin, INPUT); //algväärtuse nupu viigu sisendiks (для ввода ссылки на кнопку начального значения)
pinMode(button2Pin, INPUT); //algväärtuse nupu viigu sisendiks (для ввода ссылки на кнопку начального значения)
pinMode(ledPin, OUTPUT); //algväärtuse LED viigu väljundiks (исходное значение светодиодной ники для вывода )
SensorPote ja SensorPoteValue
SensorPote ja SensorPoteValue on muutuja nimi, mis on seotud potentsiomeetri anduriga. Seda kasutatakse väärtuse lugemiseks, mis muutub vastavalt pöördepotensiomeetri asendile.
SensorPhoto ja SensorPhotoValue
SensorPhotot ja SensorPhoto alust kasutatakse fototakisti juhtimiseks, mis on valgustundlik komponent. Fototakisti muudab oma takistust sõltuvalt valgustugevuse tasemest.
Value
Value on termin, mida kasutatakse andurilt või muutujalt saadud väärtuse tähistamiseks.
analogRead
analogRead on funktsioon, mida kasutatakse pinelt analoogväärtuste lugemiseks.
Funktsioon analogRead () võimaldab teil saada teatud piniga ühendatud analoogsignaali väärtuse ja salvestada selle muutujasse edasiseks töötlemiseks.
switchstate
Arduino switch state tähendab Arduino arduino arvus oleva lüliti olekut. Kui lüliti on ühes asendis, vastab see ühele olekule ja kui see on teise asendisse lülitatud, on see juba teine olek.
lightLevel
“lightLevel Arduino’s” tähendab valgustugevust, mida saab mõõta Arduinoga ühendatud valgusanduriga. See võimaldab teil saada teavet ümbritseva valgustugevuse praeguse taseme kohta. Seda teavet saab kasutada valgusdioodide või muude komponentide juhtimiseks sõltuvalt valgustingimustest.
Kasutamisvõimalused tavaelus:
FOTORESISTORI KASUTAMINE:
- erinevate detailide kvaliteedi ja valmisoleku kontrollimiseks;
- trükitööstuses paberilindi lõhede avastamiseks;
- trükimasinasse esitatavate paberilehtede arvu kontrollimiseks;
ÖÖBIMISE ELU KASUTAMINE:
Võib kasutada laternates või päikesepaneelides. Automaatne lamp ja ööbik, öölamp.
NUPPE KASUTAMINE:
Arduino nuppe saab kasutada erinevatel eesmärkidel. Näiteks saate kasutada nuppe LED-ide juhtimiseks, funktsioonide käivitamiseks või parameetrite muutmiseks.
Elus kasutatakse nuppe mobiiltelefonides, pultides, lampides. Nupud võimaldavad seadmeid sisse ja välja lülitada, vahetada.
Nuppe rakendatakse ka mängukonsoolidel.
Nupu automaatikat saab kasutada tulede sisse- ja väljalülitamiseks, uste avamiseks või teatud skriptide käivitamiseks.
9V BATTERY KASUTAMINE:
Nuppudega akud, mida kasutatakse väikestes elektroonikaseadmetes, nagu kellad, kalkulaatorid, mänguasjad, elektroonilised võtmehoidjad ja kõrvaklapid.