Показаны сообщения с ярлыком сортировка. Показать все сообщения
Показаны сообщения с ярлыком сортировка. Показать все сообщения

среда, 6 февраля 2013 г.

Робот для состязаний: "Батик". Часть III

Что ж, можно считать WRO-марафон официально начавшимся - оргкомитет World Robot Olympiad выложил финальные правила на своем сайте.
Поэтому надо посмотреть, что же теперь изменилось, относительно предыдущих заметок (часть I, часть II), посвященных состязанию "Батик", публиковавшихся на блоге.

Итак, условно основные изменения можно разделить на две части: уточнение в области сортировки и изменения правила финиширования.

1. Область сортировки.
Правила теперь следует трактовать так, что судья перед стартом определяет в каком порядке робот должен выкладывать кубики в сортировочные корзины. При этом, команды сами закладывают кубики в робота - исходя из конструкции могут внутрь, а могут на поле. Порядок закладки не важен. Важно то, что оценка выполнения задания будет выполнятся по тому, в каком порядке робот в итоге выложит кубики. Если ровно в том же порядке, что и задавался судьями, то команда получает дополнительные 10 очков. Порядок корзин при этом задается тоже случайным образом.

воскресенье, 13 января 2013 г.

Lego-механизмы: сортируем LEGO-оси

На блоге уже было много заметок о механизмах-сортировщиках - необходимо продолжить традицию и положить в копилку LEGO-механизмов еще один. Его назначение сортировать LEGO-оси - и он справляется с этой работой на пять с плюсом.

Конечно же, нужно отметить, что в этом сортировщике всего лишь один мотор. А вы сразу это заметили?

Немного фотографий конструкции можно найти на сайте автора.

воскресенье, 21 октября 2012 г.

Сортировка данных на NXT

В начале этой неделе я опубликовал вопрос: как в произвольном тексте найти 10 наиболее часто используемых слов? В программах для NXT обработка кучи данных с сенсоров является обыденным делом, но что если тебе надо узнать только 10 самых больших или маленьких значений? Как ты будешь решать этот вопрос? В языке RobotC нет специальных функций для сортировки; в NXC есть единственная ArraySort функция, упорядочивающая численные массивы по возрастанию. Поэтому в данной статье я решил провести небольшое исследование различных алгоритмов сортировки. Я помню эту классную демонстрацию работы алгоритмов, которая наглядно показывает различия в принципах сортировки. Я подумал, что будет реально здорово, если я сделаю тоже самое на NXC. И я сделал это.

воскресенье, 1 апреля 2012 г.

Сортировочная установка за 1000 часов?

Все мы помним задание "робот - сортировщик" на WRO прошлого года. Так вот, 2 датских студента, Lasse и Kenneth, по просьбе компании Dynaway за 4 месяца собрали потрясающую сортировочную установку.
Данная машина сортирует lego детали по цвету и размеру. Эта модель используется для демонстрации производственной системы компании-заказчика. 
Изначально детали вперемежку находятся в большом хранилище. Затем робот сортирует детали по отдельным поддонам, а когда какой-нибудь поддон наполнится - робот заменяет его на пустой.

четверг, 15 марта 2012 г.

Робот для состязаний: Робот "Менделеев"

Задание для младшей группы основной категории Международных Состязаний Роботов называется "Робот Менделеев" и оно подразумевает, что нужно построить робота, который способен к систематизации объектов в соответствии с характеристикой ячейки.
А именно, робот должен проехать из ячейки Старта в ячейку Финиша по дороге раскладывая нужное число теннисных шариков в другие ячейки.

Основная сложность в данном задании – границы ячеек, которые представлют собой барьеры высотой 3 см.

воскресенье, 29 мая 2011 г.

Lego механизмы: сортировка - интелектуальная работа?

Казалось бы сортировка Lego-кубиков - избитая тема. Устройств, сортирующих кубики по цвету и/или размеру, представлено в Интернете великое множество. Но все-таки еще находятся такие Lego-изобретатели, механизмы которых выгодно отличаются от других. Например, помните о сортировщике, где используется только один мотор?
А что вы скажете о сортирующем механизме, где не только используется один мотор, но вообще нет электронного мозга, выполняющего обычно задачу определения куда какой кубик ложить? Невероятно? Но факт!



В этом механизме, когда захватывающее устройство не может больше двигаться, остаток движения переходит во вращение манипулятора. Более того, как захват и освобождение, так и движение манипулятора вперед и назад просиходит при вращении мотора только в одном направлении. Автор, браво!

четверг, 21 апреля 2011 г.

Конвеер дельта-роботов из Lego Mindstorms

В ноябре прошлого года была опубликована небольшая заметка о дельта-роботах.
Это интересная тема для людей, увлеченных робототехникой, и поэтому энтузиасты все время будут пытаться строить такие устройства из подручных средств.
На этой неделе Chris Shepherd, автор блога Tinkernology опубликовал окончательный вариант своего детища: конвеера из четырех дельта-роботов. Это гигантская конструкция около двух метров длинной предназначена для сортировки цветных кубиков. Скорость сортировки - 48 кубиков в минуту.

среда, 6 апреля 2011 г.

Робот для состязаний: отладка робота-сортировщика

В ходе программирования робота-сортировщика может случиться такая ситуация, когда определить характеристики кубика не представляется возможным:
  • сломался цветовой сенсор
  • недостаточно кубиков для прогона полной программы
  • кубики не тех цветов
  • нет кубиков вообще
  • трудности с определением характеристик кубиков
  • вообще пока не понятно, как определять цвета и размеры кубиков
Даже если такое случилось – возможность тестировать работу сортировщика все еще есть. Для этого можно эмулировать определение характеристик кубиков. Т.е. в в программе, вместо настоящей работы с сенсорами будет происходить нечто, результатом чего будут точно такие же характеристики, как-будьто они были определены автоматически.

пятница, 1 апреля 2011 г.

Lego механизмы: как сохранить порядок среди Lego-деталей.

Те, у кого дома больше чем три Lego конструктора, наверняка сталкивались время от времени с необходимостью наводить порядок среди Lego деталей. О! Это кропотливое занятие, на которое можно потратить довольно много своего времени, в то время как его хотелось бы потратить на более интересные вещи.
Ну что ж! Посколку от приборки все-равно никуда не деться, то остается только одно - собрать робота, который будет разбираться с Lego-деталями за нас. И это ерунда, что на его сборку и программирование уйдет столько времени, что за него можно было бы отсортировать все ваши детали раз 30.

четверг, 17 марта 2011 г.

Робот для состязаний: примеры роботов сортировщиков

Состязание среди роботов сортировщиков, являющееся частью Международной робототехнической олимпиады 2011, можно признать одним из самых интригующих.

Условия, в которые поставлены команды, требуют от них изобретательности и смекалки.
Еще бы!
1-ая сложность: на сортировку 8 кубиков дается всего 120 секунд, т.е. по 15 секунд на один кубик, при том, что длина поля - больше 2 метров.
2-ая сложность: ограниченные размеры робота
3-я сложность: сортировочные корзины расположены над полем, по которому ездит робот, в то время как кубики лежат на поле.
4-ая сложность: можно использовать только 3 мотора.

Вот несколько примеров роботов, пытающихся решить эту задачу.

суббота, 12 марта 2011 г.

Робот для состязаний: сортировщик - кубик за кубиком

Когда идет разговор о устройстве робота, обрабатывающего за одну поездку к свалке несколько кубиков, то можно условно их разделить на два вида: роботы, выполняющие последовательную обработка кубиков, и роботы, обладающие возможностью производить манипуляции с произвольным кубиком.
Безусловно, как это было проанализировано ранее, робот, производящий манипуляции с произвольным кубиком из захваченных, будет иметь преимущество перед роботом, обрабатывающе захваченные кубики последовательно, при прочих равных условиях. Но с другой стороны, проектирование такого робота в условиях ограниченного размера и количества используемых NXT блоков и моторов, становится крайне нетривиальной задачей. Поэтому робот, выполняющий более простые действия, становится более желаемой целью для решения задачи сортировки.

четверг, 10 марта 2011 г.

Робот для состязаний: сортировщик - между корзиной и свалкой. Часть II

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

Так, например, чтобы отсортировать первые два кубика из левой свалки, роботу нужно будет проделать следующий маршрут.

Да, конечно, можно поиграться с расположением опорной точки, и это даже может принести положительные результаты для какого-нибудь «удобного» расположения кубиков и сортировочных областей. Но просто ожидать такой удачи, довольно безрассудно, поэтому логично выглядит попытка придумать какой-нибудь универсальный алгоритм.

среда, 9 марта 2011 г.

Робот для состязаний: сортировщик - между корзиной и свалкой. Часть I

В предыдущих двух заметках (1, 2), было рассмотрено два аспекта решения задания для старшей группы из Международной робототехнической олимпиады. Первый аспект – определение стратегии по сколько кубиков робот будет захватывать и как он их будет перемещать. Второй аспект затрагивал некоторые особенности программирования робота для этого задания – как заранее предусмотреть возможность того, что корзины для сортировки могут располагаться в различных местах.
В этой заметке предлагается рассмотреть еще один аспект – как запрограммировать перемещение между свалкой и корзинами.

Направление наших рассуждений будет строится от одной из главных характеристик робота – сколько объектов за раз он может перемещать. Можно выделить два основных случая: перемещение за раз только одного кубика, перемещение за раз нескольких кубиков.

среда, 9 февраля 2011 г.

Робот для состязаний: куда ставить-то?

Замечено, что существуют отличия в правилах, на текущий момент сформулированных для Международной робототехнической олимпиады и для ее всероссийского этапа.

Например:
Регламент Международной олимпиады описывает подготовку к состязанию "Сортировщик" следующим образом (перевод с сайта robosport.ru):
Команды должны заявить, по каким признакам их робот будет рассортировывать предметы, и в какие из "Сортировочных корзин" поместит их.

В тоже самое время, текущие правила всероссийского этапа олимпиады говорят, что командам заранее не известно в какие карзины нужно будет разместить отсортированные кубики:
"1.2. В день соревнований, до времени сборки (тренировки), будет объявлено, какие кубики и в какие сортировочные области необходимо переместить. Это будет сделано размещением специальных сортировочных карточек в случайно выбранные сортировочные области."

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

пятница, 4 февраля 2011 г.

Робот для состязаний: сортировка кубиков - логистическая задача

Довольно интересно распределились среди разных категорий задания Международной Робототехнической Олимпиады в этом году.
Лабиринт – задание на программирование больше, чем на конструирование.
Лестница – наоборот, проверяет больше конструкторские навыки, программирование робота, там чисто номинальное.
Сортировщик – предъявляет высокие требования и к конструированию и программированию.

Давайте взглянем еще раз на это задание.

понедельник, 31 января 2011 г.

Робот для состязаний: определить цвет и размер одним сенсором

Задача робота-сортировщика - размещение набора различных предметов в заранее определенных местах, основываясь на различных свойствах предметов, над которыми проводится операция сортировки.Раньше уже рассматривалась одна модель робота-сортировщика, который использовал только один мотор. Но он сортировал предметы только по цвету.
А что если для сортировки необходимо использовать еще какие-нибудь характеристики предметов, например, их размер?

Допустим, у нас есть несколько наборов цветных кубиков - зеленые, синие и крансые, отличающихся по размеру - мальенькие и большие. Необходимо отсортировать их по шести разным позициям: меленькие красные, большие красные, маленькие синие, большие синие и т.д.

Очевидно, что для определения цвета нужно использовать цветовой сенсор. В то время как для определения размера, можно использовать разные способы. Чтобы сократить количество используемых сенсоров, попробуем для этого использовать тот же цветовой сенсор, имея в виду наблюдения освещенные в предыдущих заметках: здесь и здесь.

суббота, 15 января 2011 г.

Lego механизмы: 1 мотор - много или мало?

Сортировщик Lego-кубиков. Какие действия он должен выполнять?
1. Взять кубик
2. Найти соответствующее его цвету место
3. Положить кубик
4. Вернуться за следующим кубиком
А смогли бы вы сконструировать робота, который бы выполнял эти действия и использовал только ОДИН мотор?
Related Posts Plugin for WordPress, Blogger...