Chuyển đến nội dung

Cần biết trước khi triển khai RFID

RFID không phải mã vạch quét nhanh hơn. Mô hình đọc, mô hình dữ liệu và mô hình sự kiện đều khác, và hầu hết lỗi trong dự án RFID sinh ra vì đội làm quen tay coi nó là mã vạch đọc xa hơn. Hãy đọc trang này trước khi viết dòng code tích hợp đầu tiên.

RFID khác mã vạch thế nào

Mã vạchRFID UHF
Ai quyết định thời điểm đọcNgười dùng chủ động quét từng mãĐầu đọc liên tục quét mọi thẻ trong vùng đọc
Số lần đọc trên một vậtMột lần quét là một lần đọcMột thẻ sinh ra rất nhiều lần đọc mỗi giây
Tầm đọcVài chục cm, cần đường ngắmVài mét, xuyên thùng carton, không cần đường ngắm
Số vật đọc cùng lúcTừng mã mộtHàng chục tới hàng trăm thẻ cùng lúc
Định danhGTIN cho biết loại sản phẩmEPC cho biết từng cá thể
Kết quảThành công hoặc thất bại rõ ràngXác suất: có thể sót, có thể đọc nhầm sang vùng khác
Ranh giới sự kiệnTiếng bíp là một sự kiệnKhông có sự kiện sẵn, bạn phải tự định nghĩa

Điểm quan trọng nhất nằm ở hai dòng cuối: mã vạch cho bạn sự kiện, còn RFID chỉ đổ về một dòng dữ liệu thô liên tục, và việc biến nó thành sự kiện là của bạn.

Một EPC được đọc rất nhiều lần

Với mã vạch, một tiếng bíp là một sản phẩm. RFID hoạt động khác: đầu đọc quét vùng đọc thành từng vòng, mỗi vòng chỉ vài chục mili giây, và ở mỗi vòng nó báo về tất cả thẻ đang thấy. Thẻ chưa rời vùng đọc thì vòng sau lại được báo tiếp. Vòng quét này trong tài liệu SDK gọi là kiểm kê (inventory), trùng chữ nhưng không phải nghiệp vụ kiểm kê tồn kho trong Easy Inventory, xem thuật ngữ.

Ví dụ một chiếc áo nằm trên quầy trong hai giây:

Ba trăm lần báo về vẫn chỉ là một chiếc áo. Từ đó có hai quy tắc:

  • Muốn đếm hàng, đếm số EPC khác nhau, không đếm số lần báo về.
  • Phần mềm phải gom nhiều lần báo về thành một sự kiện nghiệp vụ. Bước này gọi là chống trùng, mọi ứng dụng RFID đều cần, và đọc thẻ và chống trùng hướng dẫn cách làm đầy đủ.

Không có tín hiệu báo thẻ đã rời đi

Đầu đọc chỉ nói cho bạn biết nó đang thấy gì, không bao giờ nói cái gì vừa biến mất. "Thẻ đã ra khỏi vùng đọc" là một timeout do bạn tự cài: sau bao lâu không thấy lại một EPC thì coi như nó đã đi.

Vì vậy đừng thiết kế nghiệp vụ dựa trên sự kiện "hàng rời kho" do đầu đọc phát ra. Sự kiện đó không tồn tại.

Đọc là xác suất, không phải chắc chắn

Hai loại sai số luôn có, và phải được xử lý ở tầng nghiệp vụ:

  • Đọc sót: thẻ nằm trong vùng đọc nhưng không được báo về. Nguyên nhân thường là kim loại, chất lỏng, hướng thẻ, thẻ bị che bởi hàng khác, hoặc mật độ thẻ quá dày.
  • Đọc nhầm vùng: thẻ ở ngoài vùng chủ đích vẫn bị đọc. Nguyên nhân thường là công suất quá cao hoặc sóng phản xạ từ kệ kim loại.

Hệ quả trực tiếp: không đọc thấy không có nghĩa là không có hàng. Một phiếu kiểm kê RFID cần ngưỡng chấp nhận, cần lượt quét lại, và cần cách xử lý phần chênh lệch. Đừng để hệ thống tự động ghi giảm tồn chỉ vì một lượt quét không thấy thẻ.

EPC định danh từng cá thể

Mã vạch trên hộp sữa nói "đây là sữa loại X". EPC nói "đây là hộp sữa số 4172 của loại X". Đó là thứ làm RFID mạnh, nhưng cũng là phần việc thêm:

  • Phải có quy tắc cấp phát EPC và ghi thẻ, xem mã hóa EPC.
  • Phải có bảng ánh xạ EPC sang SKU và sang chứng từ.
  • Phải có chỗ chứa EPC lạ hoặc chưa cấp phát. Không được im lặng bỏ qua, cũng không được tự động nhận vào tồn kho.

Một lần đọc không phải một biến động tồn kho

Bản thân lần đọc chỉ mang một thông tin: EPC này vừa xuất hiện ở ăng-ten này, vào lúc này. Ý nghĩa nghiệp vụ đến từ điểm đọc và quy trình:

  • Cùng một EPC đọc ở cổng xuất là hàng đi ra, đọc ở quầy thu ngân là hàng đang bán, đọc ở kệ là hàng còn tồn.
  • Cùng một EPC đọc hai lần ở cùng điểm đọc trong một ca thường vẫn là một sự kiện.

Hãy quyết định trước sự kiện nghiệp vụ là gì, rồi mới chọn cửa sổ chống trùng và điểm đặt ăng-ten cho khớp.

Môi trường quyết định vùng đọc

Vùng đọc thực tế do vật lý quyết định, không do thông số trên tờ rơi:

  • Kim loại phản xạ sóng và làm thẻ dán trên nó lệch tần, nhận không đủ năng lượng để trả lời.
  • Chất lỏng hấp thụ sóng, nên thẻ ở mặt sau thùng nước rất khó đọc.
  • Tăng công suất làm vùng đọc lớn ra theo mọi hướng, kể cả hướng bạn không muốn.

Luôn thử với đúng thẻ, đúng sản phẩm, đúng bao bì và đúng cách xếp hàng thật. Phần khảo sát và đặt ăng-ten nằm ở hướng dẫn triển khai RFID.

Chốt các câu hỏi này trước khi triển khai

  1. Sự kiện nghiệp vụ cần tạo ra là gì, và ở điểm đọc nào?
  2. Một lượt đi qua của hàng tương ứng với bao nhiêu sự kiện? Cửa sổ chống trùng là bao lâu?
  3. Độ chính xác đọc tối thiểu chấp nhận được là bao nhiêu, và xử lý phần chênh ra sao?
  4. Thẻ gắn ở đâu trên sản phẩm, và vật liệu sản phẩm là gì?
  5. EPC do ai cấp, theo scheme nào, và ghi thẻ ở khâu nào?
  6. Xử lý thế nào khi gặp EPC lạ, đọc nhầm vùng, hoặc đầu đọc mất kết nối giữa chừng?
  7. Quốc gia lắp đặt cho phép băng tần, công suất và kiểu nhảy kênh nào?

Trả lời được bảy câu này thì phần code tích hợp trở nên đơn giản. Chưa trả lời được thì code chạy đúng vẫn ra số liệu sai.

Đọc tiếp

Tài liệu vận hành Easy Inventory và tích hợp RFID