2008. 7. 23. 12:57

미래 유통환경의 축소판

우연히 웹 검색을 하다가 내가 몇년전에 마이크로소프트에 기고했던 글이 올려져 있던 것을 발견하고 (이 자료를 리포트 형태로 만들어서 판매하고 있는 사람도 있던데...) 정리하는 차원에서 내 블로그에도 옮겨 두어야 겠다고 생각하게 되었다. 사실 이 글의 저자권이 마이크로소프트웨어에 있는지는 모르겠다. 하지만 따로 허락을 받지는 않겠다. 왜냐하면 이글을 쓰고 나서 나도 따로 원고료를 받지 못했다(아마도 실수였는지는 모르겠지만). 혹시 문제가 된다면 그냥 그렇게 서로 상쇄하면 되지 않을까?

----------------------------------------------------------------------------------

요즘 IT계의 발전상을 보고 있노라면 어릴 적 SF영화에서나 보았던 세상이 그리 멀지 않다는 생각이 든다. 이 가운데 특히 눈에 띄는 기술이 1940년대에 처음으로 사용되었다는 RFID다. 불과 한해 전 기술도 퇴물이 되어 버리는 세상에서 환갑을 지낸 기술이 무슨 의미가 있을까? 하지만 IT 기술 중에도 세월을 더하며 발전과 숙성을 거듭해야 비로소 제 맛을 낼 수 있는 것이 있는 모양이다.
RFID는 세월을 더한 만큼 낡기는커녕 초기 기술과 비교할 수 없을 만큼 화려하게 성장하였다. RFID의 힘찬 기적소리와 함께 진정한 유비쿼터스 시대로 여행을 떠나보자.

이번 호에는 RFID의 작동 원리 및 국내 RFID 구축사례와 더불어 개개인의 생활에도 큰 변화를 가져올 모바일 RFID 기술에 대해 알아봤다. 또 RFID가 더욱 보편화되기 위해 풀어야 할 숙제들도 함께 살펴보았다.


미래 유통환경의 축소판

‘퓨처 스토어’


여러 분야에서 RFID를 적용한 사례가 점점 늘어나고 있다. 특히 UHF RFID는 기존에 물류 분야에서 주로 사용되었지만 최근에는 새로운 비즈니스 모델에 접목되는 경향이 두드러진다. 또, 여러 매체를 통해 RFID가 알려지면서 기업들도 이미지 재고와 홍보를 위해 RFID를 적용하는 사례도 늘고 있다. 3부에서는 얼마 전 유통 전문기업인 L사에서 ‘퓨처 스토어’라는 이름으로 구축한 미래형 매장의 사례를 통해 UHF RFID 프로젝트에 대해 살펴본다.


‘퓨처 스토어’의 내용을 살펴 보기 전에 RFID 프로젝트의 일반적인 고려 사항들에 대해 알아보자. RFID 구축을 고려할 때 가장 먼저 해야 할 작업은 명확한 RFID 적용 모델을 선정하는 것이다. 다시 말해 RFID를 적용해서 얻을 수 있는 개선 요소와 기대효과를 고려하여 전체적인 업무 시나리오를 정리를 해야 한다는 것이다. 이때 예상 효과에 대한 ROI가 산출될 수 있으면 더욱 좋다. 업무 시나리오를 잡을 때 주의할 점은 모든 것을 시스템적으로 특히 RFID에 의존해서 해결하려고 하지 말라는 것이다. 기계나 시스템도 사람과 마찬가지로 완벽할 수 없기에 투박하더라도 인간이 개입하거나 돌아 가는 방법을 통해서 대안이 있는 규칙과 프로세스를 마련해 두어야 한다. 프로세스를 정의할 때는 반드시 단계마다 예상 가능한 모든 에러 상황을 도출해 내고 이를 처리하는 프로세스도 마련해 두어야만 한다.


RFID 프로젝트의 일반적 고려 사항


그리고 RFID 프로젝트의 특성 중 하나로 현재 RFID 기술의 한계점 또는 기술에 대한 이해력 부족에서 오는 문제를 들 수 있다. 이로 인해 하드웨어와 소비하는 시간이 지나치게 늘어나게 된다. RFID를 적용하는 포인트에서는 아무리 당연한 것이라도 그냥 지나치지 말고 반드시 결과를 눈으로 확인해 볼 필요가 있다. 따라서 중요한 기술적 요소들을 뽑아서 반드시 파일럿 프로젝트를 선행해야 한다. 수없이 랩 테스트를 거친 후에도 현장에 적용할 때는 또다른 문제가 발생할 수 있음을 명심해야 한다. 지속적으로 발전하는 기술과 표준 문제에 대해 쉽게 적용할 수 있도록 시스템의 확장성을 확보하는 것 또한 중요하다. 파일럿 테스트나 현장 적용성 검사시에 반드시 성능이나 신뢰성을 측정하는 평가 지표를 정량화할 필요가 있다. 그리고 태그 인식률 등 평가 지표는 프로젝트에서 요구하는 목표치를 정해두고 검증 과정에서 이를 달성할 수 있도록 하여야 한다.

한국의 UHF RFID는 미국에 비해 주파수 대역이 협소하고 최대 출력 또한 제한되어 있다. 이런 열악한 환경 탓으로 인식률 저하 요인이 된다는 점을 명심하고 좁은 지역에 너무 많은 리더를 설치하여 리더간의 간섭에 의한 인식률 저하 특성도 고려하는 지혜가 필요하다. UHF 태그는 환경적 요인에 매우 민감하다. 모든 RFID가 마찬가지지만 금속 성분에 매우 약하다. 금속은 전파를 반사시켜 리더에게 데이터가 전송되는 것을 방해하는 탓에 태그를 부착하는 재질이 금속인 경우는 금속 태그라는 특수 태그를 사용해야 한다. 또한 수분은 전파를 흡수하여 액체 물질 또는 습한 환경에서는 인식률이 현격히 떨어진다. 인체나 동물 몸에 붙어 있어도 마찬가지이다. 이러한 특성에 따라 특수한 태그 사용과 새로운 태그 개발이 필요할 수도 있음을 각오해야 한다.

