Таблица истинности

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

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

Описание

Блок Truth Table является функцией таблицы истинности, которая использует MATLAB® в качестве языка действия. Когда это необходимо, чтобы использовать логику таблицы истинности непосредственно в модели Simulink®, используйте этот блок. Этот блок требует Stateflow®.

Когда вы добавляете блок Truth Table непосредственно в модель вместо того, чтобы вызвать функции таблицы истинности от диаграммы Stateflow, эти преимущества применяются:

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

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

Кладка блоков Таблицы истинности с подмножеством языка MATLAB, который оптимизирован для генерации встраиваемого кода С. Этот блок генерирует содержимое как код MATLAB. В результате можно использовать в своих интересах другие инструменты, чтобы отладить блок Truth Table во время симуляции.

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

Используя Редактор Таблицы истинности, вы можете:

  • Введите и отредактируйте условия, действия и решения.

  • Добавьте или измените данные Stateflow и порты при помощи Портов и Менеджера данных.

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

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

Для получения дополнительной информации о Редакторе Таблицы истинности, смотрите Операции Таблицы истинности.

Порты

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

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

Когда вы создаете входные данные в окне Symbols, Stateflow создает входные порты. Входные данные, которые вы создаете, имеют соответствующий входной порт, который появляется, если вы создаете данные.

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

Вывод

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

Когда вы создаете выходные данные в окне Symbols, Stateflow создает выходные порты. Выходные данные, которые вы создаете, имеют соответствующий выходной порт, который появляется, если вы создаете данные.

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

Параметры

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

Параметры на вкладке Code Generation требуют Simulink Coder™ или Embedded Coder®.

Основной

Выберите, как отобразить метки порта на значке блока Chart.

none

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

FromPortIcon

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

FromPortBlockName

Отобразите имя соответствующей блокировки порта на блоке Chart.

SignalName

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

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

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

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

ReadWrite

Позвольте открыться и модификация содержимого графика.

ReadOnly

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

NoReadOrWrite

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

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

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

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

'off'

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

на

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

Зависимость

Если вы выбираете этот параметр, вы включаете Minimize algebraic loop occurrences, Sample time и параметры Function packaging. Function packaging требует программного обеспечения Simulink Coder.

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

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

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

'off'

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

на

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

Зависимость

Чтобы включить этот параметр, выберите параметр Treat as atomic unit.

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

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

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

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

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

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

-1

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

[Ts 0]

Задайте периодический шаг расчета.

Зависимость

Чтобы включить этот параметр, выберите параметр Treat as atomic unit.

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

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

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

на

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

'off'

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

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

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

Генерация кода

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

Auto

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

Inline

Simulink Coder встраивает график безусловно.

Nonreusable function

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

Reusable function

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

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

Советы

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

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

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

Зависимость

  • Этот параметр требует Simulink Coder.

  • Чтобы включить этот параметр, выберите Treat as atomic unit.

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

    • Function name options

    • File name options

    • Раздел Memory для инициализирует/отключает функции (требует Embedded Coder и основанного на ERT системного конечного файла),

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

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

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

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

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

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Генерация HDL-кода
Сгенерируйте Verilog и код VHDL для FPGA и проекты ASIC с помощью HDL Coder™.

Генерация кода PLC
Сгенерируйте код Структурированного текста с помощью Simulink® PLC Coder™.

Преобразование фиксированной точки
Преобразуйте алгоритмы с плавающей точкой в фиксированную точку с помощью Fixed-Point Designer™.

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