Microsoft MVP성태의 닷넷 이야기
사물인터넷: 41. 다중 전원의 소스를 가진 회로 [링크 복사], [링크+제목 복사]
조회: 10744
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
(연관된 글이 1개 있습니다.)

다중 전원의 소스를 가진 회로

다음과 같이 공급 전압을 각각 1.5V, 3.3V, 5V에 연결한 저항으로 시작해 보겠습니다.

multisource_power_1.png

이때의 전압과 전류는 다음과 같이 측정되었습니다.

[측정값]
Power-GND: 1.578V

1KΩ 1.577V
전류: 1.58mA

[측정값]
Power-GND: 3.258V

1KΩ 3.257V
전류: 3.28mA

[측정값]
Power-GND: 4.96V

1KΩ 4.96V
전류: 5.01mA

이후 테스트를 위해 여기에 직렬로 1K 저항을 하나 더 연결한 결과는 다음과 같습니다.

[측정값]
Power-GND: 1.594V

1KΩ 0.795V
1KΩ 0.798V
전류: 0.79mA

[측정값]
Power-GND: 3.262V

1KΩ 1.626V
1KΩ 1.634V
전류: 1.64mA

[측정값]
Power-GND: 4.95V

1KΩ 2.466V
1KΩ 4.477V
전류: 2.50mA

예상할 수 있듯이, 전력은 각각의 저항에 1/2로 나뉘고 전류 역시 저항이 2배가 되었으므로 1/2로 되었습니다.

그렇다면 여기에 전원을 2개 연결해 보면 어떻게 될까요?

multisource_power_2.png

위와 같은 식으로 3.3V와 1.5V를 함께 연결하면 다음과 같은 결과를 얻을 수 있습니다.

[측정값]
R2 연결 전원: 1.594V
R3 연결 전원: 3.262V

R1 1KΩ 1.624V
R2 1KΩ -0.029V
R3 1KΩ 1.637V

전류: 1.63mA

이에 대한 해석은 "중첩의 원리"라고 해서 다음의 문서에 설명하는 내용에 따라,

http://bh.knu.ac.kr/~ilrhee/lecture/electron/basic.pdf

개별 전원을 구성으로 한 회로처럼 해석하면 된다고 합니다.

따라서 1.5V를 위주로 회로를 구성하면 전체 저항이 R2 + R1||R3이 되어 1.5K가 되어 전류는 1mA가 됩니다. R2를 흐르는 지점에서 1mA가 되지만 이후 R1||R3으로 나뉘기 때문에 각각 0.5mA가 되어 결국 R1에 흐르는 1.5V 분량의 전류는 0.5mA가 됩니다.

반면 3.3V를 위주로 회로를 구성하면 전체 저항이 R3 + R1||R2가 되어 1.5가 되고 전류는 2.2mA가 됩니다. R3을 흐르는 지점에서 2.2mA가 되지만 이후 R1||R2로 나뉘기 때문에 각각 1.1mA가 되어 결국 R1에 흐르는 3.3V 분량의 전류는 1.1mA가 됩니다.

그 두 개의 전류를 합치면 1.6mA가 되고 이는 측정값에서 얻은 1.63mA와 (거의) 일치합니다.

마찬가지로 이번엔 5.0V와 1.5V를 함께 연결하면 다음과 같은 결과를 얻을 수 있습니다.

[측정값]
R2 연결 전원: 1.596V
R3 연결 전원: 4.96V

R1 1KΩ 2.189V
R2 1KΩ -0.593V
R3 1KΩ 2.757V

전류: 2.21mA

[계산 값]
1.5V로 인한 R1의 전류: 0.5mA
5.0V로 인한 R1의 전류: 1.666... mA

마지막으로 5.0V와 3.3V를 함께 연결하면 다음과 같은 결과를 얻을 수 있습니다.

[측정값]
R2 연결 전원: 3.262V
R3 연결 전원: 4.96V

R1 1KΩ 2.744V
R2 1KΩ 0.517V
R3 1KΩ 2.202V

전류: 2.77mA

[계산 값]
3.3V로 인한 R1의 전류: 1.1mA
5.0V로 인한 R1의 전류: 1.666... mA

(첨부 파일은 이 글에서 구성한 fzz 회로 파일입니다.)




이번 글을 테스트하면서 주의할 것이 있습니다. 저항을 하나 달았다고 해서 다음과 같이 입력 전류 2개가 만나게 하면 안 됩니다.

multisource_power_3.png