그리고 제대로 RFID 효과를 보고자 한다면 제반 사항들이 잘 준비되어 있어야 한다. 예를 들면 RFID를 이용하여 효율적인 창고관리 시스템을 구축하고자 한다면 당연한 말이지만 창고관리 시스템도 구축되어 있어야 한다. 그렇지 않다면 RFID 구축 프로젝트란 결국 창고관리 시스템 구축 프로젝트로 전락하게 되는 것이다. 이처럼 당연한 말들을 굳이 하는 이유는 실제 현장에서 RFID 만으로 모든 것이 해결되리라고 생각하는 경우를 흔히 보기 때문이다. 그리고 RFID는 곧 자동화와 실시간 데이터 처리와 연결되는 키워드이기 때문에 이를 위해서 네트워크 인프라와 든든한(Robust) 시스템 아키텍처적 설계 등 시스템 개발적인 측면도 미리 준비되어야 한다.

시스템 아키텍처적으로 현장을 중심으로 데이터를 수집하는 계층과 여기에서 모아진 데이터를 정제하여 사용하는 두 부분으로 나누어 생각하는 것이 좋다. 데이터 수집 계층은 수많은 트랜잭션이 발생하는 데이터를 실시간으로 처리하여야 하고 데이터를 소비하는 계층에서는 실시간은 아니더라도 분석 데이터를 처리할 필요가 있다. 실시간 데이터 수집 계층은 1부에서 이야기한 디바이스 인터페이스 미들웨어(Device Interface Middleware)나 엣지웨어(Edgeware)를 통해 구현한다.

이때 엣지웨어의 물리적 위치는 현장에 있는 것이 좋다. 또한 하나의 엣지웨어가 너무 많은 디바이스를 연결하지 않도록하고 논리적인 그룹을 구성하는 단위로 나누어야 한다. 이렇게 해서 여러 그룹이 서로 독립적으로 구성되고 필요하면 상위에 이것들을 통합하는 관리 기능이나 프로세스 기능들을 포함하는 미들웨어를 두는 것이 안정성이나 확장성 면에서 유리하다.

RFID 태그에 어떤 데이터를 사용할 것인지도 매우 중요하다. ID만 사용할 것인지 아니면 사용자 데이터도 사용할 것인지 결정하여야 한다. 또 ID인 경우는 어떤 코드 체계를 사용할 것인지도 미리 고민하여야 한다. ID의 코드 체계를 EPC로 사용한다면 EPC글로벌에 회원 가입을 하고 부여 받은 코드를 사용하면 된다. 최근에 한국인터넷진흥원에서는 ISO 15459 코드를 중심으로 국내 ISO 표준 코드 체계 지침을 마련중이어서 ISO 코드 체계를 도입하고자 한다면 이를 참조하면 될 것이다. 폐쇄된 영역에서만 사용되는 시스템이라면 자체 코드 체계를 구성해야 한다. 특히 기존에 사용하는 바코드와 병행해야 하는 시스템이라면 일반적으로 겉면에 육안으로 판별할 수 있는 바코드 번호와 RFID 코드가 서로 동기화 되어야 하기 때문에 상호 변환이 굳이 상위 시스템을 거치지 않더라도 쉽게 변환이 될 수 있도록 자가 변환 규칙을 정해두는 것이 좋다.

태그를 물체에 부착하는 방법 역시 쉬운 일이 아니다. 스마트 라벨 형태의 경우는 RFID 프린터를 사용하지만 금속 태그 등 별도의 패키징이 되어 있는 경우는 RFID Interrogator를 사용해야 한다. 보통 이동형 RFID 리더를 사용하는 것을 가정하지만 태그 수가 많다면 이것은 매우 힘든 일이다. 이럴 때는 고정형 리더를 별도 태깅 용도로 사용할 수 있도록 따로 준비를 해 두는 것이 좋을 것이다.

마지막으로 RFID 프로젝트에 있어서 가장 중요한 점은 각 업무 담당자들 간의 원활한 협조 체계와 적극적인 자세이다. 대부분의 경우 어느 한 집단이나 사람이 태그부터 전체 시스템까지 모두 잘 하는 경우는 드물다. 서로의 역할 분담을 통해 이것을 결합해야 하는데 어느 한 부분이 어긋나면 그 프로젝트는 수습 불능상태에 빠질 수도 있다. 이러한 구성 요소들을 잘 결합하는 프로젝트 PM의 역할이 또한 매우 중요하다.


‘퓨처스토어’ 프로젝트 살펴보기


서로 업종이 다른 50여 개의 계열사를 보유하고 있는 유통 전문기업인 L사는 그룹 차원에서 RFID에 대한 중요성을 인식하였다. 이에 따라 그룹내 ISP 작업을 거쳐 RFID 적용 효과 요소와 로드맵을 설정하고 그 첫번째 과제로서 내부 테스트랩을 구축하였다. 이 테스트랩을 통해 RFID 기술을 검증하고 전국 46개 할인 매장에서 판매되는 자사 PB 상품(Private Brand Goods, 백화점, 슈퍼마켓 등 대형 소매상이 자기매장의 특성과 고객의 성향에 맞추어 독자적으로 개발한 브랜드 상품)의 홍보를 위해 미래 유통 매장을 체험할 수 있는 ‘퓨처 스토어’를 마련한 것이다. 퓨처 스토어를 준비하는 과정에서 이 회사가 내세운 프로젝트 목표를 살펴보자.

