본문 바로가기
아두이노 통신

[네트워크/이더넷쉴드] W5200, W5100 칩셋을 쓴 이더넷 쉴드(Ethernet Shield)로 유선랜을 써보자

by 작동미학 2015. 10. 18.
반응형

Ethernet Shield를 통해 유선랜을 Arduino에 달아보자.

 

▶ 이 가이드를 따라하면

- 유선랜을 Arduino에 적용할 수 있다.

 

▶ 먼저 읽으면 좋은 글

- Arduino 일반 : http://bbangpan.tistory.com/1

- WiFi Shield 강좌 : http://bbangpan.tistory.com/20

 

▶ 부품 설명 및 회로 구성

Arduino Ethernet Shield는 다양한 버전이 존재하는데, 반갑게도 국산인 Wiznet의 W5200, W5100칩셋을 쓴 이더넷 쉴드가 매우 보편적이다. W5100을 사용한 보드가 흔한데($ 6), 필자는 W5200칩셋을 사용한 쉴드를 샀다. (이 쉴드에는SD카드 모듈까지 같이 들어있어 간단히 저장도 할 수 있다.) SPI 방식을 써서 보드와 통신하므로 중간 6개짜리 핀도 연결하여 사용함을 알 수 있다. 일반인에게 두 칩셋의 차이는 없다고 봐도 무방하다고 알려져있고 Arduino의 공식 쉴드는 W5100이다. 따라서 W5100은 내장 Ethernet 라이브러리로 바로 지원된다.

 

그리고 이 이더넷 쉴드의 장점은 역시 가격($ 6~)이다. WiFi 쉴드($ 15~) 보다 절반이상 저렴하다. 역시 사진부터 보자.

<이더넷 쉴드/W5200기반 위에서 본 모습>

<Arduino 보드에 장착한 옆모습>

<정상 연결시 랜선 위 양옆 LED가 on되고 쉴드에서도 빨간색 LED가 켜진다. 옛날 PC 랜소켓과 같다?>

W5100칩셋과 달리 W5200의 경우는 라이브러리를 새로 다운로드 해주어야 한다. (이 버전 호환성에 주의하자) 정확히는 해당 라이브러리 안의 헤더를 살펴보면 어떤 버전을 지원하는지 알 수 있다.

<기본 Ethernet 라이브러리 폴더 안에 w5100용 헤더만 있는 것을 알 수 있다. w5200은 별도 라이브러리가 필요하다>

 


▶ 소스 코드 입력 및 구동

W5200의 경우 아래 라이브러리를 다운 받은 후 예제에서 해당 라이브러리 밑의 webclient를 실행하자. 간단히 특정 사이트에 접속하여 내용을 알아오는 예제이다. 이외에도 간단한 웹서버를 구현한다던가 여러가지 TCP/IP기반 통신 기능 구현이 가능하다.

http://www.seeedstudio.com/wiki/Ethernet_Shield_V2.0 에서 https://github.com/Seeed-Studio/Ethernet_Shield_W5200 의 라이브러리 사이트로 이동 가능하다. 오른쪽 아래 zip download를 눌러 Arduino설치 폴더의 libraries폴더 밑에 압축을 풀자. 압축을 푸는게 끝났으면, Arduino Sketch를 확실히 재시작해주어야 예제 소스에 보인다.

<예제/Ethernet_Shield_W5200-master/WebClient를 선택해서 실행하자. W5100은 그냥 Ethernet 라이브러리 아래 예제를 구동한다.>

공유기인 경우 DHCP로 주소를 잘 받아(DHCP가 아닌 고정 IP인 경우 해당 고정 IP를 예제 소스에 입력해두면 사용이 가능하다) 구글 페이지를 로딩하는 것을 알 수 있다.

<구글 사이트에 접속해서 오류 메시지긴 하나 받아서 찍은 것을 알 수 있다>

이 예제만으로도 특정 웹 사이트에 정보를 가져와서 끄집어내(parsing) 쓰거나, 정보를 보낼 수 있다. ex> http://test.com/call.jsp?param=test&param2=test2 형태로 보내면 웹 어플리케이션과 통신할 수 있다.

저가의 쉴드지만 Ethernet으로 필요한 기능은 모두 구현 가능하고, 관련 다른 예제를 자세히 살펴보자.

 

▶ 구매 가이드

Arduino Ethernet shield : http://www.aliexpress.com/wholesale?catId=0&initiative_id=SB_20151017103447&SearchText=arduino+ethernet+shield

 

강의 키워드

아두이노 이더넷 쉴드, Arduino Ethernet shield, 유선랜, wiznet w5100 w5200 wiz5100 wiz5200

반응형