Matlab을 사용하여 회로 분석을 수행하는 방법은 무엇입니까?


14

회로 분석에 Matlab을 사용하는 사람들에 대한 이야기를 자주 듣지만 실제로 어떻게 수행되는지는 알지 못했습니다. 나는 손으로 방정식을 설정하고 Matlab에서 해결하는 것보다 더 많은 것이 있다고 가정합니다.

좋은 출발점을 찾고 있습니다.


Matlab을 "SPICE 대체"로 사용하여 개별 RLC 구성 요소를 시뮬레이션하거나 시스템 시뮬레이션 라인을 따라 더 많은 것을 요구하고 있습니까?
W5VO

@ W5VO 둘 다지만 SPICE에 더 중점을 둡니다. Simulink로 시스템 시뮬레이션을 수행 할 수 있으며 그렇게 어렵지 않다는 것을 알고 있습니다.
AndrejaKo

5
회로 해결은 비선형 미분 방정식을 푸는 것이므로 Matlab에서 가능합니다. OTOH SPICE는 실제로 비선형 미분 방정식 솔버에 지나지 않으므로 정말 이상하거나 특별한 문제가있는 경우에만 Matlab을 사용합니다.
jpc

답변:


6

Matlab Simulink Simpowersystem 도구 상자를 사용하여 회로를 분석 할 수 있습니다 . 여기에는 RLC 구성 요소, 스위치, 전기 기계 등이 포함됩니다. 자체 구성 요소를 작성하고 라이브러리 구성 요소의 매개 변수를 수정할 수 있습니다. 회로를 모든 Simulink 블록, 모든 Simulink 솔버 또는 Matlab 기능과 결합 할 수 있으므로이 도구는 매우 강력합니다. Simulink 환경에서 작업하기 때문에 회로 방정식을 먼저 풀 필요가 없습니다. 원래 전원 시스템 용이지만 모든 전자 회로에 사용할 수 있다고 생각합니다.


3
답변이 약간 늦어 지지만 Simpowersystem 보다 더 구체적인 SimElectronics도 있습니다 (그러나 값 비싼 툴박스 라이센스 문제와 공유)
Clement J.

문제는 모든 도구 상자가 다소 성가신 것으로 Simulink를 찾았다는 것입니다. RLC 회로를 시뮬레이션하기 위해 무엇이 필요한지 살펴보십시오 . SPICE보다 훨씬 더 복잡합니다. SPICE에서 합리적인 방식으로 수행 할 수없는 컨트롤러 관련 동작 코드 블록이있는 매우 구체적인 경우에만 가치있는 IMO입니다.
Fizz

또한 기호 전송 기능을 얻으려면 qsapecng는 무료이며 회로를 그리고 하나의 버튼을 클릭하면 완료됩니다.
Fizz

14

회로 분석을 위해 MATLAB을 꽤 많이 사용합니다. 때때로 나는 향신료를 선호하고, 다른 경우에는 향신료를 선호하며 내 기분과 요구 사항에 달려 있습니다.

다음 단계는 다음과 같습니다.

  • 1 : 회로의 라플라스 변환을 수행
  • 2 : 전달 함수를 얻습니다
  • 3 : MATLAB 함수를 사용한 플롯 / 분석. 보드, 임펄스, freqresp 등.

가장 까다로운 부분은 Laplace 변환을 수행하고 전달 함수 방정식을 도출하는 것입니다.

인터넷에서 Laplace를 복용하는 것에 대한 많은 예제와 교과서가 있습니다. 간단히 말해서 여기의 목표는 방정식을

H(에스)=에스2+에스+에스2+이자형에스+에프

여기서 ~ c 는 분자이고 d ~ f 는 분모가됩니다.에프

이렇게하려면 모든 수동 소자를 복잡한 임피던스로 변환하십시오. 그게

  • C = 1 / 초
  • R = R
  • L = sL

다음으로 Vout / Vin 형식의 회로 방정식을 도출하십시오.

다음과 같은 형태의 간단한 저역 통과 필터의 경우 :

Vin -------R-------------- Vout
               |
               C
               |
------------------------------

이것은 얻을 것이다 :

V영형V나는=에스아르 자형+에스

MATLAB에 대해 위의 방정식을 num 및 den 형식으로 작성하십시오.

num = [C 0];
den = [C R];

그런 다음 전달 함수 (보이드), 극점 다이어그램 등을 분석하려는 matlab 함수를 계속 사용하십시오.

아래는 최근에 내가 놀고 놀고 값을 조정하려고 시도한 필터의 예입니다.

R1 = 20e3;
C1 = 235e-9;
R2 = 2e3;
C2 = 22e-9;
num = [2*R2*C1 0];
den = [C1*R1*C2*R2*2 (2*C1*R1 + C2*2*R2) 2];
g = tf(num,den);
P = bodeoptions; % Set phase visiblity to off and frequency units to Hz in options
P.FreqUnits = 'Hz'; % Create plot with the options specified by P
bode(g,P);
%[num,den] = eqtflength(num,den);      % Make lengths equal
%[z,p,k] = tf2zp(num,den)          % Obtain zero-pole-gain form

각 단계에 대한 좋은 설명이있는 예가 있습니까?
AndrejaKo

물론-주말 동안 당신을 위해 모범을 보일 것입니다!
스매시 스틱

이것은 완전히 정확하지만 완전히 의미가 없습니다. 나를 판단하지 말고 Laplace와 Z 변환을 좋아합니다 ... :) .... 트랜지스터와 연산 증폭기 증폭기를 시뮬레이션하기 위해이 방법을 사용하십시오 ... :)
Brethlosze

저역 통과 필터의 전송 기능을 쓸 때 실수를 한 것 같습니다. 난 당신이 V OUT / V IN = (1 / SC) / (R + (1 / SC)) 의미 생각
스콧 로손

6

나는 언젠가 scipy (파이썬을위한 숫자 도구 세트)를 사용하여 회로 분석을 수행합니다. 그렇습니다. 일반적으로 먼저 회로 방정식을 먼저 해결해야합니다. 이것은 회로에 대한 공차 분석 및 감도 분석을 수행 할 때 주로 도움이됩니다.

일부 공통 회로에서 일반적인 분석을 수행하는 방법에 대한 예제를 제공하는 "MATLAB을 사용한 전자 회로의 공차 분석" 주제에 관한 책이 있습니다 . 실제로 SPICE와 같은 제품을 대체하는 것은 아니지만 모든 부품 공차에서 우수한 생산 수율을 설계하거나 시간과 온도에 따른 부품 드리프트를 고려할 때 유용합니다.


3
SciPy는 Matlab과 달리 무료이며 동일한 기능을 많이 수행합니다. scipy.org/NumPy_for_Matlab_Users 제 생각에는 정말 훌륭하다고 생각합니다.
endolith

일부 SPICE에는 Monte Carlo 시뮬레이션 및 감도 분석도 추가되었습니다. SIMetrix는 특히 만료되지 않는 데모 / 인트로 버전에서도 전자를 무료로 제공하지만 후자의 기능은 무료가 아닙니다. Intersil (iSim : PE) 및 Analog Devices (ADIsimPE)는 이제 SIMetrix를 회사 SPICE로 제공하지만 기본적으로 추가 칩 라이브러리가 포함 된 소개 버전입니다.
Fizz

또한 그 교과서 표지는 MATLAB을 MAT H LAB 로 잘못 철자했습니다 ... 매우 재미 있고 많은 자신감을 얻지 못합니다.
Fizz

1

모든 토폴로지 (직렬 및 병렬)가있는 간단한 RLC 회로의 경우 "rlcdemo"를 사용할 수 있습니다. 분석 필터에 적합한 GUI (LPF-HPF-BPF-BSF)

 rlcdemo
 Analyzing the Response of an RLC Circuit
 This demo shows how to use the Control System Toolbox(TM) functions
 to analyze the time and frequency responses of common RLC circuits
 as a function of their physical parameters.


0

Matlab의 SCAM 외에도 CircuitNAV 에는 매끄러운 온라인 기호 회로 분석 도구가 있습니다.이 회로 는 넷리스트 파일 (LTspice, Micro-Cap, TINA-TI, PSpice 등)을 입력으로 사용하고 각 회로 매개 변수에 대한 대수 솔루션을 생성합니다. .

CircuitNAV는 데모자습서 도 제공합니다 .


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.