- 기업이미지 재고 : RFID 기술 기반의 신개념 매장 환경 구현 및 미래지향적 기업 이미지 재고, PB 상품 정보 제공으로 신뢰도 향상
- 매출 증대 및 홍보 효과 : PB 홍보 매장 RFID 신기술 접목으로 대내외 홍보 강화의 계기 마련
- 고객 서비스 강화 : 미래의 매장 환경과 키오스크, 모바일을 통한 다양한 고객 체험 기회 제공, 할인 이벤트 등의 상품정보, 매장 내 위치 정보 등 상품에 대한 다양한 정보 제공
- 신속한 대응력 확보 : 첨단 기술 기반 확보로 미래 경영 환경 변화에 신속한 대응

프로젝트 목표 중 두 번째 항목인 ‘매출 증대’는 기업에 있어 상당히 중요한 부분이다. 아직 보편화되지 않은 탓에 도입된 RFID의 초기 비용은 결코 만만한 수준이 아니다. 항상 RFID 도입을 위해서 ROI (Return Of Investment)를 검토하게 되는데 이 부분에 대한 계산이 만만치가 않다. 초기 투입 비용에 비해(요즘은 기술 개발과 공급업체간 경쟁으로 인해 엄청나게 비용 이 낮아지긴 했다) 회수 가능한 비용과 시기가 불확실하기 때문이다. 하지만 이번 경우를 살펴 보면 무형의 효과로 인한 잠재 요소가 크다는 것을 알 수 있다. RFID를 도입했다는 사실 하나만으로도 언론에 노출되는 간접 광고 효과를 얻을 수도 있다. 항상 RFID 도입 전에 이러한 점을 잘 고려해 볼 필요가 있다.


구축 시스템 유형


적용 대상은 다양한 재질(식품, 과자류 등 비닐, 종이, 플라스틱 포장류, 와인 등 액체류, 의류, 프라이팬과 같은 금속류 등)로 이루어진 20여 종 이상의 모든 PB 상품이 대상이 되고 매달 새로운 제품으로 교체한다. 구축 시스템은 크게 세 가지이다.

- 스마트 선반 : RFID 리더가 내장된 선반에 진열된 상품을 소비자가 선반에서 들었을 때 그 정보가 대형 PDP 화면에 표시된다. 또한 선반 내에 놓여진 상품 재고정보는 실시간으로 재고관리 시스템과 연계되어 실시간 재고실사가 가능하다.
- 스마트 키오스크 : 소비자가 선반에 전시된 상품의 상세한 정보를 확인할 수 있는 시스템이다. RFID 리더가 내장된 키오스크에 상품을 가까이 대면 보다 상세한 정보가 표시되고 특별한 할인 이벤트 등의 행사 정보와 판매 위치 정보 등 부가 정보가 제공된다.
- 스마트 휴대폰 : RFID 리더가 탑재된 휴대폰을 통해 상품에 대한 정보와 서비스를 제공한다.

각 상품에는 초고주파(UHF) 대역의 EPC C1 Gen2 태그를 사용하였고 스마트 선반과 키오스크는 UHF 리더를 탑재했다. 선반의 쇼카드에는 고주파(HF) 대역의 태그를 부착하고 휴대폰에는 HF 리더를 탑재하여 이동통신사의 서비스와 연결된다. <그림 1>은 퓨처스토어의 전체 시스템 구성도이다.


<그림1> 전체 시스템 구성도


EPC Class 1 Gen2 태그 스펙

최근에 UHF 태그 표준으로 제정된 EPC 글로벌의 C1 Gen2 또는 ISO 18000-6C 태그 스펙과 특성에 대해 좀더 상세히 이해해 두어야 향후 RFID 적용에 대한 준비가 수월하다. 현재 UHF RFID에서 사용되는 태그의 종류와 특징은 <표 1>과 같다.


<표1> UHF RFID 태그 분류

젠2(Gen2)는 EPC 글로벌에서 기존에 특정 업체들을 중심으로 구현된 Class 0와 Class 1 태그에서의 문제점을 보완하고 명실상부한 글로벌 표준 제정을 위해서 새롭게 논의되며 공식 표준 기구로부터 인증을 받았다. 부가된 특징은 하나의 태그로 전세계에서 모두 사용이 가능하도록 국제적 호환성을 높였다는 점이다. 더불어 메모리 접근에 대한 통제 기능, 태그 킬(Kill) 기능, 초당 640 KB 이상의 빠른 속도, 리더간 간섭을 방지하는 밀집리더 모드(Dense-Reader Mode) 지원, 초당 네 개 이상 동시 쓰기 기능, 비트 마스크 필터링(Bit Mask Filtering), 벤더마다 별도의 데이터 메모리 지원, 현실적인 가격으로 제조가 가능하도록 지원하고 있다.

<그림 2>는 젠2 태그의 논리적 메모리 구조를 나타내고 있다. 젠2 태그는 논리적으로 네 개의 뱅크(Bank)로 구성되고 이들은 서로 독립적이다. 뱅크002은 예비 영역(Reserved Area)으로 32 비트 킬 패스워드와 액세스 패스워드 등이 들어간다. 뱅크012는 EPC 또는 UII 영역이라고 하며 물체의 고유 ID가 이곳에 기록된다. 00h~0Fh는 CRC-16이, 10h~1Fh는 프로토콜 콘트롤(Protocol-Control) 영역으로 10h~14h는 (PC+EPC)의 길이를 표현한다. 또 15h~16h는 RFU, 17h~1Fh는 NSI(Numbering System Identifier)로서 17h가 ‘0’이면 EPC를 ‘1’이면 non-EPC 코드 체계가 사용된다는 것을 의미한다.


<그림2> Gen2의 논리적 메모리 구조

