ВИРТУАЛЬНАЯ ОПЦИОНАЛЬНАЯ ПЛАТА ДЛЯ ИСПОЛЬЗОВАНИЯ В ВЫПОЛНЕНИИ ИЗМЕРИТЕЛЬНЫХ ОПЕРАЦИЙ
VIRTUAL OPTIONAL BOARD TO BE USED FOR PERFORMANCE OF MEASUREMENT OPERATIONS

Область техники
Настоящее изобретение относится к системам связи, и более конкретно, к системам, способам и устройствам для увеличения функциональности измерительного устройства.
Уровень техники
Измерительное устройство может осуществлять различные измерительные операции для различных абонентов и на различных рынках. В связи с этим, измерительное устройство может нуждаться в обеспечении различных свойств в зависимости от абонента или рынка. Для того чтобы каждое измерительное устройство было способно обеспечить свойства для данного абонента или рынка, различные свойства могут быть добавлены в память для хранения программ измерительного устройства. Как только объем памяти для хранения программ заполняется, объем памяти может быть увеличен и/или функциональность может быть ухудшена для добавления дополнительных и/или отличных свойств измерительного устройства. После того как все измерительные свойства для различных абонентов и рынков были сохранены в память для хранения программ, отличные свойства могут быть активированы и/или дезактивированы.
Для использования на данном рынке может быть активирована только часть всех возможностей измерительного устройства. Например, измерительное устройство может быть сконфигурировано для поддержки различных протоколов (например, протоколов связи), которые могут быть использованы на различных рынках и/или для различных абонентов. Несмотря на то, что измерительное устройство может поддерживать различные протоколы, измерительное устройство может быть сконфигурировано для того, чтобы активировать только протоколы, используемые для данного рынка и/или данной измерительной прикладной программой. Это может привести к бесполезно используемому объему памяти и/или потерянным возможностям.
Для конфигурирования измерительного устройства для конкретных измерительных операций физические опциональные платы могут быть использованы для добавления различных свойств измерительным устройствам, в которых могут быть установлены физическая(ие) опциональная(ые) плата(ы). Например, физическая опциональная плата может быть физическим модулем, который подключают к системной шине измерительного устройства с тем, чтобы добавить отличные протоколы связи или другие функциональные возможности измерительному устройству. Наличие физической опциональной платы в виде устанавливаемой в измерительный прибор отдельной платы может быть стандартным для конфигурации измерительного устройства, однако такое решение является дорогим для рынка. Следовательно, существует необходимость в конфигурировании измерительного устройства для конкретных измерительных операций удобным и экономичным способом.
Сущность изобретения
В настоящем документе раскрыты различные технологии, направленные на увеличение функциональности измерительного устройства. Измерительное устройство может содержать микроконтроллер, содержащий блоки флэш-памяти для хранения виртуальной опциональной платы в измерительном устройстве. Основной программный код может быть сохранен в виде встроенной программы по меньшей мере в одном блоке флэш-памяти в микроконтроллере измерительного устройства. Основной программный код может быть сконфигурирован для обеспечения базового уровня функциональности измерительного прибора. Исходя из выбора необходимой дополнительной функциональности виртуальная опциональная плата может быть сохранена в виде встроенной программы в другом блоке флэш-памяти в микроконтроллере измерительного устройства. Виртуальная опциональная плата может содержать встроенные программы или другой программный код, который виртуально реализует функцию опциональной платы. Виртуальная опциональная плата может быть сохранена без изменения основного программного кода измерительного устройства. При сохранении основного программного кода и виртуальной опциональной платы в измерительном устройстве, измерительное устройство может выполнять измерительные операции в соответствии с основным программным кодом и виртуальной опциональной платой. Измерительные операции могут быть выполнены при помощи доступа непосредственно к основному программному коду из одного блока флэш-памяти в микроконтроллере и доступа к виртуальной опциональной плате из другого блока флэш-памяти через интерфейс прикладных программ.
Согласно другому варианту осуществления в настоящем документе раскрыто измерительное устройство, содержащее микроконтроллер и блоки флэш-памяти. Микроконтроллер может быть сконфигурирован для выполнения измерительных операций измерительным устройством в соответствии с основным программным кодом и виртуальной опциональной платой. Первый блок флэш-памяти может быть сохранен в микроконтроллере, а основной программный код может быть сохранен в нем в виде встроенной программы. Основной программный код может быть сконфигурирован для обеспечения базового уровня функциональности измерительного прибора. Второй блок флэш-памяти может также быть сохранен в микроконтроллере. Виртуальная опциональная плата может быть сохранена в виде встроенной программы во втором блоке флэш-памяти. Виртуальная опциональная плата может виртуально реализовать функцию опциональной платы и может быть сохранена без изменения основного программного кода измерительного устройства. Микроконтроллер может быть дополнительно сконфигурирован для доступа к виртуальной опциональной плате через интерфейс прикладных программ. Другие признаки и аспекты раскрытых в настоящем документе способов, систем и устройств будут более понятны из последующего подробного описания и сопутствующих фигур.
Краткое описание чертежей
Вышеизложенное краткое описание, а также последующее подобное описание, будет более понятно при рассмотрении совместно с приложенными фигурами. В целях иллюстрации описанных в настоящем документе способа и устройства на фигурах представлены примерные варианты осуществления; однако изобретение не ограничивается изложенными конкретными способами и средствами. На фигурах: на фиг.1 представлена схема примерной измерительной системы связи, использующей беспроводную сеть;
на фиг.2 представлен расширенный вид схемы согласно фиг.1 и более подробно иллюстрирует примерную измерительную систему связи;
на фиг.3А представлена функциональная схема, иллюстрирующая примерный контроллер шлюза (также называемый «коллектором») измерительной системы связи согласно фиг.1;
на фиг.3В представлена функциональная схема, иллюстрирующая примерное измерительное устройство измерительной системы связи согласно фиг.1;
на фиг.3С представлен один вариант осуществления формата исходящего пакета данных измерительной системы связи, представленной на фиг.1, 2, 3А и 3В, а на фиг.
3D представлен один вариант осуществления формата входящего пакета данных;
на фиг.4 представлена блок-схема, иллюстрирующая процесс установки виртуальной опциональной платы в измерительное устройство;
на фиг.5 представлена блок-схема, иллюстрирующая другой процесс установки виртуальной опциональной платы в измерительное устройство;
на фиг.6 представлена функциональная схема, иллюстрирующая взаимодействие между основной программой и виртуальной опциональной платой; и
на фиг.7 представлена схема, иллюстрирующая примерный процесс установки виртуальной опциональной платы.
Подробное описание изобретения
Раскрытые в настоящем описании системы, способы и устройства позволяют измерительным устройствам в энергетической системе общего пользования обладать дополнительной функциональностью для осуществления измерительных операций. Например, измерительное устройство может содержать микроконтроллер, содержащий блоки флэш-памяти для встраивания виртуальной опциональной платы в измерительное устройство. Основной программный код может быть сохранен в виде встроенной программы по меньшей мере в одном блоке флэш-памяти в микроконтроллере измерительного устройства. Основной программный код может быть сконфигурирован для обеспечения базового уровня функциональности измерительного прибора. Исходя из выбора необходимой дополнительной функциональности виртуальная опциональная плата может быть сохранена в виде встроенной программы в другом блоке флэш-памяти в микроконтроллере измерительного устройства. Виртуальная опциональная плата может виртуально обеспечивать функцию опциональной платы. Виртуальная опциональная плата может быть сохранена без изменения основного программного кода измерительного устройства. При сохранении основного программного кода и виртуальной опциональной платы в измерительном устройстве, измерительное устройство может выполнять измерительные операции в соответствии с основным программным кодом и виртуальной опциональной платой. Измерительные операции могут быть выполнены при помощи доступа непосредственно к основному программному коду из одного блока флэш-памяти в микроконтроллере и доступа к виртуальной опциональной плате из другого блока флэш-памяти через интерфейс прикладных программ.
Согласно другому варианту осуществления в настоящем документе раскрыто измерительное устройство, содержащее микроконтроллер и блоки флэш-памяти. Микроконтроллер может быть сконфигурирован для выполнения измерительных операций измерительным устройством в соответствии с основным программным кодом и виртуальной опциональной платой. Первый блок флэш-памяти может быть сохранен в микроконтроллере, а основной программный код может быть сохранен в нем в виде встроенной программы. Основной программный код может быть сконфигурирован для обеспечения базового уровня функциональности измерительного прибора. Второй блок флэш-памяти может также быть сохранен в микроконтроллере. Виртуальная опциональная плата может быть сохранена в виде встроенной программы во втором блоке флэш-памяти. Виртуальная опциональная плата может виртуально обеспечивать функцию опциональной платы и может быть сохранена без изменения основного программного кода измерительного устройства. Микроконтроллер может быть дополнительно сконфигурирован для доступа к виртуальной опциональной плате через интерфейс прикладных программ. Ниже представлены примерные варианты осуществления этих систем, способов и устройств, однако следует понимать, что изобретение не ограничивается этими конкретными вариантами осуществления. Несмотря на то что конкретные детали были представлены для иллюстрации описанных ниже вариантов осуществления, следует понимать, что изобретение может быть практически осуществлено без этих конкретных деталей. В последующем описании могут быть использованы аббревиатуры и другие термины, однако они не предназначены для ограничения объема изобретения, раскрытого в приложенной формуле изобретения.
Один пример измерительной системы 110, в которой могут быть использованы раскрытые в настоящем документе системы, способы и устройства, представлен на фиг.1, 2 и 3A-D. Раскрытое в настоящем документе описание в отношении этих фигур выполнено лишь в иллюстративных целях и не предназначено каким-либо образом ограничивать объем потенциальных вариантов осуществления. Система 110 содержит множество измерительных устройств или «измерительных приборов» 114, которые выполнены с возможностью считывания и записи потребления или использования услуги или продукта, такого как, например, электричество, вода или газ. Измерительные приборы 114 могут быть расположены на территории абонента, такой как, например, жилой дом или коммерческое строение. Измерительные приборы 114 содержат цепи для измерения потребления услуги или продукта, потребляемого в пунктах их расположения, и для генерирования отражающих потребление данных, а также других связанных с ним данных. Измерительные приборы 114 могут также содержать цепи для беспроводной передачи данных, генерируемых измерительным прибором к удаленному пункту. Измерительные приборы 114 могут также содержать цепи для беспроводного получения данных, команд или инструкций. Измерительные приборы, выполненные с возможностью приема и передачи данных, известны под названием «двусторонние» или «двухканальные» измерительные приборы (или узлы), тогда как измерительные приборы, способные только передавать данные, известны под названием «работающие только на передачу» или «одноканальные» измерительные приборы. В двусторонних измерительных приборах цепи для передачи и приема могут содержать приемопередающее устройство. Согласно иллюстративному варианту осуществления измерительные приборы 114 могут быть, например, электрическими счетчиками, изготавливаемыми Elster Solutions, LLC и продаваемыми под торговым наименованием REX.
Система 110 дополнительно содержит коллекторы 116. Согласно одному варианту осуществления коллекторы 116 также являются измерительными приборами, выполненными с возможностью определения и записи потребления или использования услуги или продукта, такого как, например, электричество, вода или газ. Кроме того, коллекторы 116 выполнены с возможностью посылки данных к измерительным приборам 114 и получения данных от них. Таким образом, подобно измерительным приборам 114, коллекторы 116 могут содержать цепи для измерения потребления услуги или продукта и для генерирования отражающих потребление данных, а также цепи для передачи и приема данных. Согласно одному варианту осуществления коллектор 116 и измерительные приборы 114 связываются друг с другом и между собой с использованием любой из нескольких беспроводных технологий, таких как, например, передача широкополосных сигналов по методу частотных скачков (FHSS) или передача широкополосных сигналов по методу прямой последовательности (DSSS). Коллекторы 116 также иногда называют «контроллерами ».
Коллектор 116 и измерительные приборы 114, с которыми он связывается, образуют подсеть или локальную вычислительную сеть (ЛВС) 120 системы 110. Согласно одному варианту осуществления каждая подсеть или ЛВС может образовывать управляемую, беспроводную ячеистую сеть, причем коллектор 116 (контроллер) этой ЛВС осуществляет эффективное управление ячеистой сетью. Ниже будут описаны дополнительные подробности инициализации, образования и поддержки такой ЛВС. Как используется в настоящем документе, коллектор 116 и измерительные приборы 114, с которыми он связывается, могут называться «узлами» подсети/ЛВС 120. В каждой подсети/ЛВС 120, каждый измерительный прибор передает данные, относящиеся к потреблению продукта, измеряемому в пункте расположения измерительного прибора. Коллектор 116 принимает данные, переданные каждым измерительным прибором 114, эффективно «собирая» их, и затем периодически передает данные со всех измерительных приборов в подсети/ЛВС 120 на сервер 206 сбора данных. Сервер 206 сбора данных сохраняет данные, например, для анализа и подготовки счетов. Сервер 206 сбора данных может являться специально запрограммированной универсальной компьютерной системой и может связываться с коллекторами 116 через сеть 112. Сеть 112 может содержать любую форму сети, включая беспроводную сеть или проводную сеть, такую как локальная вычислительная сеть (ЛВС), региональная вычислительная сеть (РВС), сеть Интернет, внутренняя сеть, телефонная сеть, такая как телефонная сеть общего пользования (PSTN), радио сеть с передачей широкополосных сигналов по методу частотных скачков (FHSS), ячеистая сеть, сеть Wi-Fi (802.11), сеть Wi-Max (802.16), наземная сеть связи (POTS), сеть TCP/IP, беспроводная РВС, сеть GPRS, сеть CDMA, волоконно-оптическая сеть связи или любое сочетание приведенного выше.
Обратимся теперь к фиг.2, на которой представлены дополнительные детали измерительной системы связи 110. Обычно система будет эксплуатироваться коммунальным предприятием или компанией, предоставляющей услуги в области информационных технологий коммунальному предприятию. На фиг.2 некоторые или все компоненты, расположенные в выполненном пунктирной линии прямоугольнике 200, могут относиться к «центру управления», «главному узлу» коммунальной компании или т.п. Как представлено, центр управления 200 может содержать сервер 202 управления сетью, систему 204 управления сетью (СУП) и сервер 206 сбора данных, которые совместно управляют одной или нескольким подсетями/ЛВС 120 и их составными узлами. СУП 204 отслеживает изменения в состоянии сети, такие как регистрация новых узлов в системе 110 или исключение узлов из нее, изменение маршрутов связи узлов и т.п. Эту информацию собирают для каждой подсети/ЛВС 120, а также принимают и направляют на сервер 202 управления сетью и сервер 206 сбора данных.
Каждому измерительному прибору 114 и коллектору 116 присвоен идентификатор (идентификатор ЛВС), который уникально идентифицирует этот измерительный прибор или коллектор в его подсети/ЛВС 120. Согласно этому варианту осуществления связь между узлами (т.е. коллекторами и измерительными приборами) и системой 110 связи осуществляют с использованием идентификатора ЛВС. Однако, для операторов коммунального предприятия предпочтительно опрашивать и связываться с узлами с использованием их собственных идентификаторов. Для этого файл стыковки 208 может быть использован для сопоставления идентификатора коммунального предприятия для узла (например, серийного номера коммунального предприятия) с серийным номером изготовителя (т.е. серийным номером, присвоенным изготовителем измерительного прибора) и идентификатором ЛВС для каждого узла в подсети/ЛВС 120. Таким образом, коммунальное предприятие может обращаться к измерительным приборам и коллекторам при помощи идентификатора коммунального предприятия, а система может использовать идентификатор ЛВС в целях маркировки конкретных измерительных приборов во время передачи данных в системе.
База данных 210 конфигурации устройства хранит информацию о конфигурации в отношении узлов. Например, в измерительной системе 110 связи база данных конфигурации устройства может содержать данные в отношении времени использования (ВИ) точек переключения и т.п., для измерительных приборов 114 и коллекторов 116, поддерживающих связь с системой 110. База данных 212 требований по сбору данных содержит информацию в отношении данных, которые должны быть собраны в расчете на каждый узел. Например, коммунальное предприятие может установить данные измерений, такие как профиль нагрузки, электропотребление, ВИ и т.п., которые необходимо собрать с конкретного(ых) измерительного(ых) прибора(ов) 114а. Отчеты 214, содержащие информацию о конфигурации сети, могут быть сгенерированы автоматически или в соответствии с запросом коммунального предприятия.
Система 204 управления сетью (СУП) поддерживает базу данных, описывающую текущее состояние глобальной системы стационарной сети (текущее состояние сети 220), и базу данных, описывающую историческое состояние системы (историческое состояние сети 222). Текущее состояние сети 220 содержит данные в отношении текущих присваиваний измерительных приборов коллектору и т.п. для каждой подсети/ЛВС 120. Историческое состояние сети 222 является базой данных, из которой может быть восстановлено состояние сети в конкретной точке в прошлом. СУП 204 отвечает, среди прочего, за обеспечение отчетов 214 о состоянии сети. Доступ к СУП 204 может быть получен через интерфейс прикладных программ (ИПП) 220, на который воздействуют интерфейс 216 пользователя и система информирования абонентов (СИА) 218. Другие внешние интерфейсы могут также быть выполнены. Кроме того, требования по сбору данных, хранимые в базе данных 212, могут быть установлены через интерфейс 216 пользователя или СИА 218. Сервер 206 сбора данных собирает данные из узлов (например, коллекторов 116) и сохраняет данные в базе данных 224. Данные содержат информацию об измерениях, такую как потребление энергии, и могут быть использованы коммунальной организацией в целях составления счетов и т.п.
Сервер 202 управления сетью, система 204 управления сетью и сервер 206 сбора данных связываются через сеть 112 с узлами в каждой подсети/ЛВС 120. На фиг.3А представлена функциональная схема, иллюстрирующая дополнительные детали одного варианта осуществления коллектора 116. Хотя конкретные компоненты обозначены и рассмотрены в отношении фиг.3А, следует понимать, что такое обозначение и рассмотрение не являются ограничивающими. Фактически, различные другие компоненты, типично присутствующие в электронном измерительном приборе, могут являться частью коллектора 116, но они не представлены на фиг.3А в целях ясности и краткости. Кроме того, другие компоненты могут быть использованы для обеспечения функционирования коллектора 116. Изображенные компоненты и описанная функциональность коллектора 116 представлены в виде примеров и не должны рассматриваться как исключение других компонентов или другой функциональности.
Как представлено на фиг.3А, коллектор 116 может содержать измерительную цепь 304, которая выполняет измерение потребления услуги или продукта, и процессор 305, управляющий всей работой измерительных функций коллектора 116. Согласно одному примеру, процессор 305 измерительного прибора может содержать микроконтроллер (МК) или подобный обрабатывающий модуль. Коллектор 116 может дополнительно содержать устройство 310 отображения для отображения информации, такой как измеренные величины и состояние измерительного прибора, и память 312 для хранения данных. Память 312 может содержать энергозависимую и/или энергонезависимую память, такую как, например, электрически стираемая программируемая постоянная память и/или флэш-память. Память 312 может быть расположена в процессоре 305 измерительного прибора и/или за его пределами. Коллектор 116 дополнительно содержит цепь 306 беспроводной связи ЛВС для беспроводной связи с измерительными приборами 114 в подсети/ЛВС и сетевой интерфейс 308 для связи по сети 112.
Согласно одному варианту осуществления измерительная цепь 304, процессор 305, устройство отображения 310 и память 312 реализованы с использованием измерительного прибора A3 ALPHA, доступного от Elster Solutions, LLC. Согласно этому варианту осуществления цепь 306 беспроводной связи ЛВС может быть реализована посредством опциональной платы ЛВС (например, двусторонней радиоустановки с частотой 900 МГц), установленной в измерительный прибор A3 ALPHA, а сетевой интерфейс 308 может быть реализован посредством опциональной платы РВС (например, телефонного модема), также установленного в измерительный прибор A3 ALPHA. Согласно этому варианту осуществления опциональная плата 308 РВС передает сообщение из сети 112 (через интерфейсный порт 302) процессору 305 измерительного прибора или опциональной плате 306 ЛВС. Опциональная плата 306 ЛВС может использовать приемопередающее устройство (не показано), например радиоустановку с частотой 900 МГц, для передачи данных измерительным приборам 114. Кроме того, опциональная плата 306 ЛВС может содержать достаточное количество памяти для сохранения данных, полученных от измерительных приборов 114. Эти данные могут содержать, кроме прочего, следующее: текущие данные для составления счета (например, настоящие значения, хранимые и измеренные измерительными приборами 114), данные за предварительный расчетный период, данные предыдущего сезона и данные профиля нагрузки.
Опциональная плата 306 ЛВС может быть выполнена с возможностью синхронизации своего времени с часами реального времени (не показаны) в измерительном приборе A3 ALPHA, тем самым синхронизируя эталонное время ЛВС со временем в измерительном приборе. Обработка, необходимая для обеспечения функциональности связи, а также сбора и хранение данных измерения коллектора 116, может быть выполнена процессором 305 и/или дополнительными процессорами (не показаны) в опциональной плате 306 ЛВС и опциональной плате 308 РВС.
Функции коллектора 116 являются широкими и могут быть изменены. Как правило, коллектор 116 несет ответственность за управление, обработку и направление данных, обмен которыми происходит между коллектором и сетью 112, а также коллектором и измерительными приборами 114. Коллектор 116 может постоянно или периодически считывать текущие данные с измерительных приборов 114 и сохранять данные в базе данных (не показана) в коллекторе 116. Такие текущие данные могут содержать, кроме прочего, суммарный расход кВт-ч, расход кВтч по времени использования (ВИ), пиковое потребление кВт и другие измерения потребления энергии, а также информацию о текущем состоянии. Коллектор 116 также может считывать и хранить данные по предыдущим счетам и данные предыдущего сезона от измерительных приборов 114, а также хранить данные в базе данных в коллекторе 116. База данных может быть реализована в виде одной или нескольких таблиц данных в коллекторе 116.
Согласно одному варианту осуществления в опциональной плате 306 ЛВС использована микросхема СС1110, доступная от Texas Instruments, Inc., для реализации ее функциональности в качестве беспроводного приемопередающего устройства. Микросхема СС1110 характеризуется встроенной способностью индикации мощности принятого сигнала (ИМПС), обеспечивающей измерение мощности полученного радиосигнала.
На фиг.3В представлена функциональная схема примерного варианта осуществления измерительного прибора 114, который может функционировать в системе 110 согласно фиг.1 и 2. Как представлено, измерительный прибор 114 содержит измерительную цепь 304' для измерения количества потребленной услуги или продукта и процессор 305', управляющий всеми функциями измерительного прибора. В соответствии с одним примером, процессор 305' может содержать микроконтроллер (МК) или подобный обрабатывающий модуль. Измерительный прибор 114 также содержит устройство 310' отображения для отображения данных измерительного прибора и информации о текущем состоянии, и память 312' для хранения данных и команд управляющих программ. Память 312' может содержать энергозависимую и/или энергонезависимую память, такую как, например, электрически стираемую программируемую постоянную память и/или флэш-память. Память 312' может быть расположена в процессоре 305' измерительного прибора и/или за его пределами. Измерительный прибор 114 дополнительно содержит цепь 306' беспроводной связи для передачи данных к другим измерительным приборам 114 или коллектору 116, а также приема данных от них. Цепь 306' беспроводной связи может содержать, например, упомянутую выше микросхему СС1110, доступную от Texas Instruments, Inc.
В определенный момент времени каждый измерительный прибор будет характеризоваться установленным маршрутом связи с коллектором, который будет прямым маршрутом (т.е. узлы одного уровня) или непрямым маршрутом через один или несколько промежуточных узлов, которые служат в качестве ретрансляторов. Если во время функционирования сети измерительный прибор, зарегистрированный таким образом, не может удовлетворительно выполнять свои функции, он может быть отнесен к другому маршруту или возможно к другому коллектору, как описано ниже. При установлении маршрута связи между коллектором и измерительным прибором, измерительный прибор может начать передавать данные измерений к коллектору, а коллектор может передавать данные и инструкции на измерительный прибор. Согласно одному варианту осуществления передачу данных между коллектором и измерительными приборами в их подсети осуществляют в соответствии со следующим протоколом передачи данных. В этом протоколе данные передают пакетами. «Исходящие» пакеты являются пакетами, передаваемыми от коллектора к измерительному прибору на данном уровне. Согласно одному варианту осуществления и как представлено на фиг.3С, исходящие пакеты содержат следующие поля, однако могут быть предусмотрены и другие поля:
Length - длина пакета;
SrcAddr - адрес источника - в этом случае, идентификатор ЛВС коллектора;
DestAddr - идентификатор ЛВС измерительного прибора, к которому адресуется пакет;
RptPath - маршрут связи с целевым измерительным прибором (т.е. список идентификаторов каждого ретранслятора на маршруте от коллектора к целевому узлу); и
Data - полезная нагрузка пакета.
Пакет может также содержать информацию проверки целостности (например, контроль циклическим избыточным кодом), заполнение для наполнения неиспользованных частей пакета и другую управляющую информацию. При передаче пакета от коллектора он будет передан к целевом измерительному прибору только посредством тех ретранслирующих измерительных приборов, идентификаторы которых отмечены в поле RptPath. Другие измерительные приборы могут принимать пакет, однако измерительные приборы, которые не указаны в маршруте, отмеченном в поле RptPath, не будут передавать пакет.
«Входящие» пакеты являются пакетами, передаваемыми от измерительного прибора на данном уровне к коллектору. Согласно одному варианту осуществления и как представлено на фиг.3D, входящие пакеты содержат следующие поля, однако могут быть предусмотрены и другие поля:
Length - длина пакета;
SrcAddr - адрес источника - идентификатор ЛВС измерительного прибора, отправившего пакет;
DestAddr - идентификатор ЛВС коллектора, к которому передают пакет;
RptAddr - идентификатор родительский узла, который служит в виде следующего ретранслятора для посылающего узла;
Data - полезная нагрузка пакета;
Поскольку в каждом измерительном приборе сохранена информация об идентификаторе его родительского узла (т.е. узла в следующем нижнем уровне, который служит в качестве ретранслятора для настоящего узла), во входящем пакете необходимо только идентифицировать, который из узлов будет следующим родительским узлом. При получении узлом входящего пакета, он проверяет, соответствует ли поле RptAddr его собственному идентификатору. Если нет, то узел отбрасывает пакет. Если да, то предполагается, что узел должен направить пакет по направлению к коллектору. Затем узел заменит информацию в поле RptAddr на идентификатор его собственного родительского узла, после чего передаст пакет так, чтобы его родительский узел принял его. Этот процесс будет повторяться в каждом ретрансляторе на каждом последующем уровне до тех пор, пока пакет не попадет в коллектор.
Функциональность описанных в настоящем документе измерительных устройств (например, измерительного прибора или коллектора) может быть сохранена в памяти для хранения программ (например, энергозависимой или энергонезависимой памяти). Например, функциональность может быть сохранена в связанной с микроконтроллером (МК) измерительного устройства энергонезависимой памяти, такой как, например, электрически стираемая программируемая постоянная память или флэш-память. Функциональность измерительного устройства может быть просто обновлена посредством обновления памяти для хранения программ.
Согласно некоторому варианту осуществления измерительное устройство может быть настроено для соответствия запросу данного рынка и/или абонента. Например, измерительное устройство может быть настроено посредством загрузки виртуальной опциональной платы. Виртуальная опциональная плата может обеспечить различные свойства для измерительного устройства. Например, виртуальная опциональная плата может быть сконфигурирована для обеспечения свойств и/или измерительных прикладных программ, которые соответствуют запросу данного рынка и/или абонента. Виртуальная опциональная плата может быть разработана, добавлена и/или реализована в измерительном устройстве без воздействия на основной программный код, хранимый в измерительном устройстве для осуществления базового уровня измерительных операций.
Виртуальная опциональная плата может быть сохранена в измерительном устройстве в виде встроенной программы (например, статической флэш-памяти) в микроконтроллере (МК) измерительного прибора. МК измерительного устройства может позволять запись электронным способом встроенной программы в виде одного блока памяти, или он может позволять запись электронным способом встроенной программы в различные секции памяти. МК может разрешить использовать флэш-память с тем, чтобы хранить память для хранения программ и данные о конфигурации в отдельных секциях памяти внутри МК. Часть памяти в МК, которая может быть использована для хранения данных о конфигурации, может также быть использована для хранения дополнительной встроенной программы, такой как, например, программный код или виртуальная опциональная плата. Например, секция флэш-памяти может быть использована для хранения основного программного кода в виде встроенной программы для обеспечения базового уровня измерительных операций измерительного устройства. Кроме того, секция флэш-памяти может быть выделена для хранения виртуальной опциональной платы, которая не сохранена в виде данных о конфигурации, но альтернативно сохранена в виде фактического кода встроенной программы. Посредством разделения основной программы и виртуальной опциональной платы может быть упрощена разработка и/или тестирование. МК может выполнять основную программу для осуществления измерительных операций. Например, основная программа может использовать основной программный код для обеспечения базового уровня измерительных операций. В конкретном месте основного программного кода, основная программа может выполнить переход к некоторому адресу во встроенной программе (т.е. программному коду) виртуальной опциональной платы, выполнить код в виртуальной опциональной плате для реализации дополнительных свойств и вернуться к основному программному коду для продолжения выполнения. Обеспеченные при помощи виртуальной опциональной платы дополнительные свойства могут относиться к широкому спектру необходимых свойств, предусматривающих, кроме прочего, дополнительные протоколы (например, протоколы связи). Каждая виртуальная опциональная плата может соответствовать запросам данного рынка и/или абонента. Виртуальная опциональная плата и/или присущие ей свойства могут быть добавлены к измерительному устройству без воздействия на основную встроенную программу, хранимую в измерительном устройстве.
Согласно варианту осуществления виртуальная опциональная плата может быть «интегрирована» (например, установлена) во время первоначального изготовления. Например, во время процесса изготовления, производственная система может проверить запросы абонента и/или загрузить виртуальную опциональную плату в измерительное устройство, которая добавит конкретное свойство или набор свойств к измерительному устройству в соответствии с абонентом и/или рынком, к которому принадлежит абонент. Согласно одному варианту осуществления виртуальная опциональная плата может быть загружена во время программирования ПЗУ МК измерительного устройства (например, программирования флэш-памяти). Виртуальная опциональная плата, которую сохраняют во время изготовления, может быть настроенной или установленной по умолчанию виртуальной опциональной платой.
Согласно некоторому варианту осуществления виртуальная опциональная плата может быть добавлена и/или обновлена после установки измерительного устройства на месте работы. Например, виртуальная опциональная плата может быть добавлена посредством инструмента для обновления на месте работы. Согласно одному варианту осуществления ПЗУ МК измерительного устройства может быть изначально запрограммировано с установленной по умолчанию виртуальной опциональной платой или вообще без виртуальной опциональной платы. Виртуальная опциональная плата может впоследствии быть загружена и/или обновлена в более поздний момент времени. Например, инструмент для обновления на месте работы может быть предоставлен абоненту с тем, чтобы он мог загрузить виртуальную опциональную плату в измерительное устройство, которая добавит конкретное свойство или набор свойств к измерительному устройству в соответствии с абонентом и/или рынком, к которому принадлежит абонент. Инструмент для обновления на месте работы может дистанционно связываться с измерительным прибором для загрузки виртуальной опциональной платы с использованием существующей цепи беспроводной связи измерительного прибора (например, цепи 306', представленной на фиг.3В) или через оптический порт (не показан) измерительного прибора. Альтернативно, виртуальная опциональная плата может быть загружена в измерительный прибор из шлюза или другого «главного» устройства или компьютера через беспроводную ЛВС, к которой подключен измерительный прибор.
Виртуальная опциональная плата может быть создана изготовителем виртуальной опциональной платы и/или третьей стороной-разработчиком. Например, третья сторона-разработчик может быть разработчиком модулей автоматического снятия показаний измерительного прибора (АСП), который создает виртуальную опциональную плату для увеличения функциональности измерительного устройства. При реализации виртуальной опциональной платы также может быть необходима физическая опциональная плата, которая содержит дополнительное аппаратное оборудование, необходимое для реализации функций виртуальной опциональной платы, такое как, например, источник питания, радиочастотные (РЧ) компоненты и/или антенна. Виртуальная опциональная плата может позволить физической опциональной плате содержать меньшее количество аппаратного оборудования и/или программного обеспечения для осуществления связи и/или других измерительных операций.
На фиг.4 представлена блок-схема, иллюстрирующая процесс установки виртуальной опциональной платы в измерительное устройство, которая соответствует абонентскому запросу. Как представлено на фиг.4, абонентский запрос может быть определен для выбора измерения в измерительном устройстве абонента на стадии 402. Абонентский запрос может содержать любой запрос измерения, который может быть необходим абоненту для осуществления измерительных операций в измерительном устройстве. Например, абонентский запрос измерения может содержать запрос конкретного протокола, устанавливаемого в измерительное устройство. На стадии 404 может быть выбрана виртуальная опциональная плата, которая соответствует абонентскому запросу. Например, может быть выбрана виртуальная опциональная плата, содержащая протокол, необходимый абоненту. На стадии 406 выбранная виртуальная опциональная плата может быть установлена в измерительное устройство. Как описано в настоящем документе, виртуальная опциональная плата может быть сохранена в виде блока флэш-памяти в микроконтроллере измерительного устройства абонента.
На фиг.5 представлена блок-схема, иллюстрирующая процесс установки виртуальной опциональной платы в измерительное устройство, которая соответствует рынку, в котором может работать измерительное устройство. Как представлено на фиг.5, на стадии 502 может быть определен рынок, в котором измерительное устройство может работать на текущий момент или возможно будет работать в будущем. На стадии 504 может быть выбрана виртуальная опциональная плата, которая соответствует определенному рынку. Например, может быть выбрана виртуальная опциональная плата, содержащая протокол для обеспечения измерительного устройства для данного рынка. На стадии 506 выбранная виртуальная опциональная плата может быть установлена в измерительное устройство. Как описано в настоящем документе, виртуальная опциональная плата может быть сохранена в виде блока флэш-памяти в микроконтроллере измерительного устройства абонента.
Виртуальная опциональная плата может быть реализована с использованием интерфейса прикладных программ (ИПП). Например, ИПП может позволить основной программе, выполняемой на измерительном устройстве, взаимодействовать с виртуальной опциональной платой для осуществления измерительных операций. На фиг.6 представлена функциональная схема, иллюстрирующая взаимодействие между основной программой и виртуальной опциональной платой. Как представлено на фиг.6, основной программный код 602 может храниться отдельно от виртуальной опциональной платы 604. МК может выполнять основной программный код 602, и в конкретном месте основного программного кода МК может перейти к коду виртуальной опциональной платы 604 для реализации дополнительных свойств измерительного устройства, обеспечиваемых виртуальной опциональной платой. Основной программный код 602 может получить доступ к виртуальной опциональной плате 604 при помощи ИПП 608 виртуальной опциональной платы. ИПП 608 виртуальной опциональной платы может быть частью интерфейса прикладных программ (ИПП) 610. Дополнительные свойства могут быть реализованы посредством выполнения кода виртуальной опциональной платы 604. Код и/или данные виртуальной опциональной платы 604 могут быть связаны с основным программным кодом 602 с использованием ИПП 606 измерительного устройства. ИПП 606 измерительного устройства также может быть частью ИПП 610. Как только МК выполнит дополнительные свойства, реализованные кодом виртуальной опциональной платы 604, выполнение программы может переключиться обратно на основной программный код 602 для продолжения выполнения измерительных операций, реализованных основным программный кодом 602.
Посредством ИПП 610 основная программа 602 может быть осведомлена о наличии виртуальной опциональной платы 604, подтвердить достоверность целостности виртуальной опциональной платы 604 и/или взаимодействовать с виртуальной опциональной платой 604. Например, основная программа 602 может быть осведомлена о наличии виртуальной опциональной платы 604 во время ее установки (например, записи во флэш-память МК). После завершения установки (например, при завершении записи во флэш-память) основная программа 602 может проверить целостность и/или совместимость виртуальной опциональной платы 604. Согласно примерному варианту осуществления проверка целостности проверяет контроль циклическим избыточным кодом (CRC), прилагаемый к отображению в ПЗУ виртуальной опциональной платы. Если CRC является корректным, то данные заголовка могут быть проверены для подтверждения того, что виртуальная опциональная плата 604 совместима с основной программой 602. После определения подлинности виртуальной опциональной платы 604 управление может быть передано ей при помощи ИПП измерительного прибора. Встроенная программа измерительного прибора может быть основана на многопоточной, многозадачной операционной системе реального времени (ОСРВ), что облегчает выполнение заданий и/или обмен сообщениями между заданиями.
Основная программа 602 может взаимодействовать с виртуальной опциональной платой 604 с использованием схемы, которая разделяет, контролирует и/или управляет использованием виртуальной опциональной платой встроенных ресурсов, таких как, например, порты связи, ЖК устройство отображения, клавиши и/или доступ к памяти. ИПП 610 может позволить виртуальной опциональной плате оперировать связью с использованием выделенного ей последовательного порта(ов) или т.п.
Виртуальная опциональная плата 604 может быть разработана, скомпилирована и/или подключена отдельно от основной программы 602. В виртуальной опциональной плате могут отсутствовать данные о перемещаемых символах (например, данные, функциональные адреса и т.п.), которые могут принадлежать основной программе 602. Основная программа 602 может обладать прямым или непрямым доступом к памяти виртуальной опциональной платы 604. Например, если основная программа 602 не обладает прямым доступом к памяти виртуальной опциональной платы 604, то интерфейс между виртуальной опциональной платой и основной программой может быть определен посредством ИПП 610.
Основная встроенная программа измерительного устройства может быть осведомлена о виртуальной опциональной плате (например, при установке виртуальной опциональной платы и/или после ее записи электронным способом) посредством информационного блока заголовка. Информационный блок заголовка может быть расположен, например, в начале сведений о программе виртуальной опциональной платы. Двухбайтовый контроль циклическим избыточным кодом (CRC) может подтвердить достоверность данных заголовка. Данные заголовка могут содержать, например, размер виртуальной опциональной платы (например, в байтах), адреса подпрограмм виртуальной опциональной платы (например, задачи инициализации, основной задачи и/или периодической задачи), требования к памяти и/или различные другие параметры, соответствующие виртуальной опциональной плате.
На фиг.7 представлена схема, иллюстрирующая примерный процесс установки виртуальной опциональной платы. Согласно одному варианту осуществления этот процесс установки может быть осуществлен в измерительном устройстве во время его изготовления и/или после его установки на месте работы. Процесс установки может быть начат на стадии 702, что может инициировать процесс проверки достоверности целостности виртуальной опциональной платы на стадии 704. Например, может быть проверена достоверность целостности записи электронным способом в ПЗУ виртуальной опциональной платы. На стадии 706 может быть проведен поиск и/или проверена достоверность указателя функции инициализации виртуальной опциональной платы. На стадии 708 может быть вызвана функция инициализации виртуальной опциональной платы. Функция инициализации виртуальной опциональной платы может передать указатель ИПП измерительного прибора к виртуальной опциональной плате. Функция инициализации виртуальной опциональной платы может также вернуть указатель ИПП виртуальной опциональной платы, его версию и/или его новую версию. На стадии 710 может быть проверена достоверность совместимости ИПП измерительного прибора и ИПП виртуальной опциональной платы. Например, может быть проверена достоверность совместимости версии ИПП измерительного прибора и версии ИПП виртуальной опциональной платы. На стадии 712 может быть проверена достоверность целостности ИПП виртуальной опциональной платы. Эта проверка целостности может предусматривать определение того, что указатели функций ИПП виртуальной опциональной платы содержат адрес в области ПЗУ виртуальной опциональной платы, например. На стадии 714 проверяют достоверность размера памяти (например, ОЗУ, ЭСППЗУ или зарегистрированной памяти), необходимой для виртуальной опциональной платы. На стадии 716 может быть установлена виртуальная опциональная плата в измерительное устройство и/или может быть установлен статус, указывающий на установку виртуальной опциональной платы.
Далее в настоящем документе приведены примеры функций ИПП измерительного прибора. Функции ИПП измерительного прибора могут содержать функции последовательного интерфейса связи, функции таймера и/или другие функции, используемые основной программой и/или виртуальной опциональной платой. В таблице 1 представлены примеры функций последовательного интерфейса связи. Функции последовательного интерфейса связи могут быть обеспечены посредством основной программы измерительного прибора для использования виртуальной опциональной платой.
Таблица 1: функции последовательного интерфейса связи
Название функции ИПП
Описание
MeterApi_reOpenPort
Открывает последовательный порт для связи
MeterApi_getBaud
Возвращает скорость передачи в бодах для текущего канала
MeterApi_setBaud
Устанавливает скорость передачи в бодах для канала
MeterApi_putChar
Записывает байт информации в буфер установленного порта
MeterApi_getChar
Возвращает байт информации из буфера установленного порта
MeterApi_peek
Возвращает данные из буфера установленного порта без удаления их из буфера
MeterApi_isTxBufferEmpty
Возвращает «ИСТИНА», если буфер передачи установленного порта является пустым
MeterApi_getNumBytesInRxBuffer
Возвращает количество байтов, находящихся в настоящий момент в буфере приема установленного порта
MeterApi_flushRxBuffer
Сбрасывает (например, очищает) буфер приема установленного порта
MeterApi_flushTxBuffer
Сбрасывает (например, очищает) буфер передачи установленного порта
В таблице 2 представлены примерные реализации функций таймера. Функции таймера могут быть обеспечены посредством основной программы измерительного прибора для использования виртуальной опциональной платой.
Таблица 2: Функции таймера
Название функции ИПП
Описание
MeterApi_createTimer
Создает аппаратный или программный таймер
MeterApi_setHwTimerUnits
Устанавливает единицы измерения аппаратного таймера (например, секунды, миллисекунды, микросекунды и т.п.)
MeterApi_setTimerUnits
Устанавливает единицы измерения программного таймера (например, секунды, миллисекунды, микросекунды и т.п.)
MeterApi_loadTimer
Загружает значение обратного отсчета в установленный таймер
MeterApi_startTimer
Запускает установленный таймер
MeterApi_stopTimer
Останавливает установленный таймер
MeterApi_isTimerRunning
Возвращает «ИСТИНА», если установленный таймер запущен в настоящее время
MeterApi_killTimer
Освобождает конкретный таймер
MeterApi_killAllTimers
Освобождает таймеры, назначенные в настоящее время для виртуальной опциональной платы
Перед выполнением кода виртуальной опциональной платы целостность виртуальной опциональной платы может быть проверена, например, как описано в настоящем документе. После проверки целостности данных виртуальной опциональной платы, основная программа измерительного устройства может выполнить задачу инициализации виртуальной опциональной платы, к которой она может передать данные, описывающие основную встроенную программу измерительного прибора. Данные, описывающие основную встроенную программу измерительного прибора, могут содержать, например, адрес и размер ОЗУ, выделенного виртуальной опциональной плате, адрес и размер ЭСППЗУ, выделенного виртуальной опциональной плате, и/или различные другие параметры, соответствующие виртуальной опциональной плате.
Использование виртуальной опциональной платы может обеспечить гибкость и/или эффективное использование ограниченного количества памяти, доступной в МК. Различные виртуальные опциональные платы могут быть разработаны для добавления различных протоколов и/или свойств. Согласно одному примерному варианту осуществления измерительные приборы, которые могут быть сконфигурированы для использования в Китае, могут содержать сохраненную в них виртуальную опциональную плату, которая реализует используемые в Китае протоколы (например, DL/T 645). Согласно другому примерному варианту осуществления измерительное устройство, которое может быть сконфигурировано для использования в России, может содержать виртуальную опциональную плату, которая реализует протокол передачи данных для России, поскольку на рынке России отсутствует интерес к используемому в Китае протоколу. Использование описанной в настоящем документе виртуальной опциональной платы может устранить наличие неиспользуемого и/или ненужного свойства, хранимого во флэш-памяти встроенной программы, которая заблокирована, поскольку она не используется.
Все описанные выше системы, способы и устройства или их части могут быть воплощены в аппаратном оборудовании, программном обеспечении или их сочетании. При воплощении в программном обеспечении, способы и устройства согласно настоящему изобретению, или конкретные аспекты или их части, могут быть воплощены в форме программного кода (т.е. выполняемых компьютером инструкций). Этот программный код может быть сохранен на считываемом компьютером носителе, таком как магнитный, электрический или оптический носитель данных, содержащем, кроме прочего, гибкий магнитный диск, компакт-диск формата CD-ROM, компакт-диск формата CD-RW, компакт-диск формата DVD-ROM, компакт-диск формата DVD-RAM, магнитную ленту, флэш-память, накопитель на жестких магнитных дисках или любой другой считываемый компьютером носитель данных, причем, когда программный код загружают в машину и выполняют при помощи этой машины, такой как компьютер или сервер, машина становится устройством для применения настоящего изобретения. Устройство, на котором выполняется программный код, такое как измерительный прибор 114 и/или коллектор 116, как правило, будет содержать процессор, считываемый процессором носитель данных (содержащий энергозависимую и энергонезависимую память и/или запоминающие элементы), по меньшей мере одно устройство ввода и по меньшей мере одно устройство вывода. Программный код может быть реализован при помощи высокоуровневого процедуро-ориентированного или объекто-ориентированного языка программирования. Альтернативно, программный код может быть реализован при помощи языка ассемблера или машинного языка. В любом случае, язык может быть компилируемым или интерпретируемым языком программирования. При реализации на универсальном процессоре, программный код может быть объединен с процессором для создания уникального устройства, функционирующего аналогично специальным логическим схемам.
Хотя системы, способы и устройства были описаны и представлены в отношении специальных вариантов осуществления, специалистам в данной области техники будет понятно, что модификации и изменения могут быть выполнены без отступления от принципов, описанных выше и изложенных в представленной ниже формуле изобретения. Например, несмотря на то, что в описанных выше вариантах осуществления системы и способы согласно настоящему изобретению описаны в контексте сети из измерительных устройств, таких как измерительные приборы для электричества, газа или воды, следует понимать, что настоящее изобретение может быть реализовано в сети любого типа. Кроме того, несмотря на то, что описанная выше примерная измерительная система является стационарной сетью, настоящее изобретение также может быть реализовано в мобильных (носимых/возимых) системах. Следовательно, для понимания объема настоящего изобретения следует обратиться к представленной ниже формуле изобретения.