ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
4 мая
1354226 Топик полностью
framer (24.09.2023 23:28, просмотров: 108) ответил Visitor на Спасибо, схема открытая в окне LT-Spice, что ли? Стиль тот же.
LT-Spice было открыто как наглядное пособие че там напаял :) Сразу видно консультант и паять не умеет. 

С железа он только снял данные с осциллоскопа. Все графики были из Octave. На пальцах это можно показать так.

1) Поставить Octave с пакетом control (выше ссылки). Он запускал из комманд лине но там есть, что то вроде интерактивного ИДЕ в виде окон.

2) Поиграть со скриптом (сделал регресию че он там показывал а то видно небыло).

#подключаем пакет

pkg load control

#-----------------

#шаг 1 (готовим тестовые данные)

#определяем "s" - это типа пустая непрерывно временная передаточная функция

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

#передаточная функция

s = tf('s');

#делаем модельку, скажем цепочки РЛЦ

R=1;

L=1;

C=1;

# а вот и сама передаточная функция

rlc=1/(R+L*s+1/(C*s));

# получаем ответ на еденичное возмущение

[y,ts1,x]=step(rlc);

# причесываем данные.

in = [zeros(101,1); ones(101,1)];

y = [zeros(101,1); y]

# в D данные в формате необходимом для анализа.

D = iddata(y,in,0.2);

# можно посмотреть

plot(D);

#-----------------

#шаг 2. шаг 1 нужен был только для подготовки данных для анализа.

# запускаем System Identification. на вход подаем приготовленные данные.

# Консультант взял реальные данные из файла.

# внимание начало фокуса.

model = moen4(D,2);

# все. конец фокуса. Только на основании входных данных получили модель. Правда не в виде

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

# можно попробовать как новая модель работает. запускаем симуляцию. на вход подаем

# тотже ступеньчатый сигнал , чтобы было удобно посмотреть на разницу

[y1, t1, x1] = lsim(model,in,200)

# смотрим. y-оригинальный выход , y1-результат с симуляторя с изпользованием найденой модели

plot([in y y1])

# а вот и боде на основании найденой модели

bode(model)


Теоретически из модели состояния можно получить передаточную функцию есть такая

ss2tf. https://octave.sourceforge.io/signal/function/ss2tf.html

но у меня чета не получилось.