행복한 하루

이더넷(ethernet)을 이용한 2ch 릴레이(Relay) 모듈 테스트(2 Channel Ethernet LAN Relay Module) 본문

IoT

이더넷(ethernet)을 이용한 2ch 릴레이(Relay) 모듈 테스트(2 Channel Ethernet LAN Relay Module)

변화의 물결 2021. 8. 11. 16:45

 

 

안녕하세요.

 

 이번에는 유선 이더넷으로 접점 제어만 필요할 경우 굳이 프로그램하지 않고 사용할 수 있는 제품을 테스트해보았습니다.

 이더넷 제품이다 보니 네트워크 설정에 대해서 조금 이해가 필요합니다. 그래서 네트워크 설정부터 시작합니다.

 

1. 제품 스펙

  - 동작 전원 : DC 5 ~ 24V

  - 릴레이 : 2EA

  - 릴레이 6 채널 출력

     - 3 ~ 6 채널은 헤더 핀으로 HIGH 신호 출력

  - 릴레이 시간 제어 (1 - 65535 초)

     - 특정 시간 동안 릴레이 상태 유지 후 반전.

  - TCP / UDP 통신 인터페이스 : 릴레이 제어

     - Default IP : 192.168.1.100, SubNet : 255.255.255.0, Gateway IP : 192.168.1.1

     - TCP 포트 : 6722, UDP 포트 : 6723

  - TTL 통신 인터페이스 : IP주소, 게이트웨이 주소 등 파라미터 설정

     - 9600bps / 8 / 1 / N

  - 릴레이 용량

     - DC 0~30V/10A, AC 0~250V/10A (N.O포트)

     - DC 0~28V/10A, AC 0~125V/10A (N.C포트)

  - PCB size: length 70mm x width 50mm

2. 네트워크 설정

 - 공장에서 초기화된 상태는 기본적으로 192.168.1.100으로 설정되어 나오기 때문에 사용하는 네트워크 대역이 192.168.1.xxx 가 아니라면 제어할 수 없습니다. 그래서 사용자가 사용하는 네트워크 대역으로 설정을 바꿔 주어야 합니다. 우선 사용자의 컴퓨터를 이더넷 릴레이 모듈에 접속할 수 있도록 네트워크 설정을 바꿔줍니다.

 

 

(노트북 랜과 릴레이 모듈 연결(릴레이 모듈에 별도의 5~24V 전원을 인가해야 합니다.)

 

 - 사용자 컴퓨터와 이더넷 릴레이 모듈을 랜(UTP) 케이블로 직접 연결합니다. 그리고 현재 컴퓨터에서 "제어판->네트워크 연결"로 이동해서 모듈과 연결되어 있는 이더넷 장치에서 오른쪽 버튼을 눌러 속성을 선택합니다.

 

 

 - TCP/IPv4 항목을 선택해서 자신의 컴퓨터 아이피 대역폭을 192.168.1.xxx로 바꿔줍니다. 수동 설정으로 해서 아이피는 100번 말고 2~254로 선택해줍니다. 여기서는 10으로 해주었습니다.

 그리고 서브넷과 게이트웨이는 사진과 같이 값을 넣어 줍니다.

 

 

 - 그리고 커멘드 창에서 ping을 실행해보면 정상적으로 통신되는 것을 확인할 수 있습니다.

 

3. 모듈 환경 설정

- 첨부파일에 있는 config.exe 실행하여 자신의 내부 네트워크 대역으로 이더넷 릴레이 설정을 변경합니다. 만약 자신의 내부 네트워크가 192.168.1.xxx이고 100번을 누구도 사용하지 않고 있다면 이 작업을 할 필요가 없습니다.

  현재 있는 곳의 아이피 대역이 192.168.0.xxx를 사용하고 100번은 다른 사용자가 사용하고 있기 때문에 239번으로 변경해야 했습니다.

 

 - 위에서 ping으로 연결 확인을 했다면 다음과 같이 open 버튼을 누른 후 connect 버튼을 눌러 모듈과 연결합니다.

 

 

- 자신이 속해 있는 내부 네트워크 환경으로 설정하고 save 버튼을 누릅니다. 그리고 종료합니다.

 

 

 - 이제 모듈과 컴퓨터와 연결을 하지 않고 릴레이 모듈을 공유기나 스위치 포트에 연결하고 사용자 컴퓨터도 스위치나 공유기에 연결해서 변경된 주소로 ping을 실행해봅니다. 그러면 정상적으로 릴레이 모듈에서 Ping 리턴 값을 확인할 수 있습니다.

 

 4. 제어 테스트

 - 제공해주는 프로그램 말고 tcp나 udp로 접속해서 아스키/핵사 값을 보내 줄 수 있는 프로그램이 있다면 다른 프로그램을 사용하셔도 됩니다. 이번 테스트는 제공해주는 프로그램으로 해보았습니다.

 

 - hercules.exe 실행시키고 ping을 눌러본 후 echo reply가 나온다면, connect를 눌러 socket 접속을 합니다. connected라고 나왔다면 릴레이 제어 문자를 보냅니다.

 

 

 - 테스트해보기 위해서 간단하게 배터리를 연결해서 LED 회로를 구성하고 접점 2 단자를 1 채널(ch) 릴레이의 com 단자와 no 단자에 연결했습니다. 제어 값으로 앞자리 (1:on/2:off)로 동작하고 뒤의 한자리를 1~8 중 채널(ch)을 입려 해 주면 됩니다. 그래서 1번 채널을 on 하고 싶다면 11, off 하고 싶다면 21을 입력하면 됩니다.

 

 

<릴레이 기본 제어 값>

A. 모든 채널 OFF : 00

  - (응답 코드) 00000000 (8 채널 all off)

B. 릴레이 ON : 11

  - (응답 코드) 10000000 (1 채널 on)

C. CH1 릴레이 OFF : 21

  - (응답 코드) 00000000 (1 채널 off)

D. CH2 릴레이 ON : 12

  - (응답 코드) 01000000 (2 채널 on)

E. 전체 릴레이 ON : 1X

F. 전체 릴레이 OFF : 2X

 

<릴레이 시간 제어>

A. 11:30 :

 - CH1 릴레이 ON을 30초 유지 후 릴레이 OFF

 

 

 - tcp일 경우 보낸 값이 잘 수신하였는지 확인할 수 있는 리턴 값을 수신할 수 있습니다. on 제어를 할 경우 수신된 값을 보면 8비트에서 자신의 제어한 비트에 1이 전달되어 오는 것을 확인할 수 있습니다. 그리고 off로 제어할 경우 8개 비트를 0으로 리턴해줍니다.

 

 - udp 도 접속하는 것은 비슷하지만 포트가 하나 더 있고 수신되는 값이 없다는 것이 차이입니다.

 

 

- 1번과 2번 채널은 릴레이가 붙어있어 확인 가능했지만, 나머지 포트도 제어 가능한지 확인하기 위해서 테스트해보았습니다. 3번 채널에 On일 때 + 신호가 나오는 것을 알 수 있었습니다. 그래서 추가로 릴레이가 필요하다면 CH3~8에 릴레이를 추가해서 제어가 가능하다고 생각되었습니다.

 

 

 - 외부 배터리 연결 없는 LED 회로에 한쪽은 3번 채널을 다른 한쪽은 GND 연결해서 On(13) /Off(23) 값을 전달하면 LED에 불이 들어오는 것을 확인할 수 있습니다.

 

5. 동작 동영상

 - TCP와 UDP로 제어 데이터를 테스트한 내용입니다.

 

 

 

감사합니다.

 

 

<참조 사이트>

1. TCP/UDP 이더넷 통신 2 채널 릴레이 제어 모듈 (P4851-2)

http://smartkit.co.kr/product/tcpudp-%EC%9D%B4%EB%8D%94%EB%84%B7-%ED%86%B5%EC%8B%A0-2%EC%B1%84%EB%84%90-%EB%A6%B4%EB%A0%88%EC%9D%B4-%EC%A0%9C%EC%96%B4%EB%AA%A8%EB%93%88-p4851-2/384/

2. [JK전자] 네트워크 이더넷 릴레이 2 채널 JK-NR-2

https://www.devicemart.co.kr/goods/view?no=12521869    

 

LAN Relay Module.zip
0.95MB

 

Comments