Microsoft MVP성태의 닷넷 이야기
사물인터넷: 30. 릴레이(Relay) 제어 [링크 복사], [링크+제목 복사]
조회: 2324
글쓴 사람
홈페이지
첨부 파일

릴레이(Relay) 제어

이 책의 초반에,

짜릿짜릿 전자회로 DIY (2판) 뜯고 태우고 맛보고, 몸으로 배우는
; http://www.yes24.com/24/goods/33342224

계전기(Relay) 소개가 나옵니다. 저도 그 책에 따라 부품을 구매했는데요,

G5V-2-H1-DC9 - 저신호 릴레이 - PCB ThruHole Hi-Sens DPDT 9VDC 150mW Seal
; https://www.eleparts.co.kr/goods/view?no=683974

제조사: OMRON
접점 정격전류: 2A
코일 전압: 9V
코일 전류: 16.7mA
장착 스타일: Through Hole 

(첨부 파일에 datasheet - en-g5v_2-536510.pdf가 있습니다.)

극성은 없고 브레드보드에도 정확히 장착됩니다. 그런데, 저 같은 초보자는 브레드보드에 끼워진 릴레이의 어디에 코일이 연결된 스위치가 있는지 잘 구분이 안 되는데요. 자세히 보면 상단에 아래와 같이 홈이 파인 부분이 있습니다.

relay_1.png

그 파인 부분을 기준으로 시계방향으로 1, 2, 3, 4, ... 핀의 배열이 됩니다. 또한 릴레이의 한 면의 크기가 브레드보드의 8개의 핀 자리를 점유합니다. 따라서 상단이 8핀이고, 하단이 8핀으로 계산하면 되는데 릴레이로부터 8핀에 해당하는 모든 핀이 나온 것은 아니고 위의 그림 우측에 보이는 것처럼, 상단에 1, 4, 6, 8핀이 있는 것이고 하단에 16, 13, 11, 9핀이 나온 것입니다.

아래는 브레드 보드에 연결했을 때의 핀 위치를 보여줍니다.

relay_2.png

DPDT(쌍극쌍투) 스위치기 때문에, 1번-16번 핀의 전압 유무에 따라 각각 다음의 2개 회선이 동시에 연결 및 떨어지는 방식이고,

[OFF]
    4번 -  6번 연결
    13번 - 11번 연결

[ON]
    4번 -  8번 연결
    13번 - 9번 연결

래칭 릴레이(latching relay)가 아니기 때문에, 즉 코일 타입이 "Non-Latching"이므로 전원이 꺼지면 Off되는 방식입니다.

릴레이의 스위치를 닫기 위한 최소 전압을 "세트 전압(set voltage)"이라고 한다는데, 저 제품의 datasheet에는 세트 전압에 대한 명시는 없습니다. 단지 코일 전압이 9 VDC라고 되어 있는데 실제로 470Ω 정도의 저항을 직렬로 연결해도 릴레이가 동작할 수 있는 전압이 안 되어 스위치가 동작하질 않습니다. 따라서 필요하다면 병렬로 연결해 전압을 보존해야 할 것입니다.




릴레이 부품 소개가 빨리 끝났으니 남은 지면(?)을 활용해 부품 소개를 할까 합니다. ^^

실습을 하다 보면, 지난 글에 소개한 배터리가 금세 9V 아래로 떨어지게 됩니다. 그래서 기왕이면 AC-DC 어댑터를 구매해 연결하는 것이 좋습니다.

9v_adapter.png

보통 아두이노 보드에는 USB 케이블 연결 이외에도 전압 연결을 위한 단자가 별도로 있습니다. 바로 그 단자에 연결할 수 있는 9V 전원 어댑터입니다.

아두이노 호환 정전압 아답터 9V 1000mA SMPS
; http://robobob.cafe24.com/product/smps/245/category/32/display/1/

브랜드: ArtRobot(아트로봇)

다음은 위의 링크에서 제공하는 제품 설명입니다.

정전압 아답터 9V 1000mA SMPS 타입입니다.
아두이노(UNO, Mega2560, Pro 등)와 호환되는 규격의 (외경:5.5mm 내경2.1mm) 단자 크기입니다.

아두이노같은 손바닥 컴퓨터를 작동시킬때 PC에 연결된 USB 케이블로부터 전원을 공급 받지 않고 자체 전원을 사용할 경우 필요한 전원 아답터입니다.

아두이노 독립전 원으로 사용시 보통은 600mA 제품으로 충분합니다만,
확장 쉴드 등에 의해 많은 전력소모가 예상되는 경우엔 본 제품 같은 1000mA 용량을 사용하게 됩니다.
정전압 아답터는 회로의 부화와 상관없이 일정한 전압을 유지하는 전원 공급기입니다.

왜 9V인가요?
아두이노는 5V 구동제품의 경우 5V 레귤레이터를 통해 7~12V의 입력 전원을 5V 전원으로 변환하여 사용하게됩니다. 이때 입력전원과 5V의 차이가 너무 크면 불필요한 발열 손실이 커지게 됩니다. 따라서 레귤레이터 전원과 너무 큰 차이가 나지 않는 7.5 ~ 9V 전원 사용을 추천드립니다.


이 제품을 브레드보드에 연결하기 위해서는 저 어댑터의 잭을 꽂을 수 있는 부품이 필요한데, 이를 위해 다음의 제품을 구매해야 합니다.
9v_adapter.png

[TSP10811] 브레드보드 호환형 DC 잭 아답터 (DC Barrel Jack Adapter - Breadboard Compatible)
; http://robobob.cafe24.com/product/tsp10811/450/category/32/display/1/

A 5mm jack, with a 2.1mm center pole diameter.

저처럼 실수하실 분들이 계실지 몰라 말씀드리면 다음의 잭은 브레드보드와 맞지 않기 때문에 그런 용도로는 구매하시면 안 됩니다.
9v_adapter.png

DC-005 DC POWER JACK
; https://www.eleparts.co.kr/goods/view?no=4922

2Pie DC파워잭
아답타의 E타입 플러그와 호환

Temperature: -40~55°C
Rated Load: DC 30V 0.5A
Contact Resistance: ≤ 0.03Ω
Insulation Resistance: ≥ 100MΩ DC 250V
Withstand Voltage: AC 500V(50Hz)/min
Actuating Force: 3-20N
Life: 5000회

(첨부 파일에 datasheet - DC-005.pdf가 있습니다.)

참고로 위의 제품 설명에서 E 타입이란, 외경 5.5mm에 내경 2.1mm를 의미합니다. 설상가상으로, 제 딴엔 저걸 브레드보드와 연결한다고 다음의 제품도 구매했는데요. ^^;
9v_adapter.png

[CNT-DC]DC파워잭 변환기판    
; https://www.eleparts.co.kr/goods/view?no=25595

제조사: SME
어댑터종류: 파워잭
제품형태: 변환기판(pcb만)

DC어댑터잭 변환기판
P/N:DC-JACK CONVERTER PCB

::제품설명::
-홀규격의 차이로 만능기판에 바로 꽂아 사용할 수 없는 각종 회로 부품을 변환해주는 보드.
-DC-JACK용 변환보드 입니다.
-DC-JACK(DCJ2M)은 별매품입니다.

::제품규격::
【재질·두께】에폭시 양면 기판 , 1.6mm
【처리】스루홀 양면 기판 , 적색 레지스트
【패턴】
【기타】RoSH규격품

9v_adapter.png
[C1P] CON-DC
; https://www.eleparts.co.kr/goods/view?no=25624

제조사: 삼일피앤유
어댑터종류: 파워잭
제품형태: 변환기판(pcb만)

DC POWER JACK 변환기판
일반 만능기판에 사용할 수 있도록 변환해주는 기판
P/N: CON-DC
Type : DC POWER JACK (DCJ2M)
Size : 24~18

두 제품 모두 브레드보드가 아닌, "만능기판"과 연결해 주는 기판으로 납땜이 필요한 제품입니다.




마지막으로, 이제 슬슬 ^^ 부품이 많아져서 정리가 곤란해지는 시점인데요. 그래서 다음과 같은 부품 상자가 필요합니다. ^^

parts_case.jpg

구매 링크는 다음과 같습니다.

[PB-2] 부품상자
; https://www.eleparts.co.kr/goods/view?no=4260807

제조사: SMATO

수직 또는 수평 유형으로 있고, 수평의 경우 칸막이를 제거할 수 있는 경우도 있는 등의 다양함이 있기 때문에 구매 시 원하는 용도로 고르시면 됩니다.

개인적으로 플라스틱으로 된 신제품 구매 시 냄새 걱정을 많이 하게 되는데요, 놀랍게도 저 제품은 포장 박스에서 꺼낼 때부터 냄새가 하나도 나지 않아서 좋았습니다. 다른 부품 상자들도 냄새 걱정이 없는지는 알 수 없으나 암튼 싸구려 플라스틱 소재를 사용하지 않은 것 같아서 자신 있게 추천해 드릴 수 있습니다. ^^




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





[최초 등록일: ]
[최종 수정일: 8/21/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)
11502정성태5/12/20183297개발 환경 구성: 370. Azure VM/App Services(Web Apps)에 Let's Encrypt 무료 인증서 적용 방법 [2]
11501정성태4/17/20182256개발 환경 구성: 369. New-AzureRmADServicePrincipal로 생성한 계정의 clientSecret, key 값을 구하는 방법파일 다운로드1
11500정성태4/17/20182528개발 환경 구성: 368. PowerShell로 접근하는 Azure의 Access control 보안과 Azure Active Directory의 계정 관리 서비스
11499정성태4/17/20182099개발 환경 구성: 367. Azure - New-AzureRmADServicePrincipal / New-AzureRmRoleAssignment 명령어
11498정성태4/17/20182131개발 환경 구성: 366. Actvie Azure Directory의 사용자 유형 구분 - Guest/Member
11497정성태4/17/20182322개발 환경 구성: 365. Azure 리소스의 액세스 제어(Access control) 별로 사용자에게 권한을 할당하는 방법 [2]
11496정성태4/17/20181865개발 환경 구성: 364. Azure Portal에서 구독(Subscriptions) 메뉴가 보이지 않는 경우
11495정성태4/18/20182450개발 환경 구성: 363. Azure의 Access control 보안과 Azure Active Directory의 계정 관리 서비스
11494정성태4/16/20182252개발 환경 구성: 362. Azure Web Apps(App Services)에 사용자 DNS를 지정하는 방법
11493정성태4/16/20182244개발 환경 구성: 361. Azure Web App(App Service)의 HTTP/2 프로토콜 지원
11492정성태4/13/20182182개발 환경 구성: 360. Azure Active Directory의 사용자 도메인 지정 방법
11491정성태9/30/20192458개발 환경 구성: 359. Azure 가상 머신에 Web Application을 배포하는 방법
11490정성태4/12/20183080.NET Framework: 739. .NET Framework 4.7.1의 새 기능 - Configuration builders [1]파일 다운로드1
11489정성태4/12/20182282오류 유형: 463. 윈도우 백업 오류 - a Volume Shadow Copy Service operation failed.
11488정성태4/12/20182179오류 유형: 462. Unhandled Exception in Managed Code Snap-in - FX:{811FD892-5EB4-4E73-A147-F1E079E36C4E}
11487정성태4/12/20182334디버깅 기술: 115. windbg - 닷넷 메모리 덤프에서 정적(static) 필드 값을 조사하는 방법
11486정성태4/11/20182384오류 유형: 461. Error MSB4064 The "ComputeOutputOnly" parameter is not supported by the "VsTsc" task
11485정성태4/11/20184343.NET Framework: 738. C# - Console 프로그램이 Ctrl+C 종료 시점을 감지하는 방법파일 다운로드1
11484정성태4/11/20183390.NET Framework: 737. C# - async를 Task 타입이 아닌 사용자 정의 타입에 적용하는 방법파일 다운로드1
11483정성태4/10/20185741개발 환경 구성: 358. "Let's Encrypt"에서 제공하는 무료 SSL 인증서를 IIS에 적용하는 방법 (2) [1]
11482정성태4/10/20182962VC++: 126. CUDA Core 수를 알아내는 방법
11481정성태4/10/20184616개발 환경 구성: 357. CUDA의 인덱싱 관련 용어 - blockIdx, threadIdx, blockDim, gridDim
11480정성태10/19/20183778.NET Framework: 736. C# - API를 사용해 Azure에 접근하는 방법 [2]파일 다운로드1
11479정성태4/12/20182420.NET Framework: 735. Azure - PowerShell로 Access control(IAM)에 새로운 계정 만드는 방법
11478정성태4/9/20182795디버깅 기술: 115. windbg - 덤프 파일로부터 PID와 환경 변수 등의 정보를 구하는 방법
11477정성태4/8/20182876오류 유형: 460. windbg - sos 명령어 수행 시 c0000006 오류 발생
... 16  17  18  19  20  21  22  23  24  25  26  [27]  28  29  30  ...