Объекты fi с Simulink

Просмотрите и отредактируйте fi объекты в Model Explorer

Можно просмотреть и отредактировать fi объекты и их локальный fimath свойства с помощью Model Explorer в Simulink®. Можно изменить перезаписываемые свойства fi объекты от Model Explorer, но вы не можете изменить числовые свойства типа fi объекты после создания.

Чтение данных фиксированной точки из рабочей области

Можно считать данные фиксированной точки из рабочей области MATLAB® в модель Simulink через блок From Workspace. Для этого данные должны быть в формате структуры с fi объект в values поле . В формате массивов блок From Workspace только принимает действительные, данные с двойной точностью.

Читать в fi данные, параметр Interpolate data блока From Workspace не должен быть выбран, и параметр Form output after final data value by должен быть установлен на что-либо кроме Extrapolation.

Запись данных фиксированной точки к рабочей области

Можно записать фиксированной точке выход от модели до рабочего пространства MATLAB через блок To Workspace или в массиве или в формате структуры. Данные фиксированной точки, записанные блоком To Workspace в рабочую область в формате структуры, могут быть считаны назад в модель Simulink в формате структуры блоком From Workspace.

Примечание

Записать данные фиксированной точки в рабочее пространство MATLAB как fi возразите, установите флажок Log fixed-point data as a fi object на диалоговом окне блока To Workspace. В противном случае данные фиксированной точки преобразованы в double и записанный в рабочую область как double.

Например, можно использовать следующий код, чтобы создать структуру в рабочем пространстве MATLAB с fi объект в values поле . Можно затем использовать блок From Workspace, чтобы принести данные в модель Simulink.

a = fi([sin(0:10)' sin(10:-1:0)'])
 
a =
 
         0   -0.5440
    0.8415    0.4121
    0.9093    0.9893
    0.1411    0.6570
   -0.7568   -0.2794
   -0.9589   -0.9589
   -0.2794   -0.7568
    0.6570    0.1411
    0.9893    0.9093
    0.4121    0.8415
   -0.5440         0


          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 15
 
s.signals.values = a

s = 

    signals: [1x1 struct]

s.signals.dimensions = 2

s = 

    signals: [1x1 struct]

s.time = [0:10]'

s = 

    signals: [1x1 struct]
       time: [11x1 double]

Блок From Workspace в следующей модели имеет fi структуры в параметре Data.

Помните, чтобы записать данные фиксированной точки в рабочее пространство MATLAB как fi возразите, установите флажок Log fixed-point data as a fi object на диалоговом окне блока To Workspace. В противном случае данные фиксированной точки преобразованы в double и записанный в рабочую область как double.

В модели следующие параметры в панели Solver диалогового окна Model Configuration Parameters имеют обозначенные настройки:

  • Время начала 0.0

  • Stop time10.0

  • Ввод Fixed-step

  • SolverDiscrete (no continuous states)

  • Fixed step size (fundamental sample time)1.0

Блок To Workspace пишет результат симуляции к рабочему пространству MATLAB как fi структура.

simout.signals.values
 
ans =
 
         0   -8.7041
   13.4634    6.5938
   14.5488   15.8296
    2.2578   10.5117
  -12.1089   -4.4707
  -15.3428  -15.3428
   -4.4707  -12.1089
   10.5117    2.2578
   15.8296   14.5488
    6.5938   13.4634
   -8.7041         0


DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 32
        FractionLength: 25

Устанавливание значения и типа данных параметров блоков

Можно использовать выражения Fixed-Point Designer™, чтобы задать значение и тип данных параметров блоков в Simulink. Для получения дополнительной информации смотрите, Задают Типы данных с фиксированной точкой.

Логгирование сигналов фиксированной точки

Когда сигналы фиксированной точки регистрируются к рабочему пространству MATLAB через логгирование сигнала, они всегда регистрируются как fi объекты.

Включить логгирование сигнала для сигнала:

  1. Выберите сигнал.

  2. Откройтесь Record выпадают.

  3. Выберите Log/Unlog Selected Signals.

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

Когда вы регистрируете сигналы из модели, на которую ссылаются, или Stateflow® строят диаграмму в вашей модели, размерах слова fi объекты могут быть больше, чем вы ожидаете. Размеры слова сигналов фиксированной точки в моделях, на которые ссылаются, и диаграммах Stateflow регистрируются как следующий самый большой размер контейнера хранения данных.

Доступ к данным о блоке фиксированной точки в процессе моделирования

Simulink обеспечивает прикладной программный интерфейс (API), который позволяет программируемому доступу блокировать данные, такие как вводы и выводы блока, параметры, состояния, и работать векторы, в то время как симуляция запускается. Можно использовать этот интерфейс, чтобы разработать программы MATLAB, способные к доступу к данным о блоке, в то время как симуляция запускается или получить доступ к данным из командной строки MATLAB. Информация о сигнале фиксированной точки возвращена в вас через этот API как fi объекты. Для получения дополнительной информации о API обратитесь к “Доступу к Данным о Блоке В процессе моделирования” в документации Simulink.