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

릴레이(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

비밀번호

댓글 쓴 사람
 




... [31]  32  33  34  35  36  37  38  39  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
11400정성태12/14/20175568.NET Framework: 705. C# - SharpDX + DXGI를 이용한 윈도우 화면 캡처 소스 코드 [3]파일 다운로드1
11399정성태12/13/20172598.NET Framework: 704. Win32 API의 UnionRect를 닷넷 BCL의 Rectangle.Union으로 바꿀 때 주의 사항
11398정성태12/13/20172990오류 유형: 442. ASP.NET Core Web Application (on .NET Framework) 프로젝트에서 외부 라이브러리 동적 로드 시 런타임 버전 문제파일 다운로드1
11397정성태12/12/20174057.NET Framework: 703. 양자 컴퓨팅을 위한 마이크로소프트의 Q# 언어
11396정성태12/8/201712654개발 환경 구성: 343. Visual Studio - 리눅스 용 프로젝트의 인텔리센스를 위한 헤더 파일 처리 방법 [3]
11395정성태12/8/20172989오류 유형: 441. 이벤트 로그 - Time Provider NtpClient: No valid response has been received from domain controller
11394정성태12/8/20172855개발 환경 구성: 342. 비주얼 스튜디오에서 실행하던 ASP.NET Core (.NET Framework) 응용 프로그램을 명령행에서 실행하는 방법
11393정성태12/7/20174411Windows: 145. 윈도우 10 빌드 17046부터 WSL에서 백그라운드 작업 지원 [3]
11392정성태12/7/20172259개발 환경 구성: 341. openSUSE에 닷넷 코어 설치
11391정성태12/7/20172811개발 환경 구성: 340. WSL을 이용해 윈도우 PC 1대에서 openSUSE 응용 프로그램을 Visual Studio로 개발하는 방법 [1]
11390정성태12/7/20178012개발 환경 구성: 339. WSL을 이용해 윈도우 PC 1대에서 Linux 응용 프로그램을 Visual Studio로 개발하는 방법 [3]
11389정성태12/7/20172691오류 유형: 440. .NET Core 오류 - 0x80131620 Unable to load DLL 'libuv'
11388정성태10/4/20184169개발 환경 구성: 338. WSL 또는 Ubuntu에 닷넷 코어 설치 [2]
11387정성태12/6/20174063오류 유형: 439. 이벤트 로그 - Data Sharing Service 서비스의 %%3239247874 오류 메시지
11386정성태12/5/20172729오류 유형: 438. Hyper-V - '...' failed to add device 'Virtual CD/DVD Disk'
11385정성태12/14/20177043VC++: 121. DXGI를 이용한 윈도우 화면 캡처 소스 코드(Visual C++) [3]파일 다운로드1
11384정성태12/5/20173463오류 유형: 437. Visual C++ - Cannot open include file: 'SDKDDKVer.h'
11383정성태9/18/20193910디버깅 기술: 110. 비동기 코드 실행 중 예외로 인한 ASP.NET 프로세스 비정상 종료 현상 [1]
11382정성태12/4/20174725오류 유형: 436. System.Data.SqlClient.SqlException (0x80131904): Connection Timeout Expired 예외 발생 시 "[Pre-Login] initialization=48; handshake=1944;" 값의 의미
11381정성태11/30/20172871.NET Framework: 702. 한글이 포함된 바이트 배열을 나눈 경우 한글이 깨지지 않도록 다시 조합하는 방법(두 번째 이야기)파일 다운로드1
11380정성태11/30/20173432디버깅 기술: 109. windbg - (x64에서의 인자 값 추적을 이용한) Thread.Abort 시 대상이 되는 스레드를 식별하는 방법
11379정성태11/30/20172715오류 유형: 435. System.Web.HttpException - Session state has created a session id, but cannot save it because the response was already flushed by the application.
11378정성태11/29/20174182.NET Framework: 701. 한글이 포함된 바이트 배열을 나눈 경우 한글이 깨지지 않도록 다시 조합하는 방법 [1]파일 다운로드1
11377정성태11/29/20173801.NET Framework: 700. CommonOpenFileDialog 사용 시 사용자가 선택한 파일 목록을 구하는 방법 [3]파일 다운로드1
11376정성태11/28/20174043VS.NET IDE: 123. Visual Studio 편집기의 \r\n (crlf) 개행을 \n으로 폴더 단위로 설정하는 방법
11375정성태11/28/20172714오류 유형: 434. Visual Studio로 ASP.NET 디버깅 중 System.Web.HttpException - Could not load type 오류
... [31]  32  33  34  35  36  37  38  39  40  41  42  43  44  45  ...