No history yet

Sensoru kalibrēšana

Sāksim ar kalibrēšanu

Lai robots precīzi sekotu līnijai, tam vispirms ir "jāiemācās redzēt". Mūsu acis un smadzenes automātiski pielāgojas dažādiem apgaismojuma apstākļiem, bet robotam tas ir jāiemāca. Šo procesu sauc par kalibrēšanu.

Galvenais rīks šajā uzdevumā ir krāsu sensors, kas mēra (Reflected Light Intensity). Tas ir skaitlis, kas parāda, cik daudz gaismas no sensora iebūvētās lampiņas atstarojas atpakaļ. Balta virsma atstaro daudz gaismas (liels skaitlis), savukārt melna līnija gaismu absorbē (mazs skaitlis). Problēma ir tā, ka šie skaitļi mainās atkarībā no istabas apgaismojuma. Kalibrēšana ļauj robotam noteikt konkrētās "melnā" un "baltā" vērtības tieši pirms braukšanas.

Lesson image

Melns, balts un viss pa vidu

Kalibrēšanas procesā mums ir jānosaka divas galējās vērtības: minimālā gaismas intensitāte (kad sensors ir virs melnās līnijas) un maksimālā (kad tas ir virs baltā laukuma). Lai saglabātu šīs vērtības, mēs izmantosim mainīgos – nosauksim tos par melns un balts.

Process ir vienkāršs:

  1. Novietojiet sensoru tieši virs melnās līnijas.
  2. Nolasiet sensora rādījumu un saglabājiet to mainīgajā melns.
  3. Novietojiet sensoru tieši virs baltā laukuma blakus līnijai.
  4. Nolasiet sensora rādījumu un saglabājiet to mainīgajā balts.

Spike Prime vidē tas izskatītos apmēram šādi:

# Izveidojam mainīgos, lai saglabātu vērtības
set melns to (color sensor reflected light)
set balts to (color sensor reflected light)

Sliekšņa aprēķināšana

Kad mums ir zināmas melnās un baltās krāsas vērtības, ir jāatrod viduspunkts. Šo viduspunktu sauc par (threshold). Tas ir lēmuma pieņemšanas punkts: ja sensora rādījums ir zemāks par slieksni, robots uzskata, ka atrodas uz melnās līnijas. Ja rādījums ir augstāks, tas atrodas uz baltā laukuma.

Slieksni aprēķina, saskaitot abas vērtības un izdalot ar divi. Šo rezultātu mēs saglabāsim jaunā mainīgajā ar nosaukumu slieksnis.

slieksnis=melns+balts2slieksnis = \frac{melns + balts}{2}

Ja sensora rādījums ir lielāks par slieksni, mēs esam uz baltā. Ja mazāks – uz melnā. Tieši tik vienkārši.

Spike Prime vidē šī darbība izskatās šādi:

# Aprēķinām slieksni, izmantojot iepriekš saglabātās vērtības
set slieksnis to ((melns + balts) / 2)

Tagad, kad kalibrēšana ir pabeigta un slieksnis ir aprēķināts, robots ir gatavs pieņemt lēmumus. Visos turpmākajos algoritmos mēs salīdzināsim pašreizējo sensora rādījumu ar šo vienu skaitli, lai saprastu, kur tas atrodas.

Quiz Questions 1/5

Kas ir kalibrēšana robota līnijas sekošanas kontekstā?

Quiz Questions 2/5

Kādu vērtību mēra krāsu sensors, lai atšķirtu melnu līniju no balta laukuma?

Precīza kalibrēšana ir pamats veiksmīgam līnijsekotājam. Nākamajā sadaļā mēs izmantosim šo sliekšņa vērtību, lai izveidotu pirmo vienkāršo līniju sekošanas algoritmu.