Русский
Русский
English
Статистика
Реклама

Блог компании город иннополис

История про то, как из студенческого геймдев-клуба выросла компания по разработке игр

24.07.2020 20:08:25 | Автор: admin

Привет, меня зовут Антон Скударнов, мне 23 года. В этом году закончил Университет Иннополис, параллельно с учёбой руководил студенческим геймдев-клубом и разрабатывал игры. В статье хочу рассказать, как студенческое увлечение играми переросло в свою компанию.



Я родился и вырос в Казахстане, где после девятого класса поступил в колледж на техника-программиста. Программированию там особо не учли, поэтому отчислился спустя два года и решил поступить в российский вуз. Для этого пришлось окончить вечернюю школу, чтобы завершить начальное образование. Выбрал новосибирский СибГУТИ, но через год сменил его на факультет компьютерных и инженерных наук Университета Иннополис, где и закончил бакалавриат.


В Университет Иннополис попал случайно, увидев рекламу в паблике Типичный программист. Решил посмотреть, заполнил заявку, и мне позвонили из департамента привлечения абитуриентов. На тот момент не хотелось терять год учёбы в Новосибирске, но на отборы всё-таки поехал. Предложил своей девушке посмотреть на Иннополис вживую, а там уже решить. С тех пор всем говорю, что о своём решении потерять год ни разу не пожалел.



В Университете


Зарождение студенческого клуба


В Иннополисе сложно не попасть в тусовку по интересам. Сейчас в Университете более 40 студенческих клубов активных и не очень. В 2016 году, когда мы поступили, в геймдев клубе было 5-6 человек. Ребята периодически собирались и пилили свои проекты, сидя в аудитории. Это была интересная тусовка людей с общими интересами, но хотелось чего-то больше.


Набравшись немного организационного и управленческого опыта, я и мой товарищ Егор решили открыть свой студенческий клуб по разработке игр. Мы гордо называли себя инди-разработчикам, поэтому, долго не думая, назвались Indie GameDev Club.


Главную цель клуба мы сформулировали как развитие геймдев индустрии в Иннополисе, России, да и в мире в целом. Амбициозно для второкурсников, но высокая планка помогала двигаться вперёд. Для себя мы видели этот путь через образовательный процесс, так как ощущали нехватку геймдев-программ в вузах и на различных курсах. Мысль открыть свою студию пришла позже, можно сказать, это стала логичным продолжением деятельности клуба. На тот момент коммерческих проектов даже не было на горизонте, каждую неделю мы собирались в аудитории, выступали с докладами и пилили свои игры.


Развитие сообщества и первые проекты


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


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


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



Первые концепты игр в рамках геймдев-клуба


На полную мощность наш подход заработал в 2019 году, когда мы сформировали шесть команд для производства гипер-казуальных игр. Обычно гипер-казуальные проекты делаются неделю-две, но в нашем случае мы дали ребятам (в основном первокурсникам) четыре месяца. Заранее был готов лекционный материал, сформирован план проекта, назначены тимлиды команд. В процессе разработки были майлстоуны с презентациями проектов, в том числе на ярмарке студенческих клубов Университета Club Fest. В качестве финального задания был сабмит проекта на конференцию DevGAMM Minsk 2019. Два наших проекта прошли на шоукейс это был невероятный заряд мотивации.


Кроме работы над проектами мы продолжали развивать сообщество и знакомиться с представителями индустрии. Организовали несколько мероприятий для популяризации геймдева: IGD MeetUp, Global Game Jam, конференцию IGD Con.


Создание компании


Делать игры хорошо, готовить кадры ещё лучше, а где работать? В Иннополисе не было геймдев-компаний, мы решили этот вопрос просто открыли свой стартап Indie GameDev Club.


Чтобы максимально быстро выйти на самоокупаемость и не зависеть от внешних инвестиций, решили сфокусироваться на том, что делали лучше всего гипер-казуальных играх. Первую команду сформировали из выпускников геймдев-клуба, которые отлично показали себя в работе над студенческими проектами.


На старте важно иметь право на ошибку. Нам очень помогло, что не нужно было зарабатывать с первых же проектов. Главное пройти полный цикл разработки коммерческого проекта, это заняло по месяцу на каждый продукт. Спустя два месяца мы нащупали правильный ритм, и срок разработки концептов сократился до двух недель. Но эти проекты всё ещё не приносили дохода.


Сейчас мы меняем фокус в сторону на аутсорс заказов. Ищем клиентов в профильных чатах, работаем со сформированной базой. Параллельно делаем прототипы для издателей это приносит небольшой доход.


Вопреки частому заблуждению открыть компанию не так сложно, сложнее её поддерживать. Для регистрации ООО нужно примерно 30-50 тысяч рублей, включая уставной капитал. Сейчас минимальный уставной капитал 10 000 рублей, но юристы рекомендуют делать его немного больше, чтобы налоговая не воспринимала вас как фирму-однодневку. Из дополнительных трат: госпошлины, консультации юристов, бухгалтерия на первое время. Мы выбрали ООО, а не ИП как минимум из-за нескольких учредителей.


Для нас большим плюсом было сотрудничество с ОЭЗ Иннополис. После того как мы прошли экспертную комиссию Университета, нам выдали гарантийное письмо для регистрации юридического лица. Благодаря участию в стартап-студии Университета мы получили льготы на аренду коворкинга и офиса. Это не считая полезных знакомств и помощи в организации IGD Con.



Геймплей игры Juicy Edge


Формирование команды


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


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


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


Нашей опорой стал Университет это сообщество и постоянный поток новых сотрудников. У нас есть возможность обучать и формировать независимые команды, которые смогут делать успешные проекты. Как пример, этим летом мы взяли на стажировку более 50 человек, сформировали из них 10 команд. Некоторые делали PC-проекты, чтобы наработать первый опыт, а остальные гипер-казуальные мобилки. В итоге три команды сработались и продолжают свои проекты. Две из них уже подключились к нашему основному процессу разработки на аутсорс.



Победили на соревнованиях студенческих клубов


Конкуренция в геймдеве


Многие спрашивают мол, рынок переполнен, очень тяжело добиться успеха при такой конкуренции. И да, и нет. Геймдев это творческая среда, где успешный проект может разработать один человек, а ААА международной студии с треском провалиться. Это международный бизнес, поэтому здесь нет региональных конкурентов. Конкуренция есть в каком-то конкретном жанре, например, как Match-3: Playrix с Homescapes и King с Sugar Saga. Но это киты индустрии, у них совершенно другие задачи.


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


Вместо заключения


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


Также не нужно бояться начинать новое. Если бы я остался в Новосибирске, то не попал бы в геймдев клуб. А если не бросил колледж, возможно, не научился бы программировать и не увлёкся разработкой игр. У каждого есть шанс повторить успех создателя Stardew Valley, который 5 лет жил за счёт своей девушки, а потом заработал более 16 млн долларов. Готовы так рискнуть?

Подробнее..

Как мы Neuralink рецензировали

25.09.2020 16:06:58 | Автор: admin
В конце августа Илон Маск провел вторую презентацию технологии Neuralink нейроинтерфейса для считывания мозговой активности. Первую версию устройства Макс представил в июле 2019. Тогда редакция журнала J Med Internet Res обратилась за рецензией к ученым из Лаборатории нейронауки и когнитивных технологий Университета Иннополис. Александр Писарчик, Владимир Максименко и Александр Храмов дали экспертные комментарии на новый способ вживления электродов в головной мозг. В этой статье сотрудники университета разбирают новую технологию Маска.



Свой комментарий на технологию Neuralink мы опубликовали в октябре 2019 года. По сравнению с прошлогодней презентацией изменился внешний вид устройства теперь это миниатюрная круглая таблетка размером с монету и язычком из связки электродов, которых, кстати, стало меньше. Изначально было заявлено 3072 электрода, теперь осталось 1024.

Можно предположить, что изменение количества электродов связано с задачами устройства. Прибор нацелен на распознавание конкретной активности мозга. В презентации показали, как с его помощью считывается двигательная активность. Для этой задачи чип должен быть имплантирован в моторную кору. Это небольшая область и 1000 электродов, скорее всего, достаточно.

Если мы захотим решить другую задачу стимулировать зрительные или аудиальные центры, то необходимо имплантировать чип в другие области мозга. Более того, чтобы контролировать сложную когнитивную активность, электроды должны покрывать несколько областей одновременно. Тут уже вопрос не в количестве электродов, а безопасности такой операции.

Появились и новые фишки. На вопрос журналистов можно ли будет с помощью Neuralink управлять Tesla, Макс ответил положительно, добавив, что все чувства: зрение, слух, осязание это электрические сигналы, которые отправляются нейронами в мозг. Учитывая сказанное, можно предположить, что технология применима для управления умным домом и интернетом вещей. Также в презентации говорилось, что чип может транслировать музыку и работать с различными устройствами по Bluetooth-соединению, а для управления Neuralink будет разработано мобильное приложение. Маск сравнил новый прототип с фитнес-браслетов Fitbit только с маленькими проводами в черепе.

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


Прототип устройства год назад и сейчас

