Microsoft MVP성태의 닷넷 이야기
사물인터넷: 32. 9V 전압에서 테스트하는 PN2222A 트랜지스터 [링크 복사], [링크+제목 복사]
조회: 2797
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일

9V 전압에서 테스트하는 PN2222A 트랜지스터

드디어 ^^ "짜릿짜릿 전자회로 DIY (2판) 뜯고 태우고 맛보고, 몸으로 배우는" 책에서 다루고 있는 트랜지스터를 구입했습니다.

PN2222A
; https://www.eleparts.co.kr/goods/view?no=642947

Transistors Bipolar (BJT) NPN Gen Pur SW

(첨부 파일에 datasheet - pn2221-2222a-11964.pdf가 있습니다.)

[그림 출처: https://en.wikipedia.org/wiki/2N2222]
pn2222a_1.jpg

C1815 트랜지스터의 경우 다리 모양이 ECB 순이어서 책의 내용을 실습하면서 좀 헷갈렸는데 이제는 실수할 여지가 줄었습니다. ^^

일단 트랜지스터에 대한 실습은 C1815를 다루면서 했기 때문에,

9V 전압에서 테스트하는 C1815 트랜지스터
; https://www.sysnet.pe.kr/2/0/11651

단지, 지난번 회로를 다음과 같이 바꿔주는 정도만 하면 됩니다. (참고로, 그새 9V 건전지가 닳아서 8.6V 만 나옵니다. ^^)

pn2222a_2.png

+/- 전체 회로 미동작: 8.69V
+/- 전체 회로 동작: 8.69V

GND - Base: 8.69V
GND - Collector: 8.69V
GND - Emitter: 7.97V
GND - LED(+)

GND - 100K 저항: 6.01V

따라서, LED는 7.97V - 6.01V = 1.96V
        Base - Emitter 구간은 8.69V - 7.97V = 0.72V

저항[Right] - LED[Left] 구간의 Emitter 전류: 0.04mA

Base가 Emitter보다 0.7V 정도 높아야 한다는 것과 일치합니다. 그렇다면 C1815 트랜지스터의 경우에는 0.5V 정도의 차이만 난다면 동작하는 것이 맞는 것 같습니다. 전류의 경우 200:1의 증폭이라면,

200:1 = 0.04mA:x
200x = 0.04mA
x = 0.0002mA

베이스 입력 전류가 0.0002mA라는 것인데 제 계측기의 측정 범위를 벗어나므로 측정으로 확인할 수는 없습니다. 대신 저항을 1K로 낮추고 Emitter 측의 전류를 측정하면 5.32mA가 나왔고 5.32 / 200 = 0.0266mA가 베이스 측에 측정되어야 하는데 (아마도 제 계측기의 정밀도가 0.1mA이므로) 정확하지 않게 0.01mA가 계측되었습니다.




재미 삼아서, 트랜지스터의 입력 중 컬렉터의 선을 제거하면 어떻게 될까요? 여전히 베이스 - 이미터 간 연결은 잘 됩니다. 게다가 마치 그냥 선을 연결한 것과 다름없이 동작합니다. 실제로 전류 값을 측정해도 다음과 같이 입력과 출력이 동일합니다.

베이스 측의 입력 전류: 5.23mA
이미터 측의 출력 전류: 5.23mA

베이스 측의 전압: 8.62V
이미터 측의 전압: 7.90V (차이: 0.72V)

그러니까, 트랜지스터의 각 노드 간 연결을 정리해 보면 이렇습니다. (혹시 틀린 사항 있으면 덧글 부탁드립니다. ^^)

베이스 - 이미터: 베이스가 이미터보다 0.7V 만 높으면 낮은 저항처럼 동작
                컬렉터에 전압이 있는 경우 베이스로부터의 유입되는 전류가 이미터 대비 200:1의 비율로 낮춰짐

컬렉터 - 이미터: 평상시에는 단선
                하지만 베이스에 전압이 이미터보다 0.7V 높게 들어오면 베이스 대신 이미터로 전류를 흘려보냄
                일단 스위치가 켜지면 이 구간의 내부 저항은 거의 0에 가깝게 됨.
                이미터 측의 전압은 베이스로부터 0.7V 낮은 전압 (컬렉터 측의 전압과는 무관)

그 외에 계측기로 각 EBC에 대해 탐침으로 저항을 측정해 보면,

[-] 탐침 B
    [+] 탐침 E - 23.80MΩ
    [+] 탐침 C - 14.47MΩ

[-] 탐침 C
    [+] 탐침 B - (측정 불가)
    [+] 탐침 E - (측정 불가)

[-] 탐침 E
    [+] 탐침 C - (측정 불가)
    [+] 탐침 B - (측정 불가)

C1815와 마찬가지로 Base에 대해서만 나타나고 저항값은 좀 더 낮은 정도입니다.

(첨부 파일에 이 글의 그림에 대한 fzz 파일이 있습니다.)




마지막으로 토글형 스위치 소개로 마무리하겠습니다. 제가 구매한 것은 2가지 제품이었는데, 우선 아래의 것은 "기판용"이라고 되어 있고 실제로 브레드보드의 홀에 맞습니다.

AT1D-2M3.jpg

AT1D-2M3 기판용 소형토글스위치
; https://www.eleparts.co.kr/goods/view?no=32411

만능기판에 사용가능한 소형토글스위치

ON-ON(OFF)
제조사: DECO
회로: SPDT
스위치 기능: ON-ON
정격전압-AC: 48V
정격전압-DC: 48V
정격전류: 0.4A
조명: 비조광
종단타입: PCB 스루홀
IP등급/Seal: Sealed
실장타입: 스루홀

(첨부 파일에 datasheet - AT1D.jpg가 있습니다.)

문제는, 핀의 길이가 3.3mm라고 되어 있는데 너무 짧아서 브레드보드에서 토글을 힘줘서 시키면 (매번) 부품이 빠져나와서 도저히 쓸 수가 없습니다. 반면 또 다른 토글 스위치로 구매했던 아래의 제품은,

CS12ANW03.jpg

CS12ANW03 - SWITCH, SLIDE, SPDT, 3A, 250V, TH
; https://www.eleparts.co.kr/goods/view?no=3043331

제조사: NKK SWITCHES
시리즈: CS
회로: SPDT
스위치 기능: On-On
액추에이터 타입: 표준
종단타입: PC 핀
실장타입: 스루홀

(첨부 파일에 datasheet - 1783590.pdf, 2039771.pdf가 있습니다.)

기판 용이 아니지만, 제법 힘을 주면 브레드보드에 들어갑니다. 그런데 브레드보드 용 핀의 규격이 아니기 때문에 적당한 자리 하나 찾아서 그냥 꼽아 놓고 쓰는 것이 좋을 정도입니다.

그러니까... 딱히 브레드보드 용으로 적합한 토글 스위치 제품을 찾지는 못했는데, 그나마 위의 2개 제품에서는 아래의 것이 더 나은 정도입니다. (혹시 알고 있는 제품 있으면 추천 부탁드립니다. ^^)




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]


