convertUnits

Класс: Simulink.sdi.Signal
Пакет: Simulink.sdi

Преобразуйте единицы сигнала

Синтаксис

signal.convertUnits(units)

Описание

signal.convertUnits(units) преобразовывает единицы signal к модулям, заданным units. Для списка приемлемых модулей смотрите Позволенные Модули. Можно использовать Simulink.sdi.Signal.convertUnits преобразовывать единицы на Simulink.sdi.Signal объекты с данными всех встроенных и фиксированные точки.

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

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

Желаемые модули для сигнала.

Пример: 'm'

Пример: "ft/s"

Типы данных: char | string

Примеры

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

В этом примере показано, как использовать convertUnits метод, чтобы преобразовать единицы Simulink.sdi.Signal объект, с помощью модели sldemo_autotrans.

Сгенерируйте данные моделирования

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

% Simulate the model
sim('sldemo_autotrans')

% Get a Simulink.sdi.Run object for the most recently created run
ids = Simulink.sdi.getAllRunIDs;
id = ids(end);
transRun = Simulink.sdi.getRun(id);

Смотрите свойства сигнала

Получите Simulink.sdi.Signal объект для EngineRPM предупредите и смотрите его свойства определить модули.

% Get Simulink.sdi.Signal object
signal = transRun.getSignalByIndex(1)
signal = 
  Signal with properties:

               ID: 41509
            RunID: 41503
             Name: 'EngineRPM'
      Description: ""
            Units: 'rpm'
         DataType: 'double'
       Complexity: "real"
    ComplexFormat: "real-imaginary"
       SampleTime: '0.04'
            Model: 'sldemo_autotrans'
        BlockPath: 'sldemo_autotrans/Engine'
    FullBlockPath: 'sldemo_autotrans/Engine'
        PortIndex: 1
       Dimensions: 1
          Channel: [1x0 int32]
          Checked: 0
        LineColor: [0.8500 0.3250 0.0980]
       LineDashed: '-'
     InterpMethod: 'linear'
           AbsTol: 0
           RelTol: 0
          TimeTol: 0
       SyncMethod: 'union'
           Values: [1x1 timeseries]
       RootSource: ''
       TimeSource: ''
       DataSource: ''

Преобразуйте единицы сигнала

Используйте convertUnits метод, чтобы преобразовать EngineRPM модули сигнала к rad/s. Затем поменяйте имя сигнала, чтобы отразить новые модули.

% Convert units
signal.convertUnits('rad/s')

signal.Name = 'Engine,rad/s';

Введенный в R2018a