Чем перспективен проекта Маска


Идея Neuralink основана на интерфейсе мозг компьютер. Термин интерфейс мозг компьютер (ИМК) появился в начале 1970-х годов, а первые попытки исследовать нейронную активность на обезьянах проводились уже в 1960-х. Сегодня работа в этом направлении перспективна для реабилитации при нарушениях двигательных функций.

Neuralink позволяет применять инвазивный метод следующего поколения. Устройство содержит до 1024 электродов, распределенных по десяткам нитей, с помощью которых подключается к мозгу. Чтобы преодолеть хирургическое ограничение, разработчики создали нейрохирургического робота, который вводит до шести нитей в минуту с точностью до микрометра.

Технология может служить прототипом инвазивного нейроинтерфейса для клинических приложений. Многоэлектродные нейроинтерфейсы могут стать основой для новых технологий и медицинских решений для парализованных людей. Развитие технологии позволит взаимодействовать с внешней средой без ограничений благодаря интеграции в умный дом и интернет вещей.

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


Нити устройства взаимодействуют с мозгом

ИМК перспективны для обнаружения скрытой информации о работе мозга, которую невозможно получить с помощью обычных каналов связи. Использование неинвазивных ИМК ограничено небольшим количеством распознаваемых команд. Это ограничение возникает из-за зашумленности и нестационарности неинвазивных записей электроэнцефалографии или спектроскопии в ближнем инфракрасном диапазоне.

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

Как с помощью инвазивного подхода предсказывать приступы эпилепсии


Для нас технология Маска интересна в том числе с точки зрения собственных разработок. В Лаборатории нейронауки и когнитивных технологий мы работаем над проектом по предупреждению приступов эпилепсии.

Мы разработали ИМК, который при помощи трех электродов, вживленных в мозг крысы, позволяет предсказывать эпилептические приступы с точностью до 90%. Однако, существуют проблемы, связанные с большим числом ложных предсказаний. Если говорить о системе предотвращения приступа при помощи электрической стимуляции, то ложные предсказания приводят к большому числу ненужных стимуляций. В нашем интерфейсе удалось свести к минимуму число ложных предсказаний, но точность предсказания приступа снизилась до 50%.


Подробнее про разработки Университета Иннополис в области предупреждения приступов эпилепсии

Neuralink расширяет возможности для считывания сигналов мозговой активности. Скорее всего, использование 1000 каналов вместо трех, позволит значительно повысить точность предсказаний приступа эпилепсии и уменьшить количество ложных предсказаний.

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

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

Незаменимый робот-хирург


Еще в первой презентации прошлым летом Маск показал прототип нейрохирургического робота для установки импланта. Это очень важное преимущество, потому что ИМК не применяется в клинической практике в том числе из-за хирургических трудностей и проблем биосовместимости. Робот-хирург очень быстрый устанавливает до шести электродов в минуту. Команда Neuralink ставит задачу сократить время установки импланта до часа, а операцию проводить под местной анестезией, чтобы отправлять пациента домой в тот же день.

По идее разработчиков проблему биосовместимости решит использование биосовместимого полиимида с тонкой пленкой золота. При выборе материалов нужно учитывать импеданс и биосовместимость. Команда Neuralink протестировала полимер допированный полиэтилендиокситиофеном с полистиролсульфонатом и оксидом иридия. В результате достигли более низкого импеданса для первого, но лучшей биосовместимости для второго. Разработчики обещают продолжить исследования в этом направлении и проверить гипотезы на других типах проводящих электродных материалах и покрытиях.


Робот-хирург Neuralink

Наши вопросы к Neuralink


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

Если данный функционал будет реализован, то это решит ещё одну важную задачу в области ИМК, возможность подстройки нейронной активности непрерывно. Например, при предотвращении эпилептического приступа путем электрической стимуляции появится возможность контролировать эффективность этого процесса. Можно будет подбирать оптимальную интенсивность стимуляции, чтобы предотвратить приступ, и при этом минимизировать негативное влияние на мозг.

Если заглянуть далеко вперед, то среди нежелательных эффектов ИМК с электродами, имплантированными в мозг человека, можно отметить потенциальную возможность контролировать и манипулировать поведением человека не только через средства массовой информации, но и напрямую посылать команды в мозг. Это предъявляет повышенные требования к шифрованию и защите данных и протоколов, использующихся в ИМК. Сейчас это кажется фантастикой, но в будущем этот вопрос обязательно возникнет.

По поводу этичности таких методов ведутся многочисленные дискуссии. Интересно, как в итоге будет сформулирована общественная позиция на этот счет. Захочет ли большинство добровольно устанавливать нейроимпланты? Напишите в комментариях, что думаете по этому поводу, согласились бы на такое, чтобы силой мысли найти Tesla на парковке или включить свет в квартире?
Подробнее..

Бесплатная тусовка на онлайн-даче и долгожданный офлайн. Новая конференция от Иннополиса для мобильных разработчиков

24.05.2021 12:21:25 | Автор: admin

Если вы регулярно читаете Хабр, то вам попадались статьи в духе: бросайте всё и начинайте изучать Swift, Kotlin или Flutter прямо сейчас. Давайте разбираться, правда ли стоит переобуваться в мобильного разработчика. Мы попросили спикеров, программный комитет и разработчиков взглянуть на сферу мобильной разработки с разных ракурсов и приоткрыть завесу тайны грядущей конференции Мир. Труд. Мобайл. В конце приятный бонус для читателей Хабра и подробности программы.

Мобильная разработка актуальна. Это факт

В отчёте State of Mobile 2021 говорится, что рынок мобильных приложении и игр вырос на 30% за 2020 год пользователи потратили на них рекордные $111 млрд. Пандемия и изоляция внесли свой вклад.

Про начинку современных смартфонов не приходится говорить. Фотографируют лучше стареньких Кэнон, по производительности и возможностям потягаются с простенькими ноутбуками.

Вспоминаются времена, когда все хотели мобильное приложение как манну небесную. Учитывая, что за последний год среднее время просиживания в телефоне на платформе Android составило 4 часа ежедневно, спрос на приложения будет только расти.

В сторах можно найти приложение на любой случай жизни. Что говорить, когда даже у автомата по розливу воды у дома в спальном районе (за 3 /литр) есть мобильное приложение для онлайн-оплаты. Кажется, мобильщики выбрали как девиз любая идея достойна мобильного приложения! Почему? Отчасти потому что новые технологии упростили и шаблонизировали разработку.

Отчёт State of Mobile 2021 Отчёт State of Mobile 2021

Про изменения в подходах к разработке мы спросили Фёдора Цымбала из Orion Innovations. Он выступит с докладом: Android Automotive. Не путать с Android Auto.

Новые технологии бывают разные. В основном упрощается решение типовых задач. Нужно помнить, что некоторые фреймворки намеренно усложняют жизнь разработчику. Заставляют думать об аспектах, которые раньше можно было игнорировать. Например, работа с Permissions, как мне кажется, усложняется в каждой новой версии Android. Но это связано с желанием Google защитить персональные данные пользователя. Так что не всегда усложнение это плохо.

В плане UI-фреймворков сейчас очень популярен Flutter. Но Jetpack Compose вполне может его потеснить. Стоит выбрать что-то одно из этих двух опций.

Заметен уход с мобилок на другие устройства: часы, телевизоры, автомобили. Android на этих устройствах сейчас активно развивается. По моему мнению, это тоже очень интересная тема. Про Android Automotive я и буду рассказывать: Google Automotive Services, Driver Distraction Guidelines, Garage Mode и об интеграции Android с подсистемами автомобиля, такими как камера заднего вида, климат контроль или поворотники.

Павел Стрельченко из hh.ru занимается Android-разработкой с 2015 года, поэтому успел застать разработку под Android 4, первую версию Android Studio, жизнь без Jetpack, Architecture Components и Kotlin. Павел выступит с темой: Укрощая фиче-флаги. Разберем проблемы постоянных merge-конфликтов, сбора флагов в один-единственный список.

Инструменты совершенствуются, почти на любой запрос можно найти готовые библиотеки, нерешённых архитектурных вопросов стало меньше. То, что раньше писали за месяц, сегодня пишут за неделю.

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

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

Тем, кто только начинает свой путь в увлекательный мир Android, я всегда рекомендую одно и тоже посмотреть лекции Android Academy. Мои коллеги по Android-у проделали потрясающую работу, собрав в один бесплатный курс всё необходимое для успешного старта в профессии.

Все спикеры

Evelio Tarazona Cceres
Instagram / Facebook

Server Driven Cross-Platform UI/Features/Apps. At Instagram we leverage Server Driven UI approach to build once/iterate quickly and ship features to billions of users on Android/iOS and the web.

Федор Цымбал
Orion Innovations

Android Automotive. Не путать с Android Auto. Google Automotive Services, Driver Distraction Guidelines, Garage Mode и об интеграции Android с подсистемами автомобиля, такими как камера заднего вида, климат контроль или поворотники.

Ольга Сартакова
Redmadrobot

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

Евгений Ртищев
Sberbank

