위즈네트 아카데미

TUTORIAL

튜토리얼

Home  > 튜토리얼

W5500 W5500-EVB 활용 버스도착 알리미 보드 만들기

WIZnet Academy 2015.04.13 12:59 조회 수 : 32

내가 이용하는 버스가 내가 이용하는 정거장에 도착할 때쯤 이를 알려주는 시스템이 있다면? 정말 편리할 것 같습니다. 미국에 있는 한 고객이 이러한 시스템을 만들어서 소개한 적이 있습니다. (☞ 관련 포스팅 확인)

이번 포스팅에서는 위즈네트의 연구원 허봉준 마스터가 W5500-EVB 를 활용하여 제작한 내용을 소개합니다.

대중교통 시스템이 잘되어 있는 한국에서는 각종 사이트를 통해 버스 노선 및 도착 정보를 알려주고 있습니다. 본 포스팅에서는 위즈네트 사무실이 위치한 분당 수내동에서 강남역까지 버스를 타고 이동한다고 가정하고 설명하도록 하겠습니다.

BUS-1

1. 버스 노선 및 도착 정보 알아내기

경기버스정보 제공 사이트인 http://www.gbis.go.kr/ 에 접속합니다. 일단은 '수내동 => 강남역' 노선에 어떤 버스들이 있는지 검색합니다. 몇가지 버스 정보가 나오는데 8101번을 선택하겠습니다.

bus-2

 

실시간 버스 메뉴에서 8101을 입력하면 노선에서 운행 중인 8101버스의 실시간 운행 현황 정보가 나타납니다. 수내역에서 가장 가까운 정류장의 '정류소 정보보기'를 클릭합니다.

BUS-3

 

아래와 같이 관련 정보를 보여주는 창의 URL을 통해 정류장 ID와 노선 ID 값을 확인합니다.

BUS--4

 

다음은 위의 값들을 통해 해당 버스의 도착 정보를 확인해 볼까요? 아래와 같이 '공유서비스 -> 테스트 ->버스도착정보 항목조회' 를 선택합니다. 위에서 확인한 StationID와 RouteID 값을 정류소 ID 와 노선 ID에 입력합니다. (공개키 란에는 test 입력) 아래와 같이 도착할 버스의 예상 도착시간이 출력됩니다.

bus-5 bus-6

 

2. W5500-EVB에 버스 도착 알리미 구축하기

위의 얻은 정보 값을 이용하여, 원하는 버스가 근처 정류장에 도착할때쯤 W5500-EVB 보드의 LED를 켜주는 시스템을 구축해 보겠습니다.

아시다시피 W5500-EVB는 PC가 아닌 Embedded 보드이기 때문에 위에 설명한 PC기반의 CGI를 그대로 활용할 수는 없습니다. 이를 해결하기 위해서는 OPEN API를 활용하면 됩니다. 이 역시 경기버스 정보 사이트에서 제공합니다.  아래와 같이 '공유서비스 -> 매뉴얼 -> 버스도착정보 항목조회' 를 선택하시면 OPEN API 활용 방법에 대한 설명이 나옵니다.

BUS-7

 

아래와 같이 URL 테스트를 해봅니다.

BUS-8

아래와 같이 W5500-EVB 에 작업합니다.

BUS-9

 

관련 코드 다운로드 : w5500evb_internet_dhcp_dns_http_client_BusAlarm

출처 : Bong's Story