Gen2 세션과 플래그 — 다중 리더 환경 이해 (4/5)

※ 이 글은 'Gen2 프로토콜' 5부작 시리즈의 4편입니다. (3편: 인벤토리 원리)

3편에서 리더가 태그를 하나씩 골라 읽는 인벤토리를 살펴봤습니다. 그런데 실제 현장에서는 리더가 여러 대이거나, 같은 태그를 반복해서 스쳐 지나가는 상황이 흔합니다. 컨베이어 벨트 위를 지나가는 박스, 여러 개의 게이트를 통과하는 팔레트처럼 같은 태그가 짧은 시간 안에 여러 번 리더의 인식 범위에 들어올 수 있습니다. 이때 태그를 헷갈리지 않고 관리하는 장치가 바로 세션(session)인벤토리 플래그입니다.


인벤토리 플래그(A/B)로 중복 인식 막기

먼저 플래그부터 봅시다. 각 태그는 인벤토리 상태를 A 또는 B로 가지고 있습니다. 리더가 "A인 태그만 세라"고 인벤토리하면, 읽힌 태그는 자동으로 B로 뒤집힙니다. 그래서 같은 라운드에서 이미 읽은 태그가 계속 응답하는 중복 인식을 막을 수 있습니다. 이 원리는 마치 출석부에 체크 표시를 하는 것과 비슷합니다 — 한 번 체크된 사람은 다시 이름을 부르지 않는 것과 같은 이치입니다.


세션(S0~S3)과 인벤토리 플래그 태그 하나가 가진 4개의 세션 S0 A/B S1 A/B S2 A/B S3 A/B 리더 1 세션 S0 사용 입고 게이트 리더 2 세션 S1 사용 출고 게이트 서로 다른 세션을 쓰면 두 리더가 같은 태그를 읽어도 플래그가 섞이지 않습니다


세션(S0~S3): 플래그를 4벌로 나누는 이유

세션은 이 A/B 플래그를 4벌(S0~S3) 독립적으로 유지하는 개념입니다. 리더 A가 S0을 쓰고 리더 B가 S1을 쓰면, 각자의 플래그가 서로 영향을 주지 않아 두 리더가 같은 태그 무리를 동시에 인벤토리해도 간섭이 적습니다. 세션마다 플래그가 유지되는 시간(persistence)이 다른 것이 핵심입니다.


세션별 플래그 유지 시간

세션플래그 유지(persistence)주 용도
S0전파 안에 있는 동안만 유지 (벗어나면 즉시 리셋)단일 리더 빠른 인벤토리
S1약 0.5~5초 후 자동으로 A로 복귀 (주기적 리셋)주기적 재확인
S2전원이 끊겨도 최소 2초 이상 유지다중 리더 환경
S3전원이 끊겨도 최소 2초 이상 유지다중 리더 환경


실무에서는 이렇게 세션을 고릅니다

예를 들어 게이트마다 리더가 여러 대 설치된 물류센터라면, 서로 다른 세션을 배정해 중복 인식과 간섭을 줄일 수 있습니다. 반대로 컨베이어 위를 빠르게 지나가는 물건을 한 번만 확실히 카운트하고 싶다면, 플래그가 오래 유지되는 S2나 S3을 써서 "이미 읽은 태그는 한동안 다시 안 읽히게" 만드는 편이 유리합니다. 세션 선택은 인식 속도와 안정성에 직접 영향을 주므로, 현장 구성에 맞춰 정하는 것이 중요합니다.


실무 팁을 하나 덧붙이면, 세션 설정을 잘못 골라서 생기는 흔한 증상은 "분명히 태그를 읽었는데 시스템에는 중복으로 여러 번 찍히는" 문제입니다. 이런 증상이 보이면 가장 먼저 확인할 것이 세션과 플래그 유지 시간 설정입니다. 리더기 스펙이나 SDK 설정에서 세션 값을 조정할 수 있는 항목을 찾아 현장 상황에 맞게 바꿔보는 것이 첫 번째 점검 순서입니다.


핵심 요약

  • 인벤토리 플래그(A/B)는 읽은 태그를 B로 뒤집어 같은 라운드의 중복 인식을 막습니다.
  • 세션(S0~S3)은 이 플래그를 4벌 독립 유지해, 여러 리더가 간섭을 줄이며 인벤토리하게 해줍니다.
  • 세션마다 플래그 유지 시간이 달라, 다중 리더 환경에서는 S2·S3처럼 오래 유지되는 세션이 유리합니다.
  • 중복 인식 문제가 보이면 세션·플래그 설정부터 점검하는 것이 실무에서 효율적인 진단 순서입니다.

댓글