4. Katse

K 4.1 Temperatuuri andur

const int temperaturePin = A0;
void setup()
{
Serial.begin(9600);
}
void loop()
{
float voltage, degreesC, degreesF;
voltage = getVoltage(temperaturePin);
degreesC = (voltage - 0.5) * 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);
delay(1000); 
}

float getVoltage(int pin)
{
return (analogRead(pin) * 0.004882814);
}

K 4.2 Servo kasutamine

#include  <Servo.h> // nii teavitame Arduino IDE-t vajadusest kasutada Servo.h teeki (подключаем дополнительную библиотеку)
Servo servo1;
void setup()
{
servo1.attach(13);
}
void loop()
{
int position;
servo1.write(90); 
delay(1000); 
servo1.write(180); 
delay(1000);
servo1.write(0); 
delay(1000);
for(position = 0; position < 180; position += 2)
{
servo1.write(position); 
delay(20); 
}
for(position = 180; position >= 0; position -= 1)
{ 
servo1.write(position); 
delay(20); 
}
}

Ülesanne “Automatiseeritud kasvuhoone”

#include  <Servo.h>
Servo servo1;
int time=1000; //переменная для создания времени и использования будущем в условии для создания плавности сервопривода
void setup()
{
  servo1.attach(13); 
  Serial.begin(9600);
  pinMode(6,OUTPUT);
}
void loop()
{
  float voltage = getVoltage(A0); //получаю значение напряжения
  int C = (voltage - 0.5) * 100.0; //получаю значение температуры
  int light = analogRead(A1); //получаю значение света
  light = map(light,49,969,0,255); //преобразую значения фоторезистора
  light = constrain(light,0,255); //ограничиваю значения фоторезистора
  C = constrain(C,-40,125); //ограничиваю значения температуры
  analogWrite(6, light); //передаю значения фоторезистора в LED меняя его яркость
  Serial.println(C); //вывожу температуру на экран
  if (35>=C && C>=22 && time==1000) //условия если температура меньше либо равна 35 градусам и больше либо равна 22 градусам и время ровно 1000
  {
    int grad=(C-22) * 13.8461538462; //получаю значение на которое сервопривод должен повернуться 
    servo1.write(grad); //говорю сервоприводу повернуться на такой-то градус
    time=0; //устанавливаю переменной 0 значение 
  }
  time+=1; //прибавляю к значению времени единицу
}

float getVoltage(int pin) //функция с формулой для преобразования значения напряжения
{
  return (analogRead(pin) * 0.004882814); //уравнение преобразует значение напряжения от 0,0 до 5,0 В.
}

Töö kirjeldus:

See on automatiseeritud kasvuhoone, mis kasutab servoajamit, fototakistit, LED-i ja temperatuuriandurit. Sõltuvalt temperatuurist servo pöörleb, see tähendab, et see võib tegelikult akna avada või sulgeda ja fototakisti vastutab kasvuhoone valgustuse eest, st kui on pime, süttib LED eredamalt. Samuti sisaldab kood teatud aega, mille möödudes võib servo asend muutuda ja kui peate selle olekust pikemaks ajaks lahkuma, saate aega suurendada.

Komponendid:

  • Arduino Uno
  • Arendusplaat
  • Takisti – 1 (220 ohm)
  • Takisti – 1 (10 kilooomi)
  • LED lamp – 1
  • juhtmed – 12
  • fototakisti – 1
  • Servo mootor – 1
  • Termoandur – 1

https://www.tinkercad.com/things/iHrxmSiGaCp-fantabulous-hango-lappi/editel?sharecode=CdLLpjj0ATGUsoXOLGDi3Z0UnOiQjul51nfQFuYVcQs

Servo kasutamine päriselus:

  • Robootika: servoajameid kasutatakse robootikas laialdaselt robotite, sealhulgas robotkäte, teenindusrobotite ja mängurobotite liikumise juhtimiseks.
  • Mudelite äri: Servomootoreid kasutatakse mudeliäris, näiteks raadio teel juhitavates autode, lennukite, laevade ja droonide mudelites, et tagada täpne ja sujuv juhtimine.
  • Lennundus: servomootoreid kasutatakse lennunduses õhusõidukite pöördepindade, nagu eleronid, tüür ja lift, juhtimiseks, pakkudes lennu ajal täpset ja stabiilset juhtimist.
  • Autotööstus: autodes kasutatakse servosid erinevate süsteemide, näiteks gaasihoovastiku juhtimissüsteemi, elektriakna juhtimissüsteemi, peegli juhtimissüsteemi ja istme juhtimissüsteemi juhtimiseks.
  • Tööstusautomaatika: servoajamid kasutatakse laialdaselt tööstusautomaatikas, et juhtida ajamite ja robotite liikumist tootmisliinidel, pakkudes täpset positsioneerimist ja korratavust.
  • Meditsiiniline: mõned meditsiiniseadmed ja robotid, nagu kirurgilised robotid ja proteesid, kasutavad täpse ja sujuva liikumise juhtimiseks servoajamit.
  • Kaamerad ja optilised instrumendid: servoajamid kasutatakse kaamerates ja optilistes instrumentides objektiivi või muude optiliste elementide asendi stabiilseks ja täpseks juhtimiseks.
  • Robootikasüsteemid: erinevates robotsüsteemides, nagu automatiseeritud laod ja logistikasüsteemid, kasutatakse robotite ja manipulaatorite liikumise juhtimiseks servoajami.