• Планарный трансформатор: технология, расчеты, стоимость

      Не так давно ко мне обратилась одна компания, которой необходимо было разработать линейку LED-драйверов. Название компании и ТТХ драйверов называть не буду, NDA не подписывал, но этика есть этика. Вроде бы обычный заказ на драйвер, каких десяток за год набирается, но было два взаимоисключающих требования: стоимость и габариты.

      Задача с точки зрения схемотехники простая, но вот с точки зрения производства и конструирования оказалась очень интересной. И так — требовалось изготовить сетевой драйвер для LED с корректором коэффициента мощности (мощность около 100 Вт), который стоил был в пределах 3$ на серии и имел габариты по высоте не более 11 мм! Многие скажут: «А в чем проблема сделать дешманский драйвер?», вот только дешманский не прокатит, т.к. еще одно требование — возможно давать без опасений 5 лет гарантии. И вот тут начинается самое интересное.

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

      Если вам интересно между чем и чем делался выбор, на каких аргументах он основывался и как удалось получить стоимость трансформатора меньше 0.5$, то приглашаю вас в подкат. Ну и для улучшения «аппетита» прилагаю вам фото готового трансформатора:


      Читать дальше →
    • Приёмы геймдизайна: перемешивание

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


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

      Но если карты не меняются, игрок может изучить и запомнить их. А запомнив то, что срабатывало в предыдущем прохождении, вы можете просто повторять те же действия в следующих. Со временем все сложные стратегические решения, принимаемые в игре, разрушаются и превращаются в головоломку с запоминанием. По этой причине у игр со статичными картами часто возникает проблема реиграбельности.
      Читать дальше →
    • Революция в радиотехнике? RF-ARM-FPGA SoC


        Компания Xilinx тихо и без лишней помпы анонсировала продукт, который может полностью изменить облик и процесс разработки современных радиоприемников и передатчиков. Это маленькая микросхема, которая объединяет 90% вопросов обработки и формирования радиосигналов:

        • программируемая логика (FPGA),
        • процессоры для обработки сигналов и пользовательских приложений (два ARM’а),
        • до восьми 12-разрядных АЦП с частотой дискретизации до 4 ГГц (!),
        • до восьми 14-разрядных ЦАП с верхней частотой до 6.4 ГГц (!).

        Кажется мы входим в эпоху, когда архитектура трансивера становится такой же универсальной, как архитектура современного ПК. Make SW, not HW!
        Читать дальше →
      • Монитор качества воздуха в помещении

          image

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

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

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

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

          Но этого недостаточно. Нужен прибор которым вы могли-бы непосредственно померять качество воздуха в вашем доме. Что бы Вам было понятно и очевидно чем Вы дышите. Как температура на градуснике.
          Читать дальше →
        • Почему нельзя отправлять UDP-пакеты через браузер?

          • Перевод

          Введение


          В 2017 году большинство популярных веб-игр типа agar.io использует для передачи данных WebSockets через TCP. Если бы в браузерах был встроенный UDP-аналог WebSockets, то это бы сильно улучшило работу с сетями в этих играх.

          Вводная информация


          Работа веб-браузеров основана на протоколе HTTP (протоколе запросов и ответов без сохранения состояния). Первоначально он был предназначен для обслуживания статичных веб-страниц. HTTP работает поверх TCP, низкоуровневого протокола, гарантирующего надёжную доставку и правильный порядок передаваемых по Интернету данных.

          Всё это отлично работало многие годы, но недавно веб-сайты стали более интерактивными и перестали отвечать парадигме «запрос-ответ» протокола HTTP. Для решения этой проблемы изобретены современные веб-протоколы, такие как WebSockets, WebRTC, HTTP 2.0 и QUIC, имеющие потенциал значительного улучшения интерактивности сети.

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

          Это вызывает разочарование у разработчиков игр, ведь они просто хотят иметь возможность отправлять и принимать UDP-пакеты через браузер.
          Читать дальше →
        • Список команд чата Skype

            ...Skype — это дьявольски хитрая программа, написанная бесспорно талантливыми людьми...Крис Касперски

            Доброго времени суток!

            Skype сейчас я встречаю чаще на компьютерах чем другие IM клиенты, мне он практически заменил icq, вся рабочая переписка ведется в skype, но речь пойдет не о том, что лучше или популярней. Часто бывает так, что участвуешь сразу в нескольких чатах где количество участников превышает 10, что собственно и приводит к тому, что на рабочем столе и в трее постоянно обновляется количество новых сообщений, а также уведомления в виде всплывающих сообщений, а теперь представьте что у вас 3 окна чата с друзьями, 1 с вашим боссом, другой с девушкой — все это в сумме начинает запутывать, отвлекать и порой раздражать. Хотелось бы расставить приоритеты…

            Раньше я чаще всего настраивал «политику» уведомлений только через глобальные настройки программы
            Случилось так, что я узнал, что в каждом окне чата skype возможно использование команд, например /alertsoff отключит уведомления для конкретного окна чата, соответственно /alertson включит их обратно.
            Поискав немного я наткнулся на некое how-to, оказывается у skype чата довольно много текстовых команд, подобие IRC команд. Далее я постарался попробовать все возможные из них на двух имеющихся у меня платформах, как оказалось не все и не везде работает… Прошу под кат.

            Читать дальше →
          • Локальный мультиплеер в Unity с помощью Unet

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

              Читать дальше →
              • +21
              • 12,7k
              • 1
            • 2D магия в деталях. Часть четвёртая. Вода


                — Я тут воду для проекта запилил.
                — О, круто! А почему она плоская? Даёшь волны!

                — Слушай, ты тогда про волны говорил, помнишь? Зацени!
                — Да, хорошие волны, а преломление и каустику ещё не делал?

                — Привет, я тут игрался с Unity всю ночь, смотри какие отражения и каустику закодил!
                — Дарова, и правда, хорошо! А когда у тебя вода кипит, отражения не глючат?

                — Хай, реализовал наконец, кипение, вроде ничего?
                — О, прямо как нужно! Слушай, прикинь как круто, если кипящую волну заморозить?

                — Лови картинку, лёд вроде ничего придумал?
                — Норм, слушай, а у тебя лёд замерзает, он в объёме увеличивается? И кстати, ты когда геймлей то делать начнёшь?
                Вариации на тему лога с другом.

                Да, вы уже поняли, наконец-то расскажу про реализацию воды в проекте. Приступим?

                Читать дальше →
              • Типы багов: этимология и энтомология

                Какие бывают баги


                1. Немного этимологии и энтомологии
                Давайте посмотрим попристальней на такое знакомое и (до боли?) родное слово БАГ. Происходит оно от английского слова Bug, означающего «насекомое». Есть еще много сторонних значений, в частности английское выражение «to go bugs» — сойти с ума, что легко кореллируется со вполне русским «тараканы в голове завелись». Также вспоминаются и «жучки на линии» (тоже, кстати, по-английски – bugs). И опять мы пришли к насекомым.
                Читать дальше →
              • Программирование&Музыка: понимаем и пишем VSTi синтезатор на C# WPF. Часть 1

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


                Я планирую несколько статей, в которых будет пошагово рассказано, как написать свой VST плагин/инструмент: программирование осциллятора, частотного фильтра, различных эффектов и модуляции параметров. Упор будет сделан на практику, объяснение программисту простым языком, как же все это работает. Теорию (суровые выводы и доказательства) обойдем стороной (естественно, будут ссылки на статьи и книги).


                Обычно плагины пишутся на C++ (кроссплатформенность, возможность эффективно реализовать алгоритмы), но я решил выбрать более подходящий для меня язык — C#; сфокусироваться на изучении самого синтезатора, алгоритмов, а не технических деталей программирования. Для создания красивого интерфейса я использовал WPF. Возможность использования архитектуры .NET дала возможность библиотека-обертка VST. NET.


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



                Предстоит нелегкий путь, если вы готовы — добро пожаловать под кат.


                Читать дальше →