Potentsiomeeter
Potentsiomeeter on elektrooniline komponent, mida kasutatakse elektrilise takistuse muutmiseks ja signaalide reguleerimiseks. See on tüüp muudetav takistus, mille abil saab muuta voolu või pinget, et saavutada soovitud tulemus. Potentsiomeetreid kasutatakse laialdaselt erinevates rakendustes, sealhulgas heliseadmetes, valgustuse reguleerimises ja muudes elektroonilistes seadmetes.
Potentsiomeeter koosneb tavaliselt kolme kontaktiga: kaks neist on ühendatud takistiga ja kolmas kontakt on liikuv, mis võimaldab takistuse väärtust reguleerida. Kui liikuvat kontakti (nimetatakse ka harjaks) pöörata, muutub takistus ja seega ka väljundsignaal.
Potentsiomeetreid on erinevaid tüüpe, sealhulgas lineaarseid ja pöörlevaid potentsiomeetreid, mis erinevad oma tööpõhimõtte ja kasutusala poolest. Need on hädavajalikud komponentide seas, mis võimaldavad kasutajatel reguleerida seadmete toimimist vastavalt oma soovidele ja vajadustele.
Katsed 2)
Potentsiomeetri kasutamine
Komponeendid:
Arduino UNO plaat (1tk)
Arendusplaat (1tk)
Juhtmed (7tk)
Takisti (1tk, 1kOm)
LED (1tk: 1 punane)
Ühendamise skeem:
Kõigepealt tuleb paigutada LED ja potentsiomeeter maketeerimislauale ja ühendada need, sarnaselt joonisel kujutatule arendusplaadiga. LED vilgutamise kiiruse reguleerimiseks kasutatakse potentsiomeetrit.