donaricano-btn



[최초 등록일: ]
[최종 수정일: 8/19/2018 ]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer@outlook.com

비밀번호

댓글 쓴 사람
 




... [16]  17  18  19  20  21  22  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
12118정성태1/17/20201204개발 환경 구성: 466. C# DLL에서 Win32 C/C++처럼 dllexport 함수를 제공하는 방법 - 세 번째 이야기 [1]
12117정성태1/15/20201156디버깅 기술: 159. C# - 디버깅 중인 프로세스를 강제로 다른 디버거에서 연결하는 방법파일 다운로드1
12116정성태1/15/2020972디버깅 기술: 158. Visual Studio로 디버깅 시 sos.dll 확장 명령어를 (비롯한 windbg의 다양한 기능을) 수행하는 방법
12115정성태1/14/20201060디버깅 기술: 157. C# - PEB.ProcessHeap을 이용해 디버깅 중인지 확인하는 방법파일 다운로드1
12114정성태1/13/20201493디버깅 기술: 156. C# - PDB 파일로부터 심벌(Symbol) 및 타입(Type) 정보 열거 [1]파일 다운로드3
12113정성태1/12/20202031오류 유형: 590. Visual C++ 빌드 오류 - fatal error LNK1104: cannot open file 'atls.lib' [1]
12112정성태1/12/2020935오류 유형: 589. PowerShell - 원격 Invoke-Command 실행 시 "WinRM cannot complete the operation" 오류 발생
12111정성태3/23/20202057디버깅 기술: 155. C# - KernelMemoryIO 드라이버를 이용해 실행 프로그램을 숨기는 방법(DKOM: Direct Kernel Object Modification) [12]
12110정성태6/23/20201563디버깅 기술: 154. Patch Guard로 인해 블루 스크린(BSOD)가 발생하는 사례 [5]파일 다운로드1
12109정성태1/10/20201216오류 유형: 588. Driver 프로젝트 빌드 오류 - Inf2Cat error -2: "Inf2Cat, signability test failed."
12108정성태1/10/2020925오류 유형: 587. Kernel Driver 시작 시 127(The specified procedure could not be found.) 오류 메시지 발생
12107정성태1/10/20201074.NET Framework: 877. C# - 프로세스의 모든 핸들을 열람 - 두 번째 이야기
12106정성태1/8/20201198VC++: 136. C++ - OSR Driver Loader와 같은 Legacy 커널 드라이버 설치 프로그램 제작 [1]
12105정성태1/8/20201114디버깅 기술: 153. C# - PEB를 조작해 로드된 DLL을 숨기는 방법
12104정성태1/9/20201594DDK: 9. 커널 메모리를 읽고 쓰는 NT Legacy driver와 C# 클라이언트 프로그램 [4]
12103정성태4/23/20202780DDK: 8. Visual Studio 2019 + WDK Legacy Driver 제작- Hello World 예제 [1]파일 다운로드2
12102정성태1/6/20201650디버깅 기술: 152. User 권한(Ring 3)의 프로그램에서 _ETHREAD 주소(및 커널 메모리를 읽을 수 있다면 _EPROCESS 주소) 구하는 방법
12101정성태1/8/20201147.NET Framework: 876. C# - PEB(Process Environment Block)를 통해 로드된 모듈 목록 열람
12100정성태1/3/2020838.NET Framework: 875. .NET 3.5 이하에서 IntPtr.Add 사용
12099정성태1/3/20201213디버깅 기술: 151. Windows 10 - Process Explorer로 확인한 Handle 정보를 windbg에서 조회
12098정성태9/10/20201257.NET Framework: 874. C# - 커널 구조체의 Offset 값을 하드 코딩하지 않고 사용하는 방법 [3]
12097정성태1/2/2020873디버깅 기술: 150. windbg - Wow64, x86, x64에서의 커널 구조체(예: TEB) 구조체 확인
12096정성태1/2/20201182디버깅 기술: 149. C# - DbgEng.dll을 이용한 간단한 디버거 제작
12095정성태12/27/20191357VC++: 135. C++ - string_view의 동작 방식
12094정성태11/23/20201209.NET Framework: 873. C# - 코드를 통해 PDB 심벌 파일 다운로드 방법
12093정성태12/26/20191409.NET Framework: 872. C# - 로딩된 Native DLL의 export 함수 목록 출력파일 다운로드1
... [16]  17  18  19  20  21  22  23  24  25  26  27  28  29  30  ...