Оптимизируем процессы разработки и параметры приложения.

Андрей Малеваник
Нетологиия

Красота или функциональность. Должен ли интерфейс быть красивым?

Павел Стрельченко
hh.ru

Укрощая фиче-флаги. Разберем проблемы постоянных merge-конфликтов, сбора флагов в один-единственный список.

Екатерина Петрова
JetBrains

State of Kotlin Multiplatform Mobile. О том, что поменялось в экосистеме KMM с момента большого релиза, о трендах и планах развития.

Александр Аверин
adVentures, Mail.ru

История перезапуска музыкального приложения BOOM глазами дизайнера.

Александр Гращенков
RoadAR

Почему тормозит iPhone. От базового уровня перевода задач в бэкграунд, до ускорения отрисовки с помощью Metal.

Михаил Никипелов
Distillery

Пиктограммы 80-го уровня. Про подбор идей и отсекание лишнего: как при работе с библиотеками, так и при отрисовке своих иконок.

Дмитрий Мельников
EventSheep (ех-Yandex, ех-Mail.ru)

Как мобильному разработчику сделать стартап без команды. MVP или прототип целого проекта с сервером и фронтендом.

Андрей Чевозеров
Банк ВТБ

SwiftUI в production. Как и зачем?

Антон Назаров
Crisalix

RxSwift vc Combine. О личном опыте миграции с RxSwift на Combine, какие подводные камни есть, как облегчить процесс.

Александр Денисов
EPAM

Так ли страшен Null, как его малюют? О том, что такое Null Safety, чем она может помочь в разработке, какие сложности могут ждать при миграции и чем реализация в Dart похожа, а чем отлична от Kotlin и Swift реализации.

Антон Шилов
Badoo

Воркшоп по анимациям на Jetpack Compose. Разберем основные API и инструменты для работы с анимациями от простого к сложному.

Мария Кирдун
EPAM

Искусство коммуникаций, или как творчеству выжить в IT. Игры на коммуникацию на реальных примерах,

Евгений Сатуров
Surf

Типы модульных тестов на Flutter. О том, как писать код на Flutter, чтобы его можно было протестировать.

Павел Горшков
экс-Redmadrobot, экс-Яндекс

Что придет на смену мобильным приложениям? Мобильная эра, специфика мобильных устройств, эволюция цифровых сервисов.

Сергей Акентьев
Кошелёк

CI на Apple M1. Жутко больно и запредельно быстро. Как работать с кластером MacMini на M1 и почему мы оказались в Дата-центре? Проблемы архитектуры arm64, билды под Apple Rosetta 2, как бороться с софтом Apple и стоит ли оно того?

Алексей Бородкин
Магнит

Рок-н-ролл среди людей в галстуках: как делать классные приложения в большой корпорации. Вам это пригодится, даже если вы не работаете в большой корпорации.

Александр Соболь
МегаФон

Многопроцессная разработка Android приложений взгляд на микросервисную архитектуру.

Приложение остаётся способом реализовать большую идею малыми силами

Мобильное приложение по-прежнему отличный вариант для старта своего продукта с небольшой затратой ресурсов. Самый сладкий и большой кусок пирога мобильные игры. Пользователи потратили на них в 2020 году $143 млрд. Доля мобильных игр в магазинах приложений в 2021 году вырастет до 20%.

Про технологии, рынок, зарплаты и перспективы вроде понятно. Вопрос сколько стоит реализовать свою идею.

Приложения комбинируют механики. Афиша DVIZZ реализована в виде свайпов мероприятийПриложения комбинируют механики. Афиша DVIZZ реализована в виде свайпов мероприятий

Резиденты Иннополиса работают над приложением DVIZZ, которое объединяет афишу городских событий и создание встреч, чтобы познакомиться с новыми людьми и хорошо провести время. Придумать новую идею становится сложнее, уже практически всё реализовано. Поэтому новые приложения активно комбинируют функции. Стремление в сторону супераппов с замкнутой экосистемой как тренд не только для IT-гигантов.

Основатель DVIZZ Михаил Иванов рассказывает, что потратил 500 000 на разработку и 3 млн на зарплаты за полгода после запуска.

Сейчас на операционные расходы уходит около 10 000 в месяц. Но это ещё не всё, потому что самое сложное продвижение. На анализ, стратегию, маркетинг, таргетинг потратили 300 000 . Уже удалось снизить стоимость установки до приятных цифр, но начальный этап действительно самый сложный.

Приложением я решаю личную проблему, а таких как я много. Нет площадок для ивентов, где каждый может рассказать про свои планы на выходные и позвать знакомых, например, как в инсте. Можно сказать, что DVIZZ Инстаграм для ивентов. В ленте можно выбрать мероприятие и купить билет, присоединиться ко встрече пользователей или создать свою.

У нас есть три стратегии монетизации: реклама больших ивентов в афише, платные мероприятия или мастер-классы больше 10 человек и доступ в бизнес-кабинет владельцев площадок для аренды, например, теннисного корта или лектория прямо из приложения. Уже понемногу зарабатываем, планируем запускать в Москве. Окупиться планируем через год.

Что будет на Мир. Труд. Мобайл

Два формата: бесплатный онлайн и офлайн на цифровой даче в Иннополисе. Всего будет 5 больших хабов:

  • Android;

  • iOS;

  • Кроссплатформа;

  • Дизайн;

  • Софтскилы.

Офлайн

Специальная программа для 200 офлайн-участников: закрытые лекции и воркшопы, дачный нетворкинг (песни под гитару у диджитал-костра), тестирование беспилотного такси, афтепати. Спикеры будут читать доклады на грядках, веранде, солнцепёке и даже на чердаке.

Ждём в гости!Ждём в гости!

Онлайн

По недавнему опыту IT Nights мы убедились, что очень важно экспериментировать с подачей и не бояться свежих решений в довольно консервативном жанре конференций. Поэтому в этот раз поднимаем планку и скрещиваем офлайн и онлайн. В офлайне будет немного больше приколов (уж извините), но онлайн точно не останется серой мышью в виде прямого эфира. Уже доступна удобная платформа: прямой эфир, опросы и голосования, беседка-клабхаус со спикерами на холиварные темы после доклада и дачный шопинг на виртуальном базаре.

Зарегистрироваться на онлайн сейчас стоит хотя бы потому, что после конференции доступ к докладам будет платным.

Увидимся на Мир. Труд. Мобайл.

27 мая

Скидка на офлайн 25% для читателей Хабра по промокоду habr

Мобайл редьки слаще!

Подробнее..

Recovery mode Последняя программа. Веб-сериал про искусственный интеллект

16.06.2020 10:18:24 | Автор: admin

Хотим посоветовать инди-сериал на вечер, совмещающий антиутопию Чёрного зеркала и юмор Кремниевой долины в декорациях Иннополиса.



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


Бро, креатив это, конечно, круто, но ты вряд ли захочешь, чтобы хирург креативно вырезал тебе аппендицит. У тебя простая таска, сделай её просто.


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


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


Для авторов сериала это дебют в крупной форме. Если соединить все восемь серий, то получается вполне цельный фильм. Сюжет разгоняется неспешно, но затягивает. Чем дальше, тем любопытнее узнать развязку. Над проектом работала небольшая команда, но картинка и продакшн не уступает многим телевизионным продуктам, а в рамках Ютуба выглядит на уровне топовых шоу.


Сериал сняли за 23 дня, полностью производство заняло около года. Пять месяцев писали сценарий, ещё четыре ушло на постпродакшн. Сценарист Тимофей Шарагин рассказывал, что 1,5 месяца читал научные статьи и смотрел выступления с Асиломарской конференции 2017, чтобы показать обучение и развитие ИИ максимально реалистично.


Технический бэкграунд авторов чувствуется и в шутках, понятных только айтишникам: Нейронные сети не моя тема, я до сих пор ссылочные типы от значимых не отличаю. Создатели сериала учились на ВМК КФУ. В университете создали творческую студию Громкие рыбы. Символично, что самый популярный ролик на их канале тоже про IT клип Все любят программистов.



Образы для персонажей искали среди известных IT-деятелей. Одним из референсов для актёрской игры Вождя карикатурного руководителя стартапа был создатель Linux Линус Торвальдс.


Дополнительные пасхалки спрятаны в деталях. Для анимации ИИ, которую герои видят на большом метафоричном экране, использовались тона мадженты единственного синтетического цвета. Этот же цвет Google выбрал для названия своего проекта про машинное обучение и творчество Magenta.


Открывающая сцена показывает обычную ситуацию в офисе кто-то не помыл кружку с уже заплесневевшим чаем. С одной стороны, это просто повод для шутки, а с другой образ зарождения новой жизни. Эта мысль прослеживается и в анимации ИИ. Задачу для 3D-художника формулировали через чашку Петри, где развиваются и переплетаются бактерии.


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


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


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

Подробнее..

Как мы делали дрон, который не боится упасть, и что общего между архитектурой, роботом-манипулятором и коптером

19.08.2020 18:13:30 | Автор: admin
У нас было десять разбитых дронов за год, тестовые полеты два раза в день, три кандидата технических наук в команде, прототип из палочек для суши и желание найти способ больше не бить дроны.

