Thursday, March 29, 2012

Pspice study - 11 Model Editor 활용 - 소자 특성 변경하기

Chapter 9. Model Editor - 소자 특성 변경하기


※ 소자의 고유한 특성을 수정하는 방법을 알아보자.


 

1. 회로도

## 사용 부품 리스트 ##
VDC/source
0/source
R/analog
D1N750/diode

2. 시뮬레이션 설정


DC sweep을 통해 전압원 V1의 값을 변화시킨다.
1~10V까지 변화시키며 0.02씩 증가시키도록 한다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

프로브를 배치하고, 시뮬레이션을 실행하면 다음과 같은 결과를 얻을 수 있다.



3. 실행 결과


크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

V(out)의 크기를 보면 처음에는 선형적으로 증가하다가 4.7V 근처에서 다이오드에 의해 breakdown이 일어남을 볼 수 있다.

이는 다이오드의 소자 특성에 의한 것으로 breakdown voltage가 4.7V로 설계되어 있기 때문이다.

해당 다이오드의 breakdown voltage를 8V로 높혀보자.


다시 Capture창의 회로도로 돌아와서 배치되어 있는 D1N750소자를 선택하고 마우스 우클릭을 하여 Edit Pspice Model을 선택한다.


그러면 Model Editor가 실행되게 된다.

실행된 Model Editor 창의 아래쪽을 보면 해당 모델의 텍스트로 이루어진 소스코드를 볼 수있다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

여기서 모델의 이름이 D1N750이며, 이 모델의 타입이 D(다이오드)임을 확인 할 수 있다.


다음 괄호안의 소스코드가 이 소자의 특성을 표현한 부분이다. 여기서 Bv=4.7 을 찾는다.
이는 Breakdown Voltage가 4.7V 임을 표현한다. 이부분을 8로 수정해 준다.



수정이 끝나면 저장한뒤 Model Editor를 종료한다.

다시한번 시뮬레이션을 실행시키면, 8V근처에서 breakdown이 일어남을 볼 수 있다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

소자의 값에 따른 시뮬레이션 결과를 모두 표현해 보자.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)


시뮬레이션 세팅에서 Options 항목중에 Parametric sweep을 선택한다.
우측에서 Model Parameter를 선택하고, 모델의 타입은 D, 이름은 D1N750, 변화시킬 파라미터는 Bv를 적는다.

아래쪽에 변화시킬 값으로는 Value list를 선택하고

4.7v 8v

라고 적어준다. 이처럼 서로 다른 값은 스페이스나 콤마로 구분이 가능하다.

설정을 마치고 시뮬레이션을 실행하면 다음과 같은 결과를 얻을 수 있다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

한번은 4.7v에서, 한번은 8v에서 breakdown이 일어남을 볼 수 있다.

Pspice study - 10 파일로 저장된 전압원

※ 특정 파형을 파일로 저장하여 전압원으로 사용하기


- 파형을 저장해 두었다가 이를 불러내어 전압원으로 사용할 수 있다.


 

1. 파형 생성 - sin파


단순히 sin파를 저장했다가 불러오기로 하자. 다음과 같이 회로를 구성한다.

단순하게 구성한 회로, 전압원은 VSIN/source를 사용한다.


sin파의 주파수가 10k이므로, 5주기를 관찰하기 위해 시뮬레이션은 Time Domain(Transient)로 설정하고 0.5ms동안 시뮬레이션을 하도록 한다.
시뮬레이션 시간인 0.5ms의 약 1/5000 ~ 1/10000에 해당하는 스텝사이즈를 설정해 준다.
여기선 0.1us으로 설정하였다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

전압 프로브를 배치하고, 시뮬레이션을 실행하면 다음과 같은 결과를 얻을 수 있다.


크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)


 

2. 파형 저장


이제 이 파형을 파일로 저장해야 한다.
시뮬레이션 창의 메뉴에서 File > Export > Text를 선택한다.


파일이 저장될 경로와 이름을 정해 준다.


크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

해당 경로로 가서 저장된 텍스트 파일을 열어보면 다음과 같은 내용이 저장되어 있음을 볼 수 있다.


수정 전

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

왼쪽은 시간에 해당하고 오른쪽은 그 시간에서의 전압값을 의미한다.
여기서 가장 윗줄의 Time  V(R1:2) 라는 문자는 나중에 파형을 불러들일 때 인식하지 못하는 부분이다. 이부분은 삭제해 다시 저장해 주도록 한다.

수정 후 - 맨 윗줄을 지워준다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)


 

3. 저장된 파형을 불러오기


다시 회로도로 돌아와서, vpwl_file 이라는 파트를 검색해서 배치한다.

VPWL_FILE 소자


<FILE>을 더블클릭하여, 파일경로와 이름.txt을 기입한다.


경로와 이름을 정확하게 적어준다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)


앞에서와 같이 전압 프로브를 배치하고 시뮬레이션을 실행하면 동일한 전압이 생성되고 있음을 볼 수 있다.

전압원으로 sinwave.txt 파일의 내용이 사용된다.

저장한 sin파와 동일한 형태로 전압을 생성한다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

이처럼 특정 파형을 저장해 두었다가 불러내어 사용하는 것도 가능하다.

Pspice study - 09 시뮬레이션 - Parametric Sweep

Chapter 8. 시뮬레이션 - Parametric Sweep


※ Parametric Sweep은 회로내의 변수로 설정한 소자값을 변경하면서 시뮬레이션을 진행하게 된다.
이전 DC sweep에서 다뤄본 적이 있는데, 사용자가 임의로 설정한 변수를 sweep하는 것 뿐만 아니라, 사용된 소자의 값을 바꾸는 것도 Parametric Sweep을 통해 구현할 수 있기 때문이다.


1. 회로도


## 사용 부품 리스트 ##
VAC/source
VDC/source
0/source
R/analog
C/analog
LM324/eval

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

작성후 place power의 vcc소자를 통해 vcc와 vee를 인가하도록 하고, place net alias를 통해 out 노드의 이름을 부여한다.

여기서 주의할 점은 저항 R2의 값을 {Rvar}으로 입력해야 한다. 이는 Rvar라는 변수로 된 값을 가지게 됨을 의미한다.

또한 LM324의 입력단 부호에 유의하도록 한다. 소자를 배치한뒤 V키를 눌러 상하 반전을 시켜주어야 한다.

이제 변수인 Rvar의 값을 설정해 주어야 한다.
변수의 값은 place part에서 PARAM 으로 검색하면 나오는 소자를 사용한다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

소자를 배치한 뒤 소자를 더블클릭해서 속성을 수정하자.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

나타나는 표의 가장 좌측상단을 더블클릭하면 속성이 가로정렬에서 세로정렬로 바뀌게 된다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

좌측 상단의 New Row를 클릭한다.


새로운 속성으로 변수이름에 해당하는 Rvar를, 원하는 초기값으로 200을 입력한다.
Apply를 누르면 새로운 row를 계속 추가할 수 있으며, OK를 누르면 마치게 된다.
완료되면 OK를 누른다.

추가된 Rvar의 값에 마우스 커서를 올려두고 우클릭하여 display를 선택한다.


나타나는 속성에서 Name and Value를 선택한다.


OK를 누르고, 열려있는 탭을 우클릭하여 save한뒤 다시 우클릭하여 close로 닫는다.


회로도로 돌아오면 변수의 초기값이 설정되어 있음을 확인할 수 있다.



2. 시뮬레이션 설정


AC Sweep/Noise를 선택한다. 10~100kHz까지 변화시키며, 구간당 100개의 point를 둔다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

좌측의 Options에서 Parametric Sweep을 체크한다.

현재 변화시키고자 하는 값이 사용자가 설정한 Rvar라는 변수이기 때문에, Global Parameter를 선택하고 이름에 Rvar라고 적는다. 값은 200부터 1k까지 200씩 증가시키기로 한다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

만일 값을 선형적으로 변화시키지 않고, 특정한 값들로 변화를 시키고 싶다면 Sweep type을 Linear가 아닌 맨 아래의 Value list로 선택하고 값들을 적으면 된다.
값은 스페이스나 콤마로 구분할 수 있다.
ex) 5m, 10m, ...

설정이 완료되면, 앞선 AC sweep 게시글에서와 같이 dB 스케일의 전압 프로브를 배치하도록 한다.



 

3. 실행 결과


시뮬레이션을 실행시키면 다음과 같은 결과를 얻을 수 있다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

각각의 저항값에 따라서 pass band의 영역이 다른것을 볼 수 있다.

따라서 해석을 위해 최고치 보다 3dB낮은 pass band의 영역을 구해 보자.
다수의 결과를 가지고 해석하므로 앞서 살펴본 Performance analysis를 통해 해석해야 한다.

앞서 다뤄본 방법들로 Performance analysis를 했을 때 오류로 인해 실행이 되지 않을 때가 있다.

따라서 이번엔 조금 다른 방법으로 Performance analysis를 진행 하기로 한다.


먼저 시뮬레이션 창 위쪽 툴바에서 Perfromance analysis 아이콘을 클릭한다.


그러면 위쪽에 새로운 Plot이 생성되고, SEL>>을 통해 선택되어 있음을 확인 할 수 있다.

시뮬레이션 창 위쪽 메뉴에서 Trace > Add trace 를 선택한다.


우선 우측 함수들에서 Bandwidth_Bandpass_3dB(1) 을 선택하고,
그 다음 좌측 변수들에서 V(out)을 선택한다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

그러면 Rvar 값에 따른 Pass band의 크기를 확인 할 수 있다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

Performance analysis는 다수의 결과들을 해석할 때 사용한다는 것을 꼭 알아두도록 하자.

Pspice study - 08 시뮬레이션 - AC Sweep

Chapter 7. 시뮬레이션 - AC Sweep



※ AC Sweep은 입력신호의 주파수를 변화시켜가면서 그에따른 출력을 시뮬레이션하게 된다.

 

1. 회로도


## 사용 부품 리스트 ##
VDC/source
VAC/source
R/analog
C/analog
0/source
uA741/eval

그 외에 place power를 통해 vcc와 vee를 배치하고, place net alias를 통해 out노드의 이름을 부여한다.


 

2. 시뮬레이션 설정


다음과 같이 AC Sweep/Noise를 선택해 준다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

주파수 변화는 Log스케일로 변화시키며, 1Hz부터 10kHz까지 변화시킨다. 10배당 101개의 데이터 구간 포인트를 할당해 준다.

이제 전압을 측정할 프로브를 배치해야 하는데, AC Sweep의 경우에는 별도의 프로브들이 존재한다.

결과값을 dB값으로 보기 위해서, Capture창의 메뉴에서 Pspice > Markers > Advanced > dB Magnitude of Voltage 프로브를 선택하여 출력단에 배치한다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)



3. 실행 결과


시뮬레이션을 실행시키면 다음과 같은 그래프를 얻을 수 있다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)


x축 변수인 주파수에 대해서 저주파에 비해 고주파 영역에선, 출력전압의 dB 스케일이 감소하는 구간이 있음을 볼 수 있다.

여기서 y축인 dB 스케일이 최대치보다 3dB낮은 크기를 가지는 시점의 주파수를 3dB 주파수, 혹은 차단 주파수라고 한다.

이 차단 주파수는 다음과 같은 방법으로 찾을 수 있다.

먼저 시뮬레이션 창의 툴바 중앙부근에 있는 Toggle Cursor 아이콘을 선택한다.


그러면 우측의 아이콘들이 활성화 되는데, 이 중에서 Search Command 아이콘을 선택한다.


입력창에 search forward level (max-3) 을 입력한다.
이를 통해 최대 크기보다 3dB 낮은 크기를 가질 때의 주파수를 찾을 수 있다.



그 다음 Mark label 아이콘을 선택해서 해당 지점을 표시할 수 있다.


결과는 다음과 같다.

크게보려면 클릭하세요.
(새창에서 보려면 Shift + 클릭)

따라서 차단 주파수는 4.8102kHz임을 알 수 있다.
이는 공식을 통해 계산된 결과인 4.822k에 근접한 값에 해당한다.