J'entends souvent des gens utiliser Matlab pour l'analyse de circuits, mais je n'ai jamais vraiment compris comment cela se faisait. Je suppose qu'il y a quelque chose de plus que simplement mettre en place des équations à la main et les résoudre dans Matlab.
Je cherche un bon point de départ.
Réponses:
Vous pouvez utiliser la boîte à outils Matlab Simulink Simpowersystem pour effectuer une analyse de circuit. Il comprend des composants RLC, des commutateurs, des machines électriques, etc. Vous pouvez créer votre propre composant et modifier tous les paramètres des composants de la bibliothèque. Comme vous pouvez combiner vos circuits avec n'importe quel bloc Simulink, n'importe quel solveur Simulink ou n'importe quelle fonction Matlab, cet outil est très puissant. Il n'est pas nécessaire de résoudre d'abord les équations du circuit car vous travaillez dans l'environnement Simulink. Il est à l'origine orienté pour les systèmes d'alimentation, mais je pense que vous pouvez l'utiliser pour n'importe quel circuit électronique.
la source
J'utilise beaucoup MATLAB pour l'analyse de circuits. Parfois, je le préfère aux épices, d'autres fois je préfère les épices, cela dépend de mon humeur et de mes besoins.
Ce sont les étapes suivantes:
La partie la plus délicate que je trouve est de prendre la transformée de Laplace et de dériver votre équation de fonction de transfert.
Il existe de nombreux exemples et manuels sur la prise d'un Laplace sur Internet. En bref, le but ici est d'obtenir l'équation sous la forme de
où à c est le numérateur et d à fune c ré F le dénominateur dans l'exemple présenté ci-dessous.
Pour ce faire, convertissez tous vos éléments passifs en impédances complexes. C'est
Dérivez ensuite une équation pour votre circuit sous la forme de Vout / Vin.
Pour un simple filtre passe-bas sous la forme de:
cela donnerait:
Écrivez l'équation ci-dessus sous la forme de num et den pour MATLAB:
Ensuite, continuez à utiliser n'importe quelle fonction matlab que vous aimez pour analyser la fonction de transfert (bode), le diagramme de pôle zéro, etc.
Voici un exemple de filtre avec lequel je jouais récemment et essayais de régler les valeurs:
la source
J'utilise parfois scipy (un ensemble d'outils numériques pour python) pour faire des analyses de circuits. Et oui, cela implique généralement de résoudre les équations du circuit à la main en premier. Cela est surtout utile lors de l'analyse de la tolérance et de la sensibilité sur le circuit.
Il existe un livre sur le sujet "Analyse de la tolérance des circuits électroniques utilisant MATLAB" qui fournit quelques exemples de la façon d'effectuer l'analyse typique sur certains circuits courants. Ce n'est pas vraiment un remplacement pour quelque chose comme SPICE, mais il est utile lorsque vous essayez de concevoir un bon rendement de production sur toutes les tolérances des composants, ou pour tenir compte de la dérive des composants dans le temps et la température.
la source
pour un circuit RLC simple avec n'importe quelle topologie (série et parallèle), nous pouvons utiliser "rlcdemo". C'est bon pour les filtres d'analyse (LPF-HPF-BPF-BSF)
la source
Vous pouvez utiliser un programme créé dans Matlab appelé SCAM (analyse de circuit symbolique dans Matlab), et est ici: https://www.swarthmore.edu/NatSci/echeeve1/Ref/mna/MNA6.html
la source
Outre SCAM dans Matlab, il existe également un outil d'analyse de circuit symbolique en ligne élégant à CircuitNAV , qui utilise les fichiers de netlist (de LTspice, Micro-Cap, TINA-TI, PSpice, etc.) comme entrée et génère la solution algébrique pour chaque paramètre de circuit .
CircuitNAV fournit également une démo et un tutoriel .
la source
Le livre pdf d'exemples Spice et Matlab, http://www.elsevierdirect.com/companions/9780750659321/exercises/SpiceAndMatlab.pdf , un livre d'accompagnement à Introduction to Linear Circuit Analysis and Modeling par Moura & Darwazeh, semble vraiment bien pour mon fins.
la source