Non-EPC 코드가 사용될 때 18h~1Fh는 ISO 15961에서 정의한 AFI(Application Family Identifier)가 사용된다. EPC가 아닌 ISO 코드체계를 사용할 때 이 부분이 중요한 요소가 될 수 있으므로 내용을 잘 숙지해야 한다. 뱅크102는 태그의 고유한 태그 ID가 부여되는 메모리이며, 뱅크112는 사용자 메모리 영역으로 선택적으로 구현할 수 있다.


시스템 구성 및 업무 흐름

퓨처스토어에는 크게 네 종류의 RFID 업무 내역이 적용되어 있다. 각 업무 프로세스의 종류와 처리되는 업무에 대해 알아보자.

- 상품 정보 등록 및 태그 발행 : 홍보 대상 상품 정보 등록, 상품 가격 및 행사 정보 등록, 상품 태그 발행 및 부착
- 스마트 선반 : 고객의 관심 상품 자동 인식, 실시간 상품 정보 제공 및 이벤트 홍보, 고객 흥미 유발
- 키오스크 : 관심 상품 자동 인식, 판매 위치 등 상세 제품 정보 제공, 고객 만족도 증대
- 실시간 재고조사 : 선반의 실시간 재고 현황 모니터링, 재고 부족 상품에 대한 실시간 경고, 전 매장 확대를 위한 기초 정보 수집

전체 시스템 구성은 <그림 3>과 같다. 매장에는 스마트 선반과 키오스크에 각각 별도 엣지웨어가 구성되고 로콜 영역의 데이터 통신용 네트워크와 오피스랜으로 연결되는 상위 네트워크는 서로 분리하여 구성되었다. 스마트 선반은 얼마나 많은 데이터를 빨리 안정적으로 수신받아 처리하느냐가 핵심이기 때문에 다른 어떤 요인에 의해 이를 방해 받지 않도록 구성한 것이다. 각 개별 단위 업무로 나누어진 엣지웨어는 중앙 미들웨어 서버에 의해서 통합되고 이 곳을 거쳐 재고관리 현황 모니터링 등의 분석 업무가 이어진다.

각 단위 현장에서는 초당 수백 개의 데이터가 발생하고 있지만 상위 서버로 전송되는 데이터 량은 새로운 데이터의 추가(Add)나 삭제(Delete)에 대한 이벤트 데이터만으로 줄어들기 때문에 전체 네트워크나 시스템 상으로는 큰 부하를 받지 않는다(초기 RFID 개념이 소개될 때 한꺼번에 수백, 수천 개의 데이터가 동시 폭주할 때의 상황을 무척 고민한 사람들이 많이 있었다).


<그림3> 전체 시스템 구성도


스마트 선반의 프로세스


<그림 4>는 스마트 선반에서의 데이터 흐름을 그림으로 표현한 것이다. 흐름을 순서대로 살펴보면 먼저 엣지웨어(그림에서는 RFID M/W로 표현)가 RFID 리더로부터 계속해서 데이터를 수신받으면서 데이터를 처리한다. 이 과정에서 어떠한 태그 데이터가 선반에서 없어진 것(이것은 고객이 관심있는 상품을 들어서 선반에서 없어진 것이라고 볼 수 있다)으로 판단이 되면, 해당 태그값을 PDP 화면에 표시하는 UI 애플리케이션에게 알려준다. UI 애플리케이션은 이 정보에 대한 상품 정보를 조회하여 PDP 화면에 표시해 주게 된다. PDP 화면에서는 아무런 데이터가 없을 경우에는 제품 홍보 영상을 표시하다가 선반에서 없어진 상품의 정보를 표시하다가 일정 시간이 지나면 다시 원래의 화면으로 돌아간다.


<그림4> 스마트 선반 데이터 흐름

<화면 1>은 PDP에 보여지는 화면의 예이다. 한 명의 고객이 제품 정보를 보고 있는 동안에 다른 사람이 다른 제품을 들면 화면이 둘로 분할되어 표시된다. 더 이상 많은 사람이 관심을 가지더라도 기존 고객의 제품 정보 조회에 방해를 주게 되므로 그 이상의 이벤트는 처리하지 않는다.


<화면1> 스마트 선바나 화면 예시


스마트 키오스크의 프로세스


스마트 키오스크는 스마트 선반보다 더 자세한 정보를 표시하는 시스템이다. 구매자는 자세한 정보를 보고 싶은 제품을 스마트 키오스크게 가져다 대기만 하면 원하는 정보를 얻을 수 있다. 큰 소리로 판매원을 부르거나 담당 판매원을 찾아다닐 필요가 없어진 것이다. 스마트 키오스크에 대한 데이터 흐름은 <그림 5>에 표시되어 있다. 스마트 선반과 마찬가지로 엣지웨어는 RFID 리더로부터 데이터를 수신하면 기본적인 데이터 처리 과정을 거친 다음, 내장된 키오스크 화면으로 이벤트를 보내고 키오스크 화면은 이 데이터를 기반으로 상위 시스템을 통해 관련 정보를 표시하게 된다. 키오스크의 경우도 선반과 마찬가지로 아무런 이벤트가 없을 때에는 홍보 영상을 표시하다가 고객의 작업이 끝난 후에 다시 홍보 영상으로 되돌아 가게 된다. <화면 2>는 스마트 키오스크의 동작 화면이다.


<그림5> 자동인식 기술 특성 비교스마트 카오스크 데이터 흐름


<화면2> 스마트 카오스크 동작 화면


스마트 휴대폰의 프로세스


