Запись и чтение двоичных файлов в Simulink

Создайте двоичный файл с пользовательским заголовком с помощью блока Binary File Writer. Запись данных в этот файл. Считайте заголовок и данные с помощью блока Binary File Reader.

Запись данных

Укажите заголовок файла в параметре File header Binary File Writer блок как struct('A',[1 2 3 4],'B','x7'). Блок сначала записывает заголовок, затем данные в ex_file.bin файл. Данные являются шумным сигналом синусоиды с частотой 100 Гц, содержащей 1000 выборки на систему координат. Частота дискретизации сигнала составляет 1000 Гц. Установите интервал времени блока Time Scope в 1 секунду.

Откройте модель.

writeModel = 'writeData';
open_system(writeModel)

Запустите модель, чтобы записать данные в ex_file.bin. Кроме того, просмотрите данные в временных возможностях.

sim(writeModel)

Чтение данных

Считайте данные в ex_file.bin файл с использованием Binary File Reader блок. Данные считываются как один канал (столбец), содержащий несколько систем координат, где каждая система координат имеет 1000 выборок. Просмотр данных в временных возможностях.

Укажите заголовок, используя параметр File header в reader. Если точный заголовок не известен, необходимо по крайней мере указать прототип заголовка, то есть его размер и тип данных. В этом примере прототип заголовка struct('A',[0 0 0 0],'B','-0') который имеет тот же формат, что и структура заголовка.

Откройте модель.

readModel = 'readData';
open_system(readModel)

Запустите модель, чтобы считать данные. Кроме того, просмотрите данные в временных возможностях.

sim(readModel)

Данные выходы в обоих timescopes точно совпадают. После завершения обработки закройте модели.

close_system(readModel);
close_system(writeModel);

См. также

| | | |