Кегельринг

Общие правила
  1. За наиболее короткое время робот, не выходя более чем на 5 секунд за пределы круга, очерчивающего ринг, должен вытолкнуть расположенные в нем кегли.
  2. На очистку ринга от кеглей дается максимум 2 минуты.
  3. Если робот полностью выйдет за линию круга более чем на 5 секунд, попытка не засчитывается.
  4. Во время проведения состязания участники команд не должны касаться роботов, кеглей или ринга.
РИНГ
  1. Цвет ринга - светлый.
  2. Цвет ограничительной линии - черный.
  3. Диаметр ринга - 1 м (белый круг).
  4. Ширина ограничительной линии - 50 мм.
Кегли
  1. Кегли представляют собой жестяные цилиндры и изготовлены из пустых стандартных жестяных банок (330 мл), использующихся для напитков.
  2. Диаметр кегли - 70 мм.
  3. Высота кегли - 120 мм.
  4. Вес кегли - не более 50 гр.
  5. Цвет кегли - белый.
Робот
  1. Максимальная ширина робота 20 см, длина - 20 см.
  2. Высота и вес робота не ограничены.
  3. Робот должен быть автономным.
  4. Во время соревнования размеры робота должны оставаться неизменными и не должны выходить за пределы 20 х 20 см.
  5. Робот не должен иметь никаких приспособлений для выталкивания кеглей (механических, пневматических, вибрационных, акустических и др.).
  6. Робот должен выталкивать кегли исключительно своим корпусом.
  7. Запрещено использование каких-либо клейких приспособлений на корпусе робота для сбора кеглей
    Маневренность
    1. Робот помещается строго в центр ринга.
    2. На ринге устанавливается 8 кеглей.
    3. Кегли равномерно расставляются внутри окружности ринга. На каждую четверть круга должно приходиться не более 2-х кеглей. Кегли ставятся не ближе 12 см. и не далее 15 см. от черной ограничительной линии. Перед началом игры участник состязания может поправить расположение кеглей. Окончательная расстановка кеглей принимается судьей соревнования.
    4. Цель робота состоит в том, чтобы вытолкнуть кегли за пределы круга, ограниченного линией.
    5. Кегля считается вытолкнутой, если никакая ее часть не находится внутри белого круга, ограниченного линией.
    6. Один раз покинувшая пределы ринга кегля считается вытолкнутой и может быть снята с ринга в случае обратного закатывания.
    7. Робот должен быть включен или инициализирован вручную в начале состязания по команде судьи, после чего в его работу нельзя вмешиваться. Запрещено дистанционное управление или подача роботу любых команд.
    Правила отбора победителя
    1. Каждой команде дается не менее двух попыток (точное число определяется судейской коллегией в день проведения соревнований).
    2. В зачет принимается лучшее время из попыток или максимальное число вытолкнутых кеглей за отведенное время.
    3. Победителем объявляется команда, чей робот затратил на очистку ринга от кеглей наименьшее время, или, если ни одна команда не справилась с полной очисткой ринга, команда, чей робот вытолкнул за пределы ринга наибольшее количество кеглей.
    ПОВЕДЕНЧЕСКАЯ МОДЕЛЬ
    1. Робот, находясь в центре поля, начинает вращаться по часовой стрелке, пока не заметит кеглю.
    2. Двигаясь в направлении кегли, робот выталкивает её за пределы окружности.
    3.Заметив черную границу поля, робот возвращается назад, в место старта
    Следовательно, наш робот должен:

    1. уметь вращаться на месте вокруг своей оси;
    2. уметь двигаться прямолинейно;
    3. уметь обнаруживать предмет, удаленный на некоторое расстояние;
    4. уметь обнаруживать границу поля.

      Данные требования диктуют нам условия конструкции робота:

      1. для реализации первых двух условий применим уже известную нам подвижную платформу, использующую два больших мотора и вращающуюся опору (робот-тележка);
      2. для обнаружения кегли воспользуемся одним из имеющихся в наличии датчиков: инфракрасным или ультразвуковым;
      3. границу поля нам поможет обнаружить датчик цвета.
      Конструкция робота
      Вы можете воспользоваться предложенной инструкцией или собрать собственного робота, отвечающего определенным нами требованиям к его конструкции. В процессе сборки конструкции не забудьте подключить моторы и датчики к модулю EV3: левый мотор - к порту "B", правый мотор - к порту "C", ультразвуковой или инфракрасный датчик - к порту "2", датчик цвета - к порту "3".
      ПРОГРАММА РОБОТА
      Подробно пропишем последовательность действий нашего робота для обнаружения одной кегли на поле:

      1. вращаться вокруг своей оси по часовой стрелке, пока впереди расположенный датчик не обнаружит кеглю;
      2. остановиться напротив кегли;
      3. двигаться вперед, пока датчик цвета не обнаружит черную границу поля;
      4. остановиться;
      5. двигаться назад в центр поля.
      1. Для того, чтобы заставить робота вращаться вокруг своей оси,
      2. Поиск кегли используем программный блок "Ультразвуковой датчик - Сравнение - Расстояние в сантиметрах". Для гарантированного нахождения увеличим пороговое значение срабатывания датчика до 35
      3. После того, как робот окажется напротив кегли, используя программный блок "Выключить мотор".
      Добавим к нашей программе обнаружения кегли следующие программные блоки:

      1. Для того, чтобы заставить робота двигаться прямолинейно, воспользуемся программным блоком "Рулевое управление".
      2. Для поиска датчиком цвета черной границы воспользуемся программным блоком "Датчик цвета - Сравнение - Яркость отраженного сигнала", параметр "Тип сравнения" = 4, параметр "Пороговое значение" = 10.
      3. После того, как робот пересечет черную линию, используя программный блок "Выключить мотор".
      Внесем необходимые изменения в нашу программу для возврата робота в центр поля:
      1. Перед началом движения вперед сбросим в 0 показания датчика вращения мотора, подключенного к порту "B"
      2. После остановки на черной границе поля считаем расстояние, пройденное мотором "B" в градусах.
      3. Полученное значение подадим в параметр "Градусы" программного блока "Рулевое управление", значение параметра "Мощность" = -50.
      Для того, чтобы заставить нашего робота выталкивать требуемое количество кеглей, все наши программные блоки поместим внутрь программного блока "Цикл"
      Режим программного блока "Цикл" установим в значение "Подсчет", параметр "Подсчет" установим равным количеству кеглей.
      1/14