Генеративный дизайн машинной клетки
Клетка - стандартный фрагмент автоматической производственной системы (АПС), способный к автономной работе, развитию и репликации. Она состоит из оболочки, рабочей, складской и транспортной зон.
Карта клетки в нашей модели представляет собой квадратный массив чисел, указывающих, что именно и где должно в ней находиться. Таким образом, карта позволяет определить маршруты перемещения мобильных манипуляторов (ММ), места для складирования объектов, места для монтажа машин, места для обмена объектами с окружающей средой, порядок постройки и развития клетки. Сопоставление фактического состояния элемента территории с элементом карты позволяет выявлять ошибки и аварии.
Алгоритм генеративного дизайна позволяет автоматически спроектировать карту для любого набора заданных в начале программы параметров клетки, учитывая размер и количество машин, площади складов, порты для заряда мобильных манипуляторов и т.п.
(см. рабочий python-код в файле generation.ipynb - лучше открывать с помощью Jupyter Notebook)
Клетка состоит из трех уровней - пол, оборудование, крыша. Каждый из них состоит из компонентов (функциональных блоков), описанных ниже. Компонент может быть реализован различными модулями (структурными блоками), это задается той или иной таблицей структурно-функциональных связей. Например, базовый элемент пола или створка ворот может быть довольно сложным устройством для работы в поле или под водой, а для работы на бетонном полу защищенного от внешних воздействий цеха может просто отсутствовать.
Описание компонентов оборудования и их числовые коды:
- отсутствующий блок - предполагается, что в этом месте в свежепостроенной клетке ничего не должно находиться. Таких мест много, в основном они служат для проезда ММ.
- прямой блок забора Забор отделяет клетку от внешней среды, ничего материального не впуская и не выпуская. Граничит с заборами других клеток и потому может участвовать в передаче данных между клетками. Монтируется с помощью ММ на пол, имеет два разъема на противоположных сторонах для соединения с себе подобными.
- угловой блок забора. Угловой элемент забора граничит сразу с несколькими углами заборов соседних клеток и может играть особую роль в коммуникации. Также может содержать маяки для навигации ММ. Монтируется с помощью ММ на пол, имеет два разъема на смежных сторонах для соединения с элементами забора. Может быть унифицирован с прямым элементом забора, хотя монтаж его в углу может иметь свою специфику. 3 створка ворот - элемент забора, способный частично открываться для передвижения ММ между клетками. При этом ММ (возможно, с грузом) проходит через специальный элемент - порт ворот, а створки ворот, находящиеся по бокам от него, открываются. Ничего и никого другого ворота не пропускают. Таким образом, чтобы перейти из одной клетки в другую (например, вновь строящуюся) ММ сначала проходит "свои", потом "чужие" ворота. Монтируется с помощью ММ на пол, имеет разъем для соединения с элементом забора.
- портал - элемент забора, спообный пропускать через себя коробки и ММ. Мы предполагаем что ММ может быть шире чем портал (который сам должен быть перевозимым при помощи ММ), поэтому окружаем его с двух сторон створками ворот (они в закрытом состоянии перекрывают и портал). Коробка же несколько уже чем портал, поэтому может проходить через него в обоих направлениях, если он будет открыт. По умолчанию же портал закрыт и открывается лишь когда ММ передает через него груз в соседнюю клетку. Вариант использования 1: ММ с грузом подъезжает вплотную к порталу своей клетки и сквозь него кладет коробку в портал чужой клетки, откуда его забирает ММ той клетки. Вариант использования 2: ММ с грузом кладет коробку в портал своей клетки, а ММ другой клетки забирает его оттуда. Монтируется с помощью ММ на пол.
- машинный блок - элемент машины (автоматизированное рабочее место (АРМ), станок или любой другой компонент такого рода). Группа машинных блоков образует машину, способную выполнять операции над объектами.
- колонна - элемент, поддерживающий крышу. Должна быть выше ММ, но не выше его рабочей зоны (чтобы мог поставить на нее элемент крыши). Может быть унифицирована с элементами забора. Имеет разъемы для получения от крыши электроэнергии и ее передачи в пол.
- стеллаж - позволяет хранить вданном месте несколько коробок с объектами на разной высоте.Возможно, имеет разъемы для получения от крыши электроэнергии и ее передачи в пол.
- пандус - позволяет ММ с грузом перемещаться между этажами
Описание компонентов пола и их числовые коды:
- территория, непригодная к использованию (пок а не реализовано, предполагается что на сложной местности, содержащей непроходимые участки тоже можно построить клетку с ограниченным функционалом, огибающую эти участки)
- территория, пригодная к использованию (на ней можно строить клетку путем установки готовых блоков с помощью ММ)
- элемент пола базовый. Между элементами пола могут передаваться электричество и сигналы управления, а при необходимости - и другие коммуникации, не загромождая поверхность над ними и обеспечивая избыточную связность клетки (при повреждении или отсутствии значительного числа элементов пола все равно обеспечивается надежная передача энергии и сигналов управления). При застройке территории ММ может ездить по элементам пола и при этом устанавливать новый элемент пола в зоне, доступной его рукам. Затем продвигатсья дальше. Это позволяет при желании обходиться вообще без аккумуляторов в ММ, питая их все время через элементы пола, либо обходиться вообще без ММ, придав элементам пола возможность перемещения объектов.
- порт для монтажа прямого элемента забора. Может быть таким же как базовый элемент пола или специальным.
- порт для монтажа углового элемента забора. Может быть таким же как базовый элемент пола или специальным.
- складское место - элемент пола, предназначенный для установки на него коробок с объектами. Может быть таким же как базовый элемент пола или специальным (например, с разъемами для позиционирования складируемых коробок). Расстановка складских мест на карте производится так, чтобы коробки на них не мешали друг другу, и к каждому месту был обеспечен доступ ММ хотя бы с одной стороны.
- порт створки ворот Может быть таким же как базовый элемент пола или специальным.
- порт портала - Может быть таким же как базовый элемент пола или специальным.
- трасса - базовый элемент пола, учитываемый при построении маршрутов и используемый для перемещения ММ во время работы клетки. Расстановка трасс на карте производится так чтобы обеспечить доступ ММ во все необходимые места и избегать заторов при работе многих ММ. Может быть таким же, как базовый элемент пола или специальным, например, способным питать энергией ММ или самостоятельно транспортировать объекты.
- машинный порт - элемент пола на котором устанавливается машинный блок. Машинные порты собраны в группы, образующие места для монтажа машины. Может быть таким же, как базовый элемент пола или специальным.
- рабочий порт - элемент пола, на который устанавливается коробка с объектом для его использования машиной, находящейся рядом. Машины изначально проектируются так чтобы брать и помещать объекты в коробки находящиеся здесь. Вокруг каждой машины создается как можно больше рабочих портов так чтобы они не мешали друг другу и могли независимо обслуживаться ММ. Может быть таким же, как базовый элемент пола или специальным.
- порт мобильного манипулятора - Элемент пола, предназначенный для парковки (и, возможно, заряда) мобильного манипулятора. Может быть таким же, как базовый элемент пола или специальным
- порт электростанции - машинный порт, зарезервированный для монтажа блоков специфических машин - электростанций.
- порт утилизатора - машинный порт, зарезервированный для монтажа блоков специфических машин - утилизаторов отходов и брака.
- порт планировщика - машинный порт, зарезервированный для монтажа блоков специфических машин - планировщиков.
- порт шахты - машинный порт, зарезервированный для монтажа блоков специфических машин - шахт, автоматически добывающих полезные ископаемые из недр земли. Может отличаться возможностью доступа через него вниз. При этом должна сохраняться возможность проезда по нему ММ.
- порт колонны - элемент пола для монтажа на него поддерживающей крышу колонны. Может быть таким же, как базовый элемент пола или специальным.
- порт стеллажа - элемент пола для монтажа на него стеллажа. Может быть таким же, как базовый элемент пола или специальным.
- порт пандуса - элемент пола для монтажа на него пандуса