Мне нужно сделать три переходных моделирования с разными значениями определенных резисторов (обычно называемых R1 и R2) в каждом. Что я хочу сделать именно так:
- Sim. 1: R1 = 1 кОм , R2 = 10 кОмΩ
- Sim. 2: R1 = 1 М , R2 = 10 МΩ
- Sim. 3: R1 = 1 кОм, , R2 = 1Ω
Если бы был только один резистор, сопротивление которого изменялось, я бы просто установил его сопротивление на «{r1}» (я использую строчные буквы, чтобы сделать его переменной / параметром, отличным от R1) и использовал бы такую команду, как:
.step param r1 list 1k 1meg 1k
Однако, поскольку мне приходится менять два параметра (вместе) по два раза каждый, я прочитал здесь, что (по крайней мере, в LTSpiceIV), что для обхода моей проблемы можно использовать что-то вроде этого:
.step param X list 1 2 3
.param r1 = table(X, 1k, 1meg, 1k)
.param r2 = table(X, 10k, 1meg, 10meg)
После моделирования я получаю следующие предупреждения:
WARNING: Can´t resolve .param r2 = table(X, 10k, 1meg, 10meg)
Select OK to continue the simulation with the default model or Cancel to quit now.
То же самое относится к r1.
По какой-то причине симуляция не «ломается», если я добавляю один дополнительный элемент в таблицу. В этом случае симуляция занимает слишком много времени, каждый раз продвигаясь медленнее, поскольку это никогда не закончится. Я попытался установить X в 0 1 2 вместо 1 2 3, но это тоже не работает.
Вот несколько картинок:
Ваша помощь будет высоко ценится.
Ответы:
В LTSpice команда table действительно создает своего рода словарь, в котором вы должны указать пары ключ-значение. Правильная директива для вашего случая будет:
и установите значение резисторов на
{R1}
и{R2}
соответственно.Если вы хотите, чтобы значения резистора были рядом с ним, вы также можете ввести (вместо значения, если щелкнуть по нему правой кнопкой мыши)
в поле значения резистора. Это работает одинаково для всех видов компонентов, и с помощью внешнего скрипта для создания файлов .asc его можно использовать в качестве опоры для LTspices, пропускающих функцию Монте-Карло.
источник
Один параметр развертки / шага может управлять несколькими значениями компонентов через выражения.
Ваша управляющая переменная, на которую вы переходите, может быть фазовым углом или временной задержкой или аналогичной, которую вы вводите в одной или нескольких формулах / выражениях для получения результирующих значений компонентов или параметров, которые будут применяться в проекте как {параметр}
Это полезно, если вы хотите сохранить отношение или контролировать некоторые косвенные физические свойства проекта, такие как свойство current или filter.
В редакторе команд "op" вы можете ввести что-то вроде этого:
Он шагает Imax от 0,1 до 0,3 с шагом 0,1 и вычисляет значение резистора R, используя параметр Imax, Uin, некоторое предполагаемое падение напряжения на 0,85 ... диода.
На PARAM R можно ссылаться в значении компонента usng {R}. Обратите внимание, что Uin может использоваться как {Uin} в источнике напряжения или подобном, и так далее.
Для нескольких строк в окне редактора «op» используйте CTRL + M, чтобы сохранить все параметры в одном текстовом поле.
источник