Ev3 xətti boyunca hərəkət. Beynəlxalq robot yarışları - Qaydalar - Robot nümunələri - LEGO EV3 əsasında robotun trayektoriyası. Alqoritmin necə işlədiyinə dair nümunə

Gəlin nəzərdən keçirək ən sadə alqoritm EV3-də bir rəngli sensorda qara xətt boyunca hərəkət.

Bu alqoritm ən yavaş, lakin ən sabitdir.

Robot ciddi şəkildə qara xətt üzrə deyil, sərhədi boyunca sola və sağa dönərək tədricən irəliləyəcək.

Alqoritm çox sadədir: əgər sensor qara görürsə, o zaman robot bir istiqamətə, əgər ağdırsa, digər istiqamətə fırlanır.

Lego Mindstorms EV3 mühitində tətbiq

Hər iki hərəkət blokunda "enable" rejimini seçin. Keçidi rəng sensoru - ölçmə - rəngə qoyduq. Aşağıda "rəngsiz"i ağa dəyişməyi unutmayın. Həmçinin, bütün portları düzgün göstərməlisiniz.

Bir dövrə əlavə etməyi unutmayın, robot onsuz heç yerə getməyəcək.

Yoxlayın. nail olmaq üçün ən yaxşı nəticə sükan və güc dəyərlərini dəyişməyə cəhd edin.

İki sensorla hərəkət:

Siz artıq bir sensordan istifadə edərək robotu qara xətt boyunca hərəkət etdirməyin alqoritmini bilirsiniz. Bu gün iki rəngli sensordan istifadə edərək bir xətt boyunca hərəkət etməyə baxacağıq.
Sensorlar elə quraşdırılmalıdır ki, onların arasında qara xətt keçsin.


Alqoritm aşağıdakı kimi olacaq:
Hər iki sensor ağ görürsə, irəliləyirik;
Sensorlardan biri ağ, digəri isə qara görürsə, qara tərəfə dönün;
Hər iki sensor qara görürsə, biz bir kəsişmədəyik (məsələn, dayanırıq).

Alqoritmi həyata keçirmək üçün hər iki sensorun oxunuşlarına nəzarət etməli və yalnız bundan sonra robotu hərəkətə keçirməli olacağıq. Bunu etmək üçün başqa bir keçidin içərisində yerləşdirilmiş açarlardan istifadə edəcəyik. Beləliklə, biz əvvəlcə birinci sensoru sorğulayacağıq, sonra birincinin oxunuşlarından asılı olmayaraq, ikinci sensoru sorğulayacağıq, bundan sonra hərəkəti təyin edəcəyik.
Sol sensoru 1 nömrəli porta, sağdakını isə 4 nömrəli porta birləşdirək.

Şərhlərlə proqram:

Unutmayın ki, biz mühərrikləri “On” rejimində işə salırıq ki, onlar sensorun oxunuşlarına əsasən lazım olduğu qədər işləsinlər. Həmçinin, insanlar tez-tez bir döngəyə ehtiyacı unudurlar - onsuz proqram dərhal başa çatacaq.

http://studrobots.ru/

NXT modeli üçün eyni proqram:

Hərəkət proqramını öyrənin. Robot proqramı. Model testinin videosunu göndərin

Mobil LEGO robotunu idarə etmək üçün alqoritmlər. İki işıq sensoru ilə xətt hərəkəti

Əlavə təhsil müəllimi

Kazakova Lyubov Aleksandrovna


Xətt boyunca hərəkət


Proporsional nəzarətçi olmadan qara xətt boyunca hərəkət etmək üçün alqoritm

  • Hər iki mühərrik eyni güclə fırlanır
  • Sağ işıq sensoru qara xəttə dəyirsə, sol mühərrikin gücü (məsələn, B) azalır və ya dayanır.
  • Sol işıq sensoru qara xəttə dəyirsə, o zaman başqa bir mühərrikin gücü (məsələn, C) azalır (xəttə qayıdır), azalır və ya dayanır.
  • Hər iki sensor ağ və ya qara rəngdədirsə, xətti hərəkət baş verir

Hərəkət mühərriklərdən birinin gücünün dəyişdirilməsi ilə təşkil edilir


P-nəzarətçi olmadan qara xətt boyunca sürmək üçün proqram nümunəsi

