Сегодня очень немного было поздравлений с профессиональным праздником некоторых гиков, хотелось бы поднять настроение себе и остальным, достать что-то такое любимое теплое ламповое… И да! это будет приятный человеческому глазу зелёный осциллограф.
Как все знают, прибор осциллограф очень простой, обычно используется для наблюдения сигналов в реальном (теперь уже и не только) времени, осциллографы развиваются, становятся цифровыми, но так было не всегда. К сожалению, первое поколение осциллографов с приятным аналоговым зелёным цветом вымирает, а ещё столько всего можно с ними сделать. Так почему бы не сегодня.
Кроме того, чтобы показывать сигналы, на нем хотелось бы получить что-то более осязаемое и почему бы это не Bad Apple, и почему бы не «простым» каким-то способом.
Идея пришла в голову предельно простая (каемся, что она даже уже где-то описана), использовать VGA видеовыход, а именно цветные сигналы R, G, B для кодирования положения луча. Один, например, R использовать для отклонения луча по X, второй G для Y, а B — для отключения луча, во время обратного хода строки и кадра.
Но Bad Apple сам по себе растровый-растровый, а нужно его перевести в вектор. Так как мы не в раз не программисты, посыпая голову пеплом, решили забивать гвозди микроскопом, а именно взяли матлаб и с помощью функции bwtraceboundary выделили контура растровых объектов, декодировали, отфильтровали, а получившиеся вектора обошли. Что-то подфильтровали.
И, на наше удивление получили довольно четкий контур. Для радиотехников, которые скорее на «вы» по обработке изображений, без глубоких копаний в математику — был очень даже прогресс.
Далее полученные вектора перегнали в обход луча, а уже луч растянули на вот такое растровое изображение кадра. Это та же картинка, что и выше, но уже цветом закодировано положение точки на изображении.
Дальше 16 мегабайтный исходный Bad Apple был перегнан в 13ГБайтный Green Apple c вот таким результатом =)))
С Днем Радио, коллеги! не знаем как вы, но по крайней мере этот день мы провели в окружении теплой ламповой техники.
P.S.: Некоторые могут правильно заметить, что C1-94 не имеет возможности смещения луча по Х, изображение должно было быть смещено на пол-экрана вправо, но это не монтаж, для смещения добавлен внешний операционный усилитель.
Ну и в качестве некоторой полезности, зачем это может понадобиться.
Самый приятный бонус — это возможность сделать для себя зелёные часы, которые в заголовке статьи, ещё бы оснастить будильником и был бы вообще класс, я бы поставил у себя дома, несмотря на габариты.
Ещё один приятный бонус, когда есть возможность сформировать точную развертку на экране осциллографа — это довольно детальный замер времени экспозиции видео или фотокамеры.
Для примера, если сформировать вот такую развертку:
где каждый штрих — это 10мкс, можно с точностью около 5мкс определять длительность экспозиций, при этом длительностью единицы миллисекунд, если создать несколько таких таблиц, то можно измерять экспозиции камеры в разных интервалах от единиц микросекунд до примерно до 1/25 секунды (и даже больше).
Выглядит замер на видеокамере примерно так:
здесь экспозиция составила 520мкс. К сожалению, немного мешает послесвечение люминофора, но это вопрос практики и выбора осциллографа с минимальным послесвечением.
Так что вот так =) надеюсь, было интересно и хотя бы немного скрасило будни серого карантина.
Ваши Pyhesty, которому пришла идея и Алексей, который реализовал прекрасное Зеленое Яблоко на C1-94.
И Воистину Попов! =)
Как все знают, прибор осциллограф очень простой, обычно используется для наблюдения сигналов в реальном (теперь уже и не только) времени, осциллографы развиваются, становятся цифровыми, но так было не всегда. К сожалению, первое поколение осциллографов с приятным аналоговым зелёным цветом вымирает, а ещё столько всего можно с ними сделать. Так почему бы не сегодня.
Кроме того, чтобы показывать сигналы, на нем хотелось бы получить что-то более осязаемое и почему бы это не Bad Apple, и почему бы не «простым» каким-то способом.
Bad Apple
Идея пришла в голову предельно простая (каемся, что она даже уже где-то описана), использовать VGA видеовыход, а именно цветные сигналы R, G, B для кодирования положения луча. Один, например, R использовать для отклонения луча по X, второй G для Y, а B — для отключения луча, во время обратного хода строки и кадра.
Но Bad Apple сам по себе растровый-растровый, а нужно его перевести в вектор. Так как мы не в раз не программисты, посыпая голову пеплом, решили забивать гвозди микроскопом, а именно взяли матлаб и с помощью функции bwtraceboundary выделили контура растровых объектов, декодировали, отфильтровали, а получившиеся вектора обошли. Что-то подфильтровали.
И, на наше удивление получили довольно четкий контур. Для радиотехников, которые скорее на «вы» по обработке изображений, без глубоких копаний в математику — был очень даже прогресс.
Далее полученные вектора перегнали в обход луча, а уже луч растянули на вот такое растровое изображение кадра. Это та же картинка, что и выше, но уже цветом закодировано положение точки на изображении.
Дальше 16 мегабайтный исходный Bad Apple был перегнан в 13ГБайтный Green Apple c вот таким результатом =)))
С Днем Радио, коллеги! не знаем как вы, но по крайней мере этот день мы провели в окружении теплой ламповой техники.
P.S.: Некоторые могут правильно заметить, что C1-94 не имеет возможности смещения луча по Х, изображение должно было быть смещено на пол-экрана вправо, но это не монтаж, для смещения добавлен внешний операционный усилитель.
Ну и в качестве некоторой полезности, зачем это может понадобиться.
Самый приятный бонус — это возможность сделать для себя зелёные часы, которые в заголовке статьи, ещё бы оснастить будильником и был бы вообще класс, я бы поставил у себя дома, несмотря на габариты.
Ещё один приятный бонус, когда есть возможность сформировать точную развертку на экране осциллографа — это довольно детальный замер времени экспозиции видео или фотокамеры.
Для примера, если сформировать вот такую развертку:
где каждый штрих — это 10мкс, можно с точностью около 5мкс определять длительность экспозиций, при этом длительностью единицы миллисекунд, если создать несколько таких таблиц, то можно измерять экспозиции камеры в разных интервалах от единиц микросекунд до примерно до 1/25 секунды (и даже больше).
Выглядит замер на видеокамере примерно так:
здесь экспозиция составила 520мкс. К сожалению, немного мешает послесвечение люминофора, но это вопрос практики и выбора осциллографа с минимальным послесвечением.
Так что вот так =) надеюсь, было интересно и хотя бы немного скрасило будни серого карантина.
Ваши Pyhesty, которому пришла идея и Алексей, который реализовал прекрасное Зеленое Яблоко на C1-94.
И Воистину Попов! =)
drWhy
Молодцы, это круче
Pyhesty Автор
как они это вывели интересно… на лету или это отдельно рендер записи?..
drWhy
Вроде бы специальный драйвер для Квейка написали, который транслировал геометрию.
Hannnn
Quake на осциллографе
Pyhesty Автор
«Как пишет Вяанянен, производительность всё равно осталась на неудовлетворительном уровне. Максимально получается одновременно отрисовывать меньше 1000 линий. Большее количество требует болеее высокой частоты звука, чем это может предоставить текущий аудиовыход.»
да… 96кГц… это мало…
им не хватило производительности аудио-порта…
с другой стороны, если бы они сразу догадались использовать VGA, то было бы не так винтажно =)
tormozedison
Вот это уже реально что-то новое, к двум стереоканалам звуковой карты осциллографы много раз подключали, а к VGA — вы точно первый.
iliasam
Я вот такое встречал: hackaday.com/2019/01/17/sharpest-color-crt-display-is-monochrome-plus-a-trick
Использован интересный конвертер USB-VGA на чипе FL2000, который можно использовать как скоростной ЦАП, причем без ограничений на синхросигналы: osmocom.org/projects/osmo-fl2k/wiki/Osmo-fl2k/22
Pyhesty Автор
круто, но очень сложно и малодоступно…
и почему-то кажется, то хорошо будет отображаться только статическая картинка, но может быть ошибаюсь…
ps: мы вообще в начале подключили на rigol MSO2302A-S, вообще не те ощущения как от луча на ламповом осцилле…
tormozedison
Даже не знал, что существуют конвертеры USB-VGA.
Dimsml
Так это те же дешёвые VGA-видеокарты, которые только умеют изображение выводить и ничего более.
tormozedison
А собственная видеопамять там есть, или компьютеру приходится генерировать видеосигнал на лету и отправлять в эту штуку, а там внутри только ЦАПы?
iliasam
Есть разные типы конвертеров. Конвертеры от DisplayLink имеют видеопамять и могут работать через USB2. Те, что на чипе FL2000, видеопамяти не имеют, работают только через USB3. В этих конвертерах синхроимпульсы можно отключить, и формировать стабильный сигнал (без разрывов во время синхроимпульсов).
tormozedison
Напомнило некоторые принтеры конца девяностых, где часть функций встроенного контроллера переложена на компьютер. Пользователи, не отказавшиеся от DOS, а в конце девяностых таковых ещё довольно много было, печатать на таких принтерах не могли.
Muzzy0
Ещё модемы такие были.
dlinyj
Я подключал VGA и даже использовал просто как внешний VGA-монитор, но только с осцилоскопом с Z-входом. Это не сложно.
tormozedison
Это вообще гениально просто, никакой программной поддержки не требуется, только аппаратные устройства — два генератора пилы и видеоусилитель. Тоже такие проекты видел. Один из них — вообще баян.
electronixandmore.com/projects/vgatoscope/index.html
Даже собрать одно время хотел такой, но как подумал, что придётся в осциллограф добавлять канал яркости, ну и забросил.
dlinyj
Усилитель на одном быстром транзисторе. Всё работало. Фотки за давностью лет, увы не найдут.
snipsnap
Bad Apple на осциллографе??? На хабре??? Что-то это мне напоминает…
Ах да, 2013 год:
Мультфильм на осциЛЛографе
Тогда то я и познакомился с этой прекрасной композицией. Неужели прошло уже 7 лет !?!?
Из описания к видео можно попась на 2 статьи на хабре с описанием принципа работы:
Лазерное шоу своими руками. Часть 1
Лазерное шоу своими руками. Часть 2
igormu
А видео, на которое ссылается статья, от 2010 года
trapwalker
А потом лет через 5 выяснится, что ребята с другого хаба уже 15 лет снимают таймлапсом bad apple через спутник выкладывая кадры мешками с песком на огороде.
BubaVV
Pyhesty Автор
просто умопомрочительно =0
real demo — это не достижимый уровень… =)))
ps: дважды пересмотрел — это просто зашквар такое создать)))
SadOcean
Не факт, что это сделано реально — такого эффекта можно было бы достигнуть, выложив монеты сеткой, потом нарезать на большое полотно пикселей (части фотографий, на которых включены/выключены монеты) и программно анимировать.
Выглядит логично, особенно учитывая, что если бы это делалось руками по рисункам, а все таки выстраивалось по сетке.
Но все равно симпатично, конечно.
BubaVV
У них несколько таких больших таймлапсов в разном стиле, где-то выкладывали бекстейдж — проектором подсвечивают кадр, делают все что надо, выключают проектор и делают кадр
Pyhesty Автор
=)))
Ну да, Bad Apple — это такой уже признанный культ)
Спасибо за ссылки — не видели)
А коллеги ранее очень серьезно постарались, но если сравнивать, то нужно сравнить реализацию, у нас «на коленке» получилось собрать за пару минут «модулятор» с полосой гарантированно выше полосы осциллогарафа, потенциально по каждому каналу 1920х1080х60 = 124+МГц., у коллег, которые реализовали Кваку были каналы по 98кГц, по ссылкам выше не более 1-10МГц. Ну и наш вариант вывода изображения доступен даже школькику, а для вывода изображения, достаточно скрутить провода VGA кабеля =)
Ту же самую кваку или дум можно выводить не погружаясь в код, а написав относительно простой шейдер или что-то с захватом экрана, теперь полоса позволяет.
snipsnap
Я не пытаюсь принизить ваши усилия. Каждая реализация хороша по-своему.
Pyhesty Автор
аналогично, тк коллеги по ссылкам выше очень и очень постарались,
а у нас реализация в виде хобби на один вечер, но зато можно легко повторить,
и даже может у кого-то будут ещё идеи как использовать (сам по себе умирающий VGA стандарт можно использовать как высокоскоростной, качественный с широкой полосой аналоговый выход для различных применений)
ps: просто развернуто ответил в чем разница реализаций… =)
MaximPL
А почему на gif КДПВ нет времени 6:13?
Pyhesty Автор
потому, что есть время 5.60 =)
ps: ну это если кому-то не нравится число 13, например, как мне, могут сделать собственные часы)
jok40
OK. А почему тогда на КДПВ нет времени 06:07? :)
Pyhesty Автор
а кадры наложились 6 и 7 =) смазались =) частота съёмки фотоаппарата не совпала с частотой часов =)
dlinyj
Вот настоящий хабраторт. Мой респект!
klinovadel
«Так как мы не в раз не программисты» напрашиваетесь на комплименты) это отличный уровень, ребят!
Pyhesty Автор
железячники =)
Muzzy0
Круто.
alexzeed
Вспомнил детство :) Осциллограф ламповый ЭО-какой-то, отец где-то списанный раздобыл, самодельный генератор двух пил, строчный усилитель вольт кажется до 20, с подачей выхода прямо на пластины, был там на задней стенке для этого вход. Потому что родной X усилитель 15 кГц пилу похабил сильно, полосы не хватало. Вход гашения луча тоже был. Все это на транзисторах и детской интуиции по части схемотехники и режимов, видеоусилитель тоже — готовых таких решений в журналах не было, хорошо хоть сами журналы (Радио, МК, ЮТ) были. Все детали — выпаянные из бережно собираемого мной радиомусора, кажется только транзистор видеоусилителя новый, не помню откуда в закромах взялся. Ну и на входы — клон Спектрума и Flying Shark :)