저렇게 되면 5V와 3.3V 사이의 회로가 단락된 효과를 갖게 됩니다. 즉 전위차에 따라 1.7V의 회로가 저항 없이 연결된 효과를 냅니다. 이런 연결을 아두이노에서 하게 되면 이상한 음과 함께 "L" 라벨의 LED가 켜지게 됩니다. (그렇습니다. 제가 저렇게 연결하는 실수를 했습니다. ^^;)




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

[연관 글]






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

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

비밀번호

댓글 작성자
 




... 16  17  18  19  20  21  22  23  [24]  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
13020정성태3/30/20226420.NET Framework: 1187. RDP 접속 시 WPF UserControl의 Unloaded 이벤트 발생파일 다운로드1
13019정성태3/30/20226399.NET Framework: 1186. Win32 Message를 Code로부터 메시지 이름 자체를 구하고 싶다면?파일 다운로드1
13018정성태3/29/20226926.NET Framework: 1185. C# - Unsafe.AsPointer가 반환한 포인터는 pinning 상태일까요? [5]
13017정성태3/28/20226773.NET Framework: 1184. C# - GC Heap에 위치한 참조 개체의 주소를 알아내는 방법 - 두 번째 이야기 [3]
13016정성태3/27/20227612.NET Framework: 1183. C# 11에 추가된 ref 필드의 (우회) 구현 방법파일 다운로드1
13015정성태3/26/20228960.NET Framework: 1182. C# 11 - ref struct에 ref 필드를 허용 [1]
13014정성태3/23/20227573VC++: 155. CComPtr/CComQIPtr과 Conformance mode 옵션의 충돌 [1]
13013정성태3/22/20225886개발 환경 구성: 641. WSL 우분투 인스턴스에 파이썬 2.7 개발 환경 구성하는 방법
13012정성태3/21/20225231오류 유형: 803. C# - Local '...' or its members cannot have their address taken and be used inside an anonymous method or lambda expression
13011정성태3/21/20226690오류 유형: 802. 윈도우 운영체제에서 웹캠 카메라 인식이 안 되는 경우
13010정성태3/21/20225651오류 유형: 801. Oracle.ManagedDataAccess.Core - GetTypes 호출 시 "Could not load file or assembly 'System.DirectoryServices.Protocols...'" 오류
13009정성태3/20/20227195개발 환경 구성: 640. docker - ibmcom/db2 컨테이너 실행
13008정성태3/19/20226471VS.NET IDE: 176. 비주얼 스튜디오 - 솔루션 탐색기에서 프로젝트를 선택할 때 csproj 파일이 열리지 않도록 만드는 방법
13007정성태3/18/20226148.NET Framework: 1181. C# - Oracle.ManagedDataAccess의 Pool 및 그것의 연결 개체 수를 알아내는 방법파일 다운로드1
13006정성태3/17/20227177.NET Framework: 1180. C# - ffmpeg(FFmpeg.AutoGen)를 이용한 remuxing.c 예제 포팅
13005정성태3/17/20226062오류 유형: 800. C# - System.InvalidOperationException: Late bound operations cannot be performed on fields with types for which Type.ContainsGenericParameters is true.
13004정성태3/16/20226089디버깅 기술: 182. windbg - 닷넷 메모리 덤프에서 AppDomain에 걸친 정적(static) 필드 값을 조사하는 방법
13003정성태3/15/20226230.NET Framework: 1179. C# - (.NET Framework를 위한) Oracle.ManagedDataAccess 패키지의 성능 카운터 설정 방법
13002정성태3/14/20226981.NET Framework: 1178. C# - ffmpeg(FFmpeg.AutoGen)를 이용한 http_multiclient.c 예제 포팅
13001정성태3/13/20227387.NET Framework: 1177. C# - 닷넷에서 허용하는 메서드의 매개변수와 호출 인자의 최대 수
13000정성태3/12/20226948.NET Framework: 1176. C# - Oracle.ManagedDataAccess.Core의 성능 카운터 설정 방법
12999정성태3/10/20226441.NET Framework: 1175. Visual Studio - 프로젝트 또는 솔루션의 Clean 작업 시 응용 프로그램에서 생성한 파일을 함께 삭제파일 다운로드1
12998정성태3/10/20226059.NET Framework: 1174. C# - ELEMENT_TYPE_FNPTR 유형의 사용 예
12997정성태3/10/202210438오류 유형: 799. Oracle.ManagedDataAccess - "ORA-01882: timezone region not found" 오류가 발생하는 이유
12996정성태3/9/202215599VS.NET IDE: 175. Visual Studio - 인텔리센스에서 오버로드 메서드를 키보드로 선택하는 방법
12995정성태3/8/20227893.NET Framework: 1173. .NET에서 Producer/Consumer를 구현한 BlockingCollection<T>
... 16  17  18  19  20  21  22  23  [24]  25  26  27  28  29  30  ...