Simulink.sdi.getNumCursors

Проверьте количество активных курсоров в Данные моделирования Inspector

    Описание

    пример

    num = Simulink.sdi.getNumCursors возвращает количество активных курсоров на панели Inspect инспектора Данных моделирования.

    num = Simulink.sdi.getNumCursors(view) возвращает количество активных курсоров на Inspect или Compare панели Данных моделирования Inspector, заданное как view.

    Примеры

    свернуть все

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

    Откройте файл сеанса vdp_mu.mldatx для добавления и построения графика данных в Данные моделирования Inspector. Файл сеанса содержит данные для 20-секундной симуляции модели уравнения Ван Дер Поля с сигналами x1 и x2 нанесенный на отдельные подграфики в 2-by- 1 Подграфик размещения.

    open vdp_mu.mldatx;

    Используйте Simulink.sdi.setNumCursors функция для добавления одного курсора к графику.

    Simulink.sdi.setNumCursors(1);

    Предположим, что вы хотите знать значения сигналов 5 секунд в симуляции. Используйте Simulink.sdi.setCursorPositions функция для перемещения курсора в t=5s и считайте значения сигналов от курсора на каждом подграфике. Звездочка рядом со значением в метке курсора указывает, что значение интерполировано, потому что симуляция не включала вычисление для времени симуляции в точности 5s.

    Simulink.sdi.setCursorPositions('left',5);

    Предположим, что вы хотите вычислить время между двумя пиками в x2 сигнал. Добавьте второй курсор с помощью Simulink.sdi.setNumCursors или с помощью кнопки Show/hide данных cursors в Данные моделирования Inspector.

    numCursors = Simulink.sdi.getNumCursors;
    if(numCursors < 2)
        Simulink.sdi.setNumCursors(2);
    end

    Перетащите курсоры так, чтобы левый курсор находился на первом пике в x2 сигнал и правый курсор расположен на втором пике. Кроме того, запустите этот код, который позиционирует курсоры для вас.

    Simulink.sdi.setCursorPositions('left',5.921998549931304,'right',12.378442136906246);

    В Данные моделирования Inspector различия между двумя курсорами отображается в секундах. Однако положение курсора и различия скруглены. Используйте Simulink.sdi.getCursorPositions функция для программного извлечения точных значений времени, соответствующих положениям курсора. Затем вычислите различие между временами.

    [t1,t2] = Simulink.sdi.getCursorPositions;
    T = t2 - t1
    T = NaN
    

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

    свернуть все

    Площадь графика, для которой необходимо вернуть количество активных курсоров, заданное как 'inspect' или 'compare'.

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

    Выходные аргументы

    свернуть все

    Количество активных курсоров, возвращенных как 0, 1, или 2.

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