J'ai un convertisseur boost alimenté par batterie et j'essaie de mesurer le statisme de tension d'entrée maximale (batterie) dans diverses conditions de charge de tirages de courant élevés (différents cycles de service / périodicités) en plus de plusieurs types de batterie (différentes tensions / résistances internes). Étant donné que je simule un temps de fonctionnement (relativement) important, les fichiers de simulation deviennent assez importants, sans compter qu'ils prennent un certain temps. Je voudrais automatiser LTSpice pour pouvoir changer les valeurs des composants par programme et relancer les simulations et capturer des données (valeurs de choses comme la tension ou le courant). Je le sais:
- Les fichiers WAV peuvent être utilisés pour entrer / sortir des données du programme
- Le programme peut être exécuté à partir de la ligne de commande
Jusqu'à présent, ma meilleure option semble utiliser une combinaison de ces deux options avec mon propre code / script d'une manière qui atteint mes objectifs, mais je me demande simplement s'il existe déjà une meilleure solution.
Quelqu'un a-t-il automatisé LTSpice ou sait-il si une sorte d'API d'automatisation a été écrite pour lui (que ce soit par le fabricant ou par des tiers)?
Idéalement, j'aimerais avoir un solveur, tel que je lui ai donné les paramètres souhaités et qu'il ait essayé différentes valeurs de composants jusqu'à ce qu'il trouve la solution "optimale" à mes contraintes.
Réponses:
Exécuter une simulation plusieurs fois et changer plusieurs valeurs de composants est un peu plus compliqué que d'en changer une seule (ce qui n'est pas si mal)
Voici le concept pour changer une valeur:
.param X=R
.step param X 100 500 50
pour augmenter la valeur entre 100 et 500 par incréments de 50.Exemple:
Résultat:
Pour plusieurs valeurs, la seule façon dont j'ai trouvé de travailler était d'utiliser une liste de valeurs pour X et d'utiliser l'instruction table. Ceci est probablement mieux expliqué avec un exemple (lire l'aide des commandes utilisées sera probablement utile ici). Mais notez que la syntaxe de la commande table est dans la table de formulaire (index, x1, y1, x2, y2, .... xn, yn), prend index en entrée et retourne une valeur interpolée pour x = index basé sur le x fourni , paires y.
Dans l'une de mes simulations, j'avais besoin d'effectuer 12 simulations tout en modifiant 3 valeurs de composants différentes, voici les commandes:
Résultat:
Si tout va bien vous avez l'idée, vous pourriez peut-être produire un manuscrit qui produirait les commandes SPICE nécessaires quand vous remplissez vos valeurs désirées. Ou créez simplement un modèle (par exemple, je viens de copier et coller ce qui précède dans quelques simulations différentes et de changer les valeurs)
Si ce qui précède ne fait pas ce que vous voulez, alors regardez peut-être quelque chose comme le multisim de NI (je pense qu'il a des options de simulation par lots, bien que je ne sois pas sûr de leur utilité) Il peut également être utile de demander sur le LTSPice forum et voir si quelqu'un connaît une meilleure façon de faire les choses.
la source
Je pense qu'il est en fait possible d'exécuter LTSpice à partir de la ligne de commande et de lui faire exécuter une simulation transitoire:
Sur windoze:
Sous Linux:
la source
LTSpice peut être exécuté en mode batch avec le
-b
commutateur de ligne de commande.À partir du fichier d'aide LTSpice:
Comment lire et interpréter la sortie .raw est laissé comme exercice pour le lecteur.
Notez également, parmi les commutateurs de ligne de commande:
la source
Avez-vous déjà vérifié dans " LTSpice Queue Manager "? ( Le lien redirige vers mon propre site Web où vous pouvez télécharger le logiciel, mais je ne suis pas son auteur, qui a initialement partagé le programme sur un forum qui est fermé aujourd'hui. Le partager via mon site Web est un moyen de le faire revivre ).
Cet outil m'a beaucoup aidé par le passé. Vous pouvez préparer de nombreux fichiers de simulation et les exécuter en file d'attente.
la source
Si ce n'est que LT Spice et que vous ne pouvez pas dépasser l'interface graphique, je recommanderais le programme de script AutoIt. Je l'ai utilisé pour automatiser certaines applications Windows critiques qui manquaient de active-x-DDE-COM.dll-quoi que ce soit. Vous pouvez le configurer pour attendre des fichiers, des boutons-poussoirs Windows, des menus, des programmes d'appel avec des arguments, etc.
Jettes un coup d'oeil à:
http://www.autoitscript.com/site/
http://www.autoitscript.com/forum/
J'irais pour Winbatch si vous voulez payer pour un programme de script.
la source