СПОСОБ ДЛЯ ПЕРЕДАЧИ ДАННЫХ ОТ ДАТЧИКА ПО КОМПЬЮТЕРНОЙ СЕТИ, СООТВЕТСТВУЮЩЕЕ УСТРОЙСТВО И КОМПЬЮТЕРНЫЙ ПРОГРАММНЫЙ ПРОДУКТ ДЛЯ ЭТОГО
METHOD FOR DATA TRANSMISSION FROM SENSOR OVER COMPUTER NETWORK, CORRESPONDING DEVICE AND COMPUTER PROGRAM PRODUCT FOR THIS

Изобретение относится к способу для передачи данных датчика по компьютерной сети в соответствии с преамбулой п.1 формулы изобретения, устройству в соответствии с преамбулой п.9 формулы изобретения и компьютерному программному продукту в соответствии с преамбулой п.10 формулы изобретения.
Датчик является устройством, которое измеряет физическую величину и преобразует ее в сигнал, который может быть считан блоком наблюдения или измерительным устройством. Когда имеется в виду его способность обнаруживать параметр в одной форме и сообщать его в другой форме (обычно в виде электрического или цифрового сигнала), датчик в данной области техники иногда называется "преобразователем".
Индустрия и разработчики движутся в сторону сетевых, предпочтительно беспроводных, систем для подключения датчиков для увеличения степени автоматизации и для снижения затрат в течение срока службы. Более того, военные движутся в сторону таких сетевых датчиков для улучшения обслуживания по техническому состоянию. Оперативная совместимость датчика также играет важную роль в таких приложениях, как удаленный мониторинг, осведомленность ситуации, или географических информационных системах, известных как сенсорные сети. Под сенсорной сетью понимается аморфная архитектура распределенных в пространстве сенсорных платформ, так называемых модулей, которые соединяются беспроводным способом с каждым из остальных для облегчения наблюдения и управления средой.
Широко распространенные стандарты для взаимодействия датчиков определены в стандарте IEEE 1451.2. Интеллектуальные датчики, т.е. устройства, которые включают в себя возможности по осуществлению связи и обработке сигналов в дополнение к фактическому преобразователю, обычно основываются на этих стандартах. Известны улучшенные реализации стандартов IEEE 1451, которые поддерживают передачу данных датчика в соответствии со стандартами и рекомендациями Консорциума всемирной паутины (W3C), такими как HTTP или SOAP. Одна такая реализация была опубликована Национальным институтом стандартов и технологии США на встрече рабочей группы OMG-Robotics в декабре 2006 года. Подробности можно узнать в обзоре по адресу http://robotics.omg.org/docs/robotics2006-12-Washington.pdf, страницы 72-94.
Недостатком известного решения является неспособность к передаче данных датчика или приложения в виде одного сетевого сообщения. Это создает трудности при встраивании передачи данных датчиков в архитектуры сложного решения с множеством взаимодействующих приложений. Следовательно, цель изобретения заключается в предложении улучшенного подхода к передаче данных датчика с использованием современных сетевых протоколов.
Эта цель достигается с помощью способа в соответствии с изложением п.1 формулы изобретения, устройства в соответствии с изложением п.9 формулы изобретения и компьютерного программного продукта в соответствии с изложением п.10 формулы изобретения.
Главная идея изобретения состоит в передаче данных датчика посредством заголовка сетевого сообщения. Под заголовком подразумеваются дополнительные данные, помещенные в начале сетевого сообщения. Заголовки обычно используются для хранения и передачи информации для обработки сообщения.
С помощью изложенного подхода данные датчика могут быть переданы наряду с данными приложения, содержащимися в теле сообщения. Под телом сообщения, иногда называемого в данной области техники "полезной информацией", подразумеваются данные, следующие за заголовком сообщения.
Дополнительные развития изобретения могут быть выведены из зависимых пунктов формулы изобретения и следующего описания.
Ниже изобретение будет объяснено дополнительно со ссылкой на прилагаемые чертежи.
Для передачи данных датчика по компьютерной сети в соответствии с вариантом осуществления изобретения сначала от датчика принимается сигнал, представляющий физическую величину. Сигнал затем преобразовывается в сообщение путем кодирования сигнала в заголовок сообщения и объединения этого заголовка с заданным или сгенерированным телом сообщения. И, наконец, получившееся сообщение передается по компьютерной сети.
Фиг.1 схематически показывает способ передачи данных датчика по компьютерной сети в соответствии с вариантом осуществления изобретения.
Фиг.2 показывает пример HTTP запроса, передаваемого программой программного обеспечения в соответствии с вариантом осуществления изобретения.
Фиг.3 показывает пример SIP INVITE запроса, передаваемого в соответствии с вариантом осуществления изобретения.
Фиг.4 показывает пример SOAP сообщения, передаваемого в соответствии с вариантом осуществления изобретения.
Далее, в качестве примера освещен способ в соответствии с изобретением со ссылкой на Фиг.1.
В иллюстративных целях принято, что вариант осуществления данного примера принимает форму программы программного обеспечения. Следует понимать, что альтернативный вариант осуществления может принимать форму аппаратного устройства или сочетания программного обеспечения и аппаратных компонентов.
На первом этапе 101 программа программного обеспечения принимает сигнал, представляющий расстояние между ближайшим датчиком и целевым объектом. В данном примере сигнал принимает форму электрического напряжения. Напряжение может быть определено только в дискретные моменты времени; в этом случае сигналы называются временными последовательностями. В качестве альтернативы, напряжение может быть непрерывным во времени сигналом. В дополнение, сигнал может быть аналоговым или цифровым, что зависит, главным образом, от типа примененного датчика.
На этапе 102 программа кодирует сигнал этапа 101 в первый заголовок сообщения. В его закодированной форме первый заголовок сообщения обычно содержит абсолютное значение физической величины этапа 101. Это абсолютное значение может быть дополнено такой информацией, как единица измерения, точность, предел ошибки, уровень достоверности, разрешающая способность или имеющийся полный диапазон измерений. Такая информация может быть использована для указания инженерных отклонений, то есть допустимого ограничения изменений в измерении физической величины, для выражения числовой точности номинального значения. Например, сигнал, получаемый от удаленного датчика, может быть закодирован в форме "2,743+/-0,001 метр", допускающей симметричное отклонение.
Предпочтительно, кодирование на этапе 102 заключается в текстовом представлении для использования в результирующем текстовом сообщении. В зависимости от основного сетевого протокола такое текстовое сообщение может принимать вид HTTP запроса или ответа (протокол передачи гипертекста), SIP запроса или ответа (SIP - протокол инициирования сессии), SOAP сообщения, или сообщения в соответствии с архитектурным стилем, известным как Representational State Transfer.
На этапе 103 для того чтобы позволить получателю идентифицировать исходный датчик, вариант осуществления на Фиг.1 кодирует идентификацию датчика во второй заголовок сообщения. Для гарантирования однозначной идентификации датчика получателем без значительного централизованного координирования идентификация может принимать форму универсально уникального идентификатора (UUID). UUID является стандартом идентификатора, используемым при создании программного обеспечения, стандартизованным Сообществом открытого программного обеспечения как часть распределенной вычислительной среды. Преимущество, получаемое при использовании UUID в качестве идентификации датчика, состоит в возможности для получателя объединять принятые данные датчика в единую базу данных без необходимости разрешать конфликты имен. UUID задокументирован в ITU-T Rec.X.667|ISO/IEC 9834-8:2005. IETF (рабочая группа инженеров Интернет) опубликовала Proposed Standard RFC 4122, который является технически эквивалентным ITU-T Rec.X.667|ISO/IEC 9834-8.
На этапе 104 для указания получателю типа доставляемой датчиком информации вариант осуществления на Фиг.1 кодирует идентификацию класса в третий заголовок сообщения. Эта идентификация класса содержит описание физической величины на этапе 101, например, температуру, скорость, давление или напряжение. Идентификация класса дополнительно содержит условия работы датчика, например, текущее состояние в случае ближайшего датчика, что требует старта с известного расстояния и сбора инкрементальных изменений при измерении. Наконец, идентификация класса показывает формат данных сообщения, в особенности заголовков сообщений на этапах со 101 по 103. Вместо того чтобы включать эти данные непосредственно в третий заголовок сообщения, альтернативный вариант осуществления может поддерживать только числовую или символьную идентификацию класса и требовать от получателя их разрешения путем обращения к публичной директории или центральной базе данных классов датчиков. Стандарт IEEE 1451 обеспечивает пример такой директории.
На этапе 105 для обеспечения оператора дополнительной информацией о содержащихся данных сообщения или датчика вариант осуществления на Фиг.1 кодирует комментарий в четвертом заголовке сообщения. Комментарий обычно передается в человекочитаемой форме и может содержать смысловую информацию физической величины на этапе 101. Примерным комментарием является "Расстояние до портрета Моны Лизы" для ближайшего датчика, расположенного в музее искусств.
Следует понимать, что информация, обрабатываемая на этапах со 102 по 105 может быть, в качестве альтернативы, помещена в другой набор заголовков сообщений или сжата в единственный заголовок сообщения без отклонения от сущности изобретения. В дополнительном этапе (не показан) некоторые или все заголовки сообщений могут быть зашифрованы для передачи. Протокол TLS и его предшественник, протокол SSL, являются примерами криптографических протоколов, широко используемых для шифрования HTTP запросов и ответов.
На этапе 106 программа объединяет заголовки сообщения этапов со 102 по 105 с телом сообщения, содержащим данные приложения для передачи с данными датчика, получая полное законченное сообщение в соответствии с нижележащим сетевым протоколом. Порядок заголовков сообщения, предложенный нумерацией на этапах со 102 по 105, ни в коей мере не привязывается к конечной структуре сообщения. Порядок заголовков может быть произвольно изменен без нарушения сущности изобретения.
Наконец, на этапе 107 программа передает получившееся сообщение этапа 106 по компьютерной сети. При передаче используются протоколы TCP, UDP, SCTP или любой другой транспортный протокол, подходящий для используемой сети.
Фиг.2 показывает пример HTTP запроса 200, передаваемого программой программного обеспечения в соответствии с вариантом осуществления изобретения. В этом случае заголовки сообщения этапов со 102 по 105 в соответствии с Фиг.1 представлены с использованием HTTP заголовков и элементов протокола для заголовка сообщения. Соответствующие спецификации определяют множество HTTP заголовков самих по себе и также обеспечивают расширение посредством использования новых элементов протокола для имен HTTP полей. Вариант осуществления использует имя поля "X-Sensor-Tag". Получившийся заголовок 202 информации датчика объединяется со стандартными HTTP заголовками 201 и добавляется перед упомянутыми данными приложения.
Фиг.3 показывает пример INVITE запроса 300 в соответствии с SIP протоколом, передаваемого в соответствии с дополнительным вариантом осуществления изобретения. SIP является управляющим (сигнальным) протоколом уровня приложения для создания, изменения и завершения сессий с одним или более участниками. Он может быть использован для создания двусторонних, многосторонних или многоадресных сессий, которые включают в себя вызовы Интернет-телефонии, распространение мультимедиа, мультимедийных конференций. IETF определяет SIP в Proposed Standard RFC 3261. Здесь заголовок 202 информации датчика объединяется со стандартными SIP заголовками 301 и описанием 303 SIP сессии. Описание 303 сессии удовлетворяет протоколу SDP, который определяется IETF в Proposed Standard RFC 2327. Запрос 300 на передачу приглашает получателя для инициирования аудиосессии, описанной в описании 303 сессии.
Фиг.4 показывает пример SOAP сообщения 400, передаваемого в соответствии с еще одним вариантом осуществления изобретения. Здесь SOAP заголовок 402, содержащий собранную датчиком информацию, объединяется с SOAP телом 403, содержащим элемент тела с локальным именем "GetStockPrice". Несмотря на то, что SOAP заголовок 402 может быть использован как для SOAP посредников, так и конечного получателя сообщения, тело 403 содержит актуальную полезную нагрузку сообщения. И SOAP заголовок 402, и SOAP тело 403 содержатся в SOAP конверте 401, являющемся самым внешним элементом информации SOAP сообщения 400.
Примерное приложение варианта осуществления изобретения является аудио, видео и мультимедиа справочной системой для мест посещения посетителями, такими как выставки или музейные коллекции. Такой справочник обеспечивает комментирование к отображаемым выставкам, обычно через ручное устройство, такое как персональный цифровой помощник (PDA) или интеллектуальный телефон. Современные PDA обычно оборудованы программным обеспечением веб-броузера, а также беспроводной технологией малого радиуса действия, такой как Bluetooth или радиочастотной идентификацией (RFID). Предположим, что датчик присутствия смонтирован около экспоната, что датчик может передавать свои данные по беспроводной сети с использованием способа в соответствии с изобретением. По мере приближения экспоната и связанного с ним датчика PDA может использовать принятые данные датчика для генерирования HTTP запроса 200 веб-серверу, обеспеченному сайтом музея или выставки. Возвращенный HTTP ответ (не показан) может быть затем использован для отображения привязанной к месту информации для обучения пользователя на выставке. Альтернативные варианты осуществления изобретения могут использовать SIP запрос или SOAP сообщение вместо HTTP запроса.