Hərəkət fırlanma bucağını dəyişdirərək təşkil edilir


  • Proporsional nəzarətçi (P-nəzarətçi) robotun davranışını onun davranışının istədiyinizdən nə qədər fərqləndiyinə görə tənzimləməyə imkan verir.
  • Robot məqsəddən nə qədər çox yayınsa, ona qayıtmaq üçün bir o qədər çox səy göstərməlidir.

  • P-nəzarətçi robotu müəyyən bir vəziyyətdə saxlamaq üçün istifadə olunur:
  • Manipulyatorun mövqeyini saxlamaq Xətt üzrə hərəkət etmək (işıq sensoru) Divar boyunca hərəkət etmək (məsafə sensoru)
  • Manipulyatorun mövqeyini saxlamaq
  • Xətt hərəkəti (işıq sensoru)
  • Divar boyunca hərəkət (məsafə sensoru)

Bir sensor ilə xətt hərəkəti

  • Məqsəd “ağ-qara” sərhədi boyunca hərəkət etməkdir
  • İnsan ağ və qara arasındakı sərhədi ayırd edə bilir. Robot edə bilməz.
  • Robotun məqsədi boz rəngdədir

Kəsişmələrdən maşın sürmək

İki işıq sensorundan istifadə edərkən daha mürəkkəb marşrutlar üzrə hərəkəti təşkil etmək mümkündür



Kəsişmələri olan magistral yolda hərəkət etmək üçün alqoritm

  • Hər iki sensor ağ rəngdədir - robot düz sürür (hər iki mühərrik eyni güclə fırlanır)
  • Sağ işıq sensoru qara xəttə, sol isə ağ xəttə dəyirsə, sağa dönmə baş verir
  • Sol işıq sensoru qara xəttə, sağdakı isə ağ xəttə dəyirsə, o zaman sola dönür
  • Hər iki sensor qaradırsa, xətti hərəkət baş verir. Siz kəsişmələri saya və ya hər hansı bir hərəkət edə bilərsiniz


P-tənzimləyicinin iş prinsipi

Sensor mövqeyi

O=O1-O2


Proporsional nəzarətçi ilə qara xətt boyunca hərəkət alqoritmi

HC = K*(C-T)

  • Ts - hədəf dəyərlər (ağ və qara işıq sensorundan oxumaq, orta hesabla)
  • T - cari dəyər - sensordan əldə edilir
  • K - həssaslıq əmsalı. Nə qədər çox olsa, həssaslıq bir o qədər yüksəkdir



Şəkillər, dizayn və slaydlarla təqdimata baxmaq üçün, onun faylını yükləyin və PowerPoint-də açın kompüterinizdə.
Təqdimat slaydlarının mətni:
“Bir rəng sensoru ilə qara xətt üzrə hərəkət alqoritmi” “Robotika” klubu Yezidov Əhməd Eliyeviçin qarşısında müəllim. MBU DO “Şelkovskaya TsTT” Qara xətt üzrə hərəkət alqoritmini öyrənmək üçün ondan istifadə olunacaq. Lego robotu Mindstorms EV3 bir rəng sensoru ilə Rəng sensoru Rəng sensoru 7 rəngi fərqləndirir və rəngin olmamasını aşkar edə bilir. NXT-də olduğu kimi, o, "Line S" robot yarışları üçün işıq sensoru kimi işləyə bilər. "S" hərfi şəklində trek ilə təklif olunan məşq meydançası yaradılmış robotların sürət üçün daha bir maraqlı testini keçirməyə imkan verəcək. və reaksiya. EV3-də bir rəngli sensorda qara xətt boyunca hərəkət etmək üçün ən sadə alqoritmi nəzərdən keçirək. Bu alqoritm ən yavaş, lakin ən sabitdir yavaş-yavaş irəliləyiş alqoritm çox sadədir : sensor qara görürsə, robot bir istiqamətə, əgər ağsa, digər istiqamətə dönər. İki sensorlu əks olunan işıq parlaqlığı rejimində xətt izləyicisi Bəzən rəng sensoru qara və qara rəngləri ayırd etmək üçün kifayət qədər effektiv olmur. ağ rənglər. Bu problemin həlli sensoru rəng aşkarlama rejimində deyil, əks olunan işıq parlaqlığı rejimində istifadə etməkdir. Bu rejimdə qaranlıq və işıqlı bir səthdə sensor dəyərlərini bilməklə, nəyin ağ, nəyin qara olacağını müstəqil olaraq deyə bilərik. İndi ağ və qara səthlərdə parlaqlıq dəyərlərini təyin edək. Bunu etmək üçün, EV3 blok menyusunda biz "Modul Tətbiqləri" sekmesini tapırıq. sensorlarımız qırmızı yanmalıdır, yəni əks olunan işığın parlaqlığının aşkarlanması rejimində işləyirlər. Əgər onlar mavi rəngdə parlayırsa, istədiyiniz portdakı porta baxış pəncərəsində mərkəzi düyməni basın və COL-REFLECT rejimini seçin. İndi robotu elə yerləşdirək ki, hər iki sensor ağ səthin üstündə olsun. 1 və 4 nömrəli portlardakı rəqəmlərə baxırıq. Bizim vəziyyətimizdə dəyərlər müvafiq olaraq 66 və 71-dir. Bunlar sensorların ağ dəyərləri olacaq. İndi robotu elə yerləşdirək ki, sensorlar qara səthin üstündə yerləşsin. Yenidən 1 və 4-cü portların dəyərlərinə baxaq, bizdə müvafiq olaraq 5 və 6 var. Bunlar qaranın mənalarıdır. Sonra, əvvəlki proqramı dəyişdirəcəyik. Məhz, biz açarların parametrlərini dəyişəcəyik. Hələlik onlar Rəng Sensoru -> Ölçmə -> Rəng quraşdırılıb. Rəng Sensoru -> Müqayisə -> Yansıtılan İşıq Parlaqlığını təyin etməliyik. Həddi dəyər bəzi "boz"un dəyəridir, biz qara hesab edəcəyimizdən az olan dəyərlər, daha çox isə ağdır. İlk yaxınlaşma üçün hər sensorun ağ və qara arasında orta dəyərini istifadə etmək rahatdır. Beləliklə, birinci sensorun (port No 1) həddi qiyməti (66+5)/2=35,5 olacaqdır. Gəlin 35-ə qədər yuvarlaqlaşdıraq. İkinci sensorun eşik dəyəri (port No. 4): (71+6)/2 = 38,5. Gəlin 38-ə qədər yuvarlaqlaşdıraq. İndi hər bir keçiddə bu dəyərləri təyin edirik, hamısı, hərəkətli bloklar dəyişmədən öz yerlərində qalır, çünki "müqayisə növü" işarəsini qoysaq.<», то все, что сверху (под галочкой) будет считаться черным, а снизу (под крестиком) – белым, как и было в предыдущей программе.Старайтесь ставить датчики так, чтобы разница между белым и черным была как можно больше. Если разница меньше 30 - ставьте датчики ниже. Это было краткое руководство по программированию робота Lego ev3, для движения по черной линии, с одним и двумя датчиками цвета

Robotun qara xətt boyunca rəvan hərəkət etməsi üçün onu hərəkət sürətinin özünü hesablamağa məcbur etmək lazımdır.

Bir insan qara bir xətt və onun aydın sərhədini görür. İşıq sensoru bir az fərqli işləyir.

Hərəkət sürətini hesablamaq üçün istifadə edəcəyimiz işıq sensorunun bu xüsusiyyəti - ağ və qaranı aydın ayırd edə bilməməsidir.

Əvvəlcə “İdeal trayektoriya nöqtəsi” anlayışını təqdim edək.

İşıq sensorunun oxunuşları 20 ilə 80 arasında dəyişir, ən çox ağda oxunuşlar təxminən 65, qarada təxminən 40-dır.

İdeal nöqtə, təxminən ağ və qara rənglərin ortasındakı şərti nöqtədir, bunun ardınca robot qara xətt boyunca hərəkət edəcəkdir.

Burada nöqtənin yeri əsasdır - ağ və qara arasında. Riyazi səbəblərə görə onu tam olaraq ağ və ya qara rəngdə təyin etmək mümkün olmayacaq; niyə sonra aydın olacaq.

Empirik olaraq, ideal nöqtənin aşağıdakı düsturla hesablana biləcəyini hesabladıq:

Robot ideal nöqtə boyunca ciddi şəkildə hərəkət etməlidir. Hər hansı bir istiqamətdə sapma olarsa, robot həmin nöqtəyə qayıtmalıdır.

Gəlin bəstələyək problemin riyazi təsviri.

İlkin məlumatlar.

İdeal nöqtə.

Cari işıq sensorunun oxunuşları.

Nəticə.

Motorun fırlanma gücü V.

Motorun fırlanma gücü C.

Həll.

Gəlin iki vəziyyəti nəzərdən keçirək. Birincisi: robot qara xəttdən ağ xəttə doğru yayındı.

Bu zaman robot B mühərrikinin fırlanma gücünü artırmalı və C motorunun gücünü azaltmalıdır.

Robotun qara xəttə girdiyi bir vəziyyətdə bunun əksi doğrudur.

Robot ideal nöqtədən nə qədər çox kənara çıxarsa, bir o qədər tez ona qayıtmalıdır.

Ancaq belə bir tənzimləyicinin yaradılması olduqca çətin bir işdir və həmişə bütövlükdə tələb olunmur.

Buna görə də, özümüzü yalnız qara xəttdən sapmalara adekvat cavab verən P-tənzimləyicisi ilə məhdudlaşdırmağa qərar verdik.

Riyazi dildə belə yazılacaq:

burada Hb və Hc müvafiq olaraq B və C mühərriklərinin son gücləridir,

Baza - robotun sürətini təyin edən mühərriklərin müəyyən bir əsas gücü. O, robotun dizaynından və döngələrin kəskinliyindən asılı olaraq eksperimental olaraq seçilir.

Itek - işıq sensorunun cari oxunuşları.

Iid – hesablanmış ideal nöqtə.

k – təcrübi olaraq seçilmiş mütənasiblik əmsalı.

Üçüncü hissədə bunu NXT-G mühitində necə proqramlaşdırmağı nəzərdən keçirəcəyik.

Bu problem klassikdir, ideoloji cəhətdən sadədir, onu dəfələrlə həll etmək olar və hər dəfə yeni bir şey kəşf edəcəksən.

Xəttdən sonrakı problemi həll etmək üçün bir çox yanaşma var. Onlardan birinin seçimi robotun xüsusi dizaynından, sensorların sayından, təkərlərə və bir-birinə nisbətən yerləşməsindən asılıdır.

Bizim nümunəmizdə Robot Tərbiyəçisinin əsas təhsil modeli əsasında üç robot nümunəsi təhlil ediləcək.

Başlamaq üçün biz Robot Tərbiyəçi təhsil robotunun əsas modelini yığırıq, bunun üçün MINDSTORMS EV3 proqramında olan təlimatlardan istifadə edə bilərsiniz.

Həmçinin, nümunələr üçün bizə EV3 açıq rəngli sensorlar lazımdır. Bu işıq sensorları, digərləri kimi, bizim vəzifəmiz üçün ən uyğundur, onlarla işləyərkən ətrafdakı işığın intensivliyindən narahat olmaq lazım deyil. Bu sensor üçün proqramlarda sensorun qırmızı arxa işığından əks olunan işığın miqdarının təxmin edildiyi əks olunan işıq rejimindən istifadə edəcəyik. Sensor oxunuşlarının hədləri müvafiq olaraq "əksetmə" və "ümumi əksetmə" üçün 0 - 100 vahiddir.

Nümunə olaraq, düz, açıq fonda təsvir edilmiş qara trayektoriya boyunca hərəkət etmək üçün 3 proqram nümunəsini təhlil edəcəyik:

· Bir sensor, P tənzimləyicisi ilə.

· Bir sensor, PC tənzimləyicisi ilə.

· İki sensor.

Nümunə 1. P tənzimləyicisi olan bir sensor.

Dizayn

İşıq sensoru modeldə rahat şəkildə yerləşən bir şüaya quraşdırılmışdır.


Alqoritm

Alqoritmin işləməsi ona əsaslanır ki, sensorun işıqlandırma şüasının qara xətt ilə üst-üstə düşmə dərəcəsindən asılı olaraq sensorun qaytardığı oxunuşlar gradient olaraq dəyişir. Robot işıq sensorunun yerini qara xəttin sərhədində saxlayır. İşıq sensorundan daxil olan məlumatı çevirməklə idarəetmə sistemi robotun dönmə sürəti üçün bir dəyər yaradır.


Həqiqi bir trayektoriyada sensor bütün əməliyyat diapazonunda (0-100) dəyərlər yaratdığından, robotun səy göstərdiyi dəyər olaraq 50 seçilir, bu halda fırlanma funksiyalarına ötürülən dəyərlər yaradılır diapazon -50 - 50, lakin bu dəyərlər trayektoriyanın dik dönüşü üçün kifayət deyil. Buna görə diapazon -75 - 75-ə qədər bir yarım dəfə genişləndirilməlidir.

Nəticədə proqramda kalkulyator funksiyası sadə mütənasib nəzarətçidir. funksiyası ( (a-50)*1,5 ) işıq sensorunun işləmə diapazonunda qrafikə uyğun olaraq fırlanma dəyərləri yaradır:

Alqoritmin necə işlədiyinə dair nümunə

Nümunə 2. PK tənzimləyicisi olan bir sensor.

Bu nümunə eyni konstruksiyaya əsaslanır.

Yəqin ki, əvvəlki nümunədə robotun həddindən artıq yırğalandığını, bu da onun kifayət qədər sürətlənməsinə imkan vermədiyini görmüsünüz. İndi bu vəziyyəti bir az da yaxşılaşdırmağa çalışacağıq.

Mütənasib nəzarətçimizə biz həmçinin sadə bir kub nəzarətçisi əlavə edirik ki, bu da nəzarətçi funksiyasına bir qədər əyilmə əlavə edəcək. Bu, robotun istədiyiniz trayektoriya sərhəddinə yaxın yırğalanmasını azaldacaq, həmçinin ondan uzaqlaşdıqda daha güclü zərbələr edəcək.