В этой статье я расскажу о том, как я делал самодельный SDR GPS приемник на микроконтроллере. SDR в данном случае означает, что приемник не содержит готовых GPS-модулей или специализированных микросхем для обработки GPS сигналов - вся обработка "сырых" данных выполняется в реальном времени на микроконтроллере (STM32 или ESP32).
Зачем я это сделал — просто Just for fun, плюс - получение опыта.
Пользователь
Февка — некрупная высокотемпературная горелка почти из ничего. Применение в стеклодувном деле
Существует целый ряд технических забав, доступ к которым любителям затруднён из-за требующегося изрядного оснащения. Взять то же стеклодувное дело — натурально, огненная мистерия с вашим (нашим) непосредственным участием, да и стеклянные работы как сон наяву. Однако нужна вся эта прорва пугающего специфического оборудования, и в первую очередь — горелки-шланги-баллоны. Без которых, разумеется, не обойтись при более или менее крупных работах и применении тугоплавкого стекла. Для обработки же небольших заготовок из стёкол относительно легкоплавких, например, «платинового», можно с успехом применить простейшую самодельную горелку-февку, оснастив её отражателем пламени. А используя ещё и широкий мягкий подогревный огонь, можно попробовать заготовки покрупнее.
L-Systems — математическая красота растений
В 1968г. Венгерский биолог и ботаник Аристид Линденмайер (Aristid Lindenmayer) предложил математическую модель для изучения развития простых многоклеточных организмов, которая позже была расширена и используется для моделирования сложных ветвящихся структур — разнообразных деревьев и цветов. Эта модель получила название Lindenmayer System, или просто L-System.
Для тех, кто в теме и не хочет все читать целиком, проскрольте вниз, есть вопрос.
Микроконтроллеры по 5 рублей. Программируем микросхемы PADAUK
Впервые известие о том, что фирма PADAUK Tech продаёт микроконтроллеры по три цента появилось в 2018 году. Эта новость вызвала интерес и обсуждение на форумах, а затем благополучно была забыта (по крайней мере в русскоязычном комьюнити).
В статье расскажу о своём опыте освоения микроконтроллеров PADAUK. Кратко рассмотрим особенности архитектуры, средствах разработки и отладки, посмотрим что нужно учесть перед тем как использовать эти микросхемы в своих проектах. Протестируем микроконтроллер PFC161 на отладочной плате.
Пишем свою библиотеку для I2C OLED микродисплея 128х32px
Недавно я обратил свой взгляд на небольшой, но весьма привлекательный OLED микродисплей, который можно вполне успешно применять в своих самоделках, одна беда — известные библиотеки для него поддерживают только латинский шрифт. Ситуация усугубляется тем, что я использую его для подключения к esp32, а не Arduino. Поэтому arduino-библиотеки можно сразу отбросить. Что с этим делать и как дальше жить, об этом мы и поговорим в этой статье.
Экспериментируем с ПЛИС семейства ECP5 фирмы Lattice
Когда я видел на Хабре упоминание о ПЛИС Lattice, у меня всегда возникал простой вопрос: «А зачем ещё одна ПЛИС?». Вроде всю жизнь хватало пары базовых. Но полгода назад случилось то, что сняло этот вопрос для меня. Пришёл Заказчик и сказал: «Мы делаем проект на ECP5». Против требований Заказчика не попрёшь!
А пока я осваивал работу с этим железом и пытался понять, как обосновать необходимость попробовать то же самое для остальных, мой знакомый, ныне живущий в Штатах, обрадовал новостью, что у его любимого поставщика подходит к концу запас десятых Циклонов и шестых Спартанов. В целом, через три года будет построен новый завод Intel, но что именно там будут производить, он не в курсе. И три года продержаться в любом случае, будет нужно. Короче, сейчас надо иметь возможность быстро мигрировать с одной ПЛИС на другую.
Итого, вчера делать ознакомительную статью про Lattice было рано, завтра – может быть поздно.
Сегодня я расскажу, где купить более-менее дешёвые платы для опытов, как быстро освоить Open Source среду разработки и какие готовые проекты осмотреть в первую очередь.
Как разрезать полметра стали, в домашних условиях, почти бесшумно — используя электричество?
Со времён знакомства человека с металлом началась эпопея по его обработке. Так как прочность материала не позволяет легко изменять его форму и свойства, человечество придумало множество подходов, технологических процессов и инструментов для работы с металлом.
Однако проблема заключается в том, что для обработки такого непростого материала требуется использование соответствующих сложных процессов и дорогих инструментов, которые к тому же достаточно быстро приходят в негодность. Дело осложняется ещё и тем, что некоторые виды обработки в принципе недостижимы стандартными способами. Однако существует интересная альтернатива стандартным подходам — электроэрозия, о чём мы и поговорим в этой статье.
Измеряем плотность плазмы в проекте геликонного двигателя
В 2016 году Хабр рассказал о старте проекта Курчатовского института по созданию прототипа безэлектродного плазменного ракетного двигателя (БПРД) мощностью 100 кВт. Сегодня этот проект выходит на финишную прямую, и пора измерять плотность плазмы и ускорение ионов, чтобы подобрать оптимальные режимы двигателя. Ведь двигателю придется работать на орбите десятки, а то и сотни часов, и фактическая плотность плазмы должна соответствовать расчетной для достижения требуемых параметров тяги и ресурса.
Раскладываем по полочкам параметры АЦП
Предобучение нейронной сети с использованием ограниченной машины Больцмана
Реализация Restricted Boltzmann machine на c#
Делаем встраиваемый полифункциональный зарядник
Попытаемся сделать зарядник 300 Вт с КПД 99% из тех деталей которые еще остались в стоках интернет-продавцов. Продумаем архитектуру. Cоздадим схему. Проведем симуляцию в LTSpice и Microcap. Научимся технологии оптимизации в симуляторе. Найдем применение методу Monte Carlo. Посмотрим на трассировку. Попробуем сравнительно новую фишку Altium Designer - PDN Analyzer.
Неклассические контейнеры в C++
Контейнер - это объект, используемый для хранения других объектов. Контейнер берет на себя управление всей памятью, которые эти объекты занимают.
В стандартную библиотеку C++ входит несколько контейнеров. Кроме этого, в Open Source есть несколько контейнеров, которые покрывают больше юзкейсов. Я опишу устройство интересных контейнеров вне STL и их отличия от классических контейнеров.
Делаем лампочку вечной и суперэффективной
Получится лампа, дающая 816 лм, с рекордной эффективностью почти 150 лм/Вт и почти неограниченным сроком службы.
Согласование импедансов: переходные процессы и переходные отверстия
Переходное отверстие, поставленное в определённой точке печатной платы, может как серьёзно навредить сигналу, так и наоборот, устранить негативное влияние других элементов топологии на сигнал. Для любителей электроники, недавно столкнувшихся со «звоном» и необходимостью согласовывать импедансы, далеко не все эффекты, связанные с наличием переходных отверстий, могут быть очевидны. О подобных эффектах и пойдёт речь в данной статье.
STM32 и LCD2004A без I2C интерфейса
Для начала необходимо подключить дисплей к контроллеру. Подключаем по схеме:
PB0 — PB7 — выводы контроллера.
Через тернии к Haskell. 1/2
Первая часть короткого и жесткого введения в Haskell. Вторую часть можно найти здесь
tl;dr: Очень краткое и сжатое введение в Haskell.
- Введение
- Необходимый минимум из Haskell
- Сложная часть
UPD. Если туториал вам понравился, черкните пару строк автору оригинальной статьи. Человеку будет приятно ;)
Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 1 из 6
Содержание курса
- Статья 1: алгоритм Брезенхэма
- Статья 2: растеризация треугольника + отсечение задних граней
- Статья 3: Удаление невидимых поверхностей: z-буфер
- Статья 4: Необходимая геометрия: фестиваль матриц
- Статья 5: Пишем шейдеры под нашу библиотеку
- Статья 6: Чуть больше, чем просто шейдер: просчёт теней
Улучшение кода
Official translation (with a bit of polishing) is available here.
Постановка задачи
Цель этого цикла статей — показать, как работает OpenGL, написав его (сильно упрощённый!) клон самостоятельно. На удивление часто сталкиваюсь с людьми, которые не могут преодолеть первоначальный барьер обучения OpenGL/DirectX. Таким образом, я подготовил краткий цикл из шести лекций, после которого мои студенты выдают неплохие рендеры.
Итак, задача ставится следующим образом: не используя никаких сторонних библиотек (особенно графических) получить примерно такие картинки:
Внимание, это обучающий материал, который в целом повторит структуру библиотеки OpenGL. Это будет софтверный рендер, я не ставлю целью показать, как писать приложения под OpenGL. Я ставлю целью показать, как сам OpenGL устроен. По моему глубокому убеждению, без понимания этого написание эффективных приложений с использованием 3D библиотек невозможно.
19 видов льда
Лёд взрывается, тонет в воде, проводит ток, генерирует мощное магнитное поле.
Мой друг в детстве приклеивал на капельку пластилина таракана на дно формочки для льда, заливал водой и замораживал. Потом швырял ледяные кубики с начинкой в стену и кричал «Я — Сабзиро!» А я всё время выбирал Глациуса в Killer Instinct, потому что изящный. В «Семиевии» из льда на астероиде построили реактивный двигатель и льдом же его топили. Ну и, конечно же, «Колыбель для кошки». А тем временем в реальности…
Аргоннская национальная лаборатория в 1980 придумала технологию ледяной гидросмеси (ice slurry), которая не образует ледяные наросты, не слипается, течет по трубам и в 5-7 раз эффективнее простой воды для охлаждения.
Микрокристаллы льда «ледяная кровь» хорошо проникают в маленькие кровеносные сосуды без вреда для клеткок. При остановке сердца время для спасения пострадавшего теоретически может увеличиться с 10 до 45 минут.
Д. Пайк предложил добавить в лед опилки и из этого композита (пайкерита) сделать… авианосец.
Чуток копнув, я узнал, насколько глубока ледяная кроличья нора.
Раздача научного софта. Бесплатно
Так уж получилось, что до того, как стать физиком, я хотел быть программистом. Не сложилось, но тяга писать программки не прошла. Как результат — за 15 лет работы в науке, было написано приличное количество разнообразного прикладного софта. Конечно, большая часть была совершенно одноразовой, и мотивацией для ее написания была фраза из мультика — «лучше день потерять, потом за пять минут долететь». Но некоторые вещи оказались долгоиграющими, пошли «в народ», кое-что даже продается. Для продажи этого «кое-чего» даже был создан сайт, ориентированный на «заграницу», но это было сделано больше ради эксперимента, а не с целью заработать какие-то реальные деньги, тем более что софт по большей части очень специфический, и спрос на него не велик. Но хватит о коммерции.
Я бы хотел совершенно безвозмездно поделиться частью своих наработок (тем, что не очень стыдно показать) с хабрасообществом, в надежде, что они могут оказаться полезными для молодых (и не очень) ученых, аспирантов и студентов, и кто-то сможет использовать их в своей работе. Вашему вниманию предлагается следующее (в порядке возрастания специфичности):
- SciRef — менеджер цитирований.
- AFM Vision — удобная визуализация данных атомно-силовой микроскопии.
- Raman 2D — построение карты распределения интенсивности Рамановского излучения.
- X-Ray Calc — симуляция рентгеновской дифракции тонких пленок.
Подробное описание возможностей, скриншоты (много) и ссылки — под катом.
Информация
- В рейтинге
- 5 108-й
- Зарегистрирован
- Активность