запись

Данные записи из оборудования с помощью объекта устройства записи данных

Синтаксис

record(dr,duration)

Описание

пример

record(dr,duration) аппаратные входные данные записей на аппаратной плате SoC, представленной dr, на заданное время. dr является сеансом записи данных на аппаратной плате SoC, созданной с помощью soc.recorder.

Примеры

свернуть все

Создайте связь от MATLAB до заданной аппаратной платы SoC с помощью IP-адреса, имени пользователя и пароля платы.

hw = socHardwareBoard('Xilinx Zynq ZC706 evaluation kit','hostname','192.168.1.18','username','root','password','root');

Создайте сеанс записи данных на аппаратной плате SoC при помощи объекта hw. Получившийся объект soc.recorder представляет сеанс записи данных на аппаратной плате SoC.

dr = soc.recorder(hw)
dr = 

  DataRecorder with properties:

          HardwareName: 'Xilinx Zynq ZC706 evaluation kit'
               Sources: {}                            
             Recording: false                         

Перечислите входные источники, добавленные к сеансу записи данных.

dr.Sources(hw)
ans =

  1×0 empty cell array                       

По умолчанию объекты soc.recorder не имеют никаких добавленных входных источников. Чтобы добавить входной источник в сеанс записи данных, сначала создайте входной исходный объект при помощи функции soc.iosource. В данном примере создайте исходный объект Пользовательского дейтаграммного протокола (UDP).

udpSrc = soc.iosource(hw,'UDP Receive')
udpSrc = 

  soc.iosource.UDPRead with properties:

   Main
              LocalPort: 25000
             DataLength: 1
               DataType: 'uint8'
      ReceiveBufferSize: -1
           BlockingTime: 0
    OutputVarSizeSignal: false
             SampleTime: 0.1000
         HideEventLines: true

  Show all properties

Добавьте этот исходный объект UDP в сеанс записи данных при помощи функции объекта addSource.

addSource(dr,udpSrc,'UDPDataReceived-Port25000')

Проверьте результат путем осмотра свойства Sources объекта soc.recorder.

dr.Sources
ans =

  1×1 cell array

    {'UDPDataOnPort25000'}                        

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

setup(dr)

Данные записи в течение 60 секунд на аппаратной плате SoC.

record(dr, 60);

Проверяйте состояние сеанса записи данных при помощи функции объекта isRecording. Состоянием записи, когда запись данных происходит, является 1.

recordingStatus = isRecording(dr)
recordingStatus =

  logical

   1

Состоянием записи, когда запись данных завершена, является 0.

isRecording(dr)
recordingStatus =

  logical

   0

Сохраните зарегистрированные данные в TGZ-сжатый-файл.

save(dr,'UDPDataReceived','UDP Data Testing',{'Recorded On Zynq Board'})

Эта функция сохраняет записанные данные как файл UDPDataReceived.tgz в вашей рабочей папке PC хоста. Можно считать этот файл при помощи объекта socFileReader в MATLAB™ или блока IO Data Source в модели Simulink®.

Удалите добавленный источник из сеанса записи данных при помощи функции объекта removeSource.

removeSource(dr,'UDPDataReceived-Port25000')

Проверьте результат путем осмотра свойства Sources объекта soc.recorder.

ans =

  1×0 empty cell array                       

Входные параметры

свернуть все

Сеанс записи данных для заданной аппаратной платы SoC, заданной как объект soc.recorder.

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

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

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

| |

Введенный в R2019a

Для просмотра документации необходимо авторизоваться на сайте