스마트 휴대폰은 PDP나 키오스크 대신 휴대폰을 통해 제품의 정보를 확인할 수 있도록 해 주는 시스템이다. 선반에 부착된 쇼카드 태그를 휴대폰에 부착된 HF RFID 리더로 읽으면 휴대폰 화면에 해당 상품의 정보가 표시된다. <그림 6>은 휴대폰 사용 시의 업무 흐름을 <화면 3>은 휴대폰에 표시되는 제품 정보의 예이다.


<그림6> 스마트 휴대폰 데이터 흐름


<화면3> 스마트 휴대폰 조회 화면


스마트 선반 구축을 위한 미들웨어의 조건


스마트 선반은 초기부터 UHF RFID 응용 분야에서 매우 중요한 분야로 거론되던 기술 중 하나이다. 딜로이트 컨설팅(Deloitte Consulting)은 2002년도에 재고 부족으로 인해 판매를 못한 영업 손실만 60억 불이 넘었다는 보고를 한 적이 있다. 이처럼 매장이나 창고에서 실시간 재고 파악에 대한 요구사항은 끊임없이 제기되어 왔다. 또한 질레트는 자사 면도기의 도난 손실이 계속되자 스마트 선반을 통한 도난 방지에 깊은 관심을 가지게 되었고 2003년도에 이미 시범사업을 마친 바도 있다. 하지만 스마트 선반은 기대가 큰 만큼 UHF RFID에 있어서는 매우 어려운 분야 중에 하나다.

UHF RFID의 리더 안테나에서 방사되는 패턴은 <그림 7>에서 보는 바와 같이 안테나의 파 발생원 바로 앞에서는 좁은 영역을, 일정 거리(보통 2~5 m 정도)가 유지된 후에야 비로소 가장 밀집도가 높게 된다. 이러한 파 영역 내애서 태그의 인식률이 가장 좋게 되는데 스마트 선반은 이러한 일반적인 UHF RFID 특성과는 달리 안테나로 구성된 선반 바로 위에 놓여진 물체의 인식이 가장 좋아야 한다. 그러면서도 물체가 선반에서 약간만 떨어져도 이를 감지해야 하기 때문에 선반 표면 전체에 넓으면서도 얇은 전파막을 형성하도록 안테나를 구성해야 한다. 또한 UHF RFID는 인체의 영향을 많이 받을 뿐 아니라 인체를 통해 전파가 흘러 버려 예상하지 못한 에러 상황을 유발하기도 한다.

무엇보다 태그 데이터가 리더에서 수집될 때는 10개의 태그가 있더라도 10개의 데이터를 전송하지 못하고 대부분의 경우 3~4개 이상이 빠지게 된다. 이로 인해 부족한 데이터가 전송 에러 탓인지 아니면 진짜로 제품이 빠진 것인지를 판별하기가 매우 힘들다는 문제가 발생한다. 이러한 점 때문에 RFID 미들웨어에서 데이터 안정화(Smoothing)란 과정을 거쳐야만 하는데 스마트 선반은 이러한 스무싱(Smoothing) 기능이 매우 필수적인 요소 중 하나이다.

일반적인 스무싱 방법은 한번의 데이터로 실제 상황 판단이 어렵기 때문에 여러 번 데이터를 수신하여 종합적인 판단을 하게 된다. 이 방법은 데이터가 많으면 많을수록 정확한 판단을 할 수 있지만 반면에 실시간성이 떨어진다는 단점이 있다. 이 문제를 해결하려면 RFID 미들웨어의 스무싱 알고리즘 성능도 중요하지만 리더의 성능과 리더의 통신 반응속도도 매우 빨라야한다. 보통 RFID 리더의 성능을 판단할 때 1초에 몇 개의 태그를 읽을 수 있는가를 따지지만, 이보다 1초에 몇 개의 태그를 몇 번이나 안정적으로 호스트에 전송할 수 있는가가 더 중요한 척도라고 생각한다.

현재 판매되고 있는 다양한 UHF RFID 리더들은 저마다 서로 다른 특성들이 있어서 적용하고자 하는 RFID 업무에 맞게 잘 선택해서 사용해야 한다. 스마트 선반에서 요구되는 RFID 리더의 성능은 1초에 60개 이상의 태그를 4회 이상 전송해야 한다. 이때 호스트의 데이터 요청 요구에 응답이 지연되거나 타임아웃(time out) 현상이 발생해서는 안 된다.


<그림7> RFID 안테나 빔 패턴


RFID의 훼방꾼, 형광등과 할로겐 조명

본래 스마트 키오스크에는 미관을 개선하기 위해 은은한 조명을 비추는 할로겐 조명을 설치하였지만 실제로 이 조명은 사용하지 못했다. 형광등이나 할로겐 조명에서는 900 MHz 대역에 해당하는 노이즈 파가 발생하여 인식률을 급격히 떨어뜨리는 원인이 되었던 탓이다. 그리고 키오스크 역시 스마트 선반처럼 짧은 거리에서 되도록이면 하나의 태그만 안정적으로 잘 읽도록 하는 특성이 요구되었다. 이를 위해 범용적으로 판매되는 안테나 대신에 특성에 맞는 별도 안테나를 제작하여 키오스크에 부착하였다.


아이템 레벨 태깅의 대역, HF or UHF?


최근에 젠2가 등장함에 따라 태그의 가격 하락이 이어지고 성능이 향상되었다. 이로 인해 RFID 분야에서 폭발적인 수요로 이어질 것으로 기대되는 아이템 레벨의 태깅에 대한 논의가 뜨겁게 이루어지고 있다. 특히 의약품 분야에서 위조 약품 또는 불법 유통에 따른 블랙 마켓을 잡기 위한 노력이 이러한 논의에 불을 붙이고 있다. 국내에서도 화장품 회사에서 고가 화장품의 불법 유통을 막기 위해 현재 RFID를 사용하고 있다. 해외에서도 Pfzier는 위조 비아그라의 유통을 막기 위해 그리고 GlaxoSmithKline은 HIV 약품에 대해 RFID를 사용하는 시범사업을 진행중이다. 하지만 전통적으로 이러한 개별 아이템에 부착되는 태그는 HF의 전형적인 시장이다.