int sensorPin = 0; int ledPin = 13; int sensorValue = 0; void setup() { pinMode(ledPin, OUTPUT); Serial.begin(9600); } void loop() { sensorValue = analogRead(sensorPin); // loeb analoog sisendi väärtust ja saadab tagasi täisarvu vahemikus 0 kuni 1023. See tähendab 10 bitilist täpsust (2^10 = 1024). digitalWrite(ledPin, HIGH); delay(sensorValue); digitalWrite(ledPin, LOW); delay(sensorValue); }
Praktiline töö 2 — Valguskett
Команды, которые здесь задействованы:
int ledPin[6] = {13,12,11,10,9,8};
– Создание массива ledPin с шестью элементами и присвоение им пинов для управления светодиодами.int sensorValue = 0;
– Объявление переменной sensorValue и присвоение ей значения 0.pinMode(ledPin[0], OUTPUT);
,pinMode(ledPin[1], OUTPUT);
, …,pinMode(ledPin[5], OUTPUT);
– Настройка пинов массива ledPin на вывод данных.Serial.begin(9600);
– Настройка последовательной связи для вывода данных через последовательный порт.int sensorPin = 0;
– Объявление переменной sensorPin и присвоение ей значения 0.sensorValue = analogRead(sensorPin);
– Считывание аналогового значения с пина, указанного в переменной sensorPin, и присвоение результата переменной sensorValue.sensorValue = map(sensorValue,0,1023,1,7);
– Преобразование значения sensorValue из диапазона 0-1023 в диапазон 1-7.digitalWrite(ledPin[i], HIGH);
иdigitalWrite(ledPin[i], LOW);
– Управление состоянием пинов массива ledPin для включения и выключения светодиодов.delay(250);
– Пауза в программе на 250 миллисекунд.
Ülesanne “Valguskett”Töö kirjeldus
Komponeendid:
Arduino UNO plaat (1tk)
Arendusplaat (1tk)
Juhtmed (11tk)
Takisti (6tk, 1kOm)
LED (6tk: 2 punane, 2 roheline, 2 sinine)
Töö protsess:

int ledPin[6] = {13,12,11,10,9,8}; int sensorValue = 0; void setup() { pinMode(ledPin[0], OUTPUT); pinMode(ledPin[1], OUTPUT); pinMode(ledPin[2], OUTPUT); pinMode(ledPin[3], OUTPUT); pinMode(ledPin[4], OUTPUT); pinMode(ledPin[5], OUTPUT); Serial.begin(9600); } void loop() { int sensorPin = 0; sensorValue = analogRead(sensorPin); sensorValue = map(sensorValue,0,1023,1,7); if (sensorValue==1){ digitalWrite(ledPin[0], HIGH); delay(250); digitalWrite(ledPin[0], LOW); delay(250); digitalWrite(ledPin[1], HIGH); delay(250); digitalWrite(ledPin[1], LOW); delay(250); digitalWrite(ledPin[2], HIGH); delay(250); digitalWrite(ledPin[2], LOW); delay(250); digitalWrite(ledPin[3], HIGH); delay(250); digitalWrite(ledPin[3], LOW); delay(250); digitalWrite(ledPin[4], HIGH); delay(250); digitalWrite(ledPin[4], LOW); delay(250); digitalWrite(ledPin[5], HIGH); delay(250); digitalWrite(ledPin[5], LOW); delay(250); } else if (sensorValue==2) { digitalWrite(ledPin[0], HIGH); digitalWrite(ledPin[3], HIGH); delay(250); digitalWrite(ledPin[0], LOW); digitalWrite(ledPin[3], LOW); delay(250); digitalWrite(ledPin[1], HIGH); digitalWrite(ledPin[4], HIGH); delay(250); digitalWrite(ledPin[1], LOW); digitalWrite(ledPin[4], LOW); delay(250); digitalWrite(ledPin[2], HIGH); digitalWrite(ledPin[5], HIGH); delay(250); digitalWrite(ledPin[2], LOW); digitalWrite(ledPin[5], LOW); delay(250); } else if (sensorValue==3) { int i = rand(); int a=i%6; digitalWrite(ledPin[a], HIGH); delay(250); digitalWrite(ledPin[a], LOW); delay(250); } else if (sensorValue==4) { digitalWrite(ledPin[0], HIGH); digitalWrite(ledPin[1], HIGH); digitalWrite(ledPin[2], HIGH); digitalWrite(ledPin[3], HIGH); digitalWrite(ledPin[4], HIGH); digitalWrite(ledPin[5], HIGH); delay(500); digitalWrite(ledPin[0], LOW); digitalWrite(ledPin[1], LOW); digitalWrite(ledPin[2], LOW); digitalWrite(ledPin[3], LOW); digitalWrite(ledPin[4], LOW); digitalWrite(ledPin[5], LOW); delay(500); } else if (sensorValue==5) { digitalWrite(ledPin[0], HIGH); digitalWrite(ledPin[5], HIGH); delay(250); digitalWrite(ledPin[0], LOW); digitalWrite(ledPin[5], LOW); delay(250); digitalWrite(ledPin[1], HIGH); digitalWrite(ledPin[4], HIGH); delay(250); digitalWrite(ledPin[1], LOW); digitalWrite(ledPin[4], LOW); delay(250); digitalWrite(ledPin[2], HIGH); digitalWrite(ledPin[3], HIGH); delay(250); digitalWrite(ledPin[2], LOW); digitalWrite(ledPin[3], LOW); delay(250); } else if (sensorValue==6) { digitalWrite(ledPin[0], HIGH); delay(150); digitalWrite(ledPin[1], HIGH); digitalWrite(ledPin[0], LOW); delay(150); digitalWrite(ledPin[2], HIGH); digitalWrite(ledPin[1], LOW); delay(150); digitalWrite(ledPin[3], HIGH); digitalWrite(ledPin[2], LOW); delay(150); digitalWrite(ledPin[4], HIGH); digitalWrite(ledPin[3], LOW); delay(150); digitalWrite(ledPin[5], HIGH); digitalWrite(ledPin[4], LOW); delay(150); digitalWrite(ledPin[5], LOW); }