schoolМатематика
verifiedРешено AI
Решение ошибки размерности в блоке Fcn Simulink
help_outlineУсловие задачи
Большой блок как соединить Реши задачу: А где выход порта 1 Реши задачу: Значения констант записать и считывать с воркспейс как сделать

lightbulbКраткий ответ
Ошибка в блоке Fcn возникает из-за неверного указания индексов массива u. Необходимо правильно задать формулу с использованием u(1), u(2) и u(3) для доступа к сигналам от блока Mux.
Подробное решение
На фото видно, что блок **Fcn** подсвечен оранжевым. Это подтверждает, что ошибка именно в нем. Судя по цифре «3» на блоке Mux перед ним и цифре «1» на входе самого Fcn, возник конфликт размерностей.
Чтобы исправить это и убрать ошибку, сделайте следующее:
1. Исправление блока Fcn (верхний)
Дважды щелкните на оранжевый блок **Fcn**. В поле **Expression** у вас, скорее всего, написана формула, которая не использует индексы массива \( u \).
Для этого блока (который считает \( \frac{dC}{dt} \)) формула должна быть строго такой:
\[ (-u(1) \cdot u(2)) / V + K3 \cdot u(3) \]
Где:
\( u(1) \) — это сигнал \( v \) (первый вход Mux);
\( u(2) \) — это сигнал \( C \) (второй вход Mux);
\( u(3) \) — это сигнал \( B \) (третий вход Mux).
Если вы напишете просто буквы без \( u(i) \), Simulink будет думать, что на вход должно приходить одно число, а не три, и выдаст ту самую ошибку.
2. Исправление блока Fcn1 (средний)
Проверьте средний блок. У него на входе Mux с 4 входами. Формула для \( \frac{dB}{dt} \) должна быть:
\[ (-u(1) \cdot u(2)) / V + K1 \cdot u(3) - K2 \cdot u(2) - K3 \cdot u(2) \]
(Убедитесь, что индексы \( u(1)...u(4) \) соответствуют порядку проводов в Mux).
3. Исправление блока Fcn2 (нижний)
Для нижнего блока (расчет \( \frac{dA}{dt} \)) при 4-х входах Mux формула:
\[ (u(1) \cdot (u(4) - u(2))) / V + K2 \cdot u(3) - K1 \cdot u(2) \]
Где \( u(4) \) — это сигнал \( A_0 \), приходящий из вашей подсистемы.
Почему это важно для тетради:
В Simulink блок **Fcn** воспринимает входной вектор как массив \( u \). Если в Mux входит несколько линий, то обращаться к ним внутри формулы можно только через \( u(1), u(2), \dots, u(n) \).
Что сделать сейчас:
1. Зайдите в каждый блок **Fcn**.
2. Перепишите формулы, используя \( u(1), u(2) \) и т.д., как показано выше.
3. Нажмите кнопку **Run**. Оранжевый цвет исчезнет, и модель запустится.