Базовые возможности стенда «ОВКС»
Лебедев Валентин Павлович
кандидат физико-математических наук, старший научный сотрудник Института солнечно-земной физики СО РАН
Как устроен и какие возможности открывает стенд «Оптомеханическая визуализация кодирования сигналов»? Коды, сигналы, корреляционные функции, визуализация сигналов обо все этом вы узнаете в этой теме.
#комплексБТС #ПрограммноАппаратныйКомплекс #ТБС #ТехнологииБеспроводнойСвязи #ПередачаДанных
Сегодня мы познакомимся со стендом «Оптомеханическая визуализация кодирования сигналов» профиля “Технологии беспроводной связи” и разберемся, как он работает.
Вы видите стенд, на котором расположены устройства с шестеренками. Шестерёнки вращаются. Запустить стенд можно как с помощью кнопки, расположенной на нём, так и программно.
На стенде есть ведущая
шестерёнка и три ведомых. В работе стенда можно использовать шестерёнки одинакового или разного диаметра. В данном случае в видео вы видите, что используются шестерёнки разного диаметра. Обратите внимание, что шестерёнки имеют характерный узор. У
шестерёнок есть характерное окошечко. Окошечко сделано для того, чтобы иметь возможность обеспечить прохождения инфракрасного сигнала через это самое окошечко.
Давайте разберемся, как работает блок-энкодеров, на котором закреплены эти шестерёнки. С левой и с правой стороны находятся характерные отверстия. Со стороны, где закреплена шестерёнка, расположено три светодиода. Как вы видите, три светодиода расположены в радиальном направлении. Вот таким образом, у нас источник инфракрасного сигнала распределённый, он не точечный, он распределён вдоль радиуса шестерёнки.
С другой стороны, вы можете видеть фотодиоды, которые улавливают этот самый инфракрасный сигнал, который излучает светодиод. Таким образом, когда шестерёнка поворачивается, и между этими устройствами, между светодиодом и фотодиодом, появляется стенка, то сигнал не проходит. Если появляется окошко, сигнал проходит и регистрируется на фотодиоде. Таким образом, рисунок на шестерёнке осуществляет модуляцию (ещё говорят амплитудную модуляцию) сигнала, который передаётся светодиодом и улавливается фотодиодом.
Вы можете видеть на шестерёнке белую точку. Вообще говоря, эту белую точку расположили для того, чтобы было понятно, от какого момента можно считывать информацию, а именно информация в данном случае заключается как раз в расположении окошек и стенок. В данном случае эта белая точка обозначает начало некоторого блочного кода, который реализован в виде узора на этой шестерёнке. В данном случае здесь реализован код Хэмминга, и если встречаете окошечко, то это 1 (если окошко широкое - это несколько 1), если вы видите стенку — это 0.
Соответственно, в данном случае битом является как раз минимальный угловой размер данного узора. То есть это самая коротенькая стеночка на этой шестерёнке это фактически наш бит 0. Давайте найдём, где у нас находится бит 1. Все другие окошки и стенки, они по угловому размеру кратны этому самому элементарному окошечку или стенке. Например, 2-ка, то есть две подряд идущих 1-ки - два подряд окошечка.
Таким образом, изменяя узор на шестерёнке и вращая шестерёнку вокруг своей оси, мы обеспечиваем необходимую амплитудную модуляцию передаваемого сигнала и вы можете в дальнейшем её изучать. Тоже самое относится ко всем другим шестерёнкам, которые вы здесь видите.
Вы видите, что шестерёнки вращаются с разной скоростью. Это означает, что за один и тот же интервал времени передаётся разное количество информации, но фактически - это некоторый пример того, что такое скорость
передачи данных.
Давайте посмотрим сейчас те сигналы, которые были переданы, те сигналы которые зафиксировал фотодиод, более наглядно. Только теперь я стенд запущу не непосредственно с помощью кнопки, расположенной на нём, а программно. Стенд может быть запущен с помощью интерфейса, представленного на экране. Шестерёнки сразу же отозвались, начинают вращаться. Кто из вас внимательный и проследит в видео за белой точкой, расположенной на этих шестерёнках, может уже для себя составить представление о том, с какой угловой скоростью они вращаются. Это, кстати, очень важно: прежде чем доверять тому результату, который вы получили, вы можете непосредственно сами примерно засечь в своих часах, на своём телефоне, у всех есть таймеры, и примерно прикинуть с какой скоростью вращаются шестерни.
Хорошо, давайте посмотрим, какой сигнал у нас зарегистрировался непосредственно на всех трёх фотодиодах. Обратите внимание, сейчас мы построим график. У нас есть характерный вид сигнала, который зарегистрирован на каждом из фотодиодов. Чёрная линия соответствует большой шестерёнке с большим диаметром, красный график соответствует шестерёнке, которая расположена в серединке, зелёный график соответствует малой шестерёнке.
Обратите внимание на следующий интересный результат в сигнале соответствующем большой и средней шестеренке (чёрный и красный график). Видно, что сигнал промодулирован, что он падает до нуля, потом поднимается до какого-то максимального значения, висит и так далее, то есть меняется. Сигнал менялся в соответствии с прохождением окошечек и стенок при вращении шестерёнки.
Мы видим на графике: самый короткий импульс, который соответствует окошечку с минимальным угловым размером. Мы видим соответственно самый короткий импульс, который соответствует элементарной стеночке, то есть 0, самый короткий 0. Фактически для нас это сигнал, который передаёт бит 1-ка, а это, который передаёт бит 0. И дальше мы видим, что тут два бита было, тут две 1-ки, один 0 и так далее. То есть можно прочитать это как сигнал.
На большой и на средней шестерёнке мы видим достаточно понятный сигнал, который соответствует именно тому узору, который на них расположен. А вот, что касается зелёного графика, который соответствует малой шестерёнке, то обратите внимание: по плато импульса вверху видна характерная изрезанность. Изрезанность интересная: стоят зубчики и тоже самое внизу, то есть в нижней части сигнала мы тоже видим зубчики.
С чем это связано? Связано это с тем, что, как я уже и говорил, у нас светодиод и фотодиод распределённые, а размер — радиус малой шестерёнки своими зубчиками как раз перекрывает нижний светодиод. Обратите внимание, что малая шестерёнка модулирует сигнал не только своим узором, не только рубашкой, которая на ней расположена, как на средней и большой (это такие характерные импульсы), но и эта быстро изменяющаяся часть соответствует самому маленькому угловому размеру нашего препятствия, это как раз наши зубчики.
Получилась интересная картина, интересная динамика: по основному импульсу мы видим вот такую характерную мелкомасштабную изрезанность. Ей, конечно, это добавляет некоторый элемент сложности для определения периода вращения каждой шестерни, да и не только периода вращения, а и определения кода каждой маленькой шестерёнки. Видите, какая у нас установка, которая позволяет осуществлять механическую модуляцию сигнала.
Вы видели пример, когда шестерёнки вращаются с постоянной скоростью, но стенд также предусматривает возможность непостоянного вращения шестерней.
Давайте рассмотрим пример непостоянного вращения шестерней.
Обратите внимание, что шестерёнки сейчас постепенно разгоняются: они сначала вращались медленно, и дальше можно слышать характерный звук взлетающего самолёта — это означает, что шестерёнки набирают скорость, скорость вращения изменяется, увеличивается, и вы видите, что шестерёнки закончили вращаться на скорости значительно большей, чем начали вращаться.
Давайте посмотрим, что у нас получится, если мы посмотрим, как меняется динамика сигнала.
Попробуем зацепиться за характерный период. Я думаю, что его здесь видно, что называется, невооруженным глазом. Видите, да? Вот, например, возьмём среднюю шестерёнку — это красный сигнал. Обратите внимание, что у нас есть период характерный, он заканчивается в этой точке, дальше следующий поворот шестерней здесь. Дальше вот он, обратите внимание, что этот интервал времени, который соответствует одному обороту, он каждый раз уменьшается, уменьшается и становится меньше. То есть мы видим с вами равноускоренное вращение.
На самом деле вращение может быть не только равноускоренным, но и равнозамедленным и любым другим. Тоже самое можно сказать и про остальные шестерёнки.
Хорошо, мы можем изменять механически амплитуду с помощью зубчиков или прорезей, можем изменять скорость вращения. Что мы ещё можем делать на нашем стенде? А вот давайте посмотрим!
Сейчас шестерёнки вращаются с постоянной скорость, но происходит то, что вы непосредственно на экране не можете видеть: сейчас изменяется амплитуда инфракрасного сигнала, который передаётся на каждой из шестерней.
Давайте посмотрим, что было скрыто от наших глаз.
Что у нас получается на большой шестерне — это черный график — амплитуда изменялась в большую сторону. То есть мы наблюдаем характерный рост сигнала, амплитуды сигнала: он был маленький вначале, а в конце вращения он уже достаточно высокий.
На средней шестерёнке ситуация другая: начали мы излучать сигнал с большой амплитуды, а закончили малой. Ну а малая шестерёнка, ей соответствует зелёный график, амплитуда не менялась.
Таким образом, мы можем
модулировать как скорость вращения,
амплитуду инфракрасного сигнала во
время работы светодиода и механически
осуществлять амплитудную модуляцию
сигнала. Этот набор параметров обеспечивает нас возможностью формулировать практически все задачи, которые стоят в теории передачи сигналов, и мы с ними познакомимся. Вы можете столкнуться с ними на олимпиадах и хакатонах по профилю “Технологии беспроводной
связи”.
Но это ещё не всё. Для решения каких-то своих задач, для того, чтобы обеспечить необходимую гибкость формирования входных параметров, можно задавать то, о чём мы сейчас говорили, с помощью интерфейса.
Попробуем это сделать. Я поставлю период обращения порядка двух секунд. Вы можете меня спросить: “А какой период, вот у нас четыре шестерни, о какой мы говорим?” В данном случае этот период обращения относится к большой шестерне.
Время работы поставим секунд 20. Уровень модуляции я никакой задавать не буду, это мы сделаем чуть позже.
Дальше вы можете задать уровень каждого канала. У красного канала я задам уровень 40, у зеленого — 20 и у синего — 10. Дальше нажимаем на кнопочку записать в стенд, запускаем.
Вы видите, что шестерёнки вращаются достаточно быстро и период обращения на большой шестерни — это примерно 2 секунды. Ждем 20 секунд, как мы и настраивали.
Шестерёнки гудят с одним уровнем громкости. Смотрим результат, строим график.
Вы можете видеть, что чёрный сейчас самый большой, красный — в два раза меньше, зелёный — ещё в 2 раза. Таким образом, мы можем задавать амплитуду и скорость вращения.
Давайте попробуем запустить наш стенд с уровнем модуляции 50%, но чтобы было более наглядно, я все графики, все амплитуды сигналов в каждом из каналов выставлю на 20. Записываем настройки в стенд — формируется автоматически расписание — запускаем шестерни. Сейчас мы посмотрим, как выглядит этот уровень модуляции. То есть сейчас модуляция осуществляется как механически с помощью узора окон и стенок на шестерёнке, так и электрически. То есть меняется амплитуда сигнала непосредственно на каждом из светодиодов.
Вы можете видеть — насколько интересный сигнал у нас получился: здесь наблюдается как механическая модуляция, уже знакомые вам импульсы, так и модуляция непосредственно амплитудой излучаемого сигнала (амплитуда светодиода). Мы видим характерные такие вот периоды, которые у нас наблюдаются для каждой шестерни.
Задача определения периода этих самых колебаний светимости нашего светодиода становится задачей не очень-то простой. Потому что она уже изрезана нашими прямоугольными импульсами, которые обеспечили стенки и окна. С данным сигналом можно работать непосредственно. Его можно взять с компьютера, например, можно посмотреть на него: как он устроен в текстовом виде, его можно сохранить в файл и потом с ним работать.
Для размышления
Подумайте что может быть причиной помех и шумов при передаче сигнала в блоке-энкодере? Подумайте отдельно для случая малой и большой шестеренки.
Материалы