Como usar o parâmetro .step com mais de dois parâmetros no LTSpiceIV


12

Eu preciso fazer três simulações transitórias com valores diferentes de certos resistores (convenientemente chamados R1 e R2) em cada um. O que pretendo fazer exatamente é o seguinte:

  • Sim. 1: R1 = 1 k , R2 = 10 kΩΩ
  • Sim. 2: R1 = 1 M , R2 = 10 MΩΩ
  • Sim. 3: R1 = 1 k , R2 = 1 MΩΩ

Se houvesse apenas um resistor cuja resistência varia, então eu definiria sua resistência como "{r1}" (uso letras minúsculas para torná-lo uma variável / parâmetro diferente de R1) e use um comando como:

.step param r1 list 1k 1meg 1k

No entanto, como tenho que alterar dois parâmetros (juntos) duas vezes cada, li aqui que (pelo menos no LTSpiceIV) uma solução alternativa para o meu problema poderia estar usando algo como isto:

.step param X list 1 2 3

.param r1 = table(X, 1k, 1meg, 1k)

.param r2 = table(X, 10k, 1meg, 10meg)

Ao fazer a simulação, recebo os seguintes avisos:

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.

O mesmo se aplica para r1.

Por alguma razão, a simulação não "quebra" se eu adicionar um elemento extra à tabela. Nesse caso, a simulação leva muito tempo, avançando mais lentamente a cada vez, pois nunca terminaria. Tentei definir X como 0 1 2 em vez de 1 2 3, mas isso também não funciona.

Aqui estão algumas fotos:

Circuito + comandos

Mensagem de erro

Sua ajuda será muito apreciada.


Estou confuso, você quer simular 3 situações ou mais? Se você apenas deseja simular os três cenários, eu não me incomodaria em fazê-lo com especiarias.
ACD

E o que você quer que o eixo X seja?
ACD

Eu gostaria de simular essas três situações e traçá-las juntas. Eu sei que poderia exportar um arquivo CSV e plotá-lo com Octave ou Excel, mas seria muito mais útil fazê-lo diretamente no LTSpice. Neste post ( electronics.stackexchange.com/questions/20811/… ) alguém disse como fazê-lo, mas não funciona para mim. Neste exemplo, eu coloquei três cenários, mas talvez eu precise colocar mais.
sebascarra

Em relação à sua segunda pergunta, X seriam os diferentes índices que me permitem acessar os valores da tabela. Como (aparentemente) LT só me permite varrer uma variável de cada vez, varro X e tento acessar os valores da tabela de acordo com o valor que X assumiu nessa etapa. Espero estar sendo claro. Obrigado.
precisa saber é o seguinte

Bem, para um, o comando table deseja um índice, que é X, e um conjunto de pares xy. Cada parâmetro deve ter 3 pares, não três valores.
ACD

Respostas:


17

No LTSpice, o comando table realmente cria um tipo de dicionário no qual você precisa especificar pares de valores-chave. A diretiva apropriada para o seu caso seria:

.step param Rx list 1 2 3
.param R1 table(Rx,1,1k,2,1Meg,3,1k)
.param R2 table(Rx,1,10k,2,1Meg,3,10Meg)

e defina o valor dos resistores para {R1}e {R2}respectivamente.

Se você deseja ter os valores de um resistor próximos, também é possível inserir (em vez de valor, ao clicar com o botão direito do mouse)

R=table(Rx,1,10k,2,1Meg,3,10Meg)

no campo de valor do resistor. Isso funciona da mesma maneira para todos os tipos de componentes e, com um script externo para criar arquivos .asc, pode ser usado como muleta para LTspices com falta da funcionalidade monte carlo.


4

Um parâmetro de varredura / etapa pode controlar vários valores de componentes por meio de expressões.

Sua variável de controle que você está pisando pode ser um ângulo de fase ou atraso de tempo ou similar, que você insere em uma ou mais fórmulas / expressões para obter valores ou parâmetros de componentes resultantes a serem aplicados no design como {parameter}

Isso é útil se você deseja manter uma relação ou controlar alguma propriedade física indireta do design, como uma propriedade atual ou de filtro.

No editor de comando "op", você pode inserir algo como isto:

.STEP param Imax 0.1 0.3 0.1 
.PARAM Uin= 5
.PARAM R = (Uin-0.84954605)/Imax

Passa Imax de 0,1 a 0,3 em passos de 0,1 e calcula um valor de resistor R usando o parâmetro Imax, Uin, alguns assumem queda de tensão 0,85 .. de um diodo.

O PARAM R pode ser referenciado em uma notação de valor de componente usando {R}. Observe que o Uin pode ser usado como {Uin} em uma fonte de tensão ou similar e assim por diante.

Para várias linhas na janela do editor "op", use CTRL + M para manter todos os parâmetros na mesma caixa de texto.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.