exponenta event banner

Таблица правды

Представление логического поведения при принятии решений с учетом условий, решений и действий

  • Библиотека:
  • Stateflow

  • Truth Table block

Описание

Блок таблицы истинности - это функция таблицы истинности, использующая MATLAB ® в качестве языка действий. Если требуется использовать логику таблицы истинности непосредственно в модели Simulink ®, используйте этот блок. Для этого блока требуется Stateflow ®.

При добавлении блока таблицы истинности непосредственно в модель вместо вызова функций таблицы истинности из диаграммы Stateflow применяются следующие преимущества:

  • Это более прямой подход, чем создание таблицы истинности в диаграмме Stateflow, особенно если для модели требуется только одна таблица истинности.

  • Можно определить входные и выходные данные таблицы истинности с унаследованными типами и размерами.

Блок таблицы истинности работает с подмножеством языка MATLAB, который оптимизирован для генерации встраиваемого кода C. Этот блок генерирует содержимое в виде кода MATLAB. В результате можно воспользоваться другими инструментами для отладки блока таблицы истинности во время моделирования.

Если дважды щелкнуть блок Таблица истинности (Truth Table), откроется Редактор таблицы истинности (Truth Table Editor) для отображения условий, действий и решений.

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

  • Ввод и изменение условий, действий и решений.

  • Добавление или изменение данных и портов Stateflow с помощью диспетчера портов и данных.

  • Выполните диагностику для обнаружения ошибок синтаксического анализатора.

  • Просмотр созданного содержимого после моделирования.

Дополнительные сведения об редакторе таблиц истинности см. в разделе Использование таблиц истинности в комбинаторной логике модели.

Порты

Вход

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

При создании входных данных на панели «Символы» модуль Stateflow создает входные порты. Создаваемые входные данные имеют соответствующий входной порт, который появляется после создания данных.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus

Продукция

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

При создании выходных данных на панели «Символы» модуль Stateflow создает выходные порты. Создаваемые выходные данные имеют соответствующий выходной порт, который появляется после создания данных.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated | bus

Параметры

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

Параметры на вкладке «Создание кода» требуют Simulink Coder™ или Embedded Coder ®.

Главный

Выберите способ отображения меток портов на значке блока диаграммы.

none

Не отображать метки портов.

FromPortIcon

Если соответствующий значок порта отображает имя сигнала, отобразите имя сигнала в блоке диаграммы. В противном случае отобразите имя блока портов.

FromPortBlockName

Отображение имени соответствующего блока портов в блоке диаграммы.

SignalName

Если имя сигнала существует, отобразите имя сигнала, подключенного к порту в блоке диаграммы. В противном случае отобразите имя соответствующего блока портов.

Программное использование

Параметр: ShowPortLabels
Текст: символьный вектор
Значение: 'FromPortIcon' | 'FromPortBlockName' | 'SignalName'
По умолчанию: 'FromPortIcon'

Управление доступом пользователей к содержимому диаграммы.

ReadWrite

Включить открытие и изменение содержимого диаграммы.

ReadOnly

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

NoReadOrWrite

Отключить открытие или изменение диаграммы. Если диаграмма проживает в библиотеке, Вы можете создать связи с диаграммой в модели, но Вы не можете открыть, изменить, разрешения изменения, или создать местные копии диаграммы.

Программное использование

Параметр: Permissions
Текст: символьный вектор
Значение: 'ReadWrite' | 'ReadOnly' | 'NoReadOrWrite'
По умолчанию: 'ReadWrite'

При определении порядка выполнения блочных методов заставляет Simulink рассматривать диаграмму как единицу.

прочь

При определении порядка выполнения блочного метода следует рассматривать все блоки диаграммы как находящиеся на том же уровне иерархии модели, что и диаграмма. Такая иерархическая обработка может привести к перемежению выполнения методов блоков в диаграмме с выполнением методов блоков вне диаграммы.

на

При определении порядка выполнения блочных методов следует рассматривать диаграмму как единицу измерения. Например, когда Simulink необходимо вычислить вывод диаграммы, Simulink вызывает методы вывода всех блоков диаграммы, прежде чем вызывать методы вывода других блоков на том же уровне, что и блок диаграммы.

Зависимость

При выборе этого параметра включаются параметры свертки Минимизировать алгебраические вхождения цикла, Время выборки и Функция. Для упаковки функций требуется программное обеспечение Simulink Coder.

Программное использование

Параметр: TreatAsAtomicUnit
Текст: символьный вектор
Значение: 'off' | 'on'
По умолчанию: 'off'

См. также

прочь

Не пытайтесь устранить какие-либо искусственные алгебраические петли, которые включают в себя атомную подшагу.

на

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

Зависимость

Чтобы включить этот параметр, выберите параметр Обработать как атомную единицу.

Программное использование

Параметр: MinAlgLoopOccurrences
Текст: символьный вектор
Значение: 'off' | 'on'
По умолчанию: 'off'

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

  • Если блоки на диаграмме могут выполняться с разными скоростями, укажите наследуемое время выборки диаграммы (-1).

  • Если все блоки должны работать с одинаковой скоростью, укажите в качестве значения параметра Sample time время выборки, соответствующее этой скорости.

  • Если какой-либо из блоков на диаграмме указывает другое время выборки (кроме -1 или inf), Simulink отображает сообщение об ошибке при обновлении или моделировании модели. Например, предположим, что все блоки на диаграмме должны выполняться 5 раз в секунду. Чтобы обеспечить это время, укажите время образца диаграммы как 0.2. В этом примере, если какой-либо из блоков на диаграмме указывает время выборки, отличное от 0.2, -1, или inf, Simulink отображает ошибку при обновлении или моделировании модели.

-1

Укажите наследуемое время выборки. Если блоки на диаграмме могут выполняться с разными скоростями, используйте этот пример времени.

[Ts 0]

Укажите время периодической выборки.

Зависимость

Чтобы включить этот параметр, выберите параметр Обработать как атомную единицу.

Программное использование

Параметр: SystemSampleTime
Текст: символьный вектор
Значение: '-1' | '[Ts 0]'
По умолчанию: '-1'

При распространении исполнительных условий из блоков Источник исполнения (Variant Source) или в блоки Приемник исполнения (Variant Sink) программа Simulink рассматривает диаграмму как единицу измерения.

на

Simulink рассматривает диаграмму как единицу измерения при распространении условий исполнения из блоков источника исполнения или в блоки получателя исполнения. Например, когда Simulink вычисляет условие исполнения диаграммы, оно распространяется на все блоки диаграммы.

прочь

Simulink рассматривает все блоки диаграммы как находящиеся на том же уровне иерархии модели, что и сама диаграмма, при определении их условия исполнения.

Программное использование

Параметр: TreatAsGroupedWhenPropagatingVariantConditions
Текст: символьный вектор
Значение: 'on' | 'off'
По умолчанию: 'on'

Создание кода

Выберите сгенерированный формат кода для атомарного (невоиртуального) подшаблона.

Auto

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

Inline

Simulink Coder помещает диаграмму без каких-либо условий.

Nonreusable function

Simulink Coder явно генерирует отдельную функцию в отдельном файле. Диаграммы с этим параметром генерируют функции, которые могут иметь аргументы в зависимости от параметра Function interface (Simulink). Созданную функцию и файл можно назвать с помощью параметров Имя функции (Simulink) и Имя файла (без расширения) (Simulink). Эти функции не являются возвратными.

Reusable function

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

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

Совет

  • Если требуется представить несколько экземпляров диаграммы в виде одной многократно используемой функции, можно обозначить каждый из них как Auto или как Reusable function. Лучше всего использовать одну, поскольку при использовании обеих функций создаются две многократно используемые функции, по одной для каждого обозначения. Результаты этих вариантов различаются только тогда, когда повторное использование невозможно. Выбор Auto не позволяет управлять функцией или именем файла для кода диаграммы.

  • Reusable function и Auto оба параметра пытаются определить, существует ли несколько экземпляров диаграммы и можно ли повторно использовать код. Различие между поведением опций заключается в том, что, когда повторное использование невозможно. В этом случае Auto дает встроенный код или, если обстоятельства запрещают встраивание, отдельные функции для каждого экземпляра диаграммы.

  • При выборе Reusable function пока созданный код находится в системе управления версиями, задайте для параметра Имя файла значение Use subsystem name, Use function name, или User specified. В противном случае имена файлов кода изменяются при каждом изменении модели, что препятствует управлению версиями файлов.

Зависимость

  • Для этого параметра требуется Simulink Coder.

  • Чтобы включить этот параметр, выберите Обработать как атомную единицу.

  • Установка для этого параметра значения Nonreusable function или Reusable function включает следующие параметры:

    • Параметры имени функции

    • Параметры имени файла

    • Раздел памяти для инициализации/завершения функций (требуется встроенный кодер и системный целевой файл на основе ERT)

    • Раздел памяти для выполнения функций (требуется встроенный кодер и целевой системный файл на основе ERT)

  • Установка для этого параметра значения Nonreusable function включает функцию с отдельными данными (требуется лицензия на Embedded Coder и целевой системный файл на основе ERT).

Программное использование

Параметр: RTWSystemCode
Текст: символьный вектор
Значение: 'Auto' | 'Inline' | 'Nonreusable function' | 'Reusable function'
По умолчанию: 'Auto'

Расширенные возможности

Создание кода C/C + +
Создайте код C и C++ с помощью Simulink ® Coder™

.

Создание кода ПЛК
Создание структурированного текстового кода с помощью Coder™ Simulink ® PLC

.

Преобразование с фиксированной точкой
Проектирование и моделирование систем с фиксированной точкой с помощью Designer™ с фиксированной точкой.

Представлен до R2006a