왜냐하면 우선 크기가 작아야 하고 주로 액체로 된 제품이 많고 매우 가까운 거리에서 읽어야 하는 특성 때문이다. 하지만 UHF 대역으로도 이 문제들을 해결할 수 있고 차라리 UHF가 HF 보다 더욱 장점이 많다는 의견이 제기되고 있다. 실제로 UHF는 HF 보다 고주파이기 때문에 성능이나 제조 원가 측면에서도 훨씬 유리하다. Tyco/Fire & Security, Alien, ADT, Impinj, Symbol, Xterprise 등이 UHF 아이템 레벨 태깅을 위해 연합하였고 월마트도 이에 동조하고 있다. 해결책은 바로 UHF를 Far-field가 아닌 Near-field 방식으로 사용하는 것이다. 다시 말해서 초고주파에서 사용하는 전자기파 방식이 아닌 저주파에서 사용하는 자기파를 사용하는 것이다. 다음은 그들이 설명하는 일반적으로 UHF가 할 수 없다는 일곱 가지 일에 대한 해결책이다.

1. UHF 젠2 태그는 아이템 레벨에 사용하기에는 너무 크다
해답: 일반적으로 UHF 는 장거리를 요구하고 이에 따라 안테나 크기가 커야만 한다. 하지만 near-field로 사용하면 매우 작은 크기만으로도 충분하다.

2. 13.56 MHz 가 진정한 국제 표준이다
해답: 현재 UHF 젠2는 EPC글로벌 뿐 아니라 ISO 18000-6C로 국제 표준을 만족한다.

3. UHF 젠2는 액체에서 동작하지 않는다
해답: UHF의 far-field는 액체에 영향을 받는다. 하지만 near-field의 경우는 그렇지 않다. 심지어는 물속에서도 동작을 한다.

4. UHF 젠2는 금속에서 동작하지 않는다
해답: 모든 주파수와 near-field, far-field 방식 모두 금속에 영향을 받는다. 하지만 금속 성질을 이용하여 여러 종류의 금속 태그 솔루션들이 나와 있는 상태이다.

5. UHF 젠2는 서로 매우 가까운 거리에 있으면 동작하지 않는다
해답: UHF는 near-field로 제작되면 HF에 비해서 단일 루프 안테나만으로도 충분하기 때문에(실제로 HF 안테나는 여러 겹의 안테나를 코일 형태로 감는다. 이로 인해 제작 공정이 쉽지 않다.) HF 보다 훨씬 좋은 성능을 보일 수 있고 젠2의 안티콜리션(anti-collision) 알고리즘이 HF의 프로토콜 보다 훨씬 우수하다.

6. UHF 젠2는 너무 먼거리에서 읽힌다
해답: 거리는 결국 안테나 설계의 문제다. UHF는 안테나의 설계에 따라 장거리와 단거리 모두 다 사용할 수 있다(HF는 far-field 로는 만들 수 없다).

7. UHF 젠2는 노이즈에 약하다
해답: 노이즈와 간섭 문제 역시 far-field의 문제이다. Near-field에서의 영향은 거의 없다. UHF를 near-field로 사용하기 위해서는 태그와 리더의 안테나 만을 교체하여 사용하면 된다.


RFID 리더 통신


RFID가 어떻게 통신을 하게 되는지 궁금해 할 독자들도 있을 것이다. 다른 디바이스나 애플리케이션과 통신 프로그램을 해본 독자라면 기본적인 방법은 동일하다. 단지 RFID 리더가 필요한 여러 설정 방식과 통신 프로토콜을 구현하는 것만 다른 뿐이다(이러한 방식은 리더 제조사마다 서로 다른 방식을 제공한다).

일반적인 RFID 리더가 제공하고 있는 물리적 통신 방식은 RS-232C, RS-485, RS-422 같은 시리얼 통신 방식과 TCP/IP 이더넷 통신 방식을 주로 제공한다. 일부 리더 제조사는 USB나 무선 LAN을 지원하기도 한다. 부가 기능을 좀더 제공하는 리더는 GPIO(General Purpose Input Output) 포트를 제공하여 외부 센서나 PLC 신호를 입력받고 경광등과 같은 외부 출력 신호 전송할 수도 있다. 대부분의 리더들은 RS-232C를 기본으로 제공하지만 실제 현장에서는 주로 TCP/IP 통신을 요구한다.

RS-232C 포트만을 제공하는 리더의 경우 TCP/IP 제공 요구를 구현하기 위해 별도의 Serial-To-TCP Converter를 외부에 장착하는데 여기에서 주의할 점은 이로 인해 추가적인 에러 상황이 런타임 시에 발생 가능성이 크다는 것이다. 우선 디바이스의 상태를 모니터링하는 서버의 입장에서 가장 손쉽게 장비 상태를 확인하는 방법은 ICMP를 통한 ping 명령을 사용하는 것이다(물론 리더에서 SNMP 또는 별도의 Hearbeat 기능을 제공하는 경우도 있다). 이때 ping 응답이 온다 하더라도 이것은 컨버터가 살아 있다는 뜻이지 리더 자체가 살아 있다고 보장할 수는 없다.

그리고 대부분의 컨버터는 내부에 메모리 버퍼가 있어서 호스트와 연결이 끊어지는 등의 상황이 발생했을 때 이를 보관하고 있다가 연결이 되면 이를 모두 전송한다. 이럴 경우 쓸데없는 쓰레기 데이터 때문에 오동작이나 정상적인 작동을 방해하는 요소로 작용할 수도 있다. 따라서 리더와의 통신에 있어서 TCP/IP 방식이 요구된다면 TCP/IP 스택이 내장된 리더를 선택하는 것이 좋다. 그렇지 않으면 앞에서 말한 에러 상황에 대처할 수 있는 컨버터를 선택할 수 있어야 한다.

RFID 리더가 호스트와의 통신으로 제공하는 기능은 리더의 동작을 제어하는 명령 기능과 태그의 데이터를 전송하는 기능으로 나뉜다. 동작 명령어들은 통신 파라미터를 설정하거나, 안테나의 출력을 조절한다든지 동작 환경에 따라 성능을 조절할 수 있는 환경값 설정, 태그 데이터 쓰기, 동작 멈춤 명령 등이 있다. 리더에서 제공하는 명령어 집합들의 성격에 따라 리더의 성능이나 유연성이 좌우된다고도 볼 수 있다.

태그의 데이터를 얻어 오는 방법도 리더마다 서로 다른 기능을 제공한다. 리더에서 태그의 존재를 인식하자 마자 호스트로 전송하는 리더도 있고, 내부에서 버퍼를 가지고 있어서 리스트를 유지하여 어느 정도의 스무싱 기능을 제공하는 리더도 있다. 아예 메모리 데이터베이스 형태로 태그 데이터를 관리하다가 SQL과 같은 쿼리 명령에 응답하는 리더도 있다. 각 방식은 상황에 따라 장단점이 있기 때문에 이러한 리더의 특성을 파악하는 일이 매우 중요하다.

데이터 송수신 방식도 호스트에서 명령을 보낼때만 응답하는 폴링(polling) 방식과 리더에서 주어진 조건이 되었을 경우에만 호스트로 데이터를 전송하는 노티피케이션(notification) 방식이 있다. 호스트에서 부하를 줄일 때 편리한 방식은 노티피케이션 방식이지만, 이 경우 리더의 기능과 성능이 탁월해야만 데이터 처리가 정확하다. 그래서 실제로는 호스트와 리더가 제대로 동작하면 신속한 데이터 처리가 가능한 폴링 방식을 사용해서 데이터를 처리하는 경우가 더 많다.

지금부터 필자는 특정 리더를 하나 예로 들어 리더와 통신하는 방법을 설명하고자 한다. 여기에서 설명되는 리더가 모든 리더의 기능과 특징을 대변한다고 볼 수 없지만 단지 필자의 편의상 예로 드는 것임을 미리 밝혀둔다.

<리스트 1>은 RFID 리더와 호스트가 통신하는 데이터 패킷을 캡처한 결과 중 일부이다. 이 리더는 일반적인 텔넷 프로토콜을 이용하여 통신하는데 텍스트 콘솔 명령어로도 접속해 볼 수 있다.

태그 데이터는 HEX 값으로 표현된 태그 데이터와 함께 리더가 태그를 처음 발견한 시간, 그리고 태그를 발견한 안테나의 번호(대부분의 리더에서는 안테나 각각이 하나의 데이터 발생 소스로 관리되며 가장 최소 관리 단위가 된다) 그리고 태그를 마지막으로 본 시간(리더에 따라 제공하지 않을 수도 있다) 으로 이루어져 있다. 태그의 여러 가지 에어 인터페이스 프로토콜을 제공하는 경우 이를 표현하는 데이터가 추가되기도 한다.


<리스트 1> RFID 리더 데이터 패킷

// 01. Host가 Reader에 접속 후 Reader에서 Welcome 화면 전송
Host>
00000000 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ******** ********
00000010 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ******** ********
00000020 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d ******** *******.
00000030 0a .

Host>
00000031 2a 0d 0a 2a 20 41 6c 69 65 6e 20 54 65 63 68 6e *..* Ali en Techn
00000041 6f 6c 6f 67 79 20 3a 20 52 46 49 44 20 52 65 61 ology : RFID Rea
00000051 64 65 72 20 0d 0a 2a 0d 0a 2a 2a 2a 2a 2a 2a 2a der ..*. .*******
00000061 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ******** ********
00000071 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ******** ********
00000081 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 0d 0a 55 73 65 72 ******** ....User
00000091 6e 61 6d 65 3e 00 name>.

// 02. Host에서 Log In Name 전송

00000000 01 61 6c 69 65 6e 0d 0a .alien..

// 03. Host에서 Log In Password 전송

00000008 01 70 61 73 73 77 6f 72 64 0d 0a .passwor d..

Host>
00000097 00 .
00000098 00 .

// 04. Host에서 태그 리스트 전송 요구

