Программное обеспечение Simulink® PLC Coder™ не поддерживает:
Сложные типы данных
Типы данных String
Блоки модели - ссылки
Stateflow® порожденные машиной данные и события
Сообщения Stateflow
Ограниченная поддержка математических функций
Блок Merge
Блок Step
Блок Clock
Классы памяти состояния и сигнала
Переменные общего состояния между подсистемами
Блок For Each Subsystem
Сигналы переменного размера и параметры
Блок MATLAB System или системные объекты
Классы MATLAB®.
Simulink.CoderInfo
Identifier
назовите свойство с Simulink.Parameter
и Simulink.Signal
объекты.
Simulink.LookupTable
, Simulink.Breakpoint
, и Simulink.DualScaledParameter
объекты.
Simulink.Signal
поддерживается только с объектами памяти хранилища данных.
Генерация кода для Сигналов Simulink, которые не решают к Simulink.Signal
объект memory хранилища данных.
Генерация кода, когда UseRowMajorAlgorithm='on'
.
Язык структурированного текста имеет свойственные ограничения. В результате программное обеспечение Simulink PLC Coder имеет эти ограничения:
Генерация кода поддержек только для атомарных подсистем.
Поддержки автоматическая, встроенная, или допускающая повторное использование упаковка функции для генерации кода. Функциональная упаковка одноразового использования не поддержана.
Не поддерживает блоки, которые требуют непрерывной семантики времени. Это ограничение включает непрерывные блоки интегратора, обнаружение пересечения нулем, физические блоки моделирования, и так далее.
Не поддерживает типы данных указателя.
Не поддерживает рекурсию (включая рекурсивные события).
Не поддерживает неличные данные, например, NaN
или Inf
.
Не поддерживает MATLAB 64-битные типы данных.
В типе данных с плавающей точкой, значение 0
имеет или положительный знак или знак минус. Арифметически, 0
равно -0
, но некоторые операции чувствительны к знаку 0 входов. Примеры включают rdivide
atan2
atan2d
, и angle
. Деление 0
производит Inf
, но деление -0
производит -Inf
. Точно так же atan2d(0,-1)
производит 180
, но atan2d (-0,-1)
производит -180
.
Simulink PLC Coder хранит -0
как 0
потому что нет никакого представления -0
в IEC61131. Это приводит к делению -0
создание -Inf
в Simulink, но Inf
в IDE PLC. Точно так же atan2d(-0,-1)
производит -180
в Simulink, но 180
в IDE PLC как -0
преобразован в 0
.