October 23, 2023

Навигация под рукой: 02 - экономическое обоснование.

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

Как некоторые уже могли догадаться, я фактически делаю игровой контроллер, который управлял бы виртуальными навигаторами GNS 530 и GNS 430 (спойлер: да, два по цене одного) в не менее виртуальной Цессне в симуляторе MSFS 2020. Пользоваться таким гораздо удобнее, чем тыкать мышкой. Плюс какая-никакая мышечная память. Есть ли такие готовые девайсы? Есть. Можно ли их купить? Конечно. Было бы это проще, Несомненно. Но нет.

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

Я не буду оставлять ссылок, потому что мне как-то никто не платит за рекламу.

$800 за два устройства

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

$400 за модель GNS 530
$450 за пятьсот тридцатый

Вот ещё два девайса, которые эмулируют 530-е. $400-450 за единицу. Тоже крутые. Правда, если сильно захочется, то придётся докупить 430-й ещё за $400.

$280 за модель попроще

Есть вот такие экземпляры, которые дешевле, но часто они очевидно отпечатаны на 3D-принтере. Это прямо видно, но это выглядит дёшево. Но и это не главное. Есть одна (субъективно) странная деталь, которая объединяет их все. И меня несколько напрягает.

Да, у них есть экраны, которые мне не нужны - эти экраны уже есть в игре, и мне довольно удобно ими пользоваться. И из-за этих экранов они дороже. Но дело не в этом. Проблема в том, что эти устройства не... как это сказать. Не самодостаточны. Если речь идёт об MSFS, GPS-ками нельзя управлять напрямую. Невозможно просто назначить кнопочки - нужно промежуточное программное обеспечение, которое либо поставляется с устройствами, либо нужно настроить отдельно. Плюс ко всему, эти самые экраны - это не часть устройства. Это просто экраны. они отдельно подключаются через HDMI, становятся внешними дисплеями, и туда, на эти экраны, ещё нужно вывести приборы вручную. И у некоторых устройств за несколько сотен долларов эта часть реализована довольно топорно. Какие-то артефакты, панель, заголовки внешних окон остаются на экранах. А если разрешение не совпадает (а бывает и такое), то изображение ещё и масштабируется, причём довольно криво. Ну и там ещё ряд мелких проблем.

Если коротко, готовые решения стоят дорого, но при этом часто не стоят своих денег. Такой вот парадокс. Плюс ко всему, я очень хочу, чтобы у меня была возможность управлять навигаторами руками (я их сейчас активно пользуюсь для отработки процедур), но я не готов отдавать за это $500. В итоге после небольшого исследования было принято решение сделать такой прибор самому. Это очевидно не просто, но вполне себе выполнимо. Спойлер - оно живо; и когда я пишу этот пост, макет уже управляет моими GPS-ками. Всю процедуру мы обсудим позже, сегодня остановимся на деньгах. Я примерно представляю, сколько это в итоге будет стоить, но посчитаю сейчас прямо вместе с вами.

Прежде всего, нужно понимать, что первым решением было выкинуть экраны. Они не очень нужны, усложняют реализацию и требуют дополнительных танцев с бубном. С другой стороны, буквально одной кнопкой я делаю так. что один пульт будет управлять сразу двумя панелями. что несомненно плюс: 430-я используется не так часто, чтобы иметь для неё отдельны пульт, а дополнительно программирования она почти не требует. (К слову, я нашёл как минимум один готовый вариант, где это было реализовано - это и подсказало мне, что можно попробовать сделать также). Стоит признать, что отказаться от прослойки между моим девайсом и симулятором не вышло. Больно хитрая реализация навигаторов в MSFS, не позволяющая управлять ими напрямую. Наверное ,можно было руками написать такую же, но это было бы неоправданно сложно - было принято решение купить готовое решение.

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

Arduino Micro - $24

Самая дорогая часть - это плата управления Arduino Micro - $25. Плата была выбрана почти наугад из соображений баланса между размерами и доступными пинами. В итоге я использовал практически все доступные пины. Прямо счастливый случай.

Набор кнопок - $10

Кнопки были закуплены набором 20 штук за $10. Нужно было 14, но я посчитаю все. Сейчас я уже понимаю ,что эти кнопки великоваты, и я бы заменил на другие, но это неточно. Это же столько паять опять...

20 переключателей - $6

Для переключения между 530 и 430 нужен был один переключатель, но по одному их что-то не купить. Так что ещё $6.

Двойной энкодер - $13 за штуку

Про дороговизну управляющей платы я, похоже поспешил написать - две "крутилки" стоили аж по $13за штук. Они довольно специфические, их хвалят в интернете и, кроме того, у меня один такой стоит на эмуляторе автопилота. И вообще их многие ставят. Плюс плата в комплекте, что мне очень помогло. Плюс $26, однако. Их можно найти дешевле, но не на много - они всё равно стоят где-то $7-10. И не всегда можно купить 1-2. И ещё отдельно нужно было бы ручки к ним искать. Короче, я заплатил за готовое решение. И не пожалел.

Провода с коннекторами - $7

Провода - это, конечно, расходники, но мне пришлось их купить. Использую я, конечно, не все, но заложу все. Итого два набора разной длины - $7 и $8 соотественно. Плюс заложу ещё $5 на всякие платы и прочую муку.

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

Итого получается, что себестоимость устройства (без учёта жопочасов) 87 долларов, а вместе с приложением - $115

Не считая бесценного опыта (а это явная выгода, ну) получается в 2.5 раза дешевле самого доступного готового решения. Главное, не пересчитывать время по своей текущей ставке =)

В следующих постах я углублюсь в более душные дебри реализации.