00000013 01 47 65 74 20 54 61 67 4c 69 73 74 0d 0a .Get Tag List..
// 05. Reader에서 태그 리스트 전송
Host>
00000099 54 61 67 3a 38 46 46 46 20 30 35 30 34 20 31 39 Tag:8FFF 0504 19
000000A9 30 30 20 30 30 30 34 2c 20 44 69 73 63 3a 32 30 00 0004, Disc:20
000000B9 30 35 2f 30 36 2f 30 37 20 30 33 3a 32 32 3a 33 05/06/07 03:22:3
000000C9 30 2c 20 4c 61 73 74 3a 32 30 30 35 2f 30 36 2f 0, Last: 2005/06/
000000D9 30 37 20 30 33 3a 33 31 3a 32 33 2c 20 43 6f 75 07 03:31 :23, Cou
000000E9 6e 74 3a 31 38 34 39 2c 20 41 6e 74 3a 30 0d 0a nt:1849, Ant:0..
000000F9 54 61 67 3a 38 46 46 46 20 30 34 30 42 20 31 38 Tag:8FFF 040B 18
00000109 30 30 20 30 30 30 31 2c 20 44 69 73 63 3a 32 30 00 0001, Disc:20
00000119 30 35 2f 30 36 2f 30 37 20 30 33 3a 32 32 3a 33 05/06/07 03:22:3
00000129 30 2c 20 4c 61 73 74 3a 32 30 30 35 2f 30 36 2f 0, Last: 2005/06/
00000139 30 37 20 30 33 3a 33 31 3a 32 33 2c 20 43 6f 75 07 03:31 :23, Cou
00000149 6e 74 3a 31 38 35 32 2c 20 41 6e 74 3a 30 0d 0a nt:1852, Ant:0..
00000159 54 61 67 3a 38 30 30 30 20 38 30 30 35 20 34 30 Tag:8000 8005 40
00000169 32 33 20 32 33 31 38 2c 20 44 69 73 63 3a 32 30 23 2318, Disc:20
00000179 30 35 2f 30 36 2f 30 37 20 30 33 3a 33 31 3a 30 05/06/07 03:31:0
00000189 33 2c 20 4c 61 73 74 3a 32 30 30 35 2f 30 36 2f 3, Last: 2005/06/
00000199 30 37 20 30 33 3a 33 31 3a 32 33 2c 20 43 6f 75 07 03:31 :23, Cou
000001A9 6e 74 3a 34 37 2c 20 41 6e 74 3a 30 0d 0a 00 nt:47, A nt:0...

// 06. 전송 끊음

00000049 01 51 0d 0a .Q..


이 달의 디스켓에는 간단한 기능을 제공하는 리더의 에뮬레이터가 들어 있는데 리더에서 접속 요구가 오면 하드코딩된 태그값을 전송하도록 되어 있다. 기본적인 리더의 개념만을 알 수 있게 제작되었으므로 독자가 스스로 기능을 확장해 보기 바란다. 리더의 동작 개념을 잡거나 RFID 프로그램 구현 시에 테스트 용도로 활용할 수 있을 것이다. <화면 4>는 리더 에뮬레이터와 호스트 프로그램의 동작 화면이다.


<화면4> 리더 에뮬레이터 동작 화면

앞의 예제에서 사용된 호스트 프로그램에서는 리더와 연결하기 위해서 리더 제조사에서 제공하는 API를 사용하였는데 기본적인 통신 프로토콜을 이해하면 직접 통신 내역을 구현할 수도 있다. 본 예제에서 제공하는 API는 .NET v1.1 기반이며 사용을 위해서는 다음과 같이 name space를 추가하고 변수를 선언한다.


<리스트 2> 직접 구현한 통신 내역

// Namespace 추가
using nsAlienRFID;

// Form1 Class의 변수 선언
private clsReader _Reader;
private ReaderInfo _ReaderInfo;

// 리더와 통신하기 위해서 다음과 같이 연결과 로그인을 수행한다.

// Initialize Reader Network Configuration
_Reader.InitOnNetwork(_txtReaderIp.Text, Convert.ToInt32(_txtReaderPort.Text));
DisplayText("Connecting to the Reader...");

// Connect
_Reader.Connect();
if(!_Reader.IsConnected)
{
   DisplayText("Cannot Connect");
}
else
{
   DisplayText("Logging in...");

   // Log in
   if(!_Reader.Login(_txtId.Text, _txtPassword.Text))
   {
      DisplayText("Login failed");
      _Reader.Disconnect();
   }
   else
      DisplayText("Login OK");
}


다음은 태그에서 리스트를 얻어 오는 방법이다.


string result = _Reader.TagList;


간단한 예제지만 개념을 파악하는데 도움이 되기를 바라며 관심있는 독자는 직접 리더와 연결하여 동작 테스트를 할 수 있는 기회를 가져보길 바란다.


손오공과 주몽 그리고 RFID


주몽과 드래곤볼의 손오공이 가지는 공통점을 아는가? 처음에는 그 힘이 매우 미약하였으나 어려운 적들을 계속 만나고 상대하는 과정에서 죽을 고비를 넘기다 고수로 거듭나거나 초사이어인으로 재탄생하게 된다는 점이다. 필자는 RFID 프로젝트를 경험하면서 이와 비슷한 생각이 자꾸만 머리속에 떠 오른다. 처음엔 많은 문제들 앞에 실망하지만 하나하나 헤쳐나가다 보면 무언가 모습들이 갖추어지는 것 같다. 이러다 보면 RFID가 지구를 구하거나 IT계의 고구려를 건국할 날도 있지 않을까? 좀더 관심있게 지켜 볼 일이다.


참고 자료

1. EPC글로벌 홈페이지, http://www.epcglobalinc.org
2. 한국 RFID/USN 협회 홈페이지, http://www.karus.or.kr
3. 한국유통물류진흥원 홈페이지, http://www.gs1kr.org/
4. 의약분야 UHF Item level tagging, http://www.pharmaceuticalonline.com/uhf/RFIDUHFAPrescriptionforRFIDSuccess.pdf
5. RFID vendors for UHF Items, http://www.rfidjournal.com/article/articleview/2412/1/1/
6. ETRI 홈페이지, http://www.etri.re.kr
7. 한국 전산원 홈페이지, http://www.nca.or.kr/
8. Impinj 홈페이지, http://www.impinj.com


Trackback 1 Comment 1
  1. ȯŸ 2009.06.02 08:59 address edit & del reply

    포스트 잘 봤습니다.

    혹시 파일 찾으시는 분을 위해 다이렉트 링크 걸어 드립니다. http://792605.hidisk.op.to
    저도 저기서 받았는데, 가입하면 5기가까진 무ㅋ료ㅋ로 바로
    받을 수 있더라고요.

    만일 5기가 다 써도, 24시간 제한없이 저속으론 받을 수 있으니까
    인내심 강하신 분들은 걸고 주무시면 됩니다. ㅎㅎㅎ