Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Simulink Matlab.doc
Скачиваний:
197
Добавлен:
09.05.2015
Размер:
2.39 Mб
Скачать

9.8. Function & Tables – блоки функций и таблиц

9.8.1. Блок задания функции Fcn

Назначение:

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

Параметры:

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

В выражении можно использовать следующие компоненты:

  1. Входной сигнал. Входной сигнал в выражении обозначается u, если он является скаляром. Если входной сигнал – вектор, необходимо указывать номер элемента вектора в круглых скобках. Например, u(1) и u(3) – первый и третий элементы входного вектора.

  2. Константы.

  3. Арифметические операторы (+ – * /).

  4. Операторы отношения (= = != > < >= <=).

  5. Логические операторы (&& | | !).

  6. Круглые скобки.

  7. Математические функции: abs, acos, asin, atan, atan2, ceil, cos, cosh, exp, fabs, floor, hypot, ln, log, log10, pow, power, rem, sgn, sin, sinh, sqrt, tan, и tanh.

  8. Переменные из рабочей области. Если переменная рабочей области является массивом, то ее элементы должны указываться с помощью индексов в круглых скобках. Напрмер, A(1,1) - первый элемент матрицы A.

Операторы отношения и логические операторы возвращают значения в виде логического нуля (FALSE) или логической единицы (TRUE).

Операторы, допускаемые к использованию в выражении, имеют следующий приоритет (в порядке убывания):

  1. ( )

  2. + – (унарные)

  3. Возведение в степень

  4. !

  5. /

  6. + – (бинарные)

  7. > < <= >=

  8. = !=

  9. &&

  10. | |

Блок не поддерживает матричные и векторные операции. Выходной сигнал блока всегда – скаляр.

Примеры использования блока Fcnпоказаны на рис. 9.8.1.

Рис. 9.8.1. Примеры использования блока Fcn

9.8.2. Блок задания функции matlab Fcn

Назначение:

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

Параметры:

  1. MATLAB function – Выражение на языке MATLAB.

  2. Output dimensions – Размерность выходного сигнала. Значение параметра –1 (минус один) предписывает блоку определять размерность автоматически.

  3. Output signal type – Тип выходного сигнала. Выбирается из списка:

  • real – Действительный сигнал.

  • complex – Комплексный сигнал.

  • auto – Автоматическое определение типа сигнала.

  • Collapse 2-D results to 1-D – Преобразование двумерного выходного сигнала к одномерному.

    Входной сигнал в выражении обозначается u, если он является скаляром. Если входной сигнал – вектор, необходимо указывать номер элемента вектора в круглых скобках. Например,u(1)иu(3)– первый и третий элементы входного вектора. Если выражение состоит из одной функции, то ее можно задать без указания параметров. Выражение может содержать также собственные функции пользователя, написанные на языкеMATLAB и оформленные в видеm-файлов. Имяm-файла не должно совпадать с именем модели (mdl-файлом).

    Рис. 9.8.2 демонстрирует применение блока MATLAB Fcn.В примере используется функцияMy_Matlab_Fcn_1, вычисляющая сумму и произведение двух элементов входного вектора. Текст функции (файлMy_Matlab_Fcn_1.m) приведен ниже:

    function y=My_Matlab_Fcn_1(x,k); y(1)=x*k; y(2)=x + k;

    Выражение для вызова функции, заданное параметром MATLAB function, имеет вид:My_Matlab_Fcn_1(u(1),u(2)) .

    Рис. 9.8.2. Примеры использования блока MATLAB Fcn

  • Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]