Команда Artmisto
Наша команда в 2019 году привезла проект Cocoonap на масштабнейшее арт-мероприятие Burning Man. Участники команды в основном из Украины, а также из Америки и Австралии, всего 18 человек, из которых двенадцать смогли поехать в пустыню.
Команда Artmisto
Арт-объект Cocoonap — кинетическая инсталляция, изменяющая свою форму с течением времени. Она представляет собой деревянный кокон, высотой почти 3 м, установленный на стальную раму. Сам кокон состоит из пяти лепестков, которые, раскрываясь под световое и музыкальное сопровождение, превращаются в цветок. Затем середина цветка превращается в фигуры двух людей. Эти фигуры обретают метафорические крылья и затем инсталляция растворяется в ночи. Цикл начинается заново.
Я в этом проекте поучаствовал в качестве инженера-механика. Всё, что касалось превращения эскизов дизайнера в дерево и железо, чертежей, 3D-моделей и кинематики — было в зоне моей ответственности.
Предыстория
В октябре 2018 года мне позвонил мой старинный друг Вова, с которым я не виделся лет десять, и предложил встретиться. Он только что приехал со своего первого БМ2018 с горящими глазами и мечтами привезти инсталляцию в пустыню в следующем году. И он искал людей, которые могли бы как-то помочь. Я согласился помочь с чертежами и идеями воплощения его мечты в железо, но ни на что более — для меня такая поездка не вписывалась ни в семейный бюджет, ни во временной график. Но, постепенно вовлекаясь в проект, становилось понятно, что ехать нужно, и даже очень. Параллельно мы искали людей, которые могли бы нам помочь, ведь задач было очень много: звуковые треки, программирование света, управляющая электроника и линейные приводы и управление ими.
Требования к инсталляции и условия работы
Если вкратце, то наша инсталляция должна быть собрана и отлажена в Украине, перевезена в Америку, установлена в пустыне и должна проработать там одну неделю.
Для этого она должна отвечать следующим требованиям:
- Выдерживать перепады температуры от -10С до +40С
- Быть устойчивой к сильному ветру
- Работать в условиях неизбывной пыли и пылевых бурь
- Быть надёжно закрепленной к поверхности
- Быть безопасной для зрителей и устойчивой к ним
Пустыня, в которой проходит мероприятие — это дно высохшего озера, такая себе многокилометровая сковорода, окруженная горами. Днём температура может подниматься выше сорока градусов, а ночью падать ниже нуля. Поэтому вся электроника должна выдерживать такие перепады температуры.
В пустыне бывает очень сильный ветер, он сметает палатки и катает кайтеров.
На второй день у нас в лагере ураган снес каркасную палатку для отдыха, невзирая на все растяжки и 10-дюймовые винтовые анкеры.
Поэтому арт-объект должен быть надежно закреплен к поверхности земли. Мы крепили раму нашего кокона тросами к пяти полутораметровым анкерам-бурам, которые были вкручены по периметру. К слову, сами анкеры и технику для их вкручивания нам предоставили организаторы БМ.
Поверхность кокона покрыта узорчатыми плитами, каждая со своим рисунком. Парусность получается довольно большая, поэтому силовые элементы должны выдерживать ветер и не ломаться.
Photo by Jonathan Clark
Отдельная головная боль — это пыль. Сильный ветер поднимает тучи пыли с поверхности, и они бывают настолько плотные, что не видно пальцев на вытянутой руке. Это не песок, это мелкодисперсная глинистая щелочная пыль, которая прилипает ко всему, проникает везде и избавиться от нее невозможно. Поэтому все движущиеся части, вроде штоков линейных приводов, должны быть защищены гофрами, шариковые подшипники должны быть закрытыми, и вся электроника должна быть в корпусах. Для генераторов должны быть дополнительные воздушные фильтры.
Днем, когда инсталляция не работает, она должна быть закрыта и зафиксирована так, чтобы ее невозможно было открыть вручную. А ночью, когда она должна работать, нужно запускать шоу и следить за инсталляцией и за зрителями, чтобы они от избытка чувств ничего не поломали и сами не поранились. За этим следили ночные дежурные, по два человека.
Leave No Trace — это один из принципов мероприятия: пустыня должна остаться после тебя такой же, как была до тебя.
Поэтому у нас была специальная палатка для грязных работ: стружку и опилки гораздо легче собрать в палатке, чем выбрать из пыли. Но для уборки у нас был специальный инструмент: щетки и магнитные грабли.
Что еще нужно учитывать при разработке?
Имперская система в Америке
Наша инсталляция собиралась и тестировалась в Украине. После тестов и настройки деревянная часть и электроника разбиралась, упаковывалась и отправлялась в Штаты — это оказалось значительно дешевле, чем резать детали в Америке. А стальная рама должна была быть сварена уже в Штатах. Поэтому все размеры материалов подбирались так, чтобы их было возможно купить на месте: например, мы использовали стальные трубы прямоугольного сечения 50х25 мм (2х1 дюйм) и фанеру толщиной, кратной долям дюйма — 12 и 6 мм.
Эти размеры закладывались уже на этапе создания 3D модели и чертежей.
Сетевое напряжение
В Америке сетевое напряжение 110 В, 60 Гц. И американские генераторы именно его и производят. Поэтому, все блоки питания и зарядные устройства, которые мы везли из Украины, должны работать от пониженного напряжения. Большинство современных импульсных блоков питания работают от 110 В без проблем, но некоторые пришлось поискать и проверить с помощью ЛАТРа. Поэтому весь электроинструмент, который мы везли в пустыню, пришлось купить в Америке.
В пустыне — пусто
Поэтому все метизы, подшипники, расходники и инструменты нужно везти с собой и иметь запас, ибо поездка в ближайший строительный магазин может занять три дня. И будет очень обидно, если год работы пойдёт насмарку из-за того, что ты забыл шпильки или взял недостаточно гаек.
ARTery
Бюрократия БМ сведена к минимуму. Еще на этапе подачи заявки на размещение арт-объекта за командой закрепляется менеджер из ARTery, который помогает решить все текущие вопросы: чертежи, энергообеспечение, помощь с тяжелой строительной техникой и прочее. ARTery — это подразделение организаторов, призванное всячески помогать командам, привозящим арт-объекты. Их задача сделать так, чтобы у команды всё получилось.
Например, нашему арт-объекту организаторы предоставили машины для выкапывания траншеи и для вкручивания полутораметровых анкеров по периметру рамы. А более крупным объектам предоставили краны и подъемники. Естественно, совершенно бесплатно.
Защита генератора
В пустыню нужно привозить всё с собой, даже тень и электричество. Было принято решение запитывать нашу инсталляцию от генератора. Но, согласно требованиям, генератор должен быть защищен и освещен. Обычно, для этого покупают готовую собачью будку и ставят генератор вовнутрь, или строят специальный ящик.
У нас же решение этого вопроса отложилось на последний день. И, уже в Сиэтле, собираясь ехать за будкой в строительный магазин, мы увидели, как мужчина из соседнего дома выносит выбрасывать стол. Обычный письменный стол, очень даже подходящего размера. Мы забрали этот стол, прикрутили защитные сетки по бокам, дверные петли к ножкам, и поставили это всё на фанерный лист, который у нас остался от транспортировочного ящика. И украсили немного.
В итоге, вместо скучного ящика для генератора у нас получился отдельный арт-объект!
Этапы разработки
Моя работа началась с этой картинки. Из нее я взял контуры кокона и использовал их как эскиз для модели в SolidWorks.
Первые рендеры модели. На данном этапе уже понятен общий вид сборки кокона.
Отдельно разрабатывалась вращающаяся часть, со своим независимым питанием, контроллерами и механикой.
Потом — заказываем изготовление деталей, 12 мм фанера резалась фрезой, 6 мм — лазером.
После получения деталей — сборка и настройка кинематики, после чего разборка, упаковка и отправка в Штаты.
Здесь виден ящик. Я специально его сделал таким, чтобы туда поместились самые большие детали — двухметровые кили. Обратите внимание на тёмное кольцо слева, о нем я расскажу немного позже.
Некоторые технические решения
Несмотря на то, что я старался максимально широко использовать стандартные комплектующие, которые можно без особых проблем купить и в Украине, и в Америке, для некоторых узлов готовых решений не нашлось, и пришлось их придумывать на ходу. Некоторые из этих решений выглядят странно, но оказалось, что именно они сработали изумительно.
На этой картинке видна стальная рама, высотой 700 мм. И один лепесток, для масштаба.
Узел крепления лепестка к раме. Каждый лепесток крепится к раме через два корпусных подшипника и две фанерные вставки.
А здесь — механика крыльев. Линейный привод вращает ось через тройник.
На оси свободно вращаются крылья, на подшипниках. Но самые наружные крылья закреплены на оси жестко, и именно с них начинается движение. Каждое крыло связано со следующим тонким тросиком, поэтому когда первое крыло, поднимаясь, выбирает слабину тросика – оно начинает тянуть за собой второе крыло, потом второе тянет третье, и так далее.
Все крылья украшены светодиодами.
Так они выглядели вживую, перед установкой на место.
Управляющая электроника
Слово Косте, повелителю актуаторов.
Эта фотография — не постановочная. Это тот момент, когда мы поняли, что не работает очень много чего, а главный программист находится за 9 тысяч километров и 10 часовых поясов от багов, которые ему надо исправить. Утром мы поедем в пустыню и с ним будет проблематично связаться, не говоря уже о том, что удаленная отладка эмбеддед-софта — не самое простое занятие.
На первый взгляд, конструкция в целом не выглядит очень сложной, но дьявол кроется в деталях. Мы ухитрились задействовать 8 микроконтроллеров, для 5-и из которых пришлось делать или модифицировать прошивку.
Всё хотелось сделать как можно проще, чтобы сэкономить время и уменьшить вероятность неприятных сюрпризов. Вот это вот “проще” привело к тому, что отдельные части были действительно простыми, но вот их взаимодействие было неясным вопросом до самого последнего момента. В результате, главный управляющий скрипт писался уже после того, как железо уехало в Америку. (Тем самым программистом, который с нами, к сожалению, поехать не смог.)
Тут ещё следует заметить, что у этого, достаточно сложного в техническом плане проекта, абсолютно жесткий дедлайн. 70 000 человек, живущих в Black Rock City не будут ждать. Мы не можем их попросить дать нам ещё недельку для завершения работ. И если мы не успеваем доделать всё к этой неделе в конце августа, то всё — все наши усилия, год работы и $11,000 идут насмарку. В лучшем случае, организаторы разрешат нам приехать ещё раз в следующем году… И то не факт! Поэтому все технические решения рассматривались с точки зрения подводных камней и сроков. С инженерной точки зрения, многие решения — хаотичные, и если бы это было серийное производство, то так делать не стоит. А вот для одноразового проекта — самое то.
Второй момент управления проектом состоит в том, что денег нам, инженерам за него не платили. А проект сложный, трудоёмкий и как-то стимулировать людей необходимо. Оказалось, что достаточным стимулом является внутренняя мотивация, совесть или как это назвать… Если все участники проекта видят, что всё организовано хорошо и мы двигаемся к цели, то достаточно просто поговорить с человеком, посмотреть укоризненным взглядом, чтобы заставить работать, работать быстро и успеть.
Как это часто бывает с удачными проектами, а проект у нас удачный — мы успели и ничего (ну, почти) не сломалось, внутренняя архитектура не блещет изяществом. Так и хочется воскликнуть: “Не делайте так! Учитесь на наших ошибках!” Конечно, так бы и следовало сделать, если бы это не был одноразовый проект. А тут главное успеть. Кроме того, запутанность архитектуры вызвана наличием вращающейся части, что означает необходимость аккумуляторного питания и беспроводной передачи команд. Кстати, потом выяснилось, что неподвижная часть, которая питается от генератора, тоже должна иметь резервное питание на случай, если внезапно налетит буря, надо будет срочно закрыть кокон, а генератор сломается. А по закону подлости он обязательно бы сломался в этом случае. Тем более, что мы нарушили правила эксплуатации и не меняли масло после его обкатки.
Генераторы там ломаются часто, но нам и тут повезло. Нам вообще сопутствовала удача. Многие объекты, особенно сложные, не успевают запустить вовремя, а учитывая, сколько мы наделали косяков, это должно было случиться и с нами. Мы ни разу не собирали и не запускали всю систему целиком, и впервые мы увидели как она работает уже только в пустыне! Рискованно? Да, но нам повезло. Ещё один пример везения: нужно было исправить ошибки в главном управляющем скрипте и я прикидывал, сколько времени у меня займёт разобраться в чужом Python коде (на жаре +40С). Связаться с разработчиком уже было нельзя, т.к. со связью в пустыне всё плохо. И тут выясняется, что сидящий рядом со мной парень — высококвалифицированный программист и может всё сделать без моего участия, а я тем временем могу продолжать паять электронику.
Как можно видеть на рисунках и видео, внешние лепестки открываются и закрываются электрическими линейными актуаторами с довольно большим ходом штока (400мм). Крылья приводятся в движение актуаторами поменьше, а сами фигуры вообще двигаются актуаторами с примерно 30 мм ходом штоков. Центральную часть (с фигурами людей и крыльями) вращает шаговый двигатель. Без редуктора — прямой привод. Центральная часть довольно инерционная и крутящего момента двигателя не хватает для “мгновенного” разгона, поэтому программно сделан плавный старт. Но никто не сообразил, что кроме преодоления инерции, крутящий момент нужен для преодоления силы ветра. Особенно, когда развёрнутые крылья создают значительную парусность. В результате, даже несильный ветер останавливал вращение.
А вот синхронизация музыки, кинетических и световых эффектов оказалось делом несложным. Всё синхронизировано просто по времени. Чтобы добиться красоты и синхронности оказалось достаточным несколько раз прослушать музыку с секундомером и записать времена включения-выключения эффектов в главный скрипт.
Сам главный скрипт написан на Python и работает на Windows. Он запускает музыкальный секвенсор, а потом отдаёт команды по UART через USB на Ардуинку, установленную в неподвижной части арт-объекта. (Компьютер с Windows закрыт в отдельном ящике и управляется от беспроводного NumPad-а.) В зависимости от команды, Ардуинка включает-выключает вращение шагового двигателя, выдаёт импульс на актуаторы для закрытия-открытия лепестков или передаёт команду по WiFi на вращающуюся часть. Кроме того, она же посылает данные на ленты управляемых RGB WS2812 светодиодов.
Для управления музыкальным секвенсором был изготовлен MIDI-пульт в виде яйца в стиле стимпанк.
Чтобы не нагружать одну Ардуинку слишком большим количеством функций, управление моторами и WiFi сделано с помощью 4-х (!) промежуточных контроллеров со своими программами. Как нам казалось, это позволит разбить разработку на части, поручить их отдельным людям и таким образом сэкономить время. Трудно сказать, удалось ли его сэкономить…
Контроллер шагового двигателя обеспечивает плавный старт, линейно увеличивая скорость вращения от нуля до 2-х оборотов в минуту. Прошивка написана на голом железе, без Ардуино. Так показалось проще, хотя само железо — Ардуино-нано. Проблемы возникли с микросхемой-драйвером шаговика — TB6560. Никакими ухищрениями ни в одном из режимов не удалось добиться от неё тока 2 ампера. Максимум — 1 ампер, несмотря на 24-вольтовое питание. В итоге, сопротивляемость конструкции ветру оказалась в 2 раза ниже потенциально возможной.
Вот так выглядит драйвер шаговика после 10 дней в пустыне. Но на работоспособности пыль никак не сказалась.
Управление вращающейся частью арт-объекта было сделано на ESP8266 по WiFi. Были опасения, что имплементация WiFi займёт много времени, что-то пойдёт не так, но, на удивление, эта часть была сделана быстро и работала безупречно.
Контроллер актуаторов — технически самый сложный микропроцессорный узел. Теоретически его можно было заменить банальным реле, но так получилось, что на работе у меня множество различных контроллеров актуаторов, поэтому использовать сложное устройство или реле — почти нет разницы по времени. С другой стороны, в промышленных контроллерах есть много полезных фич, вроде защиты от перегрузки по току. Но главное, в них есть литиевый аккумулятор с контроллером заряда. Есть там и BLE, но к моменту разработки нашего кокона, он ещё не был допилен до продакшен уровня и я решил не рисковать. WiFi представлялся намного безопаснее с точки зрения граблей.
Единственная проблема этого промышленного контроллера в том, что он управляется через проприетарную шину, а не просто подачей логических уровней. К счастью, я быстро нашел на работе среди хлама “под выброс” платы, преобразующие замыкания контактов в команды на шине. В общем, получилось решение, которое никто не сможет повторить, но в нашем случае это и не нужно. Проект-то одноразовый. Главное, чтобы были запчасти! Кстати, почти всё железо везлось в пустыню с резервными компонентами. Исключение составлял шаговый двигатель из-за цены в 600 евро и актуаторы вращающейся части, т.к. они меганадёжные. Даже фанерные трафареты были продублированы.
Вращающаяся часть питается от 4-х различных аккумуляторов. Самый большой из них, литиевый на 55 ватт-часов, 24 вольта, питает актуаторы. Одновременно идентичный аккумулятор заряжается от генератора в неподвижной части инсталляции. Раз в день аккумуляторы вручную меняются местами и шоу продолжается. Как показал опыт, 55 ватт-часов хватало как раз впритык. Опять повезло.
Можно было бы сделать преобразователи с 24-х вольт на другие напряжения, но быстрее и проще оказалось использовать отдельные батарейки. Обычный пятивольтовый power bank питал WiFi ESP8266 модуль почти неделю без подзарядки. Светодиодные нитки питались от нескольких пар батареек AA, их просто периодически меняли. Нити холодного неона тоже питались от пары батареек AA, но отдельных.
Холодный неон вообще принёс много проблем. Он работает от высоковольтного (~100V) высокочастотного (~1000Hz) напряжения, которое генерируют многочисленные разновидности китайских преобразователей. Мы попробовали несколько таких преобразователей и все они либо сами сгорали, либо сжигали сами неоновые нити через какое-то непродолжительное и непредсказуемое время. Казалось, что эта хрупкая штуковина перегорает даже от косого взгляда! Забавно, что у “обычных” людей холодный неон работает без проблем, поэтому мы не ждали подвоха с этой стороны. Видимо мы использовали намного большую длину нитей, чем обычные пользователи. В конце концов, мы нашли преобразователь, который и сам ни разу не сгорел и ничего не сжег. Преобразователь маломощный, его хватает метров на 5 нити и питается от 2-х батареек AA. Я подозреваю, что именно его маломощность и маломощность самих батареек защищала от перегораний. Возможно, кто-то знает, в чём причина ненадёжной работы других преобразователей. Было бы очень интересно узнать.
Но в пустыне, без доступа к Интернету и за несколько часов до официального старта Burning Man у нас уже не было времени разбираться и я просто припаял 5 таких преобразователей к нашим нитям и мы забыли об этом кошмаре. Кстати, пайка на жаре с постоянным ветром — это отдельное развлечение. Кроме того, нельзя ронять капли припоя и обрезки проводов на землю, поэтому паять нужно аккуратно, над коробочкой. К счастью, кто-то купил паяльник с регулятором температуры, который умеет поддерживать температуру жала независимо от интенсивности охлаждения — обдува ветром. А то, что летит пыль, тоже оказалось не проблемой — просто использовать очки типа лыжных, которые прекрасно защищают глаза. На качество самой пайки пыль, как оказалось, не влияет.
За исключением зоопарка батареек, вращающаяся часть устроена аналогично неподвижной части и использует аналогичную схему подключения контроллера актуаторов.
Оглядываясь назад, можно сказать, что часть технических решений была удачной (использование актуаторов), часть — нет (шаговый двигатель для вращения центральной части), а часть — настоящий кошмар инженера (отсутствие обратной связи по складыванию крыльев). Даже сейчас, глядя на видео работы нашего арта, я боюсь, что команда на складывание не пройдёт (WiFi всё-таки), или аккумулятор сядет или ещё что, а внешние лепестки начнут закрываться и сломают всю конструкцию (актуатор даёт 600 кг усилия, точно хватит).
После настройки программного обеспечения мы всё собираем, грузим в машины и везем в пустыню. Поехали!
Очередь на въезд
Стройка на Плайе
Снова Сергей в эфире
Плайя — это круглая площадка посреди Black Rock Сity, предназначенная для установки основных арт-объектов. В самом ее центре установлен The Man, немного севернее The Temple: это два основных арт-объекта, построенные организаторами.
Мы приехали за четыре дня до официального открытия, и три из них потратили на сборку нашего кокона.
Мы получили точку от организаторов, координаты, где должен быть установлен наш кокон. Стройка начинается! В течение трёх дней мы собирали наш кокон. Особенно много времени ушло на установку декоративных панелей, и вклейку светодиодных лент на лепестки.
И, конечно же, именно этот кондуктор был единственной деталью, которая не пережила пересылку и исчезла по дороге.
Вторым пунктом было то, что хоть мы и взяли метрическую рулетку из Днепра, но выезжая в мастерскую забыли ее в чемодане.
И мне пришлось переводить миллиметры в дюймы-футы, и рассчитав длину нарезать трубы нужного размера.
Так же, пришлось на глаз сваривать раму, стараясь соблюсти компланарность отрезков труб и корректность всех углов между ними.
Уже в пустыне, собирая инсталляцию, я заметил нестыковку. Конечно же, при переводе миллиметров в дюймы я кое-где ошибся и кусочки трубы получились чуть короче, чем нужно. И, как следствие, ножки лепестков с подшипниками не влезали в раму, рама оказалась меньше на 5 мм примерно.
Что делать?? Переваривать раму нечем, болгарки и сварочника у нас не было. Стачивать корпуса подшипников – очень долго и опять же – нечем… Решение нашлось неожиданно – разобрать узел с подшипниками на каждом лепестке, расколоть ножом внутренние фанерные прокладки, сколоть 3-4 слоя фанеры и собрать заново. Получилось! И что особенно ценно – быстро и почти без мусора.
Дальше – несколько фотографий со стройки.
Разложенные по порядку декоративные панели.
Установка декоративных панелей.
Вокруг рамы расставлены розовые флажки — разметка для анкеров. Ждём машину для вкрутки анкеров.
В пустыню даже тень нужно везти с собой.
Установка лепестков.
К нам едет Mayan Warrior, везет нам музыку
Благодаря тому, что мы делали все подсистемы инсталляции друг за другом, и отправляли в Штаты несколькими посылками, то мы увидели наше детище полностью в сборе уже на Плайе.
Невероятное ощущение!
В результате стараний каждого члена нашей чудесной команды мы сумели построить наш кокон за несколько часов до официального начала мероприятия. Мы молодцы!
А потом – была неделя показов и общения со зрителями.
На удивление, несмотря на суровые условия, наша инсталляция проработала неделю как часики, без поломок и особых проблем.
В конце мероприятия мы разобрали нашу инсталляцию. Силовые деревянные детали были сожжены, а декоративные панели мы частично раздарили на плайе в качестве сувениров, а частично привезли в Днепр.
На этом я завершаю свой рассказ и предлагаю посмотреть видео процесса сборки.
Спасибо за внимание.
ianzag
Ребята, вы просто охренено круты! Зачет за проделанную инженерную работу :)
Voodoo13
Большое спасибо. Уже работаем над новым проектом, учитывая полученный опыт :)
ianzag
Если будет нужна волонтерская помощь по разработке ПО — не стесняйтесь, обращайтесь :)