Автоматизированные измерения и моделирование свойств линейных систем: Учебно-методическое пособие, страница 16

Пример: сгенерировать «обрезанный» синус с амплитудой 1В и частотой 1кГц, частота квантования 20кГц. Ниже приведен пример программы для Matlab, создающей текстовый файл. В файле должен находиться только один период сигнала, генератор будет проигрывать его циклически.

F = 1000;   %частота синуса, Гц

Fs = 20000; % частота квантования, Гц

T = 1/F;    % период сигнала, с

dt = 1/Fs;  % период квантования, с

t = 0:dt:T; % время

N = length(t)-1;   % количество отсчетов в сигнале

u = sin(2*pi*F*t); % синус

u = u .* (u>=0);   % обрезаем полпериода

hf = fopen('sin.txt','w'); % создаем файл

for m = 1:N

    fprintf(hf, '%f\t%u\n', u(m), 0); % записываем строки

end

fclose(hf); % обязательно закрываем файл

Для воспроизведения этого файла в окне программы L-Card Explorer следует выбрать из списка Параметры сигнала значение Сигнал из файла, задать имя файла, частоту квантования ЦАП и поставить отметку Включен. В результате выполнения этих действий мы получим требуемый сигнал (рис. 49).

Рис. 49

Конвертер bin2mat

Сигнал, записанный с помощью программы L-Graph или L-Card Explorer, находится в файле с расширением dat. Кроме этого файла, по окончании записи может быть создан файл с тем же именем, но с расширением par, в котором находится информация о настройках регистратора в зашифрованном виде. В файле с расширением dat отсчеты хранятся в виде целых двухбайтовых чисел в двоичном представлении. Если записывалось несколько каналов, то отсчеты идут друг за другом последовательно, чередуясь по каналам. Для дальнейшей обработки данных в Matlab файл с расширением dat необходимо конвертировать в файл с расширением mat. В файлах с таким расширением Matlab обычно сохраняет переменные из рабочей области, и может импортировать их из файла в рабочую область (Workspace). Для конвертирования данных из dat-файла в mat-файл есть специальный конвертер bin2mat.exe. Конвертер запускается из командной строки или с помощью пакетного файла, имена dat и mat файлов указываются в качестве параметров командной строки. Если конвертер bin2mat находится в системной папке C:\WINDOWS\system32, то для того, чтобы им воспользоваться, не нужно указывать полный путь к файлу, так как операционная система, выполняя команду из командной строки, по умолчанию будет искать файл в системной директории. Вместо командной строки, для удобства, можно использовать пакетный файл.

Пакетный файл – это обыкновенный текстовый файл с расширением bat. Его можно создать с помощью программы блокнот (notepad). Для этого надо в программе Блокнот в меню Файл выбрать Сохранить как…, в раскрывшемся окне для сохранения файла в списке Тип файла выбрать All files, а в поле Имя файла написать файл с расширением bat, например convert.bat, и сохранить.

Пакетный файл содержит те же команды, что набираются в командной строке, в каждой строчке файла – одна команда. Для конвертирования надо набрать команду bin2mat, пробел, имя dat-файла, пробел, имя mat-файла (предполагается, что конвертер расположен в системной директории). Для выполнения пакетного файла, достаточно запустить его двойным щелчком, как и любой другой файл. В качестве имен файлов в параметрах команды могут быть указаны относительные пути к файлам, в самом простом случае просто имена файлов, если dat, mat и bat файлы находятся в одной директории, как обычно и делается.

Пример: с помощью регистратора программы L-Graph в файл D:\Students\Name\Puls.dat было записано одновременно два канала, требуется загрузить эти сигналы в рабочую область Matlab, проградуировать ось ординат в  вольтах и построить графики зависимости от времени. Пусть оба канала были записаны с установленными по умолчанию значениями входного диапазона напряжений (±5В) и частотой квантования 100кГц и длительностью записи 0,01с. В нашем примере записывалась последовательность прямоугольных импульсов с частотой повторения 300Гц амплитудой 0,2В по первому каналу и шумовой сигнал по второму каналу. Чтобы конвертировать этот файл в файл с расширением mat, в папке D:\Students\Name с помощью блокнота создаем пакетный файл, содержащий строку bin2mat Puls.dat Puls.mat. Если запустить этот пакетный файл, в той же папке будет создан файл Puls.mat.