Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Разработка алгоритмов управления роботом-сортировщиком и их отладка.




Нами было разработано 3 алгоритма управления роботом-сортировщиком. Поле для «Сортировщика-манипулятора» мы представили в виде 2 массивов (рис 3.).

Рисунок 3. Массивы, соответствующие зоне склада и зоне постройки

Массивы a и b являются двумерными. Элементы массива a лежат в диапазоне от a[0,0] до a[4,1]. Массив a – это математическая модель расположения кубиков в зоне склада. Элементы массива a[X,0] характеризуют кубики нижнего ряда в зоне склада, а элементы a[X,1] характеризуют кубики верхнего ряда.

 Массив b – это математическая модель расположения кубиков в зоне постройки. Элементы массива b лежат в диапазоне от b[0,0] до a[3,2]. Элементы массива b[X,2] характеризуют кубики нижнего ряда в зоне постройки, элементы b[X,1] характеризуют кубики среднего ряда, а элементы b[X,0] – кубики верхнего ряда.

Элементы массивов a и b могут принимать следующие значения: 0 – кубик отсутствует или его постановка не нужна, 1 – кубик уже установлен, 2 – синий кубик, 5 – красный кубик, 6 – белый кубик. Обозначения цветов кубиков соответствуют показаниям датчика цвета Lego Color NXT.

 По правилам соревнований робот заранее не знает расположение кубиков в зоне склада. В наших алгоритмах значения массива a задаются вручную, это имитация сканирования роботом цветов кубиков в зоне склада.

В данной работе алгоритмы будут представлены с помощью блок-схем. В приложении к работе разработанные алгоритмы представлены на языке программирования Паскаль ABC.NET. В каждый алгоритм включена проверка работоспособности.

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

Оговорим несколько очевидных правил:

1. Робот не может брать кубик с ряда a[0;0] – a[4;0] (для удобства см. рис 3), пока не будет убран находящийся над ним соответствующий кубик с ряда a[0;1] – a[4;1]. Пример: мы не можем взять кубик a[2;0], пока не уберём кубик a[2;1].

2. Робот не может установить кубик на ряд b[0;1] – b[3;1], пока не будет установлен находящийся под ним кубик на ряд b[0;1] – b[3;1]. Пример: Мы не установим кубик b[1;1], пока не будет установлен кубик b[1;2].

3. Робот не может установить кубик на ряд b[0;0] – b[3;0], пока не будут установлены находящиеся под ним кубики на ряды b[0;1] – b[3;1] и b[0;2] – b[3;2]. Пример: Мы не сможем установить кубик b[1;0], пока не установим кубики b[1;1] и b[0;2].

Описание алгоритма сортировки №1:

 

Первый алгоритм представляет собой простой перебор каждого кубика в зоне склада с каждым кубиком в зоне постройки.

Задаем массив a и b (Блок-схема №1. Задаем массив a и b).

Блок-схема №1. Задаем массивы a и b

 

Показываем, какие кубики стоят в зоне склада и как они должны быть рассортированы в зоне постройки. Пример на рисунке 4.










Последнее изменение этой страницы: 2018-04-12; просмотров: 331.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...