Сконфигурируйте целевые осциллографы с языком MATLAB

Создание объекта scope позволяет вам выбирать и просматривать сигналы с помощью функций Simulink® Real-Time™ вместо пользовательского интерфейса Simulink Real-Time.

Эта процедура использует модель Simulink xpcosc. Чтобы сделать эту процедуру, вы, должно быть, уже создали приложение реального времени для xpcosc и загруженный это на целевой компьютер по умолчанию. Это описывает, как проследить сигналы с целевыми осциллографами.

  1. Начните запускать свое приложение реального времени. Ввод:

    tg = slrt;
    start(tg)
  2. Чтобы получить список сигналов, введите:

    tg.ShowSignals = 'on'

    Командное окно отображает список свойств целевого объекта для доступных сигналов. Например, сигналы для модели xpcosc :

    Target: TargetPC1
       Connected            = Yes
       Application          = xpcosc
    .
    .
    .
       Scopes               = 1
       NumSignals           = 7
       ShowSignals          = on
       Signals              = 
          INDEX  VALUE     Type    BLOCK NAME      LABEL
          0      0.000000  DOUBLE  Gain            
          1      0.000000  DOUBLE  Gain1           
          2      0.000000  DOUBLE  Gain2           
          3      0.000000  DOUBLE  Integrator      
          4      0.000000  DOUBLE  Integrator1     
          5      0.000000  DOUBLE  Signal Generator
          6      0.000000  DOUBLE  Sum             
    .
    .
    .
  3. Создайте осциллограф, который будет отображен на целевом компьютере. Например, чтобы создать осциллограф с идентификатором 1 и имя объекта осциллографа sc1Ввод:

    sc1 = addscope(tg, 'target', 1)
    Simulink Real-Time Scope
       Application          = xpcosc
       ScopeId              = 1
       Status               = Interrupted
       Type                 = Target
       NumSamples           = 250
       NumPrePostSamples    = 0
       Decimation           = 1
       TriggerMode          = FreeRun
       TriggerSignal        = -1 
       TriggerLevel         = 0.000000
       TriggerSlope         = Either
       TriggerScope         = 1
       TriggerSample        = 0
       DisplayMode          = Redraw (Graphical)
       YLimit               = Auto
       Grid                 = on
       Signals              = no Signals defined
  4. Добавьте сигналы в объект scope. Например, чтобы добавить Integrator1 и Signal GeneratorВвод:

    addsignal(sc1,[4,5])
    Simulink Real-Time Scope
       Application          = xpcosc
       ScopeId              = 1
       Status               = Interrupted
       Type                 = Target
    .
    .
    .
       Grid                 = on
       Signals              = 4  : Integrator1
                              5  : Signal Generator

    Целевой компьютер отображает следующие сообщения:

    Scope: 1, signal 4 added
    
    Scope: 1, signal 5 added

    После того, как вы добавляете сигналы в объект scope, значения сигналов не показывают на целевом компьютере, пока вы не запускаете осциллограф.

  5. Запустите осциллограф. Например, чтобы запустить осциллограф sc1Ввод:

    start(sc1)

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

  6. Остановите осциллограф. Ввод:

    stop(sc1)

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

    Scope: 1, set to state 'interrupted'
  7. Остановите приложение реального времени. В Командном окне введите:

    stop(tg)

Похожие темы