Back to Курс

Уровень 1. Роботы и Искусственный интеллект с Кварки

0% Complete
0/0 Steps
  1. НАЧАЛО
    Урок 1: Здравствуй, робот Кварки!
    5 Темы
    |
    1 Тест
  2. РОБОТЫ
    Урок 2: Игры с роботами
    3 Темы
    |
    1 Тест
  3. Урок 3: Робот с беспроводным управлением
    3 Темы
  4. Урок 4: Датчики отслеживания маршрута
    2 Темы
  5. Урок 5: Робот, который двигается по линии
    3 Темы
    |
    1 Тест
  6. ПЕРЕНОС ОБУЧЕНИЯ В РЕАЛЬНЫЙ МИР
    Урок 6: Кварки как робот-курьер с искусственным интеллектом - Часть 1
    3 Темы
  7. Урок 7: Кварки как робот-курьер с искусственным интеллектом - Часть 2
    4 Темы
  8. Урок 8: Создаём собственного робота сборщика мусора - Часть 1
    2 Темы
  9. Урок 9: Создаём собственного робота сборщика мусора - Часть 2
    3 Темы
    |
    1 Тест
  10. Урок 10: Создаём свой собственный беспилотный автомобиль
    5 Темы
    |
    1 Тест
  11. Урок 11: Робот-питомец
    4 Темы
  12. ЗАВЕРШАЮЩИЙ ПРОЕКТ
    Урок 12: Итоговый проект
Урок Progress
0% Complete

Несколько знаков

Как автомобиль обрабатывает несколько знаков?

Здесь можно выделить 2 правила:

  1. Set a Priority List (Задать список приоритетов): Мы можем задать список приоритетов, который поможет определить правила для правил. Это легко можно сделать при помощи блока if-else (если-иначе). Согласно программе ниже, робот повернёт налево.
  2. Closes First (Сначала ближний): Робот будет следовать самому ближнему к нему знаку. Также как в этом случае, наш робот повернёт направо.

Давайте напишем программу для второго условия. Для того чтобы осуществить этот проект, нам нужно разделить его на 2 части:

  1. Нахождение ближайшего знака.
  2. Выполнение действие соответствующее этому знаку.

Напишем код:

  1. За основу возьмём программу для самоуправляемого робота.
  2. Создадим новый пользовательский блок из панели My Block (Мои блоки) под названием Move Robot (Передвинуть робота). Добавь все условия if , относящиеся к знакам.
    Основная программа теперь выглядит вот так:
  3. Создай три переменные и задай следующие величины:
    1. i в качестве счётчика циклов – Задай значение 1.
    2. Max Width (Максимальная ширина) для запоминания величины максимальной ширины. Задай значение 0.
    3. Max Width Object (Объект с максимальной шириной) для запоминания номера объекта с максимальной шириной.
      А теперь мы запустим цикл, чтобы выявить номер объекта с максимальной шириной.
  4. Добавим блок repeat () (повторить_) из панели Control (Управление). Добавим блок # of objects detected (# объектов обнаружено), чтобы запустить цикл.
  5. В блок repeat () (повторить_) добавим блок if (если). Добавим блок () > (). Добавим блок () of Object () (_объекта_) в первое окошко блока () > (). Во второе окошко добавим блок Max Width (Максимальная ширина).
  6. Выберем width (ширина) в качестве параметра в блоке () of Object () (_объекта_) и добавим переменную i в номере объекта.
  7. Добавим блок set (Max Width) variable as () (задать переменную (максимальной ширины) _) и добавим блок () of object () (_объекта_). Выберем width (ширина) в качестве параметра в блоке () of Object () (_объекта_) и добавим переменную i в номере объекта..
  8. Добавим блок set (Max Width Object) variable as () (задать переменную (объект с максимальной шириной)_) и задай значение i.
  9. Добавим блок change () by () (заменить _на_) ниже блока if (если). Выберим i и зададим значение переменной 1. Это увеличит значение счётчика на 1 с каждым циклом.
  10. Добавим блок Move Robot (Передвинуть робота) ниже блока repeat () (повторить_).
  11. Наконец, в программу Move Robot (Передвинуть робота) добавим блок Max Width Object (Объект с максимальной шириной) и все блоки () of object () (_объекта_).

Программа завершена!

Установим знаки и запустим программу для того, чтобы её проверить!

Испытаем программу с разными формами знаков.