AnyMath 文档

工程师。[医]巴克尔科发电机

的巴克序列。

库::`工程师` 座:: 巴克代码生成器

资料描述

该 EngeeComms.BarkerCodeGenerator 系统对象生成Barker序列。 自相关函数的旁瓣的短长度和最小电平使得可以在通信系统中使用巴克序列进行帧同步。

要生成Barker序列,请按照以下步骤操作:

  1. 创建*EngeeComms。BarkerCodeGenerator*对象并设置其属性。

  2. 用参数调用对象,就好像它是一个函数一样。

若要了解有关如何使用系统对象的详细信息,请参阅 AnyMath系统对象.

创造

语法

  • barkerCode=EngeeComms.BarkerCodeGenerator缧 -创建一个系统对象以生成具有*default*属性的Barker序列。

    例子::

    barkerCode = EngeeComms.BarkerCodeGenerator()
  • 对象=EngeeComms。BarkerCodeGenerator(名称=值) -创建一个系统对象,以一对的形式生成具有指定属性的Barker序列 名称=值,在哪里 姓名 -物业的名称,以及 价值 -适当的值。 您可以指定多个对 «名称-值» 对的顺序并不重要。 未指定的属性保留其默认值。

    例子::

    # длина последовательности 11, кадр содержит 11 отсчетов
    barkerCode = EngeeComms.BarkerCodeGenerator(Length=11,SamplesPerFrame=11)

特征

长度 — 生成的序列的长度

+ 7(默认) | 1 | 2 | 3 | 4 | 5 | 11 | 13

Details

生成序列的长度: 1, 2, 3, 4, 5, 7, 11,或 13.

示例:值 2 设置序列 [–1;1].

<无转换>*数据类型:* 漂浮64</无翻译>

SamplesPerFrame — 输出帧中的样本数

+ 1(默认) | 一个正整数

Details

输出帧中的采样数作为正整数。 如果 采样器框架 同样 ,则该块输出包含 长度的Barker序列组成的样品 ,在哪里 -由属性设置 长度. 如有必要,对象重复序列以实现 数数。

<无转换>*数据类型*: Int64</无翻译>

OutputDataType — 输出数据的类型

+ double(默认情况下) | Int型

Details

输出数据的类型。 可用的数据类型: 双倍 或 Int型.

使用

语法

y=barkerCode() -输出巴克序列的一帧作为列向量。 如果帧长度超过巴克序列的长度,则对象通过重复巴克序列来填充帧。 使用属性设置输出的数据类型 输出类型.

例子::

y = barkerCode(OutputDataType=:int)

方法

所有系统对象通用

步!::运行系统对象运算算法 释放!::允许更改系统对象属性的值 重置!::重置系统对象的内部状态

此外

巴克序列

Details

巴克序列是一个有限序列 价值 +1 和 -1,具有自相关函数,其中旁瓣的水平不超过 .

*自相关函数的旁瓣*是码字与自身的时移版本的相关性。 相关性的侧瓣, ,转过 字符 -比特码序列 等于

.

为 单个代码字符等于 +1 或 –1.

输出序列具有双极性格式,其中 0 和 1 显示于 1 和 –1. Barker序列的最大已知长度为 13. 自相关函数的旁瓣的短长度和低电平使得巴克序列对于数字通信系统中的帧同步是有用的。 Barker序列生成器输出以下序列:

长度 巴克序列 旁瓣的水平

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分贝