Очень спорно, очень необычно, очень странно, но работает! На стыке архитектуры, коллаборативной робототехники и беспилотных летательных аппаратов. Представляем: Tensodrone.



Tensodrone (Тенсодрон) беспилотный летательный аппарат (БПЛА) мультироторного типа новой конструкции с защитой от столкновений, сделанный по принципу тенсегрити. Такой подход позволяет повысить устойчивость к ударам при меньшей массе, совместив защитную клетку и конструкцию несущей рамы.

Проект является ярким примером взаимодействия различных команд Центра компетенций НТИ по направлению Технологии компонентов робототехники и мехатроники на базе Университета Иннополис.

Дроны падают



Источник

Просто потому что летают. Системы управления, моторы, датчики, автопилоты, бортовые компьютеры и софт все это разработчики стараются делать как можно надежнее, но риск разбить коптер остается. А если это опытный образец, то сразу нужно изготавливать несколько (штук или десятков?) для отладки. Кроме внутренних факторов, очевидно, остаются и внешние: ветер, пассивные препятствия, активное воздействие.

Вряд ли кто-то будет спорить, дроны падают, сталкиваются, переворачиваются.
Можно стараться этого избегать, можно к этому подготовиться. Что лучше? Решать разработчику, пользователю и законодателю.

Я за совместное применение обоих подходов. Но в этой статье сконцентрируемся на том, как избежать последствий падения или столкновения БПЛА.

Защитные конструкции


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

Базовый вариант конструкции, относящейся скорее к защите людей от дрона, защита пропеллера.


Дрон AR.Drone 2.0 с защитой пропеллеров. Источник

Есть еще забавные решения, вдохновленные оригами, со складными гибкими конструкциями защиты пропеллеров (и даже конструкции рамы), развитие которым дала группа профессора Дарио Флореано в EPFL.

Превалирующей конструкцией защиты самого дрона (а вместе с тем и людей от него) является защитная клетка. Сам квадрокоптер находится внутри клетки.


Дрон Clover от российской COEX

Российская компания COEX делает дроны для учебных целей, которые по умолчанию имеют защиту пропеллеров, а опционально защитную клетку.


Дрон Flyability ELIOS

Швейцарская (Швейцария столица дроностроения?) компания Flyability выпускает, пожалуй, самый коммерчески успешный коптер ELIOS с защитной клеткой для выполнения инспекций внутри помещений. Оригинальность конструкции состоит в креплении защитной клетки к раме коптера на подвижном подвесе с возможностью стабилизации.


Дрон Dronistics

Стартап Dronistics из EPFL (опять Швейцария, это выходцы из группы Dario Floreano) предлагает дрон со складной клеткой для безопасной доставки грузов.

Все-таки разбиваются


Недостатком таких дронов является увеличение массы конструкции нужно носить с собой защитную клетку и элементы крепления к БПЛА. Стремление снизить массу защитной конструкции приводит к снижению ее прочности.

Дроны с изменяемой геометрией


Другое направление, связанное с идеей защищенного дрона (и не только), складные дроны и дроны с изменяемой геометрией (foldable и morphing). Имеется ввиду способность дрона изменять свою геометрию в полете. Складные конструкции делают для того, чтобы избежать повреждений дрона (например, дрон может съежиться перед ударом), а также дрон может, например, сложиться до компактного размера для пролета в узкие окна.

Возможно, вы видели крутой ролик с дроном с изменяемой геометрией из Швейцарии (да-да, снова ETH + EPFL + UZH). Нам эта идея тоже интересна и близка, дальше расскажу почему.


Дрон с изменяемой геометрией

Тенсегрити



Тенсегрити-стол. Источник

Тенсегрити способность каркасных конструкций использовать взаимодействия работающих на сжатие цельных элементов с работающими на растяжение составными элементами для того, чтобы каждый элемент действовал с максимальной эффективностью и экономичностью (Вики). Термин относительно новый, появился в 1960-х годах. Стол на картинке выше стоит (или висит) не имея ножек как раз за счет принципа тенсегрити.

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


Самый большой в мире мост, выполненный в стиле тенсегрити, Австралия. Источник

Альтернативные применения :)

Тенсегрити в робототехнике


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

В промышленной робототехнике термин compliance относится к гибкости и податливости. Неподатливый (non-compliant), жесткий (stiff) робот это устройство, которое работает независимо от того, какие внешние силы на него воздействуют. Энд-эффектор робота будет каждый раз следовать точно по одной и той же траектории. С другой стороны, энд-эффектор податливого робота может двигаться по различным траекториям для выполнения задачи и прилагать различные усилия к объекту. Например, робот может схватить яйцо, не раздавив его. Управляемая жесткость лежит в основе коллаборативной робототехники.

Идеи применения тенсегрити в робототехнике идут как раз из коллаборативной и мягкой (soft) робототехники. Тенсегрити структуры легкие, ударопрочные и дают возможность контролировать их жесткость (податливость) и конфигурацию (форму).

Наиболее известным примером применения тенсегрити в робототехнике является складной наземный робот NASA Super Ball Bot, который планировали использовать для исследования поверхностей планет. Благодаря сфероподобной структуре из кабелей и тросов робот может выдержать падение с большой высоты, когда его сбрасывают на планету с космического корабля. Оказавшись на поверхности, робот может перекатываться в любом направлении за счет управления длинами стержней.


Видео IEEE Spectrum о NASA SUPERball v2

Тенсегрити-роботы в Университете Иннополис


В УИ мы разрабатываем математический аппарат для моделирования, проектирования и управления робототехническими системами с напряженно-связанными структурами с переменной жесткостью (это и есть тенсегрити). Это фундаментальная работа, применение которой можно найти в самых разных роботах, например, тенсегрити-манипуляторах или шагающих роботах.


Тенсегрити-манипулятор и научный сотрудник и аспирант УИ Олег Балахнов

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

Тенсегрити-виброробот

Тенсегрити-виброробот

Синергетический эффект



Вы, наверное, уже поняли
I have a drone, I have tensegrity. Ugh! (Tensodrone)

Проходил я как-то в нашем гараже мимо привлекающей глаз странной конструкции:



Спросил: Что это такое? Мне сказали: неубиваемая конструкция роняй, а она не ломается.

Я сломал (на самом деле просто скукожил изменил форму, потому что резинки были плохо закреплены и сместились). Но такая конструкция нам для дронов нужна! И мы начали авантюрный эксперимент.


Видео с тестом тенсегрити на выживаемость

Более жесткий тест

Squishy robotics стартап, который делает тенсегрити-роботов для спасательных операций в случае стихийных бедствий, дистанционного мониторинга и космических исследований, и сбрасывает их с коптера


Авантюра



Сергей одобряет авантюрный эксперимент. Джефф Безос тоже

Сергей Савин старший научный сотрудник, доцент, серьезный ученый с кандидатской в 25 лет и множеством рейтинговых публикаций. Он один из отцов-основателей тенсегрити-робототехники в УИ, получил несколько грантов на развитие тенсегрити в робототехнике.

Игорь обдумывает идею


Дмитрий, Олег и Хэни собирают первого тенcодрона (что-то напоминает). Дмитрий Девитт GigaFlopsis научный сотрудник и аспирант Университета и тот, кто применил самые современные технологии карбоновые трубки и кевларовые нити, 3D-печать карбоном и мягким пластиком, все реализовал и заставил летать.


Процесс работы по сборке тенсодрона


Ура. получилось!

Летает!


Еще Дмитрий первый актер после тенсодрона в эпичных роликах его полетов. Оцените:


Игра двух актеров в ролях самих себя. Video by DeluuusiOn

Подробнее про конструкцию прототипа


Конструкция первого прототипа дрона получилась такая:


Конструкция прототипа тенсодрона Университета Иннополис

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

Бортовая электроника и электромеханические компоненты прототипа дрона включают в себя:

  • Автопилот CUAV Pixhawk v5 mini;
  • Аккумулятор 3s 1400 мАч;
  • Регулятор Racerstar REV35 35A BLheliS 3-6S ESC;
  • Моторы Racerstar Racing Edition BR2205 2300KV;
  • IMU сенсоры MPU9250.

Тросы сделаны из кевларового волокна с изготовленными на заказ пружинами. Стержни изготовлены из карбоновых трубок. Торцевые колпачки и другие мелкие детали напечатаны на 3D-принтере.

Проблемы управления


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


Ранние тесты тенсодрона на подвесе: вибрации (извините за вертикальное видео)


Ранние тесты тенсодрона в полете: вибрации

Мы не одиноки
Оказывается, у нас был конкурент.

Еще в начале (почти год назад), когда мы делали прототип, мы нашли это видео от ребят из Imperial College London:


Авторы пришли к той же идее, что и мы: применение тенсегрити для дронов это интересно.
Т.к. никаких подробностей по конструкции и, тем более, прототипа представлено не было, свои работы мы продолжили.
Уже потом, когда у нас был летающий образец, мы получили отчет той же группы:


Отчет Hayden Cotgrove, Christopher Turner, Zachary Yamaoka Tensegrity Drones. Ссылка уже не работает

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

Возвращаемся к проблемам управления и вибрации. Вот, что написано в отчете Hayden Cotgrove, Christopher Turner, Zachary Yamaoka:

Results
The drone was able to hover for short periods, thus proving that it is possible for tensegrity drones to fly. However, the propellers struggled to lift the drone for a couple of reasons:

  • The tensegrity structure was much heavier than the corresponding rigid structure as it made mostly from thick MDF, rather than thin carbon-fibre
  • The tensegrity structure vibrated a lot as the outside structure was not stiff enough, despite the motors being held on one rigid plane
  • The payload also vibrated too much, occasionally colliding the propellers


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


Падение на пол с последующим взлетом, в помещении (без монтажа)

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


Падение на ступеньки (и все ок)


Тест автоматического полета по миссии на улице


Демо полета в помещении с ударом об стену


Что дальше?


Ресерч


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

Применение


Сейчас эта штука летает сама по заданной миссии (в том числе по GPS на улице, а в помещении будем использовать визуальную одометрию). Для нас очевидно дальнейшее применение для инспекции помещений.

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


Пример выполнения автоматической инспекции. Магистерский проект Виктора (Victor Massague), нашего выпускника и в ближайшем будущем, надеюсь, сотрудника из Барселоны

И снова ресерч


Потенциал конструкции тенсегрити-дрона гораздо больше простого дрона.
Помните Foldable Drone из видео выше? А SUPERball?

Так вот, если активно изменять длины стержней или натяжения тросов тенсегрити-дрона, можно управлять его конфигурацией (или, проще говоря, формой)!

Получается Foldable Morphing Tensodrone. Активно ведем исследования в этой области.


Тенсодрон с изменяемой в полете геометрией Университета Иннополис (концепт)



Применение тенсегрити для летательного аппарата открывает новые исследовательские задачи. Прототип конструкции уже сейчас показывает, что идея работает и её можно применять для защиты БПЛА.
Подробнее..

Приглашаем на Mobile Meetup Innopolis

30.06.2020 18:10:31 | Автор: admin


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


Все ли вы знаете об Android Jetpack?



Кирилл Розов, Mobile Lead, Replika / Android Broadcast


Android Jetpack развивается невероятными темпами и уже есть в любом современном Android-приложении. Сейчас сложно представить разработку без этого набора библиотек. Уследить за всеми новинками непросто, поэтому я сделаю обзор последнего API и будущего библиотеки AndroidX.


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


Приглашаю послушать доклад практикующих Android-разработчиков. Вы узнаете, как сделать интеграцию Dagger 2 c Fragment (без Hilt) и какие API из KTX представляют опасность для использования.


Шаблоны проектирования Server Driven UI



Никита Русин, Platform lead, БюроБюро


Расскажу про подход к проектированию и реализации максимально гибкого клиент-серверного протокола с фокусом на API и кейсах его использования. На проектах часто встречаются задачи создать формы платежей или экраны чеков. Подобные экраны с динамическим контентом и логикой невозможно адекватно реализовать без SD UI.


Тема наиболее актуальна в разработке мобильных и десктопных приложений из-за более сложного и растянутого процесса обновления пользователей. Но доклад будет полезен всем разработчикам обоих концов, как новичкам так и тем, у кого есть серьёзный опыт в проектировании API (для вдохновения или приятного чувства, что в интернете кто-то неправ).


Разберём:


  • Что такое Hypermedia API и Server Driven UI.
  • Каким образом при небольшой подготовке можно клепать 100500 информационных экранов в день, не меняя клиентский код.
  • Способы реализации SD UI на сервере и на клиенте вместе с простыми примерами на Python и Kotlin.
  • Как подготовиться к тому, чтобы на SD UI реализовывать целые пользовательские сценарии/новые разделы без изменений кода клиента.

Будут простые примеры без привязки к конкретной платформе и фреймворку. Так что не важно, каких животных и еду вы предпочитаете.





Вместе со зрителями обсуждать доклады будут модераторы Юрий Новак, ведущий системный аналитик в компании РТ Лабс (Иннополис) и Александр Симоненко, технический директор Технократии (Казань).


Начинаем 2 июля в 17:00


Регистрация напомним о встрече за пару часов


Ссылка на трансляцию


Телеграм-чат митапа


До встречи!

Подробнее..

Первое IT-шоу, которым рулишь ты, или как объединить знания и юмор в пяти тезисах

17.11.2020 10:12:56 | Автор: admin

Привет, Хабр! У нас намечается классная тусовка. Уверены, что за время пандемии и изоляции ты успел посетить несколько онлайн-конференций (или нет). Мы тоже. Чаще всего это выглядит как-то так: слева на экране спикер, справа слайды доклад на 40 минут и ответы на вопросы из чата.

Многие искали рецепт идеального онлайна, но не многие нашли. Нам тоже пришлось подумать, что делать с конференцией IT Nights, суть которой ночная образовательная тусовка в Иннополисе. Город в онлайн не засунешь, а вот если сделать шоу с трансляцией из города, подумали мы на встрече оргкомитета.

Никому не хотелось делать сто первую конференцию с докладами, кейсами и обсуждениями, где спикеры что-то рассказывают друг за другом в зуме. Хотелось драйва, веселья и экспериментов. Мы то знаем, что это просто большой стереотип про скучных, замкнутых айтишников без чувства юмора (да, он не для всех), а постоянные разговоры на птичьем языке про код и проекты умелая маскировка. Но от подобных разговоров и излишней серьезности порой тоже хочется отдохнуть, поэтому мы придумали новый формат в противовес классическим конференциям. 20 ноября устраиваем первое онлайн IT-шоу. Сейчас расскажем, что тебя ждет на IT Nights 2020 в пяти тезисах. И даже бонус для читателей Хабра приготовили.

Для справки

IT Nights первая ежегодная ночная конференция города Иннополис. В 2019 году к нам в гости приехали более 800 айтишников и провели с небольшими перерывами на сон 3 дня и 2 ночи. В этот раз вынужденно мигрируем в онлайн, чтобы устроить первое ночное IT-шоу.

Тезис первый: перевернуть все с ног на голову

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

И тут мы подумали: а что если объединить образовательный и развлекательный ютуб-форматы? Так появилась формула IT Nights:

Мы сделаем то, чего все боятся: объединим знания и юмор

Тезис второй: эксперименты и только эксперименты

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

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

Посмотрев на собранную программу, мы сделали второй вывод:

Для обычных докладов есть десятки конференций, для экспериментов IT Nights

Ночной дожор

Готовим бутерброды вместе со спикерами по их фирменному рецепту и слушаем факап-сторис, заедая стресс.

ASMR-новости индустрии

В интимной обстановке ведущие зачитывают новости индустрии. Особенно оценят аудиофилы и любители ASMR.

Не будь, а будь!

Эксперт из Skillbox и айтишник спорят о необходимости soft skills и делятся рабочими инсайтами.

Лига айти шуток

Два спикера по очереди зачитывают друг другу провокационные шутки, которые поймут только айтишники. Победит тот, кто будет больше хохотать (серьезных мы не любим).

Кто хочет стать аитишником?

Опытные айтишники поделятся с джунами секретами: пилить свой стартап или работать в корпорации, профессиональные тренды в США и России, почему HR-мир так жесток к джунам.

Рукодел

Спикеры повторяют известные лаифхаки. Тем, кто не смог выполнить лаифхак, назначается наказание, которое придумают зрители.

Шокирующая лекция

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

Твоя лекция наши правила

Модныи приговор прямо во время лекции. Ты решишь, какие сценические образы примерит спикер.

Было/не было

Спикеры по очереди зачитывают факты и отвечают на вопрос было или не было? Необходимо обосновать свою точку зрения или рассказать историю, связанную с этим фактом.

Тест на аитишника

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

Тезис третий: оставим вялые онлайны для других

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

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

Наш план поместить в большом доме 20 спикеров-авантюристов, где у них останется только один выход устроить шоу. Представьте себе, как Барух Садогурский вместе со зрителями проходит тест на айтишника, а потом устраивает игру 100 к 1. Или как Паша Финкельштейн и Антон Черноусов собираются на кухне, чтобы приготовить бутерброды по фирменным рецептам и обсудить свои и чужие факапы на работе и за ее пределами. Проще говоря, где еще можно увидеть знакомые лица в неожиданных амплуа.

В доме (кстати, настоящий, в Иннополисе) подготовим несколько тематических зон. Будет даже гараж в лучших традициях стартапов. Вспомним, что многие IT-гиганты начинали свой путь в домашней обстановке.

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

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

Говорим нет трансляциям на вебку из разных квартир. Собираем спикеров в одном месте, делаем идеальную картинку, захватывающий сценарий и добавляем интерактивности

Спикеры

Александр Ларьяновский

Skyeng

Управляющий партнер и сооснователь Skyeng, гуру онлайн-образования в России. До Skyeng шесть лет работал в Яндексе, три из которых директором по международному развитию.

Дарья Пушкарская

Программист и предприниматель, основательница Web Hero Schoo

Работала Frontend-разработчиком на React в 2GIS, Mail.ru и Tinkoff.tu. Организовала внутренние конференции Tinkoff.js. Основала онлайн-школу с последующим трудоустройством Web Hero School более 2 лет назад. Ищет баланс между личной жизнью и захватом мира.

Барух Садогурский (a.k.a. JBaruch)

Head of Developer Relations и Developer Advocate в компании JFrog

Больше всего любит рассказывать о технологиях. Превратил выступления на IT-конференциях в настоящие перформансы. За что получает от нас звание одного из лучших спикеров индустрии.

Барух соавтор книги Liquid Software, CNCF ambassador и профессиональный спикер по темам: DevOps, DevSecOps, Go, Java и др. Он регулярно выступает на таких известных конференциях, как Joker, JPoint, DevOops, Heisenbug, DockerCon, GopherCon, Devoxx, DevOps Days, OSCON, Qcon, JavaOne и др.

Антон Черноусов

Developer Advocate в Яндекс.Облаке

До Yandex.Cloud занимался разработкой, внедрял Agile-процессы, стартапил, хакатонил. Успел запилить классный подкаст и телеграм-канал The Art Of Programming.

Алексей АйТиБорода Картынник

Автор ютуб-канала АйТиБорода

Его проект, посвященный не столько программированию, сколько жизни айтишников изнутри. Лекс круто берёт интервью, поэтому Юрию Дудю пора начинать волноваться.

Паша Финкельштейн

Разработчик в JetBrains

Не стал психологом, во имя котлина на бэкенде и в больших данных. На данный момент Паша разработчик и серийный спикер в JetBrains, ведет подкаст "Новый подкаст (2)_после правок". Верит, что ничто не истинно. А мы верим в Пашу и его безграничные таланты. Поэтому пригласили в шоу, раньше чем написали сценарий.

Егор Малькевич

Frontend-разработчик и СЕО стартапа SolidBridge

Уже 13 лет увлекается IT. Ведет небольшой канал на Youtube, преподает курсы. В свободное от отдыха время работает FullStack разработчиком и менеджером стартапаВеселый, голодный Смотрит KVN, шутит шутки

Саша Ермоленко

Руководитель команды дизайна сервисов в Mail.ru Group

В прошлом директор департамента дизайна Рамблера, арт-директор внешних коммуникаций Яндекса и арт-директор BBDO. Сегодня она работает руководителем команды дизайна в Mail.ru Group. А ещё Саша преподает в Британской высшей школе дизайна и Bang-Bang Education.

Артур Хачуян

Руководитель компании TAZEROS

Генеральный директор и основатель Tazeros Global Systems, создатель главного россииского BigData-алгоритма. Знает все твои секреты #DataDaddy.

Зар Захаров

Frontend Developer Evangelist, основатель React Марафона и JS Марафона

Мечтал стать музыкантом. Разработка позволяла заниматься любимым делом и иметь доход. В итоге затянуло, и вот уже 14 лет Зар не может оторваться от Frontend. Активный спикер, выступал на HolyJS, ReactDayBerlin. Работал в двух лучших банках России. Создатель первого марафона по разработке на вылет, по ReactJs и основам JavaScript. Работает в GridDynamics. Мечтает, чтобы комьюнити разработчиков было большим, дружным и как одна семья.

Дмитрий Кузюбердин

Создатель youtube-канала IT-KAMASUTRA, школы IT-INCUBATOR.BY и музыкального аудиостока BEATMAKER.TV

Программирует уже более 10 лет. Немного кодер, немного преподаватель, немного стартапер, немного ютубер, немного инфоцыган. Меняет судьбы людей, помогая войтивайти.

Максим Михеенко

5518 Studios

Сооснователь и генеральный директор компании 5518 Studios. Создатель компьютерной графики для знаковых игр Apex Legends, Star Trek и Call of Duty. Написал об игровой индустрии и как туда попасть в книге Миллионы МиллиардовСооснователь и генеральный директор компании 5518 Studios. Создатель компьютерной графики для знаковых игр Apex Legends, Star Trek и Call of Duty. Написал об игровой индустрии и как туда попасть в книге Миллионы Миллиардов.

Всеволод Брекелов

JUG Ru Group

Разработчик и PMM в JUG Ru Group. До этого работал в Grid Dynamics, которая дала возможность поработать по контракту в Google в Калифорнии, с Nike в Портленде и крупным банком во Флориде. Ex-участник программного комитета HeisenBug, JPoint, Joker. Ведет инженерный канал Engineer Readings и пишет про тестирование в своем твиттере.

Артём Ерошенко

Qameta Software

Автор инструмента Allure/Allure 2, эксперт по автоматизации тестирования. Артем работал в разных командах и в разных ролях: автоматизатор тестирования, менеджер команды разработки инструментов тестирования, руководитель группы автоматизации тестирования. Сейчас сооснователь компании Qameta Software. Ведущий шоу Ошибка Выжившего.

Глеб Михеев

Skillbox/FrontendConf/Beta

Занимается веб-разработкой почти всю сознательную жизнь. Затянуло еще в детстве: компьютерные игры, кланы, сайты. Потом фриланс, агентства, проекты для брендов, работа в Nvidia, несколько стартапов и, наконец, собственное агентство Beta. Последние несколько лет активно участвует в образовательных проектах: руководит программным комитетом конференции FrontendConf и продвигает профессию Frontend-разработчик в Skillbox.

Григорий Коченов

AGIMA

Креативный директор AGIMA, UX-визионер. В digital c 1998 года. Под его руководством был разработан и запущен первый адаптивный сайт в России, а также десятки масштабных высокотехнологичных интернет-проектов для таких компаний, как: Росбанк, МегаФон, Райффайзенбанк, Связной Банк, АльфаСтрахование и многие другие.

Александр Раихин

ВТБ Онлайн

Лидер стрима Мессенджеры и чат-боты в ВТБ Онлайн. В 2019 запустил лучшего чат-бота по версии CСGuru Awards.

Джанкарло Суччи

Innopolis University

Профессор, декан Факультета компьютерных и инженерных наук, начальник Лаборатории промышленной разработки ПО, Институт разработки ПО и программной инженерии. Джанкарло Суччи присвоены учёные степени высших ступеней в Италии и Канаде. Он автор 5 книг и редактор еще 12, опубликовал 370 работ.

Мануэль Маццара

Innopolis University

PhD, University of Bologna, Италия, Профессор, Директор Института разработки ПО и программной инженерии, руководитель отдела международного и академического сотрудничества. Разрабатывал программное обеспечение в компании Майкрософт и работал в Университете Ньюкасла над проектом Deploy.

Тезис четвертый: расслабиться и получать удовольствие

Главное в любом деле кайфовать от процесса. Мы сразу договорились реализовывать свою концепцию, не оглядываясь на условия рынка. С одной стороны это шаг в пропасть, из которой можно не выбраться, с другой возможность сделать по-настоящему свежий и актуальный формат, реализовать давние идеи.

Многие компании не могут себе позволить заигрываться с экспериментами, потому что обычно перевешивают: формат, продукт, аудитория, метрики, прибыль, KPI и еще десяток параметров. В контексте IT-событий мы стартап (всего-то два года), поэтому можем позволить себе многое.

Авантюризм вместо погони за метриками

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

Раз мы хотим сделать весело, то самим думать серые мысли и сомневаться на каждом шагу не положено. Есть понятный формат, следуя которому, получаются крепкие конференции и сглаживаются многие углы. Мы под эти стандарты не попадаем. У нас неофициальная подача и мы не обещаем доклады, заряженные на просветление. Вместо этого предлагаем много юмора и возможность посмеяться над IT-сферой и ее представителями (и над собой, конечно же).

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

Будущее не спит, и мы не планируем

Вместо заключения: 5 причин не пропускать IT Nights

  • Увидеть известных спикеров в новых и неожиданных ролях

  • Собрать внеплановый корпоратив и посмотреть шоу вместе с коллегами

  • Заценить новый формат, чтобы рассказывать внукам про первое IT-шоу (записи не будет)

  • Убедиться, что айтишники умеют устраивать классные тусовки

  • Поверить в онлайн (и чувство юмора технарей)


Увидимся на IT Nights

20 ноября, 20:00

Промокод для читателей Хабра на скидку 50% habr


Подробнее..

Использование UAVCAN для модульной электроники БПЛА, или как не спалить дрона, перепутав провода

30.07.2020 22:23:20 | Автор: admin
Привет! Меня зовут Роман Федоренко, я доцент Центра компетенций НТИ по направлению Технологии компонентов робототехники и мехатроники на базе Университета Иннополис. Я работаю с командой робототехников, которая специализируется на беспилотных летательных аппаратах. По большей части мы занимаемся высокоуровневым управлением БПЛА: планирование движения, обход препятствий, решения для киносъёмки и сканирования местности. Хотя собственные небольшие коптеры тоже собирали и с железом работали. В прошлом году мы начали разработку большого самолёта вертикального взлёта и посадки, который включает все уровни от изготовления носителя до обвески датчиками и интеллектуального управления. И при разработке этого проекта познакомились с UAVCAN.

UAVCAN это открытый лёгкий протокол для бортовой сети подвижных объектов. Недавно его разработчик и мейнтейнер Павел Кириенко Spym рассказал о протоколе на PX4 Developer Summit, крупной конференции сообщества разработчиков дронов с использованием open-source экосистемы вокруг автопилота PX4, частью которой является UAVCAN. А ещё Павел подготовил подробную статью для русскоязычного сообщества на Хабре по следам своего доклада.

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




Гибридные БПЛА


Самолёт вертикального взлёта и посадки (VTOL) это гибрид коптера и самолёта, который может работать дольше коптера за счёт аэродинамической подъёмной силы крыла и при этом не требует взлётно-посадочной полосы либо пускового устройства и парашюта, как обычные самолётные беспилотники. Сейчас разработка таких устройств популярное и многообещающее направление. Такой аппарат можно использовать для доставки, картографии, мониторинга и других целей. По тому же принципу конструкции устроены большинство проектов летающего такси, например:

  • полностью электрическое воздушное такси Lilium Jet немецкой компании Lilium;
  • малошумный электросамолёт Heaviside компании Kitty Hawk Себастьяна Труна (которого многие знают по беспилотным автомобилям);
  • проект Vahana от Airbus.


Innopolis VTOL plane
Самолёт вертикального взлёта и посадки Университета Иннополис

Мы разработали три модели небольших беспилотных аппаратов с разным размахом крыла, грузоподъёмностью и источниками питания полностью электрические и с двигателями внутреннего сгорания. По конструкциям летательных аппаратов сотрудничаем с Казанским авиационным институтом и авиационными предприятиями Казани, а фокус наших работ электроника, алгоритмы и автоматическое управление.

При чём здесь UAVCAN?


Те, кто занимаются коптерами, знают, что обычная структура системы управления выглядит примерно так:

PixHawk drone scheme

Типовая схема БПЛА на базе автопилота PX4. Источник

Моторы управляются регуляторами оборотов (ESC), на которые посредством PWM (ШИМ) сигналов подаются уставки от автопилота. Датчики подключаются по куче разных интерфейсов UART, I2C, SPI. Плюс телеметрия, пульт, питание и получается такой паук из проводов. Но основная проблема не в этом.

Чем длиннее провода, то есть больше аппарат, тем эта схема сильнее подвержена наводкам. Нам об этом пришлось задумываться с самого начала, потому что у наших аппаратов размах крыльев 2 и 4 метра, и это не предел.

Раньше для проекта 40-метрового дирижабля мы работали с CAN (только протокол был на базе CANOpen). И решение использовать UAVCAN для нас было само собой разумеющимся: в PX4 уже есть его поддержка, даже никаких споров в команде по этому поводу не возникало. Изначально мы хотели заменить длинные линии PWM на цифровой интерфейс, чтобы масштабировать наши решения на аппараты с разным размахом крыла.

Оказывается, UAVCAN это не CAN для UAV
Раньше мы воспринимали UAVCAN как CAN для UAV (БПЛА). Возможно, так изначально и было, но сейчас он позиционируется как Uncomplicated Application-level Vehicular Communication And Networking (Простая коммуникация и сетевое взаимодействие уровня приложений для подвижных объектов) и не привязан ни к UAV, ни к CAN, а используется на целом ряде подвижных объектов и поверх разных интерфейсов. Есть даже предложение об использовании UAVCAN в качестве middleware для ROS (Robot Operating System). Но об этом подробнее в статье от создателя протокола.


Заменив PWM-связи на UAVCAN-связи, мы перестали беспокоиться о проблемах длинных проводов и наводок, а также значительно уменьшили количество подключений к автопилоту.

Было два варианта, как это сделать. Первый использовать регуляторы моторов и сервоприводы с UAVCAN интерфейсом. Такие есть, например, у Zubax. Второй сделать адаптеры UAVCAN, которые устанавливаются непосредственно возле ESC. Мы пошли по второму варианту, потому что выбор ESC с UAVCAN интерфейсом невелик. Сначала мы использовали адаптеры проекта UAVCAN for Hobbyists (UC4H), затем решили делать свои устройства со встроенным DC-DC преобразователем, своей схемотехникой, прошивкой и нескучными диодиками.

Innopolis UAVCAN devices
Наши устройства с интерфейсом UAVCAN

Вошли во вкус


Дальше мы поняли, что можем вместо десятка проводов использовать шину UAVCAN для взаимодействия не только с исполнительными механизмами, но и с большинством внешних устройств. Это ещё и хорошо сказывается на виброизоляции контроллера, установленного на специальной платформе. В итоге мы разработали ряд девайсов для собственного применения, но сейчас видим, что они интересны другим:

  • Преобразователь CAN-PWM до 4 каналов: устройство подключается к шине CAN, принимает и обрабатывает сигналы управления, выдаёт ШИМ. Питать плату можно напрямую с АКБ до 60 В, в её составе включается DC-DC преобразователь, обеспечивающий напряжением 5 В (3 А) плату и потребителя (например, сервомашинку);
  • GPS/Magnetometer/Barometer;
  • Силовая плата, Power Management Unit (PMU): обеспечивает подсоединение нескольких АКБ (параллельно или последовательно при необходимости). Устройство подключается последовательно со всей силовой нагрузкой и обеспечивает её коммутацию. В конструкции датчики напряжения и тока на АКБ, DC-DC преобразователь для обеспечения питания автопилота. Такая плата рассчитана на большие токи до 1000 А. В разработке устройство CAN в составе платы выдающее информацию о напряжении и токе;
  • Лазерный высотомер;
  • Датчик воздушной скорости;
  • Датчик уровня топлива;


Технически эти устройства реализованы на базе микроконтроллера STM32. Проектируем сами, а изготовление заказываем на pcbway.ru. Прошивка реализуется с использованием libcanard.

По нашим ощущениям для работы с UAVCAN довольно низкий порог входа. Новому сотруднику понадобилось меньше недели, чтобы разобраться и запрограммировать датчик расстояния как со стороны STM32, так и со стороны автопилота PX4.

Dark drone

Новые устройства тестируем на небольшом dark дроне

А затем уже используем на самолёте:


Короткое видео тестового полета нашего VTOL-самолета во всех режимах

Организация полётов
Кстати, в Республике Татарстан есть Ассоциация пилотов, разрешающая регистрировать пилотов беспилотников и получать разрешение на полёты нажатием одной кнопки. Они же помогают нам по дружбе.

Здесь даже реально получить разрешения полетать над Казанским кремлём.


В итоге схема у нас выглядит так:

Innopolis VTOL UAVCAN Scheme
Схема нашего VTOL-самолёта с использованием UAVCAN датчиков и исполнительных механизмов

Какие преимущества UAVCAN даст нам в будущем


Резервирование


Важнейшая задача при реализации продукта на базе БПЛА обеспечить надёжность. Мы уже начали работать над этим. Например, несколько наших GPS и датчиков воздушной скорости подключить и использовать параллельно уже получается. Но ещё многое предстоит. Скорее всего, дублирования датчиков и контроллеров с использованием CAN шины будут сделаны проще. К Pixhawk можно подключить две шины, а на шине оставить несколько одинаковых датчиков для резервирования.

Масштабирование


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

True HIL-симуляция


Сейчас активно развивается тема работы БПЛА в городской среде Urban Air Mobility (UAM). Для реализации задач UAM нужно больше опираться на такие сенсоры, как камеры и лидары. Тут возникает необходимость разработки и отладки систем интеллектуального управления, а также повышение их надёжности. Для этих целей другая команда Университета Иннополис разрабатывает симулятор Innopolis Simulator для автономных подвижных объектов на основе Unity 3D для тестирования, отладки и обучения.


Innopolis Simulator

Для нашего VTOL-самолета используем Innopolis Simulator в связке с Gazebo для фотореалистичной симуляции, тестирования управления и обработки сенсорных данных лидаров и камер.

Сейчас работаем над своим модулем симуляции динамики вместо Gazebo с более точной аэродинамикой, а также над другой фишкой true HIL симуляцией (от hardware in the loop, или программно-аппаратное моделирование, ПАМ).

В нашем решении все данные поступают от датчиков, а управления на моторы и сервы отправляются по шине UAVCAN. Почему бы не сделать модуль симуляции этих датчиков на уровне той же шины? Просто вместо устройств к контроллеру мы подключаем компьютер с симулятором.
Сейчас HIL-симуляция в PX4 делается посредством специальных HIL_* сообщений MAVLINK (протокол телеметрии, работает по последовательному порту либо UDP/TCP), которые имитируют датчики и исполнительные механизмы.

PX4_HITL

Диаграмма работы PX4 в режиме HITL. Источник

Симуляция, как она реализована сейчас в PX4, это отдельный режим работы полётного контроллера, отличающийся от боевой полётной конфигурации. Мы имитируем непосредственно UAVCAN сообщения, в идеале автопилот может даже не знать, что работает в симулируемом окружении. Но нужно сказать, что пока концептуально не решена проблема симуляции IMU, которые находятся внутри автопилота и подключены не по CAN.

Innopolis VTOL UAVCAN HIL Simulator Scheme
Предлагаемая схема работы PX4 в режиме HITL с использованием UAVCAN

Такое решение повышает достоверность результатов отладки на симуляторе, поэтому можно смелее переходить к лётным тестам.


Авиационный HIL симулятор. Источник

Подобный подход, когда устройства имитируются на уровне интерфейсов, используется и в большой авиации, но с UAVCAN мы делаем это доступнее и проще.

Вывод


Очень здорово, что над вопросами лёгкости, надёжности и риалтаймовости протокола UAVCAN уже подумали за нас, как и то, что есть PX4, ROS и Linux, в конце концов. Нам было бы очень сложно делать наши коптеры, самолёты, системы управления и планировщики, если бы всего этого не было.

Стандартизация протоколов и программных средств даёт возможность разработчикам говорить на одном языке. Вместе с тем, важна не только стандартизация, но и доступность, что в высокой степени обеспечивает open-source подход. Это позволяет, стоя на плечах гигантов, быстрее переходить к своим задачам, а не строить сначала долго инфраструктуру для работы, что, надеюсь, мы показали на нашем примере в данной статье.


Пьём колд брю после успешных полётов
Подробнее..

Разработка hardware-продуктов что и как устроено

17.07.2020 20:07:39 | Автор: admin

Привет, меня зовут Дмитрии Каржицкии, я работаю QA Lead в белорусском hardware-стартапе Rozum Robotics. Недавно вместе с Университетом Иннополис мы провели митап, посвящённый разработке hardware-продуктов. По следам митапа хочу рассказать про специфику разработки и тестирования роботов и про особенности организации работы в hardware-стартапе.


Кажется, что сфера hardware менее заметна, чем software, как минимум по количеству упоминаний. У всех на слуху разработчики в области веб- и мобильных приложений, которые пишут код на макбуках, попивая смузи. А у hardware специалистов скорее образ классического бородатого инженера, который может и плату спаять, и код написать. Если с задачей на разработку софта верхнего уровня хороший Java-программист должен справиться, то в embedded без понимания железа не обойтись.


Разработку новых продуктов, в том числе и в hardware, можно разделить на два больших направления: коммерческие продукты (стартапы) и научно-исследовательская деятельность (R&D). Процессы и подходы к разработке и тестированию могут быть похожи, отличаются задачи и масштаб. Продукт разрабатывается для конкретных пользователей на основе идеи и исследования, что потенциальным клиентам нужна ваша разработка. В таком подходе больше рисков. Один из рисков сложность масштабирования продукта. Выпустить новую версию приложения недорого, а создать копию робота всё ещё довольно сложно и дорого. О других рисках я расскажу ниже.


Примеры из процесса разработки будут на основе коллаборативного робота-манипулятора (кобота) PULSE. Это такая подвижная железная рука, которую можно запрограммировать под разные задачи.



Процесс производства программного обеспечения


Сейчас мои основные задачи это работа над обновлениями для коботов. Команда много времени уделяет софту: обновление ПО для пользователей, разработка и поддержка API, которое позволяет программировать сложные алгоритмы поведения кобота.


Процесс разработки новой фичи выглядит примерно так:


  1. Хотелки пользователей или бизнеса попадают в бэклог.
  2. Далее анализируем, декомпозируем на задачи.
  3. Затем оформляем задачу в User Story.
  4. Для каждой задачи собираем требования и разбиваем на фичи.
  5. Фича попадает на этап разработки.
  6. Разработчики берут задачу и пишут код.
  7. Когда код готов, заливаем его на робота и тестируем.
  8. Релизим новый функционал. Пользователи скачивают и устанавливают обновление на своих роботов.

Получается, что под определённую задачу собирается мини-команда. Где-то нужен бизнес-аналитик или разработчик встроенного софта команды всегда разные.


Если смотреть на этапы разработки софта для робота, то это классический pipeline: планирование, кодинг, тестирование, публикация софта для скачивания, эксплуатация.


Когда фича готова и для неё требуется разработка железа нового мотора, например, начинается производственный этап, и подключается Отдел технического контроля (ОТК). ОТК проходит всё, что поступает на склад для сборки робота, включая материалы и оборудование. После этого робот собирается и попадает обратно в отдел ОТК, где проверяется качество сборки. После всех проверок на робота заливается новая версия софта.


С обновлением ПО всё понятно, новую версию софта заливаем на веб-сервис. Когда робот в сети, он скачивает обновление и после подтверждения пользователя разворачивает релиз примерно как новая прошивка для телефона.


С обновлением железа сложнее. Робот модульный, можно заменить любой мотор или всю руку целиком, оставив контролбокс, или заменить контролбокс, оставив руку. Операция не особо сложная, но выполнять её могут только специалисты, знакомые с устройством кобота.


Сложности ириски


Один из рисков в hardware-разработке длительный процесс производства. Непонятно, будет ли продукт востребован на рынке к моменту запуска. Разработка новой версии софта это одни сроки, новая версия мотора или робота целиком совсем другие. Быстро получить обратную связь не получится, нужно потратить много времени и денег.


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


Так как мы стартап существует bus factor, когда на одном человеке завязаны многие процессы и нет дублирования ролей. Набирать новых людей на одну позицию не самый рациональный вариант, поэтому мы стараемся создавать френдли коллектив, из которого не хочется уходить просто так.


Разработка и специалисты


В hardware есть глобальное разделение на софт верхнего и нижнего уровня. Код для верхнего пишут на Java и Python. Для нижнего (embedded) на C, C++, инженерам приходится активно работать с математикой. В embedded-разработке важно разбираться в железе, уметь пользоваться мультиметром, осциллографом и измерять физические параметры. Таких специалистов на рынке мало. Обычно это люди с профильным образованием по робототехнике.


Задача под Java подразумевает, что хороший программист с ней справится даже без знания железа. Тем более если железо и софт максимально разделены на уровне интерфейсов и микросервисов, чтобы не было зависимости между верхним и нижним уровнем. Тогда можно легко менять софт верхнего уровня вне зависимости от железа, на котором он работает, и не нужно учитывать 10 000 версий разных окружений, если есть конкретный список версий.


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


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



Кобот кормит меня зефирками


Как мы тестируем коботов


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


Работа в физическом мире накладывает свои проверки, но многие процессы построены по классической схеме разработки софта. Мы не стали изобретать велосипед, взяли за основу проверенный временем стандарт ISO 9283. Такой подход позволяют оценить работу робота-манипулятора не по придуманным критериям, а в рамках стандарта, где прописаны характеристики по параметрам: точность и повторяемость прихода в заданную точку, точность и повторяемость прохождения заданной траектории, скоростных, временных характеристик, прохождение поворотов.


Тестирование применяется на всех этапах производства. Многое взято от тестирования микросервисов, отдельно модульное тестирование, интеграционное, есть автотесты для интеграции софта на уровне API, приёмочные тесты покрывают всю систему, канареечные релизы позволяют проверить работу софта на проде у лояльных пользователей. После релиза у нас нет возможности следить за роботами онлайн, поэтому с каждым пользователем есть чат для мониторинга эксплуатации оборудования, постоянно собираем обратную связь.


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


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


Ещё проводим обязательные тесты на работу в физическом мире: температурный режим, грузоподъёмность, влияние стороннего оборудования, влажность, например, в зависимости от страны это всё влияет на структуру материала, который используется для производства.


Что сейчас происходит в сфере hardware-автоматизации


Ситуация с ковидом катализировала процессы атоматизации в сферах, которые традиционно не рассматривали такую возможность. Ещё до пандемии был интерес к роботизации процессов в сфере развлечений и услуг от крупного ритейла, заканчивая барами, магазинами и ресторанами. Владельцы прогрессивных заведений понимают, что многие рутинные операции можно доверить роботу, наливать напитки, например. В этом есть потенциальная экономическая выгода, но сейчас это больше развлечение для посетителей. Роботов-барменов можно встретить на круизных лайнерах или в баре в центре Милана.


Когда начался кризис, привычный способ потребления услуг начал меняться. Заказ кофе с собой вызывает лёгкий дискомфорт, поэтому интерес к непромышленной роботизации растёт. Мы видим это по количеству запросов от потенциальных клиентов и инвесторских сделок в мире. Сейчас тема автоматизации с помощью безопасных коботов на хайпе, но это логично объясняется экономическими и социальными факторами.


Промышленные предприятия, наоборот, заморозили средства, которые планировали направить на автоматизацию производства. С учётом разрыва логистических цепочек и падением рынка реализация многих сделок замедлилась, отменилась или перенеслась.




Надеемся, что помогли лучше понять современную разработку hardware-продуктов. Мы планируем ещё одну статью по этой теме с точки зрения R&D задач Центра компетенций НТИ по направлению Технологии робототехники и мехатроники на базе Университета Иннополис. Пишите в комментариях, про какие аспекты hardware в научно-исследовательской деятельности хотите узнать.


Все выступления с митапа It is hard
Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru