아래의 사진에 있는 WIZNet의 WIZ810MJ을 사용해서 Arduino를 이더넷에 연결시켜 보았다.

이 모듈에 사용된 WIZNet의 이더넷 컨트롤러 Arduino Ethernet libaray에서 기본 지원하기 때문에 매우 손쉽게 사용할 수 있다. 한국에서는 제조사의 온라인샵인 http://www.ewiznet.co.kr/ 에서 22,866원(그냥 23000원으로 하지 끝에가 866원은 뭔지 모르겠다.)에 구입할 수 있다.

다만 단점은 3.3V전원을 사용한다는 것과 커넥터가 일반적으로 사용하는 2.54mm 피치가 아니고 2mm를 사용하기 때문에 PCB를 뜨지 않으면 일반적으로 구할 수 있는 만능기판에 들어가지가 않는다는 것이다.

이 모듈은 MCU data interface와 SPI인터페이스를 지원해 준다.

SPI인터페이스를 사용하는 경우는 저 핀들중에 아주 일부만 사용하면 되기 때문에 매우 편리하다.

아래의 그림이 핀 배치도인데 저 중에 빨간색으로 표시된 신호만 사용하면 된다. 특히 그 중에 SPI_EN은 SPI 모드를 사용할것이기 때문에 Vcc에 연결해 버리면 되고 리셋만 제외하면 나머지 필요한 신호를 모두 한쪽의 커넥터(JP1)에서 얻을 수 있다. 리셋은 전원이 인가될 때 자동리셋이 되기 때문에 없어도 되긴 하지만 혹시 몰라 조그마한 푸쉬버튼을 연결해 모듈에 접착시켜 버렸다.

그 덕에 집에 가지고 있던 2mm 피치의 14핀 커넥터를 사용해 JP1의 앞쪽만 연결해서 별도의 추가 비용 없이 손쉽게 연결할 수 있었다.

 Arduino WIZ810MJ
 D13 SCLK (7)
 D12 MISO (12)
 D11 MOSI (9)
 D10 SCS (10)

매우 손쉽게 인터넷을 사용할 수 있는데 단점은 DHCP를 기본적으로 지원하지 않기 때문에 IP address를 수동으로 지정해 줘야 하는 것이다.

일단 arduino의 samples중에 ethernet에 속해있는 아무거나 선택해서 다운로드 하고 컴퓨터에서 ping을 날려 보았다.


일단 ip address만 할당되고 나면 arduino에 어떤 프로그램이 실행되는가 관계 없이 모듈이 ping에 대한 응답을 해 준다.


예제중에 WebServer를 실행하고 컴퓨터의 웹 브라우져에서 접속한 화면이다. 이 예제는 arduino의 아날로그 입력을 브라우져에서 볼 수 있게 해 준다.

모듈은 기본적으로 3.3V에서 동작하게 되어 있지만 5V I/O tolerant 하다. 그래서 이번에는 전원도 5V를 넣고 실험을 해 봤는데 별 문제는 없었지만 모듈이 조금 많이 뜨거워 진 것 같아서 3.3V 레귤레이터를 사용해 줘야겠다.

Posted by nautes

이전버튼 1 이전버튼