EngeeComms.BarkerCodeGenerator
Последовательность Баркера.
| Библиотека |
|
| Блок |
Описание
Системный объект EngeeComms.BarkerCodeGenerator генерирует последовательность Баркера. Малая длина и минимальный уровень боковых лепестков автокорреляционной функции позволяют использовать последовательности Баркера для кадровой синхронизации в системах связи.
Чтобы сгенерировать последовательность Баркера, выполните следующие действия:
-
Создайте объект EngeeComms.BarkerCodeGenerator и установите его свойства.
-
Вызовите объект с аргументами, как если бы это была функция.
Чтобы узнать подробнее о том, как работать с системными объектами, см. Системные объекты Engee.
Создание
Синтаксис
-
barkerCode = EngeeComms.BarkerCodeGenerator()создает системный объект для генерации последовательности Баркера со свойствами по умолчанию.Пример:
barkerCode = EngeeComms.BarkerCodeGenerator() -
object = EngeeComms.BarkerCodeGenerator(Name=Value)создает системный объект для генерации последовательности Баркера с каждым указанным свойством Name (имя), установленным на указанное Value (значение). Вы можете указать дополнительные аргументы в виде пары имя-значение в любом порядке (Name1=Value1,…,NameN=ValueN).Пример:
# длина последовательности 11, кадр содержит 11 отсчетов barkerCode = EngeeComms.BarkerCodeGenerator(Length=11,SamplesPerFrame=11)
Свойства
Length —
длина генерируемой последовательности
7 (по умолчанию) | 1 | 2 | 3 | 4 | 5 | 11 | 13
Details
Длина сгенерированной последовательности: 1, 2, 3, 4, 5, 7, 11, или 13.
Пример: значение 2 задает последовательность [–1;1].
Типы данных: Float64
SamplesPerFrame —
число отсчетов в выходном кадре
1 (по умолчанию) | положительное целое число
Details
Число отсчетов в выходном кадре в виде положительного целого числа. Если SamplesPerFrame равно , то блок выводит кадр, содержащий отсчетов, состоящих из последовательностей Баркера длины , где — задается свойством Length. При необходимости объект повторяет последовательность, чтобы достичь отсчетов.
Типы данных: Int64
OutputDataType —
тип выходных данных
double (по умолчанию) | Int
Details
Тип выходных данных. Доступные типы данных: double или Int.
Использование
Синтаксис
y = barkerCode() выводит кадр последовательности Баркера в виде вектора-столбца. Если длина кадра превышает длину последовательности Баркера, то объект заполняет кадр, повторяя последовательность Баркера. Установите тип данных для вывода с помощью свойства OutputDataType.
Пример:
y = barkerCode(OutputDataType=:int)
Дополнительно
Последовательности Баркера
Details
Последовательность Баркера — это конечная последовательность из значений +1 и -1, имеющая автокорреляционную функцию, уровень боковых лепестков в которой не превышает .
Боковой лепесток автокорреляционной функции — это корреляция кодового слова со сдвинутой во времени версией самого себя. Боковой лепесток корреляции, , для сдвига на символов в -битовой кодовой последовательности равен
.
Для является индивидуальным кодовым символом, равным +1 или –1.
Выходная последовательность имеет биполярный формат, где 0 и 1 отображаются в 1 и –1. Максимальная известная длина последовательности Баркера составляет 13. Малая длина и низкий уровень боковых лепестков автокорреляционной функции делают последовательности Баркера полезными для кадровой синхронизации в цифровых системах связи. Генератор последовательности Баркера выдает следующие последовательности:
| Длина | Последовательность Баркера | Уровень боковых лепестков |
|---|---|---|
1 |
[−1] |
0 дБ |
2 |
[−1; 1] |
−6 дБ |
3 |
[−1; − 1; 1] |
−9,5 дБ |
4 |
[−1; −1; 1;−1] |
−12 дБ |
5 |
[−1; −1; −1; 1; −1] |
−14 дБ |
7 |
[−1; −1; −1; 1; 1; −1; 1] |
−16,9 дБ |
11 |
[−1; −1; −1; 1; 1; 1; −1; 1; 1; −1; 1] |
−20,8 дБ |
13 |
[−1; −1; −1; −1; −1; 1; 1; −1; −1; 1; −1; 1; −1] |
−22,3 дБ |