Дополнил описание моделей генерации и роста
Signed-off-by: openfablab <openfablab@gmail.com>
This commit is contained in:
parent
237a41e462
commit
4e9fbe5e11
2 changed files with 76 additions and 18 deletions
|
@ -4,32 +4,88 @@ title: Генеративный дизайн машинной клетки
|
|||
---
|
||||
Клетка - стандартный фрагмент автоматической производственной системы (АПС), способный к автономной работе, развитию и репликации. Она состоит из оболочки, рабочей, складской и транспортной зон.
|
||||
|
||||
Идеальная карта клетки Map[] в нашей модели представляет собой квадратный массив чисел, указывающих, что именно и где должно в ней находиться. Таким образом, карта позволяет определить маршруты перемещения мобильных манипуляторов (ММ), места для складирования объектов, места для монтажа машин, места для обмена объектами с окружающей средой, порядок постройки и развития клетки. Сопоставление фактического состояния элемента территории с элементом карты позволяет выявлять ошибки и аварии.
|
||||
Карта клетки в нашей модели представляет собой квадратный массив чисел, указывающих, что именно и где должно в ней находиться. Таким образом, карта позволяет определить маршруты перемещения мобильных манипуляторов (ММ), места для складирования объектов, места для монтажа машин, места для обмена объектами с окружающей средой, порядок постройки и развития клетки. Сопоставление фактического состояния элемента территории с элементом карты позволяет выявлять ошибки и аварии.
|
||||
|
||||
Алгоритм генеративного дизайна позволяет автоматически спроектировать карту для любого набора заданных в начале программы параметров клетки, учитывая размер и количество машин, площади складов, порты для заряда мобильных манипуляторов и т.п.
|
||||
|
||||
(см. рабочий python-код в файле generation.ipynb - лучше открывать с помощью Jupyter Notebook)
|
||||
|
||||
## Описание элементов карты и их числовые коды:
|
||||
Клетка состоит из трех уровней - пол, оборудование, крыша. Каждый из них состоит из компонентов (функциональных блоков), описанных ниже. Компонент может быть реализован различными модулями (структурными блоками), это задается той или иной таблицей структурно-функциональных связей. Например, базовый элемент пола или створка ворот может быть довольно сложным устройством для работы в поле или под водой, а для работы на бетонном полу защищенного от внешних воздействий цеха может просто отсутствовать.
|
||||
|
||||
## Описание компонентов оборудования и их числовые коды:
|
||||
|
||||
* 0. **отсутствующий блок** - предполагается, что в этом месте в свежепостроенной клетке ничего не должно находиться. Таких мест много, в основном они служат для проезда ММ.
|
||||
* 1. **прямой блок забора** Забор отделяет клетку от внешней среды, ничего материального не впуская и не выпуская. Граничит с заборами других клеток и потому может участвовать в передаче данных между клетками. Монтируется с помощью ММ на пол, имеет два разъема на противоположных сторонах для соединения с себе подобными.
|
||||
* 2. **угловой блок забора**. Угловой элемент забора граничит сразу с несколькими углами заборов соседних клеток и может играть особую роль в коммуникации. Также может содержать маяки для навигации ММ. Монтируется с помощью ММ на пол, имеет два разъема на смежных сторонах для соединения с элементами забора. Может быть унифицирован с прямым элементом забора, хотя монтаж его в углу может иметь свою специфику.
|
||||
* 3 **створка ворот** - элемент забора, способный частично открываться для передвижения ММ между клетками. При этом ММ (возможно, с грузом) проходит через специальный элемент - порт ворот, а створки ворот, находящиеся по бокам от него, открываются. Ничего и никого другого ворота не пропускают. Таким образом, чтобы перейти из одной клетки в другую (например, вновь строящуюся) ММ сначала проходит "свои", потом "чужие" ворота. Монтируется с помощью ММ на пол, имеет разъем для соединения с элементом забора.
|
||||
* 4. **портал** - элемент забора, спообный пропускать через себя коробки и ММ. Мы предполагаем что ММ может быть шире чем портал (который сам должен быть перевозимым при помощи ММ), поэтому окружаем его с двух сторон створками ворот (они в закрытом состоянии перекрывают и портал). Коробка же несколько уже чем портал, поэтому может проходить через него в обоих направлениях, если он будет открыт. По умолчанию же портал закрыт и открывается лишь когда ММ передает через него груз в соседнюю клетку. Вариант использования 1: ММ с грузом подъезжает вплотную к порталу своей клетки и сквозь него кладет коробку в портал чужой клетки, откуда его забирает ММ той клетки. Вариант использования 2: ММ с грузом кладет коробку в портал своей клетки, а ММ другой клетки забирает его оттуда. Монтируется с помощью ММ на пол.
|
||||
* 5. **машинный блок** - элемент машины (автоматизированное рабочее место (АРМ), станок или любой другой компонент такого рода). Группа машинных блоков образует машину, способную выполнять операции над объектами.
|
||||
* 9. **колонна** - элемент, поддерживающий крышу. Должна быть выше ММ, но не выше его рабочей зоны (чтобы мог поставить на нее элемент крыши). Может быть унифицирована с элементами забора. Имеет разъемы для получения от крыши электроэнергии и ее передачи в пол.
|
||||
* 10. **стеллаж** - позволяет хранить вданном месте несколько коробок с объектами на разной высоте.Возможно, имеет разъемы для получения от крыши электроэнергии и ее передачи в пол.
|
||||
* 11. **пандус** - позволяет ММ с грузом перемещаться между этажами
|
||||
|
||||
## Описание компонентов пола и их числовые коды:
|
||||
|
||||
* 0. **территория, непригодная к использованию** (пока не реализовано, предполагается что на сложной местности, содержащей непроходимые участки тоже можно построить клетку с ограниченным функционалом, огибающую эти участки)
|
||||
* 1. **территория, пригодная к использованию** (на ней можно строить клетку путем установки готовых блоков с помощью ММ)
|
||||
* 2. **элемент пола базовый** имеет ножки адаптивной высоты и зацепы для сборки в площадки произвольного размера и формы. ММ укладывают элементы пола прямо на территорию, пригодную к использованию, регулируют ножки по высоте и соединяют с соседними. Между элементами пола могут передаваться электричество и сигналы управления, а при необходимости - и другие коммуникации, не загромождая поверхность над ними и обеспечивая избыточную связность клетки (при повреждении или отсутствии значительного числа элементов пола все равно обеспечивается надежная передача энергии и сигналов управления). При застройке территории ММ может ездить по элементам пола и при этом устанавливать новый элемент пола рядом с собой. Затем продвигатсья дальше. Это позволяет при желании обходиться вообще без аккумуляторов в ММ, питая их все вреям через элементы пола, либо обходиться вообще без ММ, придав элементам пола возможность перемещения объектов.
|
||||
* 3. **порт для монтажа прямого элемента забора** Забор отделяет клетку от внешней среды, ничего материального не впуская и не выпуская. Граничит с заборами других клеток и потому может участвовать в передаче данных между клетками. Устанавливается с помощью ММ на элемент пола, имеет два разъема на противоположных сторонах для соединения с себе подобными.
|
||||
* 4. **порт для монтажа углового элемента забора**. Угловой элемент забора граничит сразу с несколькими углами заборов соседних клеток и может играть особую роль в коммуникации. Также может содержать маяки для навигации ММ. Устанавливается на элемент пола, имеет два разъема на смежных сторонах для соединения с элементами забора. Может быть при желании унифицирован с прямым элементом забора.
|
||||
* 5. **складское место** - элемент пола, предназначенный для установки на него коробок с объектами. Может отличаться от базовых элементов пола, а может и не отличаться. Расстановка складских мест на карте производится так, чтобы коробки на них не мешали друг другу, и к каждому месту был обеспечен доступ ММ хотя бы с одной стороны.
|
||||
* 6. **порт створки ворот** - элемент забора, способный частично открываться для передвижения ММ между клетками. При этом ММ (возможно, с грузом) проходит через специальный элемент - порт ворот, а сами ворота, находящиеся по бокам от него, приоткрываются. Ничего и никого другого ворота не пропускают. Таким образом, чтобы перейти из одной клетки в другую (например, вновь строящуюся) ММ сначала проходит "свои", потом "чужие" ворота.
|
||||
* 7. **порт ворот** - элемент забора, спообный пропускать через себя коробки и ММ. Мы предполагаем что ММ может быть шире чем порт ворот (который сам должен быть перевозимым при помощи ММ), поэтому окружаем его с двух сторон воротами. Коробка же несколько уже чем порт ворот, поэтому может проходить через него в обоих направлениях, если он будет открыт. По умолчанию же порт ворот закрыт и открывается лишь когда ММ передает через него груз в соседнюю клетку. Вариант использования 1: ММ с грузом подъезжает вплотную к порту ворот своей клетки и сквозь него кладет коробку в порт ворот чужой клетки, откуда его забирает ММ той клетки. Вариант использования 2: ММ с грузом кладет коробку в порт ворот своей клетки, а ММ другой клетки забирает его оттуда.
|
||||
* 8. **трасса** - базовый элемент пола, учитываемый при построении маршрутов и используемый для перемещения ММ во время работы клетки. Расстановка трасс на карте производится так чтобы обеспечить доступ ММ во все необходимые места и избегать заторов при работе многих ММ.
|
||||
* 9. **машинный порт** - элемент пола на которых устанавливается машинный блок (автоматизированное рабочее место (АРМ), станок или любой другой компонент такого рода). Машинные порты собраны в группы, образующие места для монтажа машины.
|
||||
* 10. **рабочий порт** - элемент пола, на который устанавливается коробка с объектом для его использования машиной, находящейся рядом. Машины изначально проектируются так чтобы брать и помещать объекты в коробки находящиеся здесь. Вокруг каждой машины создается как можно больше рабочих портов так чтобы они не мешали друг другу и могли независимо обслуживаться ММ.
|
||||
* 11. **порт мобильного манипулятора** - элемент пола, предназначенный для заряда и парковки мобильного манипулятора
|
||||
* 12. **порт электростанции** - машинный порт, зарезервированный для монтажа блоков специфических машин - электростанций
|
||||
* 13. **порт утилизатора** - машинный порт, зарезервированный для монтажа блоков специфических машин - утилизаторов отходов и брака
|
||||
* 14. **порт планировщика** - машинный порт, зарезервированный для монтажа блоков специфических машин - планировщиков
|
||||
* 2. **элемент пола базовый**. Между элементами пола могут передаваться электричество и сигналы управления, а при необходимости - и другие коммуникации, не загромождая поверхность над ними и обеспечивая избыточную связность клетки (при повреждении или отсутствии значительного числа элементов пола все равно обеспечивается надежная передача энергии и сигналов управления). При застройке территории ММ может ездить по элементам пола и при этом устанавливать новый элемент пола в зоне, доступной его рукам. Затем продвигатсья дальше. Это позволяет при желании обходиться вообще без аккумуляторов в ММ, питая их все время через элементы пола, либо обходиться вообще без ММ, придав элементам пола возможность перемещения объектов.
|
||||
* 3. **порт для монтажа прямого элемента забора**. Может быть таким же как базовый элемент пола или специальным.
|
||||
* 4. **порт для монтажа углового элемента забора**. Может быть таким же как базовый элемент пола или специальным.
|
||||
* 5. **складское место** - элемент пола, предназначенный для установки на него коробок с объектами. Может быть таким же как базовый элемент пола или специальным (например, с разъемами для позиционирования складируемых коробок). Расстановка складских мест на карте производится так, чтобы коробки на них не мешали друг другу, и к каждому месту был обеспечен доступ ММ хотя бы с одной стороны.
|
||||
* 6. **порт створки ворот** Может быть таким же как базовый элемент пола или специальным.
|
||||
* 7. **порт портала** - Может быть таким же как базовый элемент пола или специальным.
|
||||
* 8. **трасса** - базовый элемент пола, учитываемый при построении маршрутов и используемый для перемещения ММ во время работы клетки. Расстановка трасс на карте производится так чтобы обеспечить доступ ММ во все необходимые места и избегать заторов при работе многих ММ. Может быть таким же, как базовый элемент пола или специальным, например, способным питать энергией ММ или самостоятельно транспортировать объекты.
|
||||
* 9. **машинный порт** - элемент пола на котором устанавливается машинный блок. Машинные порты собраны в группы, образующие места для монтажа машины. Может быть таким же, как базовый элемент пола или специальным.
|
||||
* 10. **рабочий порт** - элемент пола, на который устанавливается коробка с объектом для его использования машиной, находящейся рядом. Машины изначально проектируются так чтобы брать и помещать объекты в коробки находящиеся здесь. Вокруг каждой машины создается как можно больше рабочих портов так чтобы они не мешали друг другу и могли независимо обслуживаться ММ. Может быть таким же, как базовый элемент пола или специальным.
|
||||
* 11. **порт мобильного манипулятора** - Элемент пола, предназначенный для парковки (и, возможно, заряда) мобильного манипулятора. Может быть таким же, как базовый элемент пола или специальным
|
||||
* 12. **порт электростанции** - машинный порт, зарезервированный для монтажа блоков специфических машин - электростанций.
|
||||
* 13. **порт утилизатора** - машинный порт, зарезервированный для монтажа блоков специфических машин - утилизаторов отходов и брака.
|
||||
* 14. **порт планировщика** - машинный порт, зарезервированный для монтажа блоков специфических машин - планировщиков.
|
||||
* 15. **порт шахты** - машинный порт, зарезервированный для монтажа блоков специфических машин - шахт, автоматически добывающих полезные ископаемые из недр земли. Может отличаться возможностью доступа через него вниз. При этом должна сохраняться возможность проезда по нему ММ.
|
||||
* 16. **порт колонны** - элемент пола для монтажа на него поддерживающей крышу колонны. Может быть таким же, как базовый элемент пола или специальным.
|
||||
* 17. **порт стеллажа** - элемент пола для монтажа на него стеллажа. Может быть таким же, как базовый элемент пола или специальным.
|
||||
* 18. **порт пандуса** - элемент пола для монтажа на него пандуса
|
||||
|
||||
Мобильный манипулятор может брать, перемещать и устанавливать любые из этих блоков, а также другие мобильные маниепуляторы и коробки. Обрабатываемые АПС бъекты могут находиться в боксах и путешествовать с ними, а в рабочих портах машин удаляться из коробок и помещаться в них. Также в рабочих портах могнут появляться (как результат работы машин) объекты, не помещающиеся в коробки: сами коробки, мобильные манипуляторы, все вышеперечисленные пронумерованные блоки.
|
||||
## Описание компонентов крыши и их числовые коды:
|
||||
|
||||
* 0. **отсутствующая крыша** - предполагается, что в этом месте в свежепостроенной клетке ничего не должно быть крыши. Например, для вентиляции или пролета дронов.
|
||||
* 1. **инертная крыша** - дешевая крыша без дополнительных функций, просто с защитой от непогоды и, возможно, охлаждением.
|
||||
* 2. **солнечная батарея** - добывает энергию, может иметь функции поворота к солнцу и самоочистки.
|
||||
* 3. **ветряк** - добывает энергию ветра.
|
||||
* 4. **опорная крыша** - на нее можно укладывать элементы пола следующего этажа
|
||||
|
||||
## Описание некоторых модулей (структурных блоков) и их числовые коды:
|
||||
|
||||
|
||||
* 0. **отсутствующий модуль**
|
||||
* 1. **закрытый модуль пола** позволяет монтировать на себе различные блоки оборудования и перемещаться ММ. Имеет механические и электрические разъемы для соединения с соседями и монтажа сверху блоков оборудования. Имеет ножки адаптивной высоты - ММ укладывают элементы пола прямо на территорию, пригодную к использованию, регулируют ножки по высоте и соединяют с соседними. От ннего возможна зарядка аккумляторов ММ.
|
||||
* 2. **открытый модуль пола** имеет не мешающие проезду ММ отверстия дял доступа к поверхности, что позволяет монтировать на нем блоки шахтного оборудования, добывающие ресурсы.
|
||||
* 3. **вертикальный модуль** - может использоваться в качесте колонны, прямого или углового элементов забора
|
||||
* 4. **модуль створки ворот** симметричный, подходящий для использования в качестве как левой, так и правой створки
|
||||
* 5. **машинный блок** - их очень много разных, но с одинаковым способом монтажа и подключения.
|
||||
* 6. **коробка** - позволяет хранить объекты, транспортировать их с помощью ММ, передавать в машины для обработки.
|
||||
* 7. **мобильный манипулятор**
|
||||
* 8. **стеллаж**
|
||||
* 9. **инертная крыша**
|
||||
* 10. **крыша-солнечная батарея**
|
||||
* 11. **крыша-ветряк**
|
||||
* 12. **опорная крыша**
|
||||
* 13. **пандус**
|
||||
|
||||
Мобильный манипулятор может брать, перемещать и устанавливать любые из этих модулей, включая другие мобильные манипуляторы. Обрабатываемые объекты могут находиться в коробках и путешествовать с ними, а в рабочих портах машин удаляться из коробок и помещаться в них. Также в рабочих портах могут появляться (как результат работы машин) объекты, не помещающиеся в коробки: сами коробки, мобильные манипуляторы, все вышеперечисленные пронумерованные блоки.
|
||||
|
||||
Один и тот же модуль - например, машины, пола или забора может в какой-то момент просто лежать на складском месте, а в другой - быть установлен на свое место и выполнять свою функцию.
|
||||
|
||||
## Примеры матриц структурно-функциональных связей
|
||||
|
||||
1. Минимализм.
|
||||
|
||||
Предполагается работа на ровном полу защищенного цеха. Все компоненты пола и оборудования кроме машинных блоков реализуются отсутствующими блоками. Территории, непригодной к использованию нет. Складируются коробки прямо на полу, ресурсы и энергия подаются на машиноместа по заранее проложенным под полом трубам и кабелям. Никакой крыши нет.
|
||||
|
||||
2. Реализм
|
||||
|
||||
Предполагается работа на естественном грунте. Используются все предусмотренные блоки оборудования, включая заборы и ворота.
|
||||
Территория, непригодная к использованию обходится стороной. Используются два вида элементов пола - закрытый и открытый, шахтные машины ведут добычу ресурсов. Элементы пола и забора служат в том числе и аккумуляторами энергии. Для защиты от непогоды и загрязнений нужна крыша, для монтажа которой потребуются часто расположенные стены и/или колонны. Крыша выполняет также функцию охлаждения и сбора воды. Она может использоваться для сбора энергии с помощью соолнечных батарей и ветряков. Здесь предполагается и более внедорожный мобильный манипулятор, может быть, шагающий. Для хранения объектов спользуются стеллажи, помогающие колоннам поддерживать крышу.
|
||||
|
||||
## Алгоритм генеративного дизайна
|
||||
|
||||
|
@ -56,7 +112,7 @@ title: Генеративный дизайн машинной клетки
|
|||
* Раставить складские места
|
||||
* Создать посередине клетки рабочую зону - машины, их рабочие порты, трассы между ними
|
||||
* Создать дополнительные вертикальные трассы возле машинной зоны
|
||||
* Создать порты мобильных манипуляторов
|
||||
* Создать порты мобильных манипуляторов и пути подъезда к ним
|
||||
* Зарегистрировать элементы карты как экземпляры классов
|
||||
|
||||
Примеры работы алгоритма. Над картинками указаны задаваемые число блоков в машине, число машин, число складских мест и ММ.
|
||||
|
@ -67,6 +123,7 @@ title: Генеративный дизайн машинной клетки
|
|||
|
||||

|
||||
|
||||
|
||||
## Порядок фактической постройки клетки
|
||||
|
||||
Когда у нас есть общая карта клетки, можно, сопоставляя реальность с этой картой осмысленно диагностировать, ремонтировать и воспроизводить клетки.
|
||||
|
@ -95,6 +152,7 @@ title: Генеративный дизайн машинной клетки
|
|||
|
||||
## Задачи на будущее
|
||||
|
||||
* назначение мест, откуда ММ может взять тот или иной объект
|
||||
* умная регистрация машинных блоков, машиномест со связанными портами и объектов
|
||||
* перемещение ММ, перевозка коробок
|
||||
* правила дорожного движения для ММ и тесты на случайные перемещения коробок толпой мм
|
||||
|
|
|
@ -17,7 +17,7 @@ title: Модель распространения клеток робофабр
|
|||
|
||||
(см. рабочий python-код в файле growth.ipynb - лучше открывать с помощью Jupyter Notebook)
|
||||
|
||||
Территория с препятствиями задается файлом test.png. Белые - доступные для занятие области территории, черные - недоступные.
|
||||
Территория с препятствиями задается файлом test.png. Белые - доступные для застройки области территории, черные - недоступные.
|
||||
|
||||

|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue