Обновить

Технотекст

Кодекс летописца или Ода к телеметрии

Время на прочтение33 мин
Охват и читатели13K

Допустим, ко группе инженеров снизошла задача разработать систему управления чем-нибудь достаточно сложным. Теоретик заточил зубы и приступил к граниту — строит модели объекта и системы управления. Комплексники копают руду компоновки, вопросов климатики, вибрации и спецтребований, кто-то рисует платы/корпуса/кабели, кто-то пишет и тестирует уже определившиеся элементы ПО.

И здесь же, с самого старта, нужен человек, который займется телеметрией: ее формированием, передачей и сохранением. Ибо переоценить важность телеметрии для разработки практически нереально. Когда что-то пойдет не так — а оно пойдет — только телеметрия даст шанс понять, что это, черт возьми, было. Когда все будет так — она станет объективным доказательством успеха. Больше того: иногда, когда внешне все прошло так, она заставит при анализе запуска уронить челюсть и спросить себя и окружающих: «как, черт возьми, всё обошлось?»

А потому исходное положение кодекса, пункт зеро.

Читать далее

RAD для софт-процессоров и немного «сферических коней в вакууме»

Время на прочтение7 мин
Охват и читатели2.7K

Разработка или выбор управляющего контроллера для встраиваемой системы на ПЛИС –актуальная и не всегда тривиальная задача. Часто выбор падает в пользу широкораспространенных IP-ядер, обладающих развитой программно-аппаратной структурой – поддержка высокопроизводительных шин, периферийный устройств, прикладное программное обеспечение и, в ряде случаев, операционных систем (в основном Linux, Free-RTOS).  Одними из причин данного выбора являются желание обеспечить достаточную производительность и иметь под рукой готовый инструментарий для разработки программного обеспечения.

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

Стековые софт-процессоры и контекст потока

Обычно многопоточные процессоры имеют одно АЛУ и несколько наборов регистров (иногда называемых «теневыми» регистрами) для хранения контекста потока, следовательно, чем больше требуется потоков, тем будут больше накладные расходы логики и памяти. Среди разнообразия архитектур софт-процессорных ядер следует выделить стековую архитектуру. Такие процессоры часто называют еще Форт-процессорами, так как чаще всего их ассемблер естественным образом поддерживает подмножество команд языка Форт.

Читать далее

Проблемы методологии проектирования микропроцессорных систем

Время на прочтение28 мин
Охват и читатели12K

Применяемая, в настоящее время, для проектирования СБИС, методология с использованием языков описания аппаратуры, обладает общепризнанными недостатками, а именно:

- Разработка сложных СБИС требует сотни квалифицированных инженеров, несколько лет работы и затрат в миллиарды долларов.

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

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

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

Читать далее

Горячий, умный, рогатый: разработка анемометра в концепции интернета вещей

Время на прочтение8 мин
Охват и читатели9.7K

В материале подробно разбирается процесс создания умного IoT-Анемометра.

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

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

Читать далее

Внутри российского процессора Байкал М

Время на прочтение5 мин
Охват и читатели61K

В 2014 году компания Байкал Электроникс приобрела лицензию на самое передовое на тот момент процессорное ядро. После череды инцидентов, повлиявших на дальнейший исход событий, в октябре 2019-го года компания официально представила широкой общественности первый российский процессор общего назначения, реализованный на архитектуре ARM. Создатели решают назвать своё уникальное отечественное детище «Baikal-М».

Читать далее

Передатчик для FMCW георадара

Время на прочтение7 мин
Охват и читатели11K

Всем привет! Хочу поделиться своей историей разработки передатчика для ЛЧМ радара непрерывного излучения с полосой сигнала 1000МГц и величиной нелинейности изменения частоты 10-4%. Такой передатчик в дальнейшем будет применен в FMCW георадаре (Frequency-Modulated Continuous Wave — радиолокатор непрерывного излучения с частотной модуляцией).

Читать далее

Фриланс-разработка электроники. Что, Как и Зачем?

Время на прочтение7 мин
Охват и читатели35K

▍Как все начиналось


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

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

После окончания ВУЗа, работаю по сей день ведущим инженером на одной из атомных станций. Работа веселая и ответственная, но дома надо чем-то занять вечера, не пиво же пить и лежать у телевизора. Для поддержания на должном уровне своей квалификации освоил Ардуино, Attiny, STM, ESP32. Вспомнил давно забытую Java и C++. Освоил заново Easyeda, Altium, Eagle. Свободно работаю во многих программах CAD моделирования. Теоретически я подготовлен хорошо, но нужна была практика в электронике и желательно по очень высоким стандартам.
Читать дальше →

Радиоприемник прямого усиления на СВ, 2020 год, Москва. Что можно услышать?

Время на прочтение4 мин
Охват и читатели79K
Обожаю радио. Были времена когда на внутреннюю магнитную антенну АМ-радиоприемника собранного на 2 транзисторах, можно было принять десятки радиостанций вещающих за тысячи километров. В наши дни на средних волнах вещает очень мало станций, а уровень помех в городах настолько высок, что СВ, кажется, похоронен навсегда. Но так ли это на самом деле? Я решил собрать СВ радиоприемник прямого усиления, чтобы это проверить.

image

Ретроспектива разработки интерфейса листа персонажа

Время на прочтение13 мин
Охват и читатели14K


Близится 2021 год, а значит, минуло почти 4 года с момента, когда я присоединился к разработке Pathfinder:Kingmaker в качестве разработчика интерфейсов. За это время игра превратилась из маленького прототипа с минимальным функционалом в огромную, сложную систему. Игра пережила релиз, год активного багофикса и поддержки DLC, а также портирование на консоль. И теперь, когда разработку этого проекта можно считать завершенной, пришло время оглянуться и попробовать собрать ретроспективу того, как проектировались и создавались интерфейсы.


Я решил начать с основного, на мой взгляд, интерфейса игры, с листа персонажа.
Много текста и картинок

Отцы игровой индустрии. Крис Авеллон [часть 2/3]. Obsidian Entertainment

Время на прочтение35 мин
Охват и читатели3.8K

Внимание! Внимание! Внимание! Внимание! Внимание! Внимание!

Это вторая часть биографии Криса Авеллона. Если вы еще не ознакомились с первой частью, настоятельно рекомендую это сделать.

Читать далее

Чему я научился делая игры на LibGDX

Время на прочтение12 мин
Охват и читатели27K

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

Читать далее

Консоли больше не нужны (но это не точно)

Время на прочтение5 мин
Охват и читатели9.2K

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

Читать далее

7 подсказок, как создать и улучшить Battle Pass в вашей игре

Время на прочтение4 мин
Охват и читатели9K

51% игр в ТОП 100 игр по гроссингу в США внедрили Battle Pass и данная фича продолжает набирать популярность (по данным сервиса GameRefinery). В данной статье я хотела бы рассказать о подсказках, которые вы можете использовать при создании или улучшении Battle Pass с примерами из игр жанра match3.

Читать далее

Опыт разработки первой мобильной игры на Unity или как полностью перевернуть свою жизнь

Время на прочтение12 мин
Охват и читатели43K

Заурядная история заурядного новичка в геймдеве.

Читать далее

О, игрушки! Давайте писать игрушки

Время на прочтение7 мин
Охват и читатели5.4K

Интервью с разработчиками игр для компьютеров БК-0010 ASP Corp.

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

Читать далее

Кранчи вредят индустрии и «сжигают» людей

Время на прочтение25 мин
Охват и читатели20K

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



Как я написал браузерный 3D FPS шутер на Three.js, Vue и Blender

Время на прочтение32 мин
Охват и читатели21K

На пути каждого коммерческого разработчика (не только кодеров, но, знаю, у дизайнеров, например, также) рано или поздно встречаются топкие-болотистые участки, унылые мрачные места, блуждая по которым можно вообще забрести в мертвую пустыню профессионального выгорания и/или даже к психотерапевту на прием за таблетками. Работодатели-бизнес очевидно задействует ваши наиболее развитые скилы, выжимая по максимуму, стек большинства вакансий оккупирован одними и теми же энтерпрайз-инструментами, кажется, не для всех случаев самыми удачными, удобными и интересными, и вы понимаете что вам придется именно усугублять разгребать тонну такого легаси… Часто отношения в команде складываются для вас не лучшим образом, и вы не получаете настоящего понимания и отдачи, драйва от коллег… Умение тащить себя «по-мюнхаузеновски за волосы», снова влюбляться в технологии, увлекаться чем-то новым [вообще и/или для себя, может быть - смежной областью], имхо, не просто является важным качеством профессионала, но, на самом деле, помогает разработчику выжить в капитализме, оставаясь не только внешне востребованным, конкурентоспособным с наступающей на пятки молодежи, но, прежде всего, давая энергию и движение изнутри. Иногда приходится слышать что-нибудь вроде: «а вот мой бывший говорил, что если бы можно было не кодить, он бы не кодил!». Да и нынешняя молодежь осознала что в сегодняшней ситуации «честно и нормально» зарабатывать можно только в айти, и уже стоят толпою на пороге HR-отдела... Не знаю, мне нравилось кодить с детства, а кодить хочется что-нибудь если не полезное, то хотя бы интересное. Короче, я далеко не геймер, но в моей жизни было несколько коротких периодов когда я позорно «загамывал». Да само увлечение компьютерами в детстве началось, конечно же, с игр. Я помню как в девяностые в город завезли «Спектрумы». Есть тогда было часто практически нечего, но отец все-таки взял последние деньги из заначки, пошел, отстоял невиданно огромную очередь и приобрел нам с братом нашу первую чудо-машину. Мы подключали его через шнур с разъемами СГ-5 к черно-белому телевизору «Рекорд», картинка тряслась и моргала, игры нужно было терпеливо загружать в оперативную память со старенького кассетного магнитофона [до сих пор слышу ядовитые звуки загрузки], часто переживая неудачи... Несмотря на то что ранние программисты и дизайнеры умудрялись помещать с помощью своего кода в 48 килобайт оперативной памяти целые миры с потрясающим геймплеем, мне быстро надоело играть и я увлекся программированием на Бейсике)), рисовал спрайтовую графику (и векторная «трехмерная» тогда тоже уже была, мы даже купили сложную книжку), писал простую музыку в редакторе... Так вот, некоторое время назад мне опять все надоело, была пандемийная зима и на велике не покататься, рок-группа не репетировала… Я почитал форумы и установил себе несколько более-менее свежих популярных игр, сделанных на Unity или Unreal Engine, очевидно. Мне нравятся РПГ-открытые миры-выживалки, вот это все... После работы я стал каждый вечер погружаться в виртуальные миры и рубиться-качаться, но хватило меня ненадолго. Игры все похожи по механикам, однообразный геймплей размазан по небольшому сюжету на кучу похожих заданий с бесконечными боями… Но самое смешное - это реально безбожно лагает в важных механиках. Лагают коммерческие продукты которые продают за деньги… А любой «баг», имхо, это сильное разочарование - он мгновенно выносит из виртуальной среды, цифровой сказки в реальный мир… Конечно, отличная графика, очень круто нарисовано. Но, утрируя, я понял что все эти поделки на энтерпрайзных движках, по сути - даже не кодят. Их собирают менеджеры и дизайнеры, просто «играясь с цветом кубиков», но сами кубики, при этом практически «не меняются»... Вообщем, когда стало совсем скучно, я подумал что «а я ведь тоже так могу», да прямо в браузере на богомерзком не предназначенным для экономии памяти серьезного программирования джаваскрипте. Решил наконец полностью соответствовать тому что все время с умным видом повторяю сыну: «уметь делать игры, намного интереснее чем в них играть». Одним словом, я задался целью написать свой кастомный браузерный FPS-шутер на открытых технологиях.

Читать далее

О нейропротезах

Время на прочтение6 мин
Охват и читатели5.4K

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

Читать далее

Трискутеры, джетпаки, левитирующие лифты, подвесные кресла или движущиеся тротуары?

Время на прочтение6 мин
Охват и читатели4K

Трискутеры, джетпаки, левитирующие лифты, подвесные кресла или движущиеся тротуары? По какому пути будет развиваться городская транспортная инфраструктура

Читать далее

Встречаем Meteum 2.0 — первую технологию метеопрогноза, алгоритмы которой обучаются на сообщениях пользователей

Время на прочтение5 мин
Охват и читатели45K

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

Сегодня мы начинаем раскатывать новую версию прогнозирования осадков в Яндекс.Погоде. Ключевое изменение — внедрение технологии Meteum 2.0, которая впервые в истории метеопрогноза полагается не только на данные технических средств, но и на сообщения пользователей. В это сложно поверить, но сигналы пользователей оказались не менее полезны для качества прогнозов, чем данные радаров и спутников. Благодаря этому краткосрочный прогноз осадков стал точнее на 20%, а значит, люди будут реже попадать под дождь.

Присаживайтесь поудобнее — сейчас расскажу обо всём по порядку. 

История про погоду и людей