Интерфейс поставщиков служб устройств

Иллюстрации

Показать все

Изобретение относится к радиочастотной идентификации (RFID) и, более конкретно, к системе и/или способу, которые обеспечивают предоставление единообразного обмена данными и управления RFID. Техническим результатом является предоставление единого способа, чтобы распознавать, настраивать и передавать данные в устройства RFID относительно производителя и ассоциированных спецификаций. Настоящее изобретение предоставляет систему и/или способ, которые обеспечивают взаимодействие с компонентом устройств, чтобы предоставлять единообразный обмен данными, обнаружение и управление. Компонент интерфейса поставщиков служб устройств (DSPI) может обеспечить единообразный способ, чтобы обмениваться данными и/или управлять устройством радиочастотной идентификации (RFID). Компонент DSPI может включать в себя компонент-приемник, который принимает одного или более из данных серверов RFID и данных устройств RFID. Компонент DSPI может задавать интерфейс, который обеспечивает обмен одним или более из данных серверов RFID и данных устройств RFID между устройством RFID и сервером RFID единообразным способом. Может быть задан интерфейс для реализации управления обнаружением, конфигурированием, обменом данными и соединениями. 3 н. и 11 з.п. ф-лы, 14 ил., 4 табл.

Реферат

Перекрестная ссылка на родственные заявки

По данной заявке испрашивается приоритет Предварительной патентной заявки США серийный номер 60/606281, поданной 1 сентября 2004 года и озаглавленной "SYSTEM AND METHODS THAT FACILITATE RFID SERVER PROGRAMMING MODEL AND API'S", и Предварительной патентной заявки США серийный номер 60/606577, поданной 2 сентября 2004 года и озаглавленной "FACILITATE RFID SERVER PROGRAMMING MODEL AND API'S". Эта заявка также связана с находящимися одновременно на рассмотрении Патентными заявками США с серийными номерами _______, _______ поданными _______, _______ и _______ соответственно. Эти заявки полностью включены в данный документ посредством ссылки.

Область техники, к которой относится изобретение

Настоящее изобретение, в общем, относится к радиочастотной идентификации (RFID) и, более конкретно, к системе и/или способу, которые обеспечивают предоставление единообразного обмена данными и управления RFID.

Предшествующий уровень техники

Многие розничные, производственные и сбытовые организации применяют различные и инновационные способы функционирования, чтобы повышать эффективность работы. Эти организации могут отслеживать складские запасы, чтобы обеспечивать оптимизацию спроса и предложения в отношении потребителей. Один аспект максимизации прибыли тесно связан с надлежащим складированием запасов, так чтобы пополнение осуществлялось в связи с исчерпанием товаров и/или продуктов. Например, розничные магазины, продающие вычислительную машину (компьютер) и/или видеомагнитофон, должны иметь на складе вычислительную машину относительно ее продажи потребителям и видеомагнитофон относительно его продажи потребителям. Таким образом, если на вычислительную машину более высокий спрос (к примеру, продается больше единиц), чем на видеомагнитофон, розничный магазин может складировать вычислительную машину более часто, чтобы оптимизировать спрос, предложение и, в свою очередь, прибыль. Отслеживание складских запасов и ассоциированных продаж может быть сложной задачей, в которой активность продукта сравнима с черным ящиком, поскольку внутренние действия неизвестны; тем не менее, отслеживание продуктов является важнейшим элементом в эффективности работы с запасами/продуктами.

Одним типом системы мониторинга, относящейся к продуктам, является портативное устройство сбора изображений (к примеру, устройство считывания штрихкода), которое широко используется в сферах производства, обслуживания и/или поставок. Такие устройства позволяют выполнять множество действий по сбору данных на месте. Портативные устройства сбора данных часто включают в себя интегрированные устройства считывания форм данных в виде штрихкода, выполненные с возможностью считывания форм данных в виде штрихкода, прикрепленных к продуктам, упаковке продуктов и/или контейнерам на складах, в розничных магазинах, портах, для инвентаризации, отслеживания запасов, контроля и ускорения производства, поддержания качества и/или других целей.

Уникальный штрихкод может быть помещен на продукт, причем штрихкод может быть ассоциирован с информацией, относящейся к этому продукту. Сканер штрихкода может быть использован, чтобы сканировать штрихкод на продукте, и из него может быть извлечена относящаяся к продукту информация. Такое определение информации, тем не менее, эстетически некорректно, поскольку эта информация может создавать помехи для продукта. Более того, разрывы, пятна грязи, надписи или другие физические повреждения/изменения штрихкода могут делать подобные традиционные системы и/или методики, по существу, бесполезными. Если часть штрихкода оторвана от продукта, сканер штрихкода может не иметь возможности корректно считать штрихкод. Аналогично, пятно грязи на продукте может сделать этот штрихкод нечитаемым.

Системы и/или способы мониторинга, использующие устройства считывания штрихкода и всемирный код продукта (UPC), сталкивают пользователя (к примеру, розничного торговца, дистрибьютора, изготовителя и т.д.) с дополнительными сложностями. Устройства считывания штрихкода требуют луча обзора, чтобы надлежащим образом выполнять мониторинг продуктов. Например, типичная система штрихкода требует, чтобы сканер находился на расстоянии не более 4-8 дюймов от штрихкода и/или UPC, чтобы достичь корректного считывания. Система штрихкода требует не только луча обзора, необходимы и ручные сканирования по каждому отдельному продукту, чтобы определить продукт. Более того, один штрихкод и/или UPC должен представлять все экземпляры продукта (к примеру, бутылке кетчупа торговой марки Tomato назначен один UPC и/или штрихкод для представления продукта). Помимо этого, объем информации, ассоциированной с одним штрихкодом и/или UPC, ограничен. Таким образом, сканирование кетчупа торговой марки Tomato может предоставить идентификационные данные и цену продукта. Эта информация не только не важна, она не подходит для мониторинга продукта в реальном времени.

Технология автоматической идентификации и сбора данных (AIDC), а именно радиочастотная идентификация (RFID), была разработана на основе, по меньшей мере, необходимости исправлять вышеуказанные недостатки систем и/или методик мониторинга (к примеру, устройств считывания штрихкода, штрихкодов и/или кодов UPC). RFID - это методика удаленного сохранения и извлечения данных с помощью меток RFID. Поскольку системы RFID основаны на радиочастоте и ассоциированных сигналах, многочисленные выгоды и/или преимущества превосходят традиционные методики мониторинга продуктов. Технология RFID не требует луча обзора, чтобы отслеживать продукты и/или принимать сигналы от меток RFID. Таким образом, не требуется ручное сканирование, при котором сканер должен быть как можно ближе к цели (к примеру, продукту). Тем не менее, диапазон в RFID ограничен на основе радиочастоты, размера меток RFID и ассоциированного источника питания. Помимо этого, системы RFID позволяют несколько считываний за секунды, обеспечивая быстрое сканирование и идентификацию. Другими словами, система RFID дает возможность множеству меток быть считанными и/или определенными, когда метки находятся в диапазоне устройства считывания RFID. Возможность нескольких считываний в системе RFID дополнена возможностью предоставления информационных меток, которые содержат уникальный идентификационный код по каждому отдельному продукту. Поэтому в отличие от системы штрихкода каждая бутылка кетчупа, изготовленная под торговой маркой Tomato, будет иметь ассоциированный идентификационный код. Например, две бутылки кетчупа, изготовленные под торговой маркой Tomato, имеют два различных идентификационных кода в системе RFID, тогда как в системах штрихкода две бутылки кетчупа, изготовленные под торговой маркой Tomato, будут иметь одинаковый штрихкод и/или UPC. В другом примере системы и/или способы RFID могут быть реализованы в воде, например отслеживание и/или мониторинг подводного трубопровода, тогда как система отслеживания штрихкода представляет множество сложностей в таких условиях.

Более того, системы и/или методики RFID предоставляют данные в реальном времени, ассоциированные с помеченным элементом. Потоки данных в реальном времени дают возможность розничному продавцу, дистрибьютору и/или изготовителю точно отслеживать складские запасы и/или продукты. Использование RFID может дополнительно облегчить поставку продуктов для внешнего распространения (к примеру, от розничного продавца к потребителю) и внутреннего распространения (к примеру, от дистрибьютора/изготовителя розничному продавцу). Дистрибьюторы и/или производители могут отслеживать поставки товаров, качество, количество, время доставки и т.д. Помимо этого, розничные продавцы могут отслеживать количество требуемых складских запасов, размещение этих складских запасов, качество, срок хранения и т.д. Описанные преимущества демонстрируют гибкость технологии RFID, обеспечивая возможность функционирования в нескольких областях, например внешняя поставка, внутренняя поставка, цепочки распространения, производство, розничная продажа, автоматизация и т.д.

Система RFID состоит из, по меньшей мере, метки RFID и приемо-передающего устройства RFID. Метка RFID может содержать антенну, которая обеспечивает прием и/или передачу радиочастотных запросов от приемо-передающего устройства RFID. Меткой RFID может быть небольшой объект, например клейкая этикетка, гибкая наклейка и встроенная микросхема и т.д. В типичном случае существует четыре различные частоты, которые используют метки RFID: низкочастотные метки (125-134 кГц), высокочастотные метки (13,56 МГц), УВЧ-метки (868-956 МГц) и СВЧ-метки (2,45 ГГц).

В рамках различных частотных диапазонов метки RFID могут быть либо пассивными, либо активными. Пассивная метка RFID не включает в себя блок питания. Когда электрический ток вызывается в антенне посредством принятой радиочастоты от приемо-передающего устройства RFID, метке предоставляется достаточное количество энергии, чтобы отреагировать. Во многих случаях ответ пассивной метки RFID краток, состоя из идентификационного номера (к примеру, глобального уникального идентификатора (GUID)). GUID - это псевдослучайное число, которое уникально и может быть реализовано стандартным универсальным уникальным идентификатором (UUID) (к примеру, 16-байтное число, написанное в шестнадцатеричном формате). Тем не менее, системы и/или способы RFID сошлись на сохранении информации, например, в многоразрядном формате (к примеру, 64 бита или 96 бит), называемом электронным кодом продукта (EPC). Отсутствие блока питания в пассивной метке RFID дает возможность устройству быть небольшим и недорогим. Некоторые пассивные метки RFID, по измерениям, имеют размеры 0,4×0,4 мм, т.е. тоньше, чем лист бумаги. Тем не менее, отсутствие блока питания ограничивает практический диапазон считывания пассивной метки RFID от 10 мм до примерно 5 метров.

Активная метка RFID содержит источник питания, предоставляющий большие диапазоны считывания. Типичные активные метки RFID имеют размер примерно монеты американской валюты, и они предоставляют диапазоны считывания примерно десятки метров, поддерживая срок службы аккумуляторов до нескольких лет. Более того, в отношении активных меток RFID можно выполнять считывание и запись. Например, метки RFID могут обеспечить дополнительный уровень безопасности, чтобы не допускать кражи, посредством записи данных в активную метку RFID. Бит безопасности позволяет определять состояние безопасности на основе, по меньшей мере, приемо-передающего устройства RFID. В одной системе безопасности, например, активная метка RFID может иметь бит безопасности, установленный/записанный со значением один, что может означать, что продукт не очищен для того, чтобы оставить защитную область без инициирования оповещения/предупреждения. Когда соответствующие условия существуют, система и/или способ RFID позволяют записывать значение бита в метку равным нулю, что может указывать на то, что помеченный продукт очищен для того, чтобы оставить защитную область.

В целом, система RFID может включать в себя несколько компонентов: метки, устройства считывания меток (к примеру, приемо-передающие устройства меток), станции программирования меток, устройства считывания с циркуляцией кода, сортировальное оборудование, устройства считывания штрихкодов складских запасов на основе меток и т.д. Более того, различные марки, модели, типы и/или приложения могут быть ассоциированы с соответствующими компонентами (к примеру, метками, устройствами считывания меток, станциями программирования меток, устройствами считывания с циркуляцией кода, сортировальным оборудованием, устройствами считывания штрихкодов складских запасов на основе меток и т.д.), что может усложнить обнаружение, конфигурирование, настройку, обмен данными, обслуживание, безопасность и/или совместимость в системе RFID и с другими системами RFID. В свете вышесказанного существует необходимость предоставить единый способ, чтобы распознавать, конфигурировать, настраивать и передавать данные в устройства RFID относительно производителя и ассоциированных спецификаций.

Сущность изобретения

Далее представлено упрощенное изложение сущности изобретения, для того чтобы предоставить базовое понимание некоторых аспектов изобретения. Это изложение сущности не является всесторонним обзором изобретения. Оно не предназначено, чтобы определить ключевые/важнейшие элементы изобретения или определить объем изобретения. Его единственная цель - представить некоторые концепции изобретения в упрощенной форме в качестве вступления в более подробное описание, которое представлено далее.

Настоящее изобретение относится к системам и/или способам, которые обеспечивают взаимодействие с устройством радиочастотной идентификации (RFID) и/или другими системами генерирования событий в реальном времени (к примеру, датчиком, Web-службой и т.д.). Компонент интерфейса поставщиков служб устройств (DSPI) может предоставлять уровень абстрагирования, чтобы обмениваться данными и управлять устройством(ами) единообразным способом вне зависимости от типа и/или торговой марки устройства. В частности, компонент DSPI задает, по меньшей мере, один интерфейс для изготовителя устройства (к примеру, изготовителя устройства считывания), чтобы единообразно предоставлять услуги серверу RFID. Таким образом, компонент DSPI - это уровень между сервером и, по меньшей мере, одним устройством. Более того, компонент DSPI может задавать интерфейс для реализации управления обнаружением, конфигурированием, обменом данными и соединениями.

В соответствии с одним аспектом настоящего изобретения компонент DSPI может включать в себя компонент-приемик, который принимает одно или более из преобразования протоколов, которое относится к устройству, данных сервера RFID, данных устройства RFID и т.д. Компонент DSPI обеспечивает единообразный обмен данными с устройством и предоставление функциональных возможностей устройства независимо от изготовителя и стандарта протокола. Помимо этого, компонент-приемник может быть внешним и/или внутренним относительно компонента DSPI. Следует принимать во внимание, что устройством может быть, но не в ограничительном смысле, устройство считывания RFID, устройство записи RFID, приемо-передающее устройство RFID, устройство RFID, датчик, система генерирования в реальном времени, датчик реального времени, устройство с расширением в виде Web-службы и система генерирования событий в реальном времени и т.д.

В соответствии с другим аспектом настоящего изобретения компонент DSPI может включать в себя компонент ответа на запросы, который задает обмен сообщениями на уровне устройств. Следует принимать во внимание, что обмен сообщениями может быть асинхронным. Более того, обмен сообщениями может быть парой "запрос/ответ", уведомлением, командой и/или свойством. Обмен сообщениями используется компонентом ответа на запросы, при этом обмен сообщениями соответствует синтаксису языка разметки между сервером RFID и, по меньшей мере, одним устройством RFID. Языком разметки может быть, но не в ограничительном смысле, расширяемый язык разметки (XML), язык гипертекстовой разметки (HTML), стандартный обобщенный язык разметки (SGML) и расширяемый язык гипертекстовой разметки (XHTML).

Более того, компонент DSPI может включать в себя компонент интерфейса устройств, который задает уровень сообщений и/или транспортный уровень. Компонент интерфейса устройств обеспечивает управление обменом сообщениями и соединениями между сервером RFID и, по меньшей мере, одним устройством RFID. Компонент интерфейса устройств может использовать синтаксис языка разметки, чтобы отправлять и/или принимать сообщения (к примеру, уведомление, ответ, запрос и т.д.).

В еще одном аспекте настоящего изобретения компонент DSPI может включать в себя компонент интерфейса обнаружения устройств, который обнаруживает устройства RFID. Таким образом, компонент интерфейса обнаружения устройств может задавать интерфейс, который может информировать и/или сообщать о новом устройстве(ах) RFID. В целях эффективности компонент интерфейса обнаружения устройств может создавать экземпляр одного компонента на каждого поставщика. Более того, компонент DSPI может включать в себя компонент контейнера SPI (интерфейса поставщиков служб), который обеспечивает загрузку поставщика DSPI в сервер RFID. Компонент контейнера SPI сохраняет совместимость версий между сервером RFID и SPI. Более того, компонент контейнера SPI может регистрировать, по меньшей мере, один драйвер в сервере RFID.

Последующее описание и прилагаемые чертежи подробно излагают определенные иллюстративные аспекты изобретения. Эти аспекты, тем не менее, указывают только на некоторые из множества способов, которыми могут быть использованы принципы изобретения. Изобретение предназначено, чтобы включить в себя все такие аспекты и их эквиваленты. Другие преимущества и новые признаки изобретения станут явными из следующего подробного описания изобретения, если рассматривать их вместе с чертежами.

Перечень фигур чертежей

Фиг.1 - блок-схема типичной системы, которая обеспечивает взаимодействие с компонентом устройств.

Фиг.2 - блок-схема типичной системы, которая обеспечивает взаимодействие с устройством.

Фиг.3 - блок-схема типичной системы, которая обеспечивает взаимодействие с компонентом устройств в рамках системы радиочастотной идентификации.

Фиг.4 - блок-схема типичной системы, которая обеспечивает обмен данными с устройством.

Фиг.5 - блок-схема типичной системы, которая обеспечивает обмен данными с устройством.

Фиг.6 - блок-схема типичной системы, которая обеспечивает обмен данными с устройством.

Фиг.7 - блок-схема типичной системы, которая обеспечивает обмен данными с устройством.

Фиг.8 - блок-схема типичной системы, которая обеспечивает обмен данными с множеством устройств и ассоциированных поставщиков.

Фиг.9 - блок-схема типичной системы, которая обеспечивает взаимодействие с устройством.

Фиг.10 - блок-схема алгоритма типичной методики, которая обеспечивает предоставление единообразных услуг для устройства.

Фиг.11 - блок-схема алгоритма типичной методики, которая обеспечивает предоставление единообразных услуг для устройства.

Фиг.12 - блок-схема алгоритма типичной методики, которая обеспечивает предоставление единообразных услуг для устройства.

Фиг.13 - типичная сетевая среда, в которой могут быть использованы новые аспекты настоящего изобретения.

Фиг.14 - типичная операционная среда, в которой могут быть использованы новые аспекты настоящего изобретения.

Подробное описание изобретения

При использовании в данной заявке термины "компонент", "система" и т.п. означают связанную с вычислительной машиной объектную сущность: аппаратные средства, программное обеспечение (к примеру, в ходе исполнения) и/или микропрограммное обеспечение. Например, компонентом может быть процесс, запущенный на процессоре, процессор, объект, исполняемый файл, программа и/или вычислительная машина. В качестве иллюстрации, и приложение, запущенное на сервере, и сервер может быть компонентом. Один или более компонентов могут постоянно размещаться внутри процесса, и компонент может быть локализован на вычислительной машине и/или распределен между двумя и более вычислительными машинами.

Настоящее изобретение описано со ссылками на чертежи, на которых одинаковые номера ссылок используются для обозначения одинаковых элементов. В последующем описании, для целей пояснения, многие конкретные детали изложены, чтобы обеспечить полное понимание настоящего изобретения. Тем не менее, очевидно, что настоящее изобретение может быть применено на практике без этих конкретных деталей. В иных случаях, на модели блок-схемы показаны распространенные структуры и устройства, чтобы облегчить описание изобретения.

Основанные на искусственном интеллекте системы (к примеру, явно и/или неявно обучаемые классификаторы) могут быть использованы в связи с выполнением умозаключений, и/или вероятностных определений, и/или основанных на статистике определений, как описано в данном документе. При использовании в данном документе термин "умозаключение" обычно означает процесс рассуждения или обозначения состояний системы, окружения и/или пользователя из набора данных наблюдения, полученных посредством событий и/или данных. Умозаключение может быть использовано, чтобы определить конкретный контекст или действие, либо может генерировать распределение вероятностей, к примеру, по состояниям. Умозаключение может быть вероятностным, т.е. вычислением распределения вероятностей по интересующим состояниям на основе анализа данных и событий. Умозаключение также может означать методики, используемые для компоновки событий более высокого уровня из набора событий и/или данных. Такое умозаключение приводит к составлению новых событий или действий из набора наблюдаемых событий и/или сохраненных данных событий, независимо от того, коррелированы ли события в тесной временной близости и исходят ли события и данные из одного или нескольких источников событий и данных. Различные схемы и/или системы (к примеру, методы опорных векторов, нейронные сети, экспертные системы, сети байесовских представлений, нечеткая логика, ядра синтеза данных и т.д.) классификации могут быть использованы в связи с выполнением автоматического и/или возможного в качестве умозаключения вывода в связи с настоящим изобретением.

Теперь обращаясь к чертежам, фиг.1 иллюстрирует систему 100, которая обеспечивает взаимодействие с компонентом устройств, чтобы предоставлять единообразный обмен данными и/или управление. Система 100 может использовать компонент 102 интерфейса устройств, чтобы предоставлять уровень абстрагирования, который обменивается данными и управляет компонентом 104 устройств единообразным способом. Компонент 102 интерфейса устройств может выступать в качестве "посредника" между сервером 106 и, по меньшем мере, одним компонентом 104 устройств. Сервером может быть, например, сервер RFID, в котором, по меньшей мере, одна услуга (к примеру, публикация, подписка, запрос, опрос, управление, мониторинг, обновление и т.д.) и/или запрограммированный вычислительный процесс (к примеру, связанный с производством и/или поставками и т.д.) может быть предоставлен компоненту 104 устройств. Более того, компонент 102 интерфейса устройств может включать в себя компонент-приемник 108, который принимает данные от одного или более серверов, преобразование протоколов, которое относится к устройству, данные сервера RFID, данные устройства RFID и т.д. Следует принимать во внимание, что компонент 102 интерфейса устройств обеспечивает единообразный обмен данными с устройством и предоставление функциональных возможностей устройства независимо от изготовителя и стандарта протокола. Помимо этого, компонент-приемник 108 может быть внешним и/или внутренним относительно компонента 102 интерфейса устройств. Следует дополнительно принимать во внимание, что устройством может быть, но не в ограничительном смысле, устройство считывания RFID, устройство записи RFID, приемо-передающее устройство RFID, устройство RFID, устройство, датчик реального времени, датчик, устройство с расширением в виде Web-службы и система генерирования событий в реальном времени и т.д.

Изготовители устройств (к примеру, независимый поставщик оборудования (IHV), который специализируется в изготовлении аппаратных средств конкретного типа аппаратного устройства и ассоциированного программного драйвера) могут использовать компонент 102 интерфейса устройств, чтобы предоставлять обслуживание промежуточных программных продуктов на основе, по меньшей мере, частично множества устройств и ассоциированных наборов команд. Другими словами, одно устройство от изготовителя может использовать один набор команд, тогда как другое устройство может использовать, по существу, другой набор команд. Чтобы снизить остроту проблем, связанных с различными изготовителями и наборами команд, компонент 102 интерфейса устройств может задавать интерфейс для изготовителя устройства, который предоставляет обслуживание серверу 106 единообразным способом. Поэтому сервер 106 может использовать компонент 102 интерфейса устройств, чтобы взаимодействовать с компонентом 104 устройств с помощью единообразной методики, которая предоставляет гибкость для устройств. Более того, компонент 102 интерфейса устройств может предоставлять интерфейс и/или интерфейсы, чтобы делегировать управление обнаружением, конфигурированием, обменом данными и соединениями компонента 104 устройств. Следует принимать во внимание, что компонент 102 интерфейса устройств может взаимодействовать с множеством компонентов 104 устройств, при этом поставщики ассоциированы с каждым компонентом 104 устройств.

Например, различные наследуемые системы (к примеру, когда наследуемая система, в типичном случае, является устройством считывания и/или устройством, которое имеет охраняемые протоколы для обмена данными, которые устарели в свете новых стандартов) по определению используют устаревшие устройства и/или программное обеспечение. Эти наследуемые системы могут использовать компонент 102 интерфейса устройств, дающий возможность интерфейсу и/или интерфейсам обеспечивать нескольким наследуемым устройствам и поставщикам единообразное взаимодействие с сервером 106. Таким образом, компонент 104 наследуемых устройств и ассоциированный поставщик (не показан) могут быть использованы, чтобы предоставлять разнообразие услуг и/или процессов посредством компонента 102 интерфейса устройств и сервера 106.

В одном примере компонент 102 интерфейса устройств может быть использован, чтобы предоставлять единообразную методику взаимодействия между множеством компонентов 104 устройств и сервером 106. Компонентами 104 устройств могут быть, например, наследуемые системы, устройства автоматической идентификации, совместимые с EPC-Global устройства и т.д. Помимо этого, следует принимать во внимание, что каждый компонент 104 устройств может иметь ассоциированного поставщика (к примеру, совместимого с EPC-G поставщика, частного поставщика (поставщика, являющегося предметом собственности), наследуемого поставщика и т.д.). Таким образом, компонент 102 интерфейса устройств может предоставлять единообразное взаимодействие между несколькими поставщиками, использующими различные наборы команд для компонентов 104 устройств и сервера 106.

Компонент 102 интерфейса устройств может обеспечивать нормализацию между несколькими стандартами, представляющими множество компонентов 104 устройств, Web-службу и/или системы генерирования событий в реальном времени (не показаны). Таким образом, компонентами 104 устройств могут быть устройство RFID и/или сенсорное устройство. Более того, использование компонента 102 интерфейса устройств дает возможность новшествам в области аппаратных средств переходить на более высокий уровень. Компонент 102 интерфейса устройств может быть реализован поставщиком (не показан), которым может быть, например, независимый от процессора платформенный компоновочный блок. Поставщик может реализовать интерфейс и/или интерфейсы, заданные компонентом 102 интерфейса устройств. Посредством задания интерфейса для поставщика компонент 102 интерфейса устройств взаимодействует с компонентом 104 устройств посредством использования специфических для конкретного устройства команд. Таким образом, компонент 102 интерфейса устройств минимизирует специфические для конкретного устройства частности от сервера 106 RFID.

Фиг.2 иллюстрирует систему 200, которая дает общее представление новизны настоящего изобретения. Например, изготовителю устройств RFID необходим единообразный способ предоставления своих услуг уровню хоста, исполняющемуся на платформе операционной системы, поскольку каждое устройство поддерживает различный набор команд, протокол(ы) и/или поведение. Интерфейс поставщиков служб устройств (DSPI) - это уровень абстрагирования для платформы услуг RFID с целью единообразного обмена данными и управления устройствами RFID. Этот уровень предусматривает нормализацию между несколькими протоколами обмена данными, поддержку наследуемых устройств считывания и других устройств автоматической идентификации единообразным способом, а также предоставление возможности переноса ключевых новшеств в области аппаратных средств на более высокие уровни.

DSPI задает абстрактные классы (для реализации управления обнаружением, конфигурированием, обменом данными, устройствами и соединениями), которые изготовители устройств могут реализовывать, чтобы предоставлять услуги платформе услуг RFID в операционной системе единообразным способом. Поставщики могут функционировать в рамках хоста 202 услуг RFID в качестве управляемой объектной сущности и могут обмениваться данными с самим устройством 204 и/или устройствами 204 посредством, например, управляемого интерфейса прикладного программирования (API-интерфейса), неуправляемого кода, реализации модели компонентных объектов (COM) или посредством API-интерфейсов Win 32 на основе поддерживаемого механизма передачи, называемого машиной 206 узла.

В частности, прикладной домен 208 экземпляров процессов может содержать экземпляр 210 процесса, при этом прикладной домен 208 экземпляров процессов может взаимодействовать с, по меньшей мере, одним прикладным доменом 212 поставщиков устройств. Прикладной домен 212 поставщиков устройств может содержать реализацию 214 DSPI для устройства, при этом может быть множество устройств 216, ассоциированных с ней. Следует принимать во внимание, что может быть от 1 до N устройств, где N - это целое число, как показано на чертеже.

Поставщики служб устройств подпадают под, по меньшей мере, одну из следующих категорий: 1) чистая реализация управляемого кода, использующая один из стандартных протоколов (HTTP, TCP, SERIAL (к примеру, Samsys)); 2) реализация протокола управляемого кода, но вызывающая неуправляемый код (к примеру, USB-устройство считывания, посредник, подключаемый к процессу обработчика различных протоколов); 3) упаковщик управляемого кода для охраняемого протокола, реализованного в качестве драйвера устройства Windows (к примеру, чистых драйверов принтеров, таких как SATO).

Фиг.3 иллюстрирует систему 300, которая обеспечивает взаимодействие с устройством с целью обеспечения единообразных методик обмена данными и/или управления. Сервер 306 RFID может обмениваться данными с устройством 304 RFID посредством использования компонента 302 интерфейса поставщиков служб устройств (DSPI). Следует принимать во внимание, что сервер 306 RFID может обмениваться данными с датчиком (не показан), а также с любым устройством 304 RFID. Поставщик устройств RFID (не показан) может использовать компонент 302 DSPI, который может задавать, по меньшей мере, один компонент DSPI, который обеспечивает взаимодействие с сервером 306 RFID. Интерфейсы, заданные компонентом 302 DSPI, могут быть реализованы IHV-изготовителями для преобразования протоколов, чтобы предоставить функциональные возможности устройств компоненту 302 DSPI. Следует принимать во внимание, что компонент 302 DSPI предоставляет единообразное взаимодействие с сервером RFID и множеством устройств 304 RFID. Следует принимать во внимание, что устройством 304 RFID может быть, но не в ограничительном смысле, устройство считывания RFID, устройство записи RFID, приемо-передающее устройство RFID и т.д.

Компонент 302 DSPI может дополнительно включать в себя компонент 308 ответа на запросы, который обеспечивает обработку сообщений с помощью устройства 304 RFID. Компонент 308 ответа на запросы задает обмен сообщениями между сервером 306 RFID и устройством(ами) 304 RFID. Обмен сообщениями может соответствовать, например, парам сообщений (к примеру, когда первое сообщение может инициировать второе сообщение с помощью специфических для конкретного изготовителя команд), запрос, ответ, уведомление, сообщение, свойство, запрос, подтверждение, флаг и т.д. Следует принимать во внимание, что компонент 308 ответа на запросы задает, по меньшей мере, один обмен сообщениями, который является асинхронным и/или синхронным. Таким образом, обмен сообщениями от компонента 308 ответа на запросы, который является асинхронным, не инициирует немедленный ответ из запроса.

Например, наследуемое устройство и/или поставщик, являющийся предметом собственности, может реализовать компонент 302 DSPI, чтобы использовать единообразные технологии обмена данными. Следует принимать во внимание, что поставщиком, который реализует компонент DSPI, может быть, например, независимый от процессора платформенный компоновочный блок. Компонент 302 DSPI задает интерфейс, из которого компоновочный блок может реализовывать относительно устройства 304 RFID. Другими словами, компонент 302 DSPI использует единообразный набор команд, который могут использовать множество устройств и/или множество поставщиков, чтобы предоставлять услуги IHV-изготовителей серверу 306 RFID.

Более того, компонент 302 DSPI может включать в себя компонент 310 интерфейса устройств. Компонент 310 интерфейса устройств задает уровень сообщений и/или транспортный уровень. Уровень сообщений и/или транспортный уровень может быть реализован посредством языка разметки, например, но не в ограничительном смысле, расширяемым языком разметки (XML), языком гипертекстовой разметки (HTML), стандартным обобщенным языком разметки (SGML) и расширяемым языком гипертекстовой разметки (XHTML). Следует принимать во внимание, что транспортный уровень может быть независимым от уровня сообщений. Помимо этого, компонент 310 интерфейса сообщений делегирует управление сообщениями и соединениями. Чтобы постоянно поддерживать обмен данными и/или взаимодействие с сервером 306 RFID, компонент 310 интерфейса устройств может задать уровень сообщений и транспортный уровень. Совместно с компонентом 308 ответа на запросы компонент 310 интерфейса устройств управляет обменом сообщениями с устройством 304 RFID и сервером 306 RFID с помощью пар сообщений (к примеру, заданных компонентом 308 ответа на запросы) и уровнем сообщений/транспортным уровнем (к примеру, заданным компонентом 310 интерфейса устройств). Более того, управление соединением каждого устройства осуществляется (к примеру, осуществляется контроль, установление, определение, разрыв, мониторинг и т.д.) компонентом 310 интерфейса устройств посредством уровня сообщений/транспортного уровня.

Чтобы обеспечить распознавание устройства 304 RFID, компонент 302 DSPI может включать в себя компонент 312 интерфейса обнаружения устройств. Другими словами, компонент 312 интерфейса обнаружения устройств задает механизм(ы) обнаружения устройств. К этим механизмам распознавания может относиться, но не в ограничительном смысле, запуск обнаружения, остановка обнаружения, данные запросов соединений (к примеру, идентификатор устройства, имя поставщика и т.п.) и т.д. Следует принимать во внимание, что компонент 312 интерфейса обнаружения устройств эффективно создает экземпляр одного компонента DSPI на каждого поставщика, при этом в отношении устройств, ассоциированных с этим поставщиком, выполняется обработка (к примеру, контроль, управление, мониторинг и т.д.). Более того, следует принимать во внимание, что поставщик может реализовывать компонент 312 интерфейса обнаружения устройств.

Компонент 302 DSPI может дополнительно включать в себя компонент 314 контейнера SPI, который загружает поставщиков (не показаны) в сервер 306 RFID. Посредством загрузки поставщика в сервер 306 RFID конфигурирование и регистрация поставщика обрабатывается компонентом 314 контейнера SPI. Компонент 314 контейнера SPI предоставляет информацию о версии и идентификационную информацию, относящуюся к поставщикам. Помимо этого, компонент 314 контейнера SPI - это шлюз верхнего уровня для реализации поставщика. Поставщиками SPI могут быть, например, независимые от процессора платформенные компоновочные блоки. Следует принимать во внимание, что поставщик может использовать драйверы попеременно.

Например, поставщиками могут быть независимые от процессора программные компоновочные блоки, которые дают возможность создания и/или использования приложений, процессов и Web-сайтов языка разметки в качестве служб, которые могут совместно использовать и/или сочетать и