Lego ev3 mișcare linie neagră. Începeți în știință. Senzor de culoare - Luminozitate ambientală

Textul lucrării este postat fără imagini și formule.
   Versiunea completă a lucrării este disponibilă în fila „Fișiere de lucru” în format PDF

Constructor Lego Mindstorms EV3

Etapa pregătitoare

Crearea și calibrarea unui program

Concluzie

Literatură

1. Introducere.

Robotica este una dintre cele mai importante domenii ale progresului științific și tehnologic, în care problemele mecanicii și noilor tehnologii sunt în contact cu problemele inteligenței artificiale.

În ultimii ani, progresele în robotică și sisteme automatizate au schimbat zonele personale și de afaceri ale vieții noastre. Roboții sunt utilizați pe scară largă în transport, în cercetarea Pământului și în spațiu, în chirurgie, în industria militară, în cercetarea de laborator, în domeniul securității, în producția în masă a bunurilor industriale și a bunurilor de consum. Multe dispozitive care iau decizii pe baza datelor primite de la senzori pot fi de asemenea considerați roboți - cum ar fi, de exemplu, ascensoare, fără de care viața noastră este deja de neconceput.

Constructorul Mindstorms EV3 ne invită să intrăm în lumea fascinantă a roboților, să ne cufundăm în mediul complex al tehnologiei informației.

Scop: Aflați să programați mișcarea robotului în linie dreaptă.

    El va face cunoștință cu constructorul Mindstorms EV3 și mediul său de programare.

    Scrieți un program pentru deplasarea robotului în linie dreaptă la 30 cm, 1 m 30 cm și 2 m 17 cm.

    Constructorul Mindstorms EV3.

Detalii despre proiectant - 601 buc., Servomotor - 3 buc., Senzor de culoare, senzor de mișcare tactilă, senzor infraroșu și senzor tactil. Unitatea de microprocesor EV3 este creierul designerului LEGO Mindstorms.

Un servomotor mare este responsabil pentru mișcarea robotului, care se conectează la microcomputerul EV3 și face ca robotul să se miște: mergeți înainte și înapoi, întoarceți și conduceți pe o anumită cale. Acest servomotor are un senzor de rotație încorporat, care vă permite să controlați foarte precis mișcarea robotului și viteza acestuia.

Puteți forța robotul să efectueze o acțiune folosind programul de computer EV3. Programul este format din diverse unități de control. Vom lucra cu blocul de mișcare.

Blocul de mișcare controlează motoarele robotului, îl pornește, îl oprește și îl face să funcționeze corespunzător sarcinilor stabilite. Puteți programa mișcarea pentru un anumit număr de revoluții sau grade.

    Etapa pregătitoare.

    Crearea unui domeniu tehnic.

Pe terenul activității robotului, vom desena marcaje, folosind banda electrică și o riglă, vom crea trei linii de 30 cm lungime - linia verde, 1 m 15 cm - linia roșie și 2 m 17 cm - linia neagră.

    Calcule necesare:

Diametrul roții robotului este de 5 cm 7 mm \u003d 5,7 cm.

O revoluție a roții robotului este egală cu circumferința cu un diametru de 5,7 cm. Găsim circumferința după formulă

Unde r este raza roții, d este diametrul, π \u003d 3.14

l \u003d5,7 * 3,14 = 17,898 = 17,9.

Acestea. pentru o revoluție a roții, robotul trece 17,9 cm.

Calculăm numărul de rotații necesare pentru a conduce:

N \u003d 30: 17,9 \u003d 1,68.

    1 m 30 cm \u003d 130 cm

N \u003d 130: 17,9 \u003d 7,26.

    2 m 17 cm \u003d 217 cm.

N \u003d 217: 17,9 \u003d 12,12.

    Crearea și calibrarea programului.

Vom crea programul după următorul algoritm:

algoritm:

    Selectați un bloc de mișcare în programul Mindstorms EV3.

    Porniți ambele motoare în direcția setată.

    Așteptați-vă o modificare a citirii senzorului de rotație al unuia dintre motoare la valoarea specificată.

    Opriți motoarele.

Programul final este încărcat în unitatea de control a robotului. Punem robotul pe teren și apăsăm butonul de pornire. EV3 călătorește pe câmp și se oprește la sfârșitul unei linii date. Dar pentru a obține o finisare precisă, este necesară calibrarea, deoarece factorii externi influențează mișcarea.

    Câmpul este instalat pe birourile studenților, astfel încât este posibilă o ușoară deviere a suprafeței.

    Suprafața câmpului este netedă, astfel încât aderența slabă a roților robotului la câmp nu este exclusă.

    În calcularea numărului de revoluții, a trebuit să rotunjim numerele și, prin urmare, schimbând sutele unei revoluții, am obținut rezultatul dorit.

5. Concluzie.

Posibilitatea de a programa mișcarea robotului în linie dreaptă este utilă pentru crearea de programe mai complexe. De regulă, specificațiile tehnice ale competițiilor de robotică indică toate dimensiunile de mișcare. Sunt necesare pentru ca programul să nu fie reîncărcat cu condiții logice, cicluri și alte unități de control complexe.

La următoarea etapă de cunoaștere a robotului Lego Mindstorms EV3, veți învăța cum să programați virajele într-un anumit unghi, într-un cerc, într-o spirală.

Lucrul cu designerul este foarte interesant. Aflând mai multe despre capacitățile sale, puteți rezolva orice problemă tehnică. Și în viitor, este posibil să vă creați propriile modele de robot Lego Mindstorms EV3 interesante.

Literatură.

    Koposov D. G. "Primul pas în robotică pentru clasele 5-6." - M .: Binom. Laboratorul Cunoașterii, 2012 - 286 p.

    Filippov S. A. „Robotică pentru copii și părinți” - „Știință” 2010

    Resurse de internet

    http: // lego. rkc-74.ru/

    http://www.9151394.ru/projects/lego/lego6/beliovskaya/

    http: // www. lego. com / educatie /

În această lecție, vom continua să studiem utilizarea senzorului de culoare. Materialul prezentat mai jos este foarte important pentru studiul suplimentar al cursului de robotică. După ce vom învăța cum să folosim toți senzorii constructorului Lego mindstorms EV3, atunci când rezolvăm multe probleme practice, ne vom baza pe cunoștințele acumulate în această lecție.

  6.1. Senzor de culoare - Luminozitate reflectată

Deci, începem să studiem următorul mod de funcționare al senzorului de culoare, care se numește "Luminozitatea luminii reflectate". În acest mod, senzorul de culoare direcționează un flux de lumină roșie către un obiect sau suprafață din apropiere și măsoară cantitatea de lumină reflectată. Obiectele mai întunecate vor absorbi lumina, astfel încât senzorul va arăta o valoare mai mică în comparație cu suprafețele mai deschise. Gama de valori ale senzorului este măsurată de la 0   (foarte întunecat) la 100   (foarte luminos). Acest mod de funcționare a senzorului de culoare este utilizat în multe sarcini în robotică, de exemplu, pentru a organiza mișcarea robotului pe un traseu dat pe o linie neagră aplicată pe o acoperire albă. Când se utilizează acest mod, se recomandă poziționarea senzorului, astfel încât distanța de la acesta la suprafața studiată să fie aproximativ 1 cm (Fig. 1).

Fig. 1

Să trecem la exerciții practice: senzorul de culoare este deja instalat pe robotul nostru și este îndreptat către suprafața învelișului pe care se va deplasa robotul nostru. Distanța dintre senzor și podea este la fel de recomandat. Senzorul de culoare este deja conectat la port. "2"   Modul EV3. Să încărcăm mediul de programare, să conectăm robotul la mediu și să folosim câmpul de bare de culori pe care l-am făcut pentru a finaliza sarcinile din secțiunea 5.4 din lecția nr. 5 pentru a lua măsurători. Instalăm robotul astfel încât senzorul de culoare să fie situat deasupra suprafeței albe. Pagina hardware   mediul de programare trece la modul „Vizualizați porturile” (fig. 2, articolul 1). În acest mod, putem observa toate conexiunile realizate de noi. Pe Fig. 2   este afișată conexiunea portului "B"   și "C"   două motoare mari și spre port "2"   - senzor de culoare.

Fig. 2

Pentru a selecta o opțiune pentru afișarea citirilor senzorului, faceți clic pe imaginea senzorului și selectați modul dorit (Fig. 3)

Fig. 3

Pe Fig. 2 posturi 2   vedem că valoarea citirii senzorului de culoare pe o suprafață albă este 84 . În cazul dvs., poate apărea o valoare diferită, deoarece depinde de materialul de suprafață și de iluminarea interioară: o parte din lumină, reflectată de la suprafață, se prinde de senzor și afectează citirile acesteia. Instalând robotul astfel încât senzorul de culoare să fie situat deasupra benzii negre, vom repara citirile acestuia (Fig. 4). Încercați să vă măsurați valorile luminoase reflectate peste barele de culori rămase. Care sunt sensurile tale? Scrieți răspunsul în comentariile pentru această lecție.

Fig. 4

Să rezolvăm acum problemele practice.

Numărul sarcinii 11:   Este necesar să scrieți un program pentru mișcarea robotului, care se oprește când ajunge la linia neagră.

Decizie:

Experimentul ne-a arătat că la trecerea liniei negre, valoarea senzorului de culoare din "Luminozitatea luminii reflectate"   equals 6 . Mijloace de îndeplinit Sarcini №11   robotul nostru ar trebui să se deplaseze în linie dreaptă până când valoarea dorită a senzorului de culoare devine mai mică 7 . Vom folosi unitatea de programe deja familiară „Așteptări“   Paleta portocalie. Să selectăm modul de operare al blocului de programe cerut de starea problemei „Așteptare” (Fig. 5).

Fig. 5

De asemenea, trebuie să configurați parametrii blocului de programe „Așteptări“. Parametru „Tip de comparație” (Fig. 6, punctul 1)   poate lua următoarele valori: "In aceeasi masura"=0, "Nu este egal"=1, "Mai Mult"=2, „Mai mult sau egal”=3, "Mai puțin"=4, „Mai puțin sau egal”\u003d 5. În cazul nostru, instalați "Tip de comparație"   În valoare "Mai puțin". Parametru Valoarea pragului   stabilit egal 7 (Fig. 6 poz. 2).

Fig. 6

Odată ce valoarea senzorului de culoare este setată la mai mică 7 ce se întâmplă când senzorul de culoare este situat deasupra liniei negre, va trebui să oprim motoarele, oprind robotul. Problema rezolvata (Fig. 7).

Fig. 7

Pentru a continua studiile, va trebui să realizăm un câmp nou, care este un cerc negru cu un diametru de aproximativ 1 metru, aplicat pe un câmp alb. Grosimea liniei de cerc este de 2 - 2,5 cm. Pentru baza câmpului, puteți lua o foaie de hârtie de dimensiunea A0 (841x1189 mm), lipind împreună două foi de hârtie A1 (594x841 mm). În acest câmp, desenați o linie de cerc și pictați-o cu cerneală neagră. De asemenea, puteți descărca aspectul câmpului în format Adobe Illustrator și apoi comandați-l să imprimați pe material textil banner într-un magazin de imprimare. Dimensiunea machetei este de 1250x1250 mm. (Puteți vedea aspectul descărcat mai jos, deschizându-l în Adobe Acrobat Reader)

Acest câmp ne este util pentru rezolvarea mai multor probleme clasice ale unui curs de robotică.

Numărul sarcinii 12:   trebuie să scrieți un program pentru un robot care se deplasează în interiorul unui cerc tăiat cu un cerc negru conform următoarei reguli:

  • robotul avansează în linie dreaptă;
  • ajungând la linia neagră, robotul se oprește;
  • robotul deplasează înapoi două viraje ale motoarelor;
  • robotul roteste 90 de grade spre dreapta;
  • mișcarea robotului se repetă.

Cunoștințele obținute în lecțiile anterioare vă vor ajuta să creați independent un program care rezolvă Problema nr. 12.

Soluția problemei nr. 12

  1. Începeți direct (Fig. 8 articolul 1);
  2. Așteptați-vă că linia neagră traversează senzorul de culoare (Fig. 8 articolul 2);
  3. Mutați înapoi 2 rotații (Fig. 8, pct. 3);
  4. Virați la dreapta 90 de grade (Fig. 8 articolul 4); unghiul de rotație calculat pentru robotul asamblat conform instrucțiunii robot-mic-45544 (Fig. 8 articolul 5);
  5. Repetați comenzile 1 - 4 într-o buclă infinită (Fig. 8, articolul 6).

Fig. 8

Spre senzorul de culoare în modul "Luminozitatea luminii reflectate"   vom reveni de multe ori când vom lua în considerare algoritmii de mișcare de-a lungul liniei negre. Între timp, vom analiza al treilea mod de funcționare al senzorului de culoare.

  6.2. Senzor de culoare - Luminozitate ambientală

Modul senzor de culoare "Luminozitatea iluminatului exterior"   foarte asemănător modului "Luminozitatea luminii reflectate", numai în acest caz senzorul nu emite iluminare, ci măsoară iluminarea naturală a luminii mediului. Din punct de vedere vizual, acest mod de funcționare al senzorului poate fi determinat de un LED albastru slab strălucitor. Citirile senzorilor variază de la 0   (lipsa luminii) a 100   (lumina cea mai strălucitoare). La rezolvarea problemelor practice care necesită măsurarea iluminatului exterior, se recomandă poziționarea senzorului astfel încât senzorul să rămână cât mai deschis și să nu fie blocat de alte părți și structuri.

Să reparăm senzorul de culoare pe robotul nostru în același mod în care am fixat senzorul tactil în lecția 4 (Fig. 9). Conectați senzorul de culoare cu un cablu la port "2"   Modul EV3. Să trecem la rezolvarea problemelor practice.

Fig. 9

Numărul sarcinii 13:   trebuie să scrieți un program care schimbă viteza robotului nostru, în funcție de intensitatea iluminatului exterior.

Pentru a rezolva această problemă, trebuie să învățăm cum să obținem valoarea senzorului curent. Și paleta galbenă a blocurilor de programe, care se numește „Senzori“.

  6.3. Paleta galbenă - „senzori”

Paleta galbenă a mediului de programare Lego mindstorms EV3 conține blocuri de software care vă permit să primiți citirile de senzori actuale pentru procesarea ulterioară a programului. Spre deosebire de exemplu, un bloc de programe „Așteptări“   Palete portocalii, blocuri de programe Paletele galbene transferă imediat controlul la următoarele blocuri de program.

Numărul de blocuri de programe din Paleta Galbenă diferă în versiunile casnice și educative ale mediului de programare. În versiunea home a mediului de programare, nu există blocuri de programe pentru senzori care nu sunt incluși în versiunea inițială a constructorului. Dar, dacă este necesar, pot fi conectate independent.

Versiunea educativă a mediului de programare conține blocuri de programe pentru toți senzorii care pot fi folosiți cu constructorul Lego mindstorms EV3.

Să revenim la decizie Sarcini №13   și vedeți cum puteți obține și prelucra citirile senzorilor de culoare. După cum știm deja: gama de valori ale senzorului de culoare în modul "Luminozitatea iluminatului exterior"   variază de la 0   inainte de 100 . Același interval pentru parametrul care reglementează puterea motoarelor. Să încercăm să utilizăm senzorul de culoare pentru a regla puterea motoarelor din unitatea de program "Direcție".

Decizie:


Fig. 10

Să încărcăm programul rezultat în robot și să-l executăm pentru execuție. Robotul a călătorit încet? Porniți lanterna LED și încercați să o aduceți la senzorul de culoare la distanțe diferite. Ce se întâmplă cu robotul? Închideți senzorul de culoare cu palma - ce s-a întâmplat în acest caz? Scrieți răspunsurile la aceste întrebări în comentariul lecției.

Sarcină - Bonus

Descărcați la robot și executați sarcina prezentată în figura de mai jos. Repetați experimentele cu lanterna LED. Partajează impresiile tale în comentariile la lecție.

Pentru a face robotul să se deplaseze lin de-a lungul liniei negre, trebuie să-l faceți să calculați viteza de mișcare.

O persoană vede o linie neagră și limita limpede. Senzorul de lumină funcționează puțin diferit.

Această proprietate a senzorului de lumină - incapacitatea de a distinge clar granița dintre alb și negru - pe care o vom folosi pentru a calcula viteza de mișcare.

În primul rând, introducem conceptul de „punct ideal de traiectorie”.

Citirile senzorului de lumină variază între 20 și 80, cel mai adesea pe alb citirile sunt de aproximativ 65, pe negru aproximativ 40.

Punctul ideal este un punct condiționat aproximativ în mijlocul culorilor alb și negru, după care robotul se va deplasa de-a lungul liniei negre.

Aici, locația punctului este fundamental - între alb și negru. Setarea exactă pe alb sau negru nu va funcționa din motive matematice, de ce - va fi clar mai târziu.

În mod empiric, am calculat că punctul ideal poate fi calculat folosind următoarea formulă:

Robotul trebuie să se deplaseze strict de-a lungul unui punct ideal. Dacă există o abatere în ambele direcții, robotul trebuie să revină în acest punct.

Machiaj descrierea matematică a problemei.

Date inițiale.

Punctul perfect.

Citiri ale senzorului de lumină curent.

Rezultat.

Puterea de rotire a motorului V.

Puterea de rotire a motorului C.

Decizie.

Luați în considerare două situații. În primul rând: robotul s-a abătut de la linia neagră spre alb.

În acest caz, robotul trebuie să crească puterea de rotație a motorului B și să reducă puterea motorului C.

În situația în care robotul intră pe linia neagră, este adevărat opusul.

Cu cât robotul se abate de la punctul ideal, cu atât mai rapid trebuie să se întoarcă la el.

Dar crearea unui astfel de regulator este o sarcină destul de dificilă și nu este întotdeauna necesară în întregime.

Prin urmare, am decis să ne limităm doar la un P-regulator care răspunde adecvat abaterilor de la linia neagră.

În limba matematică, se va scrie astfel:

unde Hb și Hc sunt puterile totale ale motoarelor B și, respectiv, C,

Baza - o anumită putere de bază a motoarelor, care determină viteza robotului. Este selectat experimental, în funcție de proiectarea robotului și de claritatea virajelor.

Itec - lecturi curente ale senzorului de lumină.

I id - punct ideal calculat.

k - coeficient de proporționalitate, selectat experimental.

În a treia parte, vom analiza cum să programăm acest lucru în mediul NXT-G.


Pentru a vizualiza o prezentare cu imagini, lucrări de artă și diapozitive, descărcați fișierul și deschideți în PowerPoint   pe calculatorul tau.
Conținutul textului al diapozitivelor de prezentare:
„Algoritmul pentru mișcarea de-a lungul liniei negre cu un singur senzor de culoare” Cercul de robotică Profesorul lui Yezidov Akhmed Elievich Când MBU FAC „Shelkovskaya CTT” Pentru a studia algoritmul pentru deplasarea de-a lungul liniei negre, vom folosi robotul Lego Mindstorms EV3 cu un senzor de culoare Senzorul de culoare distinge 7 culorile și pot determina lipsa culorii. Ca și în NXT, acesta poate funcționa ca un senzor de lumină.Câmp pentru competiții robotice „Linia S” Terenul de antrenament propus, cu o pistă în forma literei „S”, vă va permite să efectuați un alt test interesant al roboților creați pentru viteză și reacție. Luați în considerare cel mai simplu algoritm de mișcare a liniei negre pe un senzor de culoare EV3 Acest algoritm este cel mai lent, dar cel mai stabil. Robotul nu se va mișca strict de-a lungul liniei negre, ci de-a lungul marginii sale, întorcându-l spre stânga, apoi spre dreapta și avansând treptat înainte. Algoritmul este foarte simplu : dacă senzorul vede negru, robotul se transformă într-o direcție, dacă este alb - în cealaltă. Conducerea de-a lungul unei linii în modul de luminozitate a luminii reflectate cu doi senzori Uneori, senzorul de culoare nu poate distinge eficient culorile alb-negru. Soluția la această problemă este utilizarea senzorului nu în modul de detectare a culorii, ci în modul de determinare a luminozității luminii reflectate. În acest mod, cunoscând valorile senzorului pe o suprafață întunecată și lumină, putem spune în mod independent ce va fi considerat alb și ce este negru. Acum determinăm valorile de luminozitate pe suprafețele albe și negre. Pentru a face acest lucru, în meniul blocului EV3 găsim fila „Module Applications”. Acum sunteți în fereastra de vizualizare a portului și puteți vedea citirile tuturor senzorilor în momentul actual. Senzorii noștri trebuie evidențiați în roșu, ceea ce înseamnă că sunt în modul de a determina luminozitatea luminii reflectate. Dacă strălucesc în albastru - în fereastra de vizualizare a portului din portul dorit, apăsați butonul central și selectați modul COL-REFLECT. Acum vom seta robotul astfel încât ambii senzori să fie localizați deasupra unei suprafețe albe. Analizăm numerele din porturile 1 și 4. În cazul nostru, valorile sunt 66, respectiv 71. Acestea vor fi valorile albe ale senzorilor. Acum puneți robotul astfel încât senzorii să fie localizați deasupra suprafeței negre. Din nou, să ne uităm la valorile porturilor 1 și 4. Avem 5, respectiv 6. Acestea sunt semnificațiile negrului. În continuare, vom schimba programul anterior. Anume, vom schimba setările comutatoarelor. În timp ce au instalat senzor de culoare -\u003e măsurare -\u003e culoare. De asemenea, trebuie să instalăm senzorul de culoare -\u003e Comparație -\u003e Luminozitatea luminii reflectate. Acum trebuie să setăm „tipul de comparație” și „valoarea pragului”. Valoarea pragului este valoarea unor „gri”, valori sub care vom considera negru, și mai mult - alb. Pentru o primă aproximare, este convenabil să folosiți valoarea medie între albul și negrul fiecărui senzor. Astfel, valoarea pragului primului senzor (portul nr. 1) va fi (66 + 5) /2\u003d35.5. Rotund până la 35. Valoarea pragului celui de-al doilea senzor (portul nr. 4): (71 + 6) / 2 \u003d 38,5. Rotunjim până la 38. Acum, setăm aceste valori în fiecare comutator, respectiv. Asta este, blocurile cu mișcări rămân neschimbate în locurile lor, deoarece dacă așezăm semnul „în tipul de comparație”<», то все, что сверху (под галочкой) будет считаться черным, а снизу (под крестиком) – белым, как и было в предыдущей программе.Старайтесь ставить датчики так, чтобы разница между белым и черным была как можно больше. Если разница меньше 30 - ставьте датчики ниже. Это было краткое руководство по программированию робота Lego ev3, для движения по черной линии, с одним и двумя датчиками цвета

Algoritmi de control robot robot LEGO mobil. Mișcarea liniei cu doi senzori de lumină

Profesor de educație continuă

Kazakova Lyubov Aleksandrovna


Mișcarea liniei

  • Doi senzori de lumină
  • Regulator proporțional (P-Regulator)

Algoritmul mișcării de-a lungul liniei negre fără control proporțional

  • Ambele motoare se rotesc la aceeași putere.
  • Dacă senzorul de lumină dreapta atinge linia neagră, atunci puterea motorului din stânga (de exemplu B) este redusă sau are loc o oprire
  • Dacă senzorul de lumină stângă cade pe linia neagră, atunci puterea celuilalt dintre motoare (de exemplu, C) scade (revine la linie) scade sau se oprește
  • Dacă ambii senzori sunt albi sau negri, atunci apare o mișcare rectilinie

Mișcarea este organizată prin schimbarea puterii unuia dintre motoare


Exemplu de program de mișcare de-a lungul unei linii negre fără controler P

Mișcare organizată prin schimbarea unghiului de rotație


  • Controlerul proporțional (P-controller) vă permite să reglați comportamentul robotului în funcție de cât de diferit este comportamentul său față de cel dorit.
  • Cu cât robotul se îndepărtează de țintă, cu atât trebuie depuse mai multe eforturi pentru a reveni la acesta.

  • Controlerul P este folosit pentru a menține robotul într-o anumită stare:
  • Menținerea poziției manipulatorului Mișcare de-a lungul liniei (senzor de lumină) Mișcare de-a lungul peretelui (senzor de distanță)
  • Deține poziția manipulatorului
  • Deplasare de-a lungul liniei (senzor de lumină)
  • Deplasare de-a lungul peretelui (senzor de distanță)

Mișcare de linie cu un singur senzor

  • Scopul este să vă deplasați de-a lungul graniței alb-negru
  • O persoană poate distinge între granița albului și negrul. Robotul nu poate.
  • Ținta robotului este pe gri.

intersecție

Când utilizați doi senzori de lumină, este posibilă organizarea mișcării pe trasee mai complexe



Algoritmul de intersecție a traficului

  • Ambii senzori pe alb - robotul circulă în linie dreaptă (ambele motoare se rotesc cu aceeași putere)
  • Dacă senzorul de lumină dreapta cade pe linia neagră, iar stânga pe alb, atunci rotiți la dreapta
  • Dacă senzorul de lumină stânga atinge linia neagră, iar cel drept pe alb, atunci se întoarce la stânga
  • Dacă ambii senzori sunt negri, atunci apare o mișcare rectilinie. Puteți număra intersecții sau puteți efectua unele acțiuni


Principiul de funcționare al controlerului P

Poziția senzorilor

O \u003d O1-O2


Algoritmul mișcării de-a lungul liniei negre cu un regulator proporțional

HC \u003d K * (C-T)

  • C - valori țintă (luați citirile de la senzorul de lumină pe alb și negru, calculați media)
  • T - valoarea curentă - obțineți de la senzor
  • K este coeficientul de sensibilitate. Cu cât sensibilitatea este mai mare