Komponendid:
- 1 Temperatuur Sensor (TMP36);
- 1 Breadboard Small ;
- 1 Arduino Uno R3.
- 4 juhtmed;
Katse temperatuuri mõõtmiseks temperatuurianduri abil.
Saadud tulemused kirjutame iga sekundi tagant Serial Monitori.
Skeem:

const int temperaturePin = 0;
void setup()
{
Serial.begin(9600);
}
void loop()
{
float voltage, degreesC, degreesF;
// kasutame analogRead(), mis tagastab sisendi väärtused vahemikul 0 ... 1023.
// koostasime getVoltage() funktsioon, mis tagastab pingeväärtus 0 ... 5,
voltage = getVoltage(temperaturePin);
degreesC = (voltage - 0.5) * 100.0;
// degreesC = voltage * 100.0;
degreesF = degreesC * (9.0/5.0) + 32.0;
Serial.print("voltage: ");
Serial.print(voltage);
Serial.print(" deg C: ");
Serial.print(degreesC);
Serial.print(" deg F: ");
Serial.println(degreesF);
//Ekraanil ilmub järgmine tekst: "voltage: 0.73 deg C: 22.75 deg F: 72.96"
delay(1000); // ootame 1 sek
}
float getVoltage(int pin)
{
return (analogRead(pin) * 0.004882814);
// teisendame pinge vahemikust 0,0 ... 5,0 V, vahemikku 0 до 1023.
}
Katse Servo kasutamine
180 kraadine servo mootori kasutamine


Servo servo1; // Peame looma servo objekti nimega servo1 (объект управления сервоприводом)
void setup()
{
// Сейчас мы прикрепим (attach) объект servo1 к цифровому пину 9. Если вы собираетесь управлять более чем одним
// сервоприводом, Вы должны прикрепить каждый новый объект серво к своему, отдельному порту, причем это порт должен быть цифровым.
servo1.attach(9); //ütleme Arduinole, et infosuhtlus servo-objektiga servo käib läbi klemmi number 9. Tegu on digitaal-klemmiga--PWM digitaalne osa! Kontrollime, kas skeemil kasutame sama klemmi.
}
void loop()
{
int position;
servo1.write(90); //pööramise nurk =90
delay(1000);
servo1.write(180); //pööramise nurk =180
delay(1000);
servo1.write(0); //pööramise nurk =0
delay(1000);
// servo positsiooni muutmine väike kiirusega pärisuunas:
for(position = 0; position < 180; position += 2)
{
servo1.write(position); // positsiooni muutmine
delay(20);
}
// servo positsiooni muutmine väike kiirusega vastupäeva:
for(position = 180; position >= 0; position -= 1)
{
servo1.write(position); // positsiooni muutmine
delay(20);
}
}
Ülesanne 4 Temperatuuritundlik servolülitus
Kasvuhoones juhitakse temperatuuri servoajami ja temperatuurianduri abil.
Komponendid:
- Termoandur (TMP36)
- Servo mootor
- 2 LED Punane / Sinine
- Juhtmed x13
- 2 resistor (220)
- 1 Breadboard Small
- 1 Arduino Uno R3

https://www.tinkercad.com/things/6AIsLJahIh3-ingenious-crift-robo
https://drive.google.com/file/d/1Wu3kapO-dZZdZYMNKPsgxudXzUU4sQYo/view?usp=drivesdk
#include <Servo.h>
Servo servo1;
int plus = 10;
int minus = 11;
const int temperaturePin = 0;
void setup()
{
servo1.attach(7);
Serial.begin(9600);
pinMode(plus,OUTPUT);
pinMode(minus,OUTPUT);
}
void loop()
{
float volt, degree_C, degree_F;
volt = getVoltage(temperaturePin);
degree_C = (volt - 0.5) * 100.0;
degree_F = degree_C * (9.0/5.0) + 32.0;
Serial.print("Voltage: ");
Serial.print(volt);
Serial.print("Degree C: ");
Serial.print(degree_C);
Serial.print("Regree F: ");
Serial.println(degree_F);
delay(2500);
if (degree_C <= 23)
{
servo1.write(0);
digitalWrite(plus, LOW);
digitalWrite(minus, HIGH);
delay(1000);
}
else if (degree_C >= 24 )
{
servo1.write(180);
digitalWrite(plus, HIGH);
digitalWrite(minus, LOW);
delay(1000);
}
}
float getVoltage(int pin)
{
return (analogRead(pin) * 0.004882814);
}