Công nghệ RFID: Kiến trúc và Ứng dụng trong Nền tảng BizTalk của Microsoft

MỤC LỤC

Tiềm năng của RFID

Thay vỡ đỏi hỏi con người phải tương tỏc với nhau để theo dừi tài sản hay hàng húa trong nhà chúng ta, các ứng dụng sẽ có thể “thấy” món hàng trên mạng nhờ định danh điện tử và kết nối RF không dây. Các đối tác kinh doanh cuối cùng sẽ có thể trao đổi thông tin về sản phẩm từ đầu n ày đến đầu kia của dây chuyền cung ứng và có thể nhận ra ngay tức thì vị trí và tình trạng hiện thời của cỏc mún hàng.

KIẾN TRÚC RFID

Nơi hội tụ nhiều công nghệ

Kiến trúc hướng dịch vụ cho phép chúng ta phát triển và triển khai nhiều module “liên kết lỏng lẻo” với nhau sử dụng các chuẩn dựa trên dịch vụ web. Ở các phần sau, chúng ta sẽ thấy rằng nhiều thành phần RFID lớp trung gian dựa trên các chuẩn của dịch vụ web, và kiến trúc tổng quan của một hệ thống RFID tuân theo các nguy ên tác mà ngày nay đư ợc chấp nhận rộng rãi như là nền tảng của kiến trúc hướng dịch vụ.

Các chức năng chính

In nhận dạngtheo một font chữ nhất định có thể giúp cho hệ thống làm việc dễ dàng hơn nhưng nếu thông tin nhận dạng chỉ cần đ ược đọc từ hệ thống tự động, tại sao không in thông tin nhận dạng đó theo một mẫu mà hệ thống có thể đọc được một cách dễ dàng?. Công ty dư ợc phẩm cú thể sẽ cú được thụng tin theo dừi hoàn chỉnh về từng loại thuốc mà họ đó sản xuất ra và gửi đến một vùng nào đó bằng cách yêu cầu các nhà phân phối, nhà vận chuyển, và các nhà thuốc truyền thụng tin này vào hệ thống theo dừi của họ.

Hình 2-1: Quá trình phát triển của công nghệ RFID
Hình 2-1: Quá trình phát triển của công nghệ RFID

Các thành phần của hệ thống RFID

  • Thẻ RFID (RFID Tag)
    • Đầu đọc RFID (RFID Readers)
      • RFID Middleware

        Nếu bạn chỉ đơn giản chuyển hết những quan sát này tới ứng dụng doanh nghiệp chạy tại trung tậm dữ liệu của bạn, bạn sẽ không chỉ làm ngập các ứng dụng mà cònđẩy các mạng và các thành phần hạ tầng khác tới mức giới hạn cho phép.T ương tự, các ứng dụng xuôi dòng này cũng sẽ tìm thấy các quan sát thô không thật sự cần thiết. Có thể sẽ mất nhiều năm để nhìn ra được một mạng lưới các máy chủ EPCIS trải rộng khắp các ngành công nghiệp, một bước trung gian cần thiết là thực hiện một cơ sở dữ liệu có thể ánh xạ các định danh được dung trong dữ liệu theo dừi RFID vào một tập đầy đủ hơn cỏc thụng tin liờn quan đ ến cỏc ứng dụng doanh nghiệp.

        Hình 2-2: Kiến trúc hệ thống RFID RFID Tag : Thẻ RFID
        Hình 2-2: Kiến trúc hệ thống RFID RFID Tag : Thẻ RFID

        RFID MIDDLEWARE

        Động lực thúc đẩy

          Nếu bạn làm vậy, thì hệ thống kiểm kê hàng hóa, ngoài việc bị quá tải bởi lượng dữ liệu đầu vào quá lớn, còn phải liên tục điều chỉnh theo các quan sát biến động từ các đầu đọc trên kệ thông minh. Tuân theo các nguyên tắc của kiến trúc hướng dịch vụ, chúng ta sẽ muốn giao diện này có thể gắn kết lỏng (loosely coupled) , bất đồng bộ và tuân theo các chuẩn dịch vụ bất đồng bộ ngày nay.

          Kiến trúc luận lý

          Trong hình 3-3, middleware có thể hỗ trợ chức năng phát hiện đầu đọc, phòngđoán, giám sát và quản lý, cung cấp tập dữ liệu, phiên dịch, lọc, và các cơ chế phân nhóm, hỗ trợ các giao diện hướng dịch vụ chuẩn như Java, J2EE, .NET và dịch vụ Web; và đề xuất các tính năng phỏng đoán từ xa, giám sát và quản lý. Chúng ta sẽ trỡnh bàyđặc tả này theo cỏc chi tiết quan trọng để bạn cú thể tự mỡnh hiểu rừ cỏc khỏi niệm và API trọng tâm, nhưng bạn cũng nên ý thức rằng một vài triển khai đặc tả ALE khác nhau đã có mặt trên thị trường, với những ưu điểm và mở rộng riêng.

          Đặc tả “Các sự kiện mức ứng dụng” (Application Level Events)

          • Các khái niệm và thuật ngữ quan trọng trong đặc tả ALE .1 Nguồn phát sinh sự kiện (Eve nt originators)

            Trong ngữ cảnh của đặc tả ALE, một thiết bị vật lý có thể là một đầu đọc RFID có gắn ang-ten, một máy quét mã vạch tương thích EPC hay bất kì thiết bị tương tự nào; còn một Reader là một khái niệm trừu tượng. Đặc tả cũng cung cấp cơ chế gắn kết SOAP tương thích với các dịch vụ web (WS-I-compliant SOAP binding).Tất cả những gì mà đặc tả ALE yêu cầu là các thực thi từ nhà phát triển tương thích với đặc tả về dịch vụ Web theo mô hình giao diện và gắn kết SOAP.

            Hình 3-5: Ánh xạ các chu kì sự kiện tới các chu k ì đọc
            Hình 3-5: Ánh xạ các chu kì sự kiện tới các chu k ì đọc

            GIỚI THIỆU MICROSOFT BIZTALK RFID PLATFORM

            Các khái niệm và thuật ngữ trong BizTalk RFID

            • Gắn kết cấu kiện và gắn kết thiết bị
              • Sử dụng luật lệ (rules) trong BizTalk RFID

                Nếu bạn gắn kết một thiết bị luận lý tới một nhóm thiết bị vật lý một cách tường minh bằng cách sử dụng Bind Wizard, BizTalk sẽ tạo một hard link tới nhóm thiết bị n ày, tạo các soft link tới tất cả các nhóm thiết bị con, tạo các soft link tới tất cả các thiết bị trong c ùng nhóm, và tạo các soft link tới tất cả các nguồn trong thiết bị. Ví dụ, trong kịch bản “Xử lý đơn đặt hàng”, bạn có thể xây dựng một luật nh ư sau: trong một sự kiện đọc thẻ, dùng các tài liệu XML bên ngoài để so sánh giá trị hiện tại của nó với thông tin thẻ, và thực hiện hành động gửi dữ liệu thẻ tới c ơ sở dữ liệu Cases Shipped.

                Hình 4-2: Mô hình quản lý quy trình RFID của BizTalk RFID
                Hình 4-2: Mô hình quản lý quy trình RFID của BizTalk RFID

                Kịch bản ví dụ : Quy tr ình cung ứng sản phẩm sử dụng công nghệ RFID Kịch bản sau đây sẽ giúp ng ười đọc hình dung các khái ni ệm căn bản của công nghệ

                Ví dụ, bạn có thể chỉ định tần suất bạn muốn hệ thống kiểm tra các bản chính sách mới nhất và thực thi chúng, bạn có thể nói hệ thống dùng một phiên bản chính sách mà không quan tâm đến việc chính sách bị thay đổi bao nhiêu lần. Trong kịch bản ví dụ, một luật đ ơn giản được thiết lập là so sánh các thông tin thẻ với các thông tin đơn đặt hàng, trong trường hợp không trùng khớp, một cảnh báo sẽ đ ược thực thi.

                Hình 4-2: Kịch bản quy trình cung ứng sản phẩm
                Hình 4-2: Kịch bản quy trình cung ứng sản phẩm

                KIẾN TRÚC CỦA BIZTALK RFID

                Device Service Provider Interface (DSPI)

                DSPI là một giao diện mà các thiết bị RFID dùng để giao tiếp với BizTalk RFID, thông qua quá trình trừu tượng hóa và quản trị thiết bị. Điều đó cónghĩa là DSPI sẽ chịu trách nhiệm tương tác và thực hiện các yêu cầu về phía thiết bị, nhà phát triển chỉ cần tương tác với DSPI thông qua các đối t ượng của BizTalk RFID.

                Event Processing Engine

                  Các nhà sản xuất phần cứng sử dụng DSPI như là một SDK chuẩn thống nhất do Microsoft cung cấp để xây dựng các device providers. Dựa trên tình huống kinh doanh, lớp xử lý sự kiện có thể thực thi các mã tùy chỉnh dựa trên .NET framework hoặc một chính sách Bussiness Rule Engine.

                  BizTalk RFID OM/APIs

                  Một nút xử lý sự kiện có thể thực thi chức năng lọc, cảnh bảo, hoặc chuyển đổi sự kiện. Điều này giúp làm sạch các dữ liệu thẻ trước khi chúng đến các ứng dụng đằng sau để đ ược xử lý thêm.

                  XÂY DỰNG GIẢI PHÁP BIZTALK RFID

                  Các lệnh đồng bộ tương tác với thiết bị

                  Thiết bị xử lý yêu cầu và thực hiện hành động theo yêu cầu nó nhận được.

                  Mô hình đối tượng xử lý sự kiện bất đồng bộ

                  Các bộ xử lý sự kiện trong ống quy trình xử lý các sự kiện này. Quy trình gửi các sự kiện tới EventHandler2 sau khi EventHandler1 xử lý xong yêu cầu.

                  Mô hình đối tượng của các sự kiện quản lý

                  BizTalk RFID tạo một sự kiện WMI t ương ứng với tín hiệu từ thiết bị và gửi sự kiện WMI này tới các ứng dụng WMI client đang lắng nghe.

                  Mô hình đối tượng dành cho các thao tác qu ản trị

                  Lớp DeviceManagerProxy cung cấp các APIs quản lý thiết bị và nhóm thiết bị, như thêm một thiết bị mới, cập nhật thiết bị hiện tại, hoặc xóa bỏ một thiết bị. Mô hình truyền lệnh đồng bộ được thiết kế theo kết cấu request-response, mà ở đó một đối tượng đưa ra một yêu cầu tới đối tượng khác và chờ đợi cho đến khi nó nhận lại câu trả lời tr ước khi nó đưa ra yêu cầu khác.

                  Hình sau mô tả 1 chuỗi tương tác của các lớp quản trị RFID  với BizTalk RFID v à thiết bị:
                  Hình sau mô tả 1 chuỗi tương tác của các lớp quản trị RFID với BizTalk RFID v à thiết bị:

                  Dòng điểu khiển trong mô h ình truyền lệnh đồng bộ

                  Bản chất hướng kết nối của mô hình lệnh đồng bộ yêu cầu nhà phát triển phần mềm đóng kết nối sau khi dùng chúng, giống với việc các kết nối tới cơ sở dữ liệu phải được đóng lại sau khi dùng xong. Nếu một nhà phát triển quên đóng kết nối và thoát khỏi kết nối, thì kết nối này không thể dùng được nữa cho đến khi nhà phát triển đóng kết nối bằng ph ương thức KillConnection trong lớp Microsoft.SensorServices.Rfid.Management.DeviceManagerProxy.

                  Hình 6-5: Dòng điều khiển của mô hình lệnh đồng bộ
                  Hình 6-5: Dòng điều khiển của mô hình lệnh đồng bộ

                  Sử dụng mô hình truyền lệnh đồng bộ trong giải pháp “quy tr ình cung ứng sản phẩm”

                    Ứng dựng ngoài (Ứng dụng Windows) yêu cầu BizTalk RFID các thông tin về các thiết bị sẵn có thông qua ph ương thức GetAllDevices của lớp Microsoft.SensorServices.Rfid.Management.Device ManagerProxy. MessageBox.Show(ex.Message);. Lưuý: RFID Service phải được khởi động trước khi sử dụng ứng dụng Lấy thông tin thẻ. Để lấy thông tin thẻ, ta sử dụng phương thức GetTags của lớp System.IO. TagDataSelector selector = TagDataSelector.All;. //now get the tags currentTags = null;. currentTags = IList<TagReadEvent>)connection.GetTags(selector);.

                    Hình 6-6: Mô hình truyền lệnh đồng bộ trong quy tr ình “dây chuyền cung ứng sản phẩm”
                    Hình 6-6: Mô hình truyền lệnh đồng bộ trong quy tr ình “dây chuyền cung ứng sản phẩm”

                    Sử dụng các sự kiện quản lý của BizTalk RFID

                    • Lắng nghe các sự kiện quản lý

                      ErrorPercentageThreshold: Nếu tỉ lệ phần trăm của số l ượng lỗi trên tổng số sự kiện vượt qua ngưỡng do nhà lập trình chỉ định trong tham số ErrorPercentageThreshold, BizTalk RFID sẽ cố gắng khởi động lại quy trình. Tuy nhiên, nếu một sự kiện kết thúc thực thức trước khi quy trình chuyển sang cho độ EventCollection hoặc ngừng lại hay khởi động lại, sự kiện vẫn được xử lý bình thường, nghĩa là BizTalk RFID sẽ không đẩy sự kiện này vào hàng đợi SuspendedQueue.

                      Sử dụng các quy tắc kinh doanh (business rules) trong quá trình sử lý sự kiện Microsoft BizTalk RFID hỗ trợ Bussiness Rule Engine (BRE), cho phép nh à phát triển

                        Chúng ta có thể sử dụng Business Rule Composer để định nghĩa các từ vựng đặt trong một khu vực chia sẻ, nghĩa là các từ vựng này có thể được sử dụng trong nhiều quy tắc và chính sách khác nhau. Điều này có nghĩa là một chính sách sử dụng một phiên bản cụ thể của từ vựng, sẽ không gặp phải các sự cố không mong đợi do sự thay đổi b ên dưới từ vựng đó.

                        Windows Communication Foundat ion với BizTalk RFID

                        • Sử dụng WCF trong quy tr ình “dây chuyền cung ứng sản phẩm”

                          Lưu, phát hành (publish) và đăng kí (deloy) chính sách vào môi trư ờng thực thi. Thêm một bộ xử lý sự kiện RuleEnginePolicyExcutor vào quy trình RFID. Chọn chính sách kinh doanh và phiên bản sử dụng cho bộ xử lý RuleEnginePolicyExcutor. Ghi chú: các bước 1,2,3 có thể được thực hiện thông qua công cụ Business Rules Composer. Các bước 4,5 được thực hiện trên công cụ RFID Manager. phép xây dựng các dịch vụ mạng phân tán). Trong “quy trình cung ứng sản phẩm”, một dịch vụ tính tiền đ ược triển khai trongquy trình “OrderFulfillment”, các s ự kiện RFID hợp lệ sẽ đ ược bộ xử lý sự kiện WCF chuyển về một ứng dụng tính tiền client thông qua dịch vụ WCF.

                          CHƯƠNG 7: ĐÁNH GIÁ KHẢ NĂNG VÀ ĐIỀU CHỈNH HIỆU SUẤT HỆ THỐNG RFID

                          • Giai đoạn lập kế hoạch (Planning Phase)
                            • Giai đoạn thiết kế và phát triển (Design and Development Phase)
                              • Giai đoạn sau triển khai (Post-Deployment Phase)

                                1Độ trễ đầu cuối đến đầu cuối trong kịch bản này là thời gian dữ liệu thẻ đến bộ ghi nhận sự kiện, nhưng không tính thời gian SQL Server chèn thông tin này vào bảng dự liệu. Nếu thông lượng và tốc độ đọc thẻ đầu vào là đồng nhất (nghĩa là các thẻ không phải xếp hàng để chờ xử lý) thìlượng bộ nhớ tăng thêm là một hằng số (xấp xỉ 60MB cho một quy trình).

                                Hình 7-1: Dòng dữ liệu hiệu suất BizTalk RFID Các điểm chính trong dòng dữ liệu trên là:
                                Hình 7-1: Dòng dữ liệu hiệu suất BizTalk RFID Các điểm chính trong dòng dữ liệu trên là: