Условие за излизане от блокчето за повторение Pro Preview

Досега използвахте блокчето за повторение, за да повтаряте програмите си вечно. Но знаете ли, че една програма може да се повтаря, докато посочено от вас условие бъде изпълнено, без да се налага да използвате блокчето за прекъсване на цикли?

Необходимо е да се абонирате за FLLCasts.com, за да достъпите това видео

Абонирай се

  • #1102
  • 08 Feb 2019

При натискане с мишката върху някой от краищата на блока за повторение той се маркира и в долната част на прозореца можем да видим неговите настройки:

Подобно на блока за изчакване, който изчакваше докато не се случи нещо, блокът за повторение повтаря блоковете в своето тяло, докато не се изпълни условието за излизане от цикъла.

Какви условия за напускане можем да имаме? В EV3 има 5 вида цикли, които се различават по това докога ще се повтаря тялото на цикъла. Можем да ги видим, като кликнем върху падащото меню вдясно от Control. 

  1. Forever - тази настройка е отбелязана по подразбиране. При нея тялото на цикъла се повтаря безкрайно. Ако имаме блокове след такъв цикъл, те никога няма да бъдат изпълнени! Когато имаме такъв цикъл, роботът трябва да бъде спрян ръчно от светлосивия бутон;
  2. Sensor - при тази настройка тялото на цикъла се повтаря, докато някой от сензорите не отчете определена стойност. По-подробно ще се запознаем с нея в следващите нива;
  3. Time - при тази настройка тялото на цикъла ще се повтаря определено време, което се задава в секунди;
  4. Count - една от често използваните настройки. При нея се настройва колко пъти да се изпълни тялото на цикъла. За реализиране на движение в квадрат ще използваме точно тази настройка и ще я настроим на 4;
  5. Logic - тази настройка е малко по-сложна и на този етап от обучението ви няма да я използваме.

Следният пример показва как да се настрои блокчето за повторение така, че програмата да се повтаря докато моторът, прикачен на порт "А", се завърти на повече от 90 градуса:

Както виждате, условният блок за повторение може да работи с всички сензори, до които имате достъп.

Запомнете, че условието на цикъла е условие за прекъсване на цикъла. Цикълът се повтаря, докато условието не бъде изпълнено. Щом условието за прексъсване на цикъла се изпълни, се преминава към следващото блокче след цикъла в програмата.

Важно: условието на цикъла се проверява само веднъж на всяко повторение на цикъла, след като бъдат изпълнени всички блокчета от тялото на цикъла. Ако сложите блокче за изчакване вътре в цикъла, може да получите неочаквано поведение.

Курсове и занятия включващи този Урок

Този Урок е използван в следните курсове и занятия.

Image for Instructors Remote Training
Course icon fllcasts
  • 135
  • 280:11
  • 156
Image for Роботика с LEGO - Ниво 3.0 - Сигурност и охранителни системи
Course icon fllcasts
  • 47
  • 0:00
  • 206
Image for Занятие 4 - Пеещ сеизмичен сензор
Lesson icon fllcasts
  • 5
  • 11
  • 6
  • 3d_rotation 1
Image for Роботика с LEGO - Ниво 3.0 - Сигурност и охранителни системи
Course icon fllcasts
  • 47
  • 0:00
  • 206