коммуникация. BasebandFileWriter

Запишите основополосные сигналы зарегистрировать

Описание

Основополосный файл является определенным типом двоичного файла, записанного comm.BasebandFileWriter. Основополосные сигналы обычно downconverted от ненулевой центральной частоты до 0 Гц. Свойства SampleRate и CenterFrequency сохранены, когда файл создается.

Сохранить основополосный сигнал в файл:

  1. Создайте объект comm.BasebandFileWriter и установите свойства объекта.

  2. Вызовите step, чтобы сохранить основополосный сигнал в файл.

  3. Вызовите release, чтобы сохранить основополосный сигнал в файл и закрыть файл.

Примечание

Также вместо того, чтобы использовать метод step, чтобы выполнить операцию, заданную Системой object™, можно вызвать объект с аргументами, как будто это была функция. Например, y = step(obj,x) и y = obj(x) выполняют эквивалентные операции.

Конструкция

bbw = comm.BasebandFileWriter возвращает основополосный объект средства записи, bbw, с помощью свойств по умолчанию.

bbw = comm.BasebandFileWriter(fname) возвращает bbw и устанавливает fname как свойство Filename.

bbw = comm.BasebandFileWriter(fname,fs) также наборы fs как свойство SampleRate.

bbw = comm.BasebandFileWriter(fname,fs,fc) также наборы fc как свойство CenterFrequency.

bbw = comm.BasebandFileWriter(fname,fs,fc,md) также структура наборов md как свойство MetaData.

bbw = comm.BasebandFileWriter(___,Name,Value) задает дополнительные свойства с помощью пар Name,Value. Незаданные свойства имеют значения по умолчанию.

Пример:

bbw = comm.BasebandFileWriter('qpsk_data.bb',10e6,2e9);

Свойства

развернуть все

Имя сохраненного файла, заданного как вектор символов. Имя файла может включать родственника или абсолютный путь.

Частота дискретизации выходного сигнала, заданного в Гц как положительная скалярная величина.

Центральная частота основополосного сигнала, заданного в Гц как положительный целочисленный скаляр или вектор - строка. Если CenterFrequency является вектором - строкой, каждый элемент соответствует каналу.

Данные, описывающие основополосный сигнал, заданный как структура. Структура может иметь любое количество полей и любое имя поля. Значения полей могут иметь любого числовой, логический, или символьный тип данных и иметь любое количество размерностей.

Количество выборок, чтобы сохранить, заданный как положительное целое число.

  • Чтобы записать все выборки основополосного сигнала в файл, установите NumSamplesToWrite на Inf.

  • К только для записи последние выборки NumSamplesToWrite к файлу, набор NumSamplesToWrite к конечному числу.

Типы данных: double

Методы

информацияХарактеристическая информация об основополосном средстве записи файла
сбросСбросьте состояния основополосного объекта средства записи файла
шагЗапишите основополосный сигнал зарегистрировать
Характерный для всех системных объектов
release

Позвольте изменения значения свойства Системного объекта

Примеры

развернуть все

Создайте основополосный объект средства записи файла, имеющий частоту дискретизации 1 кГц и центральную частоту на 0 Гц.

bbw = comm.BasebandFileWriter('baseband_data.bb',1000,0);

Сохраните сегодняшнюю дату в структуре Metadata.

bbw.Metadata = struct('Date',date);

Сгенерируйте два канала модулируемых QPSK данных.

d = randi([0 3],1000,2);
x = pskmod(d,4,pi/4,'gray');

Запишите основополосные данные, чтобы зарегистрировать 'baseband_data.bb'.

bbw(x)

Отобразите информацию о bbw. Выпустите объект.

info(bbw)
ans = struct with fields:
             Filename: '/tmp/BR2019ad_1062519_57051/mlx_to_docbook9/tp81db6db8/comm-ex66490302/baseband_data.bb'
      SamplesPerFrame: 1000
          NumChannels: 2
             DataType: 'double'
    NumSamplesWritten: 1000

release(bbw)

Создайте основополосный объект средства чтения файлов считать сохраненные данные. Считайте метаданные из файла.

bbr = comm.BasebandFileReader('baseband_data.bb','SamplesPerFrame',100);
bbr.Metadata
ans = struct with fields:
    Date: '22-Feb-2019'

Считайте данные из файла.

z = [];

while ~isDone(bbr)
    y = bbr();
    z = cat(1,z,y);
end

Отобразите информацию о bbr. Выпустите bbr.

info(bbr)
ans = struct with fields:
    NumSamplesInData: 1000
            DataType: 'double'
      NumSamplesRead: 1000

release(bbr)

Подтвердите, что исходные модулируемые данные, x, совпадают с данными, считанными из файла 'baseband_data.bb', z.

isequal(x,z)
ans = logical
   1

Советы

  • comm.BasebandFileWriter пишет основополосные сигналы в несжатые двоичные файлы. Чтобы совместно использовать эти файлы, можно сжать их до zip-файла с помощью функции zip. Для получения дополнительной информации смотрите, Создают и Извлечение из Архивов zip (MATLAB).

Расширенные возможности

Смотрите также

Введенный в R2017b