УМ-31 v.3


Устройство УМ-31 v.3 предназначено для сбора показаний с электросчётчиков, применяемых в жилом комплексе и передачи консолидированной информации на центральный пульт информационно-измерительных систем.
Устройство снято с производства. Используйте современные флагманские устройства: УМ-31 SMART и УМ-40 SMART.
Каналы передачи данных
Интерфейсы
— CAN/RS-232/RS-485
- Описание устройства
- Функции устройства
- Характеристики устройства
- Поддерживаемые приборы учёта
- Документация
- Сервисное ПО
- Прошивки для ревизии 1
- Прошивки для ревизии 2
Устройство УМ-31 v.3 предназначено для сбора показаний с электросчётчиков, применяемых в жилых комплексах и передачи консолидированной информации на центральный пульт информационно-измерительных систем. Является средством измерения.
Устройство выполнено в пластмассовом корпусе. Простая система креплений корпуса позволяет устанавливать устройство автономно в помещениях на объекте и/или в шкафах (щитах) с дополнительным оборудованием. Установка и монтаж устройства на объекте осуществляется сертифицированным персоналом поставщика (АО «Связь инжиниринг М») или покупателем, при условии соблюдения требований руководства по эксплуатации на данное устройство.
Применение УМ-31 v.3 в системах учёта электроэнергии и в создании АИИС КУЭ позволит улучшить процесс мониторинга и снизить затраты на контроль и учёт электроэнергии.
- Сбор информации с приборов учёта, имеющих цифровой интерфейс.
- Передача консолидированной информации по сети GSM 900/1800.
- Информирование дежурного персонала о состоянии электросчётчиков через SMS сообщения.
Технические характеристики
| Номинальное напряжение, В | 220 (+20% -20%) |
| Потребляемая мощность, В*А (Вт) | 10 |
| Каналы передачи данных | GSM/GPRS |
| Интерфейсы | CAN/RS-232/RS-485 |
| Степень защиты корпуса | IP 40 |
| Вес, кг | 1,0 |
| Габариты (ВхШхГ), мм | 222,3х159,5х66 |
| Средняя наработка на отказ, не менее, час | 120 000 |
| Средний срок службы, лет | 20 |
Условия эксплуатации устройства
| Диапазон рабочих температур, °С | от -20 до +40 |
| Относительная влажность воздуха при +25˚С | не более 80% |
| Атмосферное давление, кПа | от 84 до 107 (от 630 до 800 мм рт. ст.) |
Подробная информация на устройство представлена в руководстве по эксплуатации.
| Наименование производителя | Наименование прибора учета |
|---|---|
| ООО «НПК «Инкотекс» | Меркурий 200 Меркурий 203.2Т Меркурий 206 Меркурий 230 Меркурий 233 Меркурий 234 Меркурий 236 Меркурий 225.2 |
| ФГУП «Нижегородский завод им. М.В.Фрунзе» | ПСЧ-3ТМ ПСЧ-4ТМ СЭТ-4ТМ СЭБ-2А.07 СЭБ-2А.07Д СЭБ-2А.08 |
| ОАО «Концерн Энергомера» | СЕ102 СЕ102М СЕ301 СЕ303 |
| АО «Завод МЗЭП» | СТС-565/П5-400AP-2I5 СОЭ-55/60Ш-Т-215 СОЭ-55/60Ш-Т-217 СОЭ-55/60Ш-Т-415 |
| ООО «ТАЙПИТ-ИП» | Нева МТ 113 Нева МТ 114 Нева МТ 124 Нева МТ 313 Нева МТ 314 Нева МТ 323 Нева МТ 324 |
| ЗАО ПКК «МИЛАНДР» | Милур 104 Милур 105 Милур 107 Милур 305.11 Милур 305.12 Милур 305.32 Милур 307 |
| ООО НПП «Тепловодохран» | ПУЛЬСАР исполнения РАДИО |
| ООО «Энрон-Энерго» | ТОПАЗ 103 ТОПАЗ 104 |
| ООО «Эльстер Метроника» | Альфа A1140 |
| АО «КАСКАД» | КАСКАД-1-МТ-W1 |
Документация для текущей версии прошивки
УМ-31
АСУД-248 допускает подключение любых УСПД УМ-xxRTU.
Для каждого электросчетчика, подключенного к УМ требуется отдельный Драйвер EXT-модуля типа EXT.
Т.е. суммарное число драйверов на один УМ равно суммарному числу электросчетчиков на данном УМ.

Ethernet — для УМ-31М
(но, см. Тестовый опрос далее)
Настройка прибора
Перед подключением АСУД-248, УМ должен быть полностью настроен в соответствии с Руководством по эксплуатации производителя:
- введена таблица приборов
- проверена связь с устройствами.
Подключение к АСУД-248
Программно-аппаратные средства АСУД-248 обеспечивают снятие информации с УМ по интерфейсу RS-232/Ethernet, при этом не занимается основной интерфейс УМ, обеспечивающий передачу данных в энергосбытовую организацию.
АСУД-248 допускает подключение любых УСПД УМ-xxRTU.
Тракт передачи данных:
- УМ — RS-232 — КЦС-IPM — Компьютерная сеть — АРМ-диспетчера
- УМ — RJ-45 — Компьютерная сеть — АРМ-диспетчера
Для каждого прибора учета, подключенного на УМ, должен быть приобретен Драйвер EXT-модуля типа EXT.
КЦС-IPM
| Интерфейс подключения | RS-232 |
| Доп.питание интерфейса счетчика | |
| Число подключаемых счетчиков |
на один интерфейс
Объем передаваемых данных
Служебная информация
Данные отображаются по двойному клику на устройстве в окне Шаг 2 программы ASUDBase
- Время уст. (УМ) отображается просто, как время ПК.
- Приборов — число устройств зарегистрированных в памяти УМ.
Среднее время получения данных: ? c.
Текущие результаты измерений
- Номер — серийный номер подключенного электросчетчика. Отображается для проверки, должен соответствовать номеру в поле Идент. справа.
- Параметр tDm — отображает расхождение времени прибора с временем УМ.
- Время — время УМ (время считывания данных со счетчика), а не время обновления данных по часам ПК (как для других приборов).
Подсвеченные параметры (подсвечено название параметра) доступны для изменения из программного обеспечения.
Для изменение параметра из программы ASUDBase следует выбрать параметр, нажать правую кнопку мыши, выбрать «Записать значение».
Если подсвечено значение параметра, то это говорит о выходе значения за граничные значения.
Среднее время получения данных: ? c.
Архивные данные
Среднее время получения одной архивной записи: ? c.
Прямое IP-подключение по Ethernet
| Интерфейс подключения | Прямое IP |
| Доп.питание интерфейса счетчика | |
| Число подключаемых счетчиков |
на один интерфейс
Регистрация в программе ASUDBase
Для удобства регистрации в ASUDBase счетчиков, подключенных к УМ, реализована возможность автоматического переноса регистрационный информации из УМ в БД original.gdb
Поэтому рекомендуется, чтобы в момент настройки ASUDBase, УМ был полностью настроен и проверена связь с приборами учета.
В программе ASUDBase следует предварительно добавить адрес УМ (адрес дома).
При подключении через КЦС-IPM c помощью программы IPSET.EXE установить параметры КЦС-IPM:
Для переноса конфигурации следует воспользоваться программой KCS DEMO.EXE.
В программе следует:
- указать данные подключения к УМ
- IP-адрес КЦС-IPM или выбрать Мастер: Прямое IP и указать IP-адрес УМ-31М
- RS-номер установить в 1
- для новой версии
- нажать Служебные
- выбрать меню Работа с драйвером \ Настройка драйвера
- нажать Инициализация
- нажать Драйвер: Настроить
В открывшемся окне следует:
- выбрать адрес установки УМ, введенный ранее в программе ASUDBase
- указать период опроса, подключенных приборов (например: раз в 30 минут)
- указать правило определения номера квартиры
- в случае если при настройки УМ в качестве сетевого адреса прибора указывался номер квартиры, установить флажок «Использовать . » (по умолчанию Вкл.)
- в противном случае по умолчанию каждому прибору будет присвоен условный номер квартиры, который впоследствии нужно будет отредактировать в таблице или позже в программе ASUDBase
Программа определит число записанных счетчиков в УМ и отобразит их в таблице приборов.
Внимание! Возможна проблема с загрузкой данных, если в УМ зарегистрированы не все подключенные счетчики. Т.е. при настройке УМ указали что число приборов равно например: 100, а реально записали регистрационные данные только части приборов. В этом случае процесс загрузки может занять значительное время. При этом в окне лога обмена данных с УМ будут отображаться данные вида: 3C 49 44 0A 30 30 35 36 3B 35 36 3B 33 3B 33 3B 3C 0A
. Тайм-аут (мс.): 1700 13:49:20:575
В этом случае следует либо дождаться окончания операции, либо Прервать загрузку. Перенос данных должен осуществляться после полной настройки УМ.
После корректной загрузки данных следует, по необходимости, выполнить редактирование номеров квартир и нажать кнопку Записать в БД.
Подготовка к чтению
Чтение конфигурации
Конфигурация с незаполненными Сер.номерами
Запись в БД (Первоначальная)
Запись в БД (Обновление)
Описание полей таблицы:
- ID - идентификатор прибор (1, 2, 3, . ) в таблице конфигурации УМ. Этот же ID - используется в качестве RS-идентификатора в настройке ASUDBase.
- Адрес в сети - адрес прибора в сети RS-485, может совпадать с номером квартиры
- Тип прибора - тип подключенного прибора, будет добавлен в поле Комментарий в ASUDBase
- Серийный номер - серийный номер прибора
- Квартира - номер квартиры установки прибора, следует отредактировать вручную до момента переноса данных или позже в программе ASUDBase
- Синхронизация с БД - статус переноса данных в БД по нажатию кнопки Записать в БД
Допускается повторная операция переноса данных с УМ в БД, например при добавлении новых приборов в конфигурацию УМ, или для изменения некоторых параметров (подробнее см. далее).
Если в УМ-31 не заполнено поле Сер.номер для прибора, то такие приборы будут добавлены в ASUDBase с номером 0. Эта ситуация крайне нежелательна, т.к. при возможной повторном переносе, счетчики будут продублированы в ASUDBase.
Если счетчик с таким серийным номером отсутствует в БД, то он будет добавлен - Статус синхранизации будет отображен зеленым цветом.
Если счетчик с таким серийным номером уже зарегистрирован в БД (например осуществляется повторный перенос данных), то для него будет выполнено обновление следующих данных в БД (Статус синхронизации отображается желтым):
- IP-адреса
- Номера порта
- RS-идентификатора
- Интервала опроса
- Пароля на доступ к УМ-31
- Номера квартиры
По кнопке >HTML - произойдет сохранение таблицы УМ в html-файле в папке settings/um31.
Пример отображения зарегистрированного прибора в программе ASUDBase.
Замечаение!
При подключении УМ напрямую по Ethernet следует выбрать- Мастер устройство: Прямое IP
- IP-адрес - указать IP-адрес УМ-31М
- Порт - по умолчанию 5000 (или см. РЭ на УМ-31М)
В принципе, электросчетчики могут быть зарегистрированы и в ручном режиме непосредственно в ASUDBase.
- Тип прибора указывается как УМ-31
- Поле RS-идентификатор - это ID, подключенного прибора учета в таблице регистрации УМ
- Реальный тип подключенного прибора указывается в поле Комментарий (просто для информации)
Внимание! Важно. 1. Если при повторном переносе конфигурации число приборов в УМ уменьшилось (было зарегистрировано 100, а стало - 98), следует удалить лишние счетчики из ASUDBase вручную. 2. В случае замены электросчетчика и обновления конфигурации УМ, следует внести изменения в ASUDBase вручную (выполнив удаление старого прибора). 3. Если в УМ-31 не заполнено поле Сер.номер для прибора, то такие приборы будут добавлены в ASUDBase с номером 0. Эта ситуация крайне нежелательна, т.к. при возможной повторном переносе, счетчики будут продублированы в ASUDBase.
Тестовый опрос электросчетчика, подключенного к УМ
В программе KCS DEMO.EXE следует:
- указать данные подключения к УМ
- IP-адрес КЦС-IPM или УМ-31М при подключении напрямую по Ethernet
- RS-номер установить в номер строки таблицы УМ, в которой зарегистрирован нужный прибор: 1, 2, .
УМ-31, УМ-30 RTU, УМ-40 RTU. Чтение архивных и текущих данных. OPC сервер
Обычно, УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS, подключается к компьютеру через последовательный интерфейс RS-232 и передает данные, используя собственный протокол обмена.
Вы также можете подключить этот прибор через преобразователь RS232 в Ethernet. В этом случае к прибору можно подключаться удаленно, по сети.
Установка
Если подключение осуществляется через последовательный порт RS-232 (COM порт), то необходимо установить Advanced Serial Data Logger (первая ссылка сверху).
Если подключение к прибору осуществляется по сети или через Интернет, то необходимо установить Advanced TCP/IP Data Logger (первая ссылка сверху).
В дополнение к основной программе необходимо установить модуль "Binary parsers". Этот модуль обеспечивает взаимодействие логгера и прибора УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS: отправляет запросы по расписанию, обрабатывает полученные ответы, подготавливает данные для экспорта.
Настройка связи
1. Настройте подключение к прибору (параметры COM порта или TCP соединения) (рис. 1 и 2).

Рис. 1.1 Параметры COM порта

Рис. 1.2 Параметры TCP порта
2. Выберите модуль-парсер для УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS в настройках. Если прибор подключен к компьютеру через RS-232, то вы должны дополнительно выбрать такой же модуль запроса данных (на рисунке не показан) (рис. 3).

Рис. 1.3 Выбор модуля парсера УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS
Настройка чтения данных
Вы должны задать сетевой адрес прибора. Этот адрес используется при отправке запросов в прибор. Также, вы можете задать дополнительное описание прибора. Эти значения также можно будет использовать при экспорте данных и записывать в базу (рис. 1).

Рис. 2.1 Настройка чтения данных
В настройках модуля парсера укажите расписание чтения данных (рис. 2, 3). Вы можете настроить расписание для каждого типа данных (текущие, часовой, суточный или накопительный архив).

Рис. 2.2 УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS. Текущие данные
Опрос архивных данных начинается с момента включения опроса. Если необходимо считать данные из имеющегося архива, то нужно нажать кнопку "Загрузить архивные данные начиная с даты" и задать начальную дату. При чтении архивных данных программа запоминает дату и время последнего считанного значения и возобновляет чтение с сохраненной даты. Вы можете повторно считать архив, задав новую дату начала чтения данных. Обратите внимание, что программа не проверяет наличие архивных данных в базе данных, что может привести к появлению дубликатов.

Рис. 2.3 УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS. Архивные данные
Запись данных в базу данных
Для записи данных можно воспользоваться модулем экспорта данных "ODBC Database". Этот модуль может записывать данные в любую базу данных, для которой есть драйвер ODBC.
В одну таблицу базу данных можно собирать данные от нескольких устройств, поскольку каждая строчка данных будет содержать уникальный идентификатор прибора и номер порта.
1. Вручную создайте таблицу с нужной структурой в вашей базе данных. Рекомендуемые скрипты для создания таблиц приведены ниже.
MS SQL Server
/**** split line *****/SET ANSI_NULLS ON /**** split line *****/GO /**** split line *****/SET QUOTED_IDENTIFIER ON /**** split line *****/GO CREATE TABLE dbo.DATA ( ID decimal(10,0) IDENTITY(1,1) NOT NULL, TIMESTAMP_UTC datetime NULL, TIMESTAMP datetime NULL, DATE_TIME_STAMP datetime NULL, DATA_SOURCE_NAME nvarchar(32) NULL, DEVICE_ID nvarchar(16) NULL, DEVICE_NAME nvarchar(32) NULL, DEVICE_DESC nvarchar(32) NULL, DATA_TYPE int NULL, SLAVE_ID nvarchar(6) DEFAULT NULL, SLAVE_ADDRESS nvarchar(16) DEFAULT NULL, SLAVE_TYPE int NULL, SLAVE_INTERFACE int NULL, SLAVE_SERIALNO nvarchar(16) DEFAULT NULL, A_POS0 real NULL, A_POS1 real NULL, A_POS2 real NULL, A_POS3 real NULL, R_POS0 real NULL, R_POS1 real NULL, R_POS2 real NULL, R_POS3 real NULL, A_NEG0 real NULL, A_NEG1 real NULL, A_NEG2 real NULL, A_NEG3 real NULL, R_NEG0 real NULL, R_NEG1 real NULL, R_NEG2 real NULL, R_NEG3 real NULL, U real NULL, I real NULL, CF real NULL, P real NULL, Q real NULL, S real NULL, F real NULL, TD real NULL, EVENT_ID int NULL CONSTRAINT [PK_UN_DATA] PRIMARY KEY ( [ID] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] /**** split line *****/GO CREATE INDEX [DATA_DEVICE_ID_IDX] ON DATA ([DEVICE_ID]); /**** split line *****/GO CREATE INDEX [DATA_TIMESTAMP_IDX] ON DATA ([TIMESTAMP_UTC]); /**** split line *****/GOMySQL
CREATE TABLE `DATA` ( `ID` int(11) NOT NULL auto_increment, `TIMESTAMP_UTC` datetime DEFAULT NULL, `TIMESTAMP` datetime DEFAULT NULL, `DATE_TIME_STAMP` datetime DEFAULT NULL, `DATA_SOURCE_NAME` varchar(32) DEFAULT NULL, `DEVICE_ID` varchar(16) DEFAULT NULL, `DEVICE_NAME` varchar(32) DEFAULT NULL, `DEVICE_DESC` varchar(32) DEFAULT NULL, `DATA_TYPE` int DEFAULT NULL, `SLAVE_ID` varchar(6) DEFAULT NULL, `SLAVE_ADDRESS` varchar(16) DEFAULT NULL, `SLAVE_TYPE` int DEFAULT NULL, `SLAVE_INTERFACE` int DEFAULT NULL, `SLAVE_SERIALNO` varchar(16) DEFAULT NULL, `A_POS0` double DEFAULT NULL, `A_POS1` double DEFAULT NULL, `A_POS2` double DEFAULT NULL, `A_POS3` double DEFAULT NULL, `R_POS0` double DEFAULT NULL, `R_POS1` double DEFAULT NULL, `R_POS2` double DEFAULT NULL, `R_POS3` double DEFAULT NULL, `A_NEG0` double DEFAULT NULL, `A_NEG1` double DEFAULT NULL, `A_NEG2` double DEFAULT NULL, `A_NEG3` double DEFAULT NULL, `R_NEG0` double DEFAULT NULL, `R_NEG1` double DEFAULT NULL, `R_NEG2` double DEFAULT NULL, `R_NEG3` double DEFAULT NULL, `U` double DEFAULT NULL, `I` double DEFAULT NULL, `CF` double DEFAULT NULL, `P` double DEFAULT NULL, `Q` double DEFAULT NULL, `S` double DEFAULT NULL, `F` double DEFAULT NULL, `TD` double DEFAULT NULL, `EVENT_ID` int DEFAULT NULL, PRIMARY KEY (`ID`) ) ENGINE=InnoDB; -- split linePostgreSQL
CREATE TABLE DATA ( ID SERIAL, TIMESTAMP_UTC timestamp DEFAULT NULL, TIMESTAMP timestamp DEFAULT NULL, DATE_TIME_STAMP timestamp DEFAULT NULL, DATA_SOURCE_NAME varchar(32) DEFAULT NULL, DEVICE_ID varchar(16) DEFAULT NULL, DEVICE_NAME varchar(32) DEFAULT NULL, DEVICE_DESC varchar(32) DEFAULT NULL, DATA_TYPE integer DEFAULT NULL, SLAVE_ID varchar(6) DEFAULT NULL, SLAVE_ADDRESS varchar(16) DEFAULT NULL, SLAVE_TYPE integer DEFAULT NULL, SLAVE_INTERFACE integer DEFAULT NULL, SLAVE_SERIALNO varchar(16) DEFAULT NULL, A_POS0 double precision DEFAULT NULL, A_POS1 double precision DEFAULT NULL, A_POS2 double precision DEFAULT NULL, A_POS3 double precision DEFAULT NULL, R_POS0 double precision DEFAULT NULL, R_POS1 double precision DEFAULT NULL, R_POS2 double precision DEFAULT NULL, R_POS3 double precision DEFAULT NULL, A_NEG0 double precision DEFAULT NULL, A_NEG1 double precision DEFAULT NULL, A_NEG2 double precision DEFAULT NULL, A_NEG3 double precision DEFAULT NULL, R_NEG0 double precision DEFAULT NULL, R_NEG1 double precision DEFAULT NULL, R_NEG2 double precision DEFAULT NULL, R_NEG3 double precision DEFAULT NULL, U double precision DEFAULT NULL, I double precision DEFAULT NULL, CF double precision DEFAULT NULL, P double precision DEFAULT NULL, Q double precision DEFAULT NULL, S double precision DEFAULT NULL, F double precision DEFAULT NULL, TD double precision DEFAULT NULL, EVENT_ID integer DEFAULT NULL, PRIMARY KEY (ID) ); -- split lineMS Access
Файл базы данных "database.mdb" можно скачать тут.
2. Откройте настройки модуля экспорта данных, включите запись в базу данных, перейдите к закладке "Соединение" и создайте подключение к вашей базе, кликнув на кнопке "Настроить" (рис. 1-3).

Рис. 3.1 Выбор модуля экспорта данных

Рис. 3.2 Включение записи в базу данных

Рис. 3.3 Настройка подключения к базе
3. На закладке "Связывание" импортируйте из базы структуру вашей таблицы и "привяжите" переменные парсера к соответствующим колонкам. Удалите из списка все колонки, для которых нет привязки и в скрипте создания таблицы задано значение по умолчанию (рис. 4 и 5).

Рис. 3.4 Привязка переменных и колонок таблицы

Рис. 3.5 Импорт структуры таблицы
Краткое описание колонок
Таблица в базе данных создана для хранения максимально возможного набора данных. Значения в некоторых колонках могут отсутствовать, поскольку это зависит от установленных счетчиков, настроек УСПД и типа данных.
ID - уникальный идентификатор записи;
DATE_TIME_STAMP - метка времени, когда логгер считал данные;
DATA_SOURCE_NAME - идентификатор источника данных (номер COM порта или IP адрес);
DEVICE_ID - сетевой адрес прибора, заданный в настройках программы;
DEVICE_NAME - зарезервировано;
DEVICE_DESC - описание прибора, заданное в настройках программы;
TIMESTAMP - метка времени данных из прибора в локальном часовом поясе;
TIMESTAMP_UTC - метка времени данных из прибора в часовом поясе UTC (рассчитывается программой);
SERIAL_NO - серийный номер прибора (считывается из прибора);
DATA_TYPE - тип данных (2 - месячный, 4 - текущие данные);
SLAVE_ID - уникальный номер подключенного электросчетчика в базе данных УСПД;
SLAVE_ADDRESS - сетевой адрес электросчетчика на шине;
SLAVE_TYPE - тип электросчетчика (см. документацию на УСПД);
SLAVE_INTERFACE - тип интерфейса (шины);
SLAVE_SERIALNO - серийный номер электросчетчика;A_POS0 - Прямая суммарная активная энергия от сброса;
A_POS1, A_POS2, A_POS3 - Прямая активная энергия от сброса по тарифу №1-3;
R_POS0 - Обратная суммарная активная энергия от сброса;
R_POS1, R_POS2, R_POS3 - Прямая реактивная энергия от сброса по тарифу №1-3;
A_NEG0 - Обратная суммарная активная энергия от сброса;
A_NEG1, A_NEG2, A_NEG3 - Обратная активная энергия от сброса по тарифу №1-3;
R_NEG0 - Обратная суммарная реактивная энергия от сброса;
R_NEG1, R_NEG2, R_NEG3 - Обратная реактивная энергия от сброса по тарифу №1-3;Только текущие данные
U - напряжение;
I - ток ;
CF - Значение косинуса F;
P - Мгновенная активная мощность;
Q - Мгновенная реактивная мощность;
S - Мгновенная полная мощность;
F - частота сети;TD -расхождение времени часов счетчика и УСПД;
EVENT_ID - код события (неисправности).
Запись данных в текстовый лог файл
Наша программа может параллельно создавать текстовые лог файлы, в которые будет записывать все принятые и обработанные данные. Лог файл можно рассматривать как резервную копию данных, или использовать их для последующего анализа. Программа может автоматически создавать новый лог файл ежедневно, еженедельно или ежемесячно (рис. 1 и 2).

Рис. 4.1 Настройка вида данных для УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS

Рис. 4.2 Настройка лог файла для УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS
OPC сервер
Программа имеет встроенный OPC DA2, DA3 или OPC UA сервер, через который всегда можно получить и посмотреть последнее считанное текущее или архивное значение. Рекомендуемые настройки сервера OPC представлены на рис. 1 и 2.
Обратите внимание, что OPC сервер не позволяет получать архивные данные. Он хранит только последнее полученное значение, в том числе и для архивных данных.

Рис. 5.1 Включение OPC сервера для УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS

Рис. 5.2 УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS. Пример принятых данных
Для удобства, можно поместить текущие и архивные данные в разные группы тегов. Для этого можно указать правило группировки данные в OPC сервере. В данном примере они группируются по серийному номеру и типу данных.

Рис. 5.3 Группировка данных по типу
Отчеты
Наша программа предназначена для чтения данных, и к сожалению, не имеет программы построения отчетов.
За дополнительную плату мы готовы:
- Разработать программу построения отчетов под ваши нужды.
- Адаптировать программу под вашу базу данных. Можно реализовать запись практически в любую базу данных.
- Сделать передачу данных на веб-сервер.
- Любая другая доработка под ваши нужды.
УМ-31, УМ-30 RTU, УМ-40 RTU. Чтение архивных и текущих данных. OPC сервер
Обычно, УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS, подключается к компьютеру через последовательный интерфейс RS-232 и передает данные, используя собственный протокол обмена.
Вы также можете подключить этот прибор через преобразователь RS232 в Ethernet. В этом случае к прибору можно подключаться удаленно, по сети.
Установка
Если подключение осуществляется через последовательный порт RS-232 (COM порт), то необходимо установить Advanced Serial Data Logger (первая ссылка сверху).
Если подключение к прибору осуществляется по сети или через Интернет, то необходимо установить Advanced TCP/IP Data Logger (первая ссылка сверху).
В дополнение к основной программе необходимо установить модуль "Binary parsers". Этот модуль обеспечивает взаимодействие логгера и прибора УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS: отправляет запросы по расписанию, обрабатывает полученные ответы, подготавливает данные для экспорта.
Настройка связи
1. Настройте подключение к прибору (параметры COM порта или TCP соединения) (рис. 1 и 2).

Рис. 1.1 Параметры COM порта

Рис. 1.2 Параметры TCP порта
2. Выберите модуль-парсер для УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS в настройках. Если прибор подключен к компьютеру через RS-232, то вы должны дополнительно выбрать такой же модуль запроса данных (на рисунке не показан) (рис. 3).

Рис. 1.3 Выбор модуля парсера УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS
Настройка чтения данных
Вы должны задать сетевой адрес прибора. Этот адрес используется при отправке запросов в прибор. Также, вы можете задать дополнительное описание прибора. Эти значения также можно будет использовать при экспорте данных и записывать в базу (рис. 1).

Рис. 2.1 Настройка чтения данных
В настройках модуля парсера укажите расписание чтения данных (рис. 2, 3). Вы можете настроить расписание для каждого типа данных (текущие, часовой, суточный или накопительный архив).

Рис. 2.2 УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS. Текущие данные
Опрос архивных данных начинается с момента включения опроса. Если необходимо считать данные из имеющегося архива, то нужно нажать кнопку "Загрузить архивные данные начиная с даты" и задать начальную дату. При чтении архивных данных программа запоминает дату и время последнего считанного значения и возобновляет чтение с сохраненной даты. Вы можете повторно считать архив, задав новую дату начала чтения данных. Обратите внимание, что программа не проверяет наличие архивных данных в базе данных, что может привести к появлению дубликатов.

Рис. 2.3 УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS. Архивные данные
Запись данных в базу данных
Для записи данных можно воспользоваться модулем экспорта данных "ODBC Database". Этот модуль может записывать данные в любую базу данных, для которой есть драйвер ODBC.
В одну таблицу базу данных можно собирать данные от нескольких устройств, поскольку каждая строчка данных будет содержать уникальный идентификатор прибора и номер порта.
1. Вручную создайте таблицу с нужной структурой в вашей базе данных. Рекомендуемые скрипты для создания таблиц приведены ниже.
MS SQL Server
/**** split line *****/SET ANSI_NULLS ON /**** split line *****/GO /**** split line *****/SET QUOTED_IDENTIFIER ON /**** split line *****/GO CREATE TABLE dbo.DATA ( ID decimal(10,0) IDENTITY(1,1) NOT NULL, TIMESTAMP_UTC datetime NULL, TIMESTAMP datetime NULL, DATE_TIME_STAMP datetime NULL, DATA_SOURCE_NAME nvarchar(32) NULL, DEVICE_ID nvarchar(16) NULL, DEVICE_NAME nvarchar(32) NULL, DEVICE_DESC nvarchar(32) NULL, DATA_TYPE int NULL, SLAVE_ID nvarchar(6) DEFAULT NULL, SLAVE_ADDRESS nvarchar(16) DEFAULT NULL, SLAVE_TYPE int NULL, SLAVE_INTERFACE int NULL, SLAVE_SERIALNO nvarchar(16) DEFAULT NULL, A_POS0 real NULL, A_POS1 real NULL, A_POS2 real NULL, A_POS3 real NULL, R_POS0 real NULL, R_POS1 real NULL, R_POS2 real NULL, R_POS3 real NULL, A_NEG0 real NULL, A_NEG1 real NULL, A_NEG2 real NULL, A_NEG3 real NULL, R_NEG0 real NULL, R_NEG1 real NULL, R_NEG2 real NULL, R_NEG3 real NULL, U real NULL, I real NULL, CF real NULL, P real NULL, Q real NULL, S real NULL, F real NULL, TD real NULL, EVENT_ID int NULL CONSTRAINT [PK_UN_DATA] PRIMARY KEY ( [ID] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] /**** split line *****/GO CREATE INDEX [DATA_DEVICE_ID_IDX] ON DATA ([DEVICE_ID]); /**** split line *****/GO CREATE INDEX [DATA_TIMESTAMP_IDX] ON DATA ([TIMESTAMP_UTC]); /**** split line *****/GOMySQL
CREATE TABLE `DATA` ( `ID` int(11) NOT NULL auto_increment, `TIMESTAMP_UTC` datetime DEFAULT NULL, `TIMESTAMP` datetime DEFAULT NULL, `DATE_TIME_STAMP` datetime DEFAULT NULL, `DATA_SOURCE_NAME` varchar(32) DEFAULT NULL, `DEVICE_ID` varchar(16) DEFAULT NULL, `DEVICE_NAME` varchar(32) DEFAULT NULL, `DEVICE_DESC` varchar(32) DEFAULT NULL, `DATA_TYPE` int DEFAULT NULL, `SLAVE_ID` varchar(6) DEFAULT NULL, `SLAVE_ADDRESS` varchar(16) DEFAULT NULL, `SLAVE_TYPE` int DEFAULT NULL, `SLAVE_INTERFACE` int DEFAULT NULL, `SLAVE_SERIALNO` varchar(16) DEFAULT NULL, `A_POS0` double DEFAULT NULL, `A_POS1` double DEFAULT NULL, `A_POS2` double DEFAULT NULL, `A_POS3` double DEFAULT NULL, `R_POS0` double DEFAULT NULL, `R_POS1` double DEFAULT NULL, `R_POS2` double DEFAULT NULL, `R_POS3` double DEFAULT NULL, `A_NEG0` double DEFAULT NULL, `A_NEG1` double DEFAULT NULL, `A_NEG2` double DEFAULT NULL, `A_NEG3` double DEFAULT NULL, `R_NEG0` double DEFAULT NULL, `R_NEG1` double DEFAULT NULL, `R_NEG2` double DEFAULT NULL, `R_NEG3` double DEFAULT NULL, `U` double DEFAULT NULL, `I` double DEFAULT NULL, `CF` double DEFAULT NULL, `P` double DEFAULT NULL, `Q` double DEFAULT NULL, `S` double DEFAULT NULL, `F` double DEFAULT NULL, `TD` double DEFAULT NULL, `EVENT_ID` int DEFAULT NULL, PRIMARY KEY (`ID`) ) ENGINE=InnoDB; -- split linePostgreSQL
CREATE TABLE DATA ( ID SERIAL, TIMESTAMP_UTC timestamp DEFAULT NULL, TIMESTAMP timestamp DEFAULT NULL, DATE_TIME_STAMP timestamp DEFAULT NULL, DATA_SOURCE_NAME varchar(32) DEFAULT NULL, DEVICE_ID varchar(16) DEFAULT NULL, DEVICE_NAME varchar(32) DEFAULT NULL, DEVICE_DESC varchar(32) DEFAULT NULL, DATA_TYPE integer DEFAULT NULL, SLAVE_ID varchar(6) DEFAULT NULL, SLAVE_ADDRESS varchar(16) DEFAULT NULL, SLAVE_TYPE integer DEFAULT NULL, SLAVE_INTERFACE integer DEFAULT NULL, SLAVE_SERIALNO varchar(16) DEFAULT NULL, A_POS0 double precision DEFAULT NULL, A_POS1 double precision DEFAULT NULL, A_POS2 double precision DEFAULT NULL, A_POS3 double precision DEFAULT NULL, R_POS0 double precision DEFAULT NULL, R_POS1 double precision DEFAULT NULL, R_POS2 double precision DEFAULT NULL, R_POS3 double precision DEFAULT NULL, A_NEG0 double precision DEFAULT NULL, A_NEG1 double precision DEFAULT NULL, A_NEG2 double precision DEFAULT NULL, A_NEG3 double precision DEFAULT NULL, R_NEG0 double precision DEFAULT NULL, R_NEG1 double precision DEFAULT NULL, R_NEG2 double precision DEFAULT NULL, R_NEG3 double precision DEFAULT NULL, U double precision DEFAULT NULL, I double precision DEFAULT NULL, CF double precision DEFAULT NULL, P double precision DEFAULT NULL, Q double precision DEFAULT NULL, S double precision DEFAULT NULL, F double precision DEFAULT NULL, TD double precision DEFAULT NULL, EVENT_ID integer DEFAULT NULL, PRIMARY KEY (ID) ); -- split lineMS Access
Файл базы данных "database.mdb" можно скачать тут.
2. Откройте настройки модуля экспорта данных, включите запись в базу данных, перейдите к закладке "Соединение" и создайте подключение к вашей базе, кликнув на кнопке "Настроить" (рис. 1-3).

Рис. 3.1 Выбор модуля экспорта данных

Рис. 3.2 Включение записи в базу данных

Рис. 3.3 Настройка подключения к базе
3. На закладке "Связывание" импортируйте из базы структуру вашей таблицы и "привяжите" переменные парсера к соответствующим колонкам. Удалите из списка все колонки, для которых нет привязки и в скрипте создания таблицы задано значение по умолчанию (рис. 4 и 5).

Рис. 3.4 Привязка переменных и колонок таблицы

Рис. 3.5 Импорт структуры таблицы
Краткое описание колонок
Таблица в базе данных создана для хранения максимально возможного набора данных. Значения в некоторых колонках могут отсутствовать, поскольку это зависит от установленных счетчиков, настроек УСПД и типа данных.
ID - уникальный идентификатор записи;
DATE_TIME_STAMP - метка времени, когда логгер считал данные;
DATA_SOURCE_NAME - идентификатор источника данных (номер COM порта или IP адрес);
DEVICE_ID - сетевой адрес прибора, заданный в настройках программы;
DEVICE_NAME - зарезервировано;
DEVICE_DESC - описание прибора, заданное в настройках программы;
TIMESTAMP - метка времени данных из прибора в локальном часовом поясе;
TIMESTAMP_UTC - метка времени данных из прибора в часовом поясе UTC (рассчитывается программой);
SERIAL_NO - серийный номер прибора (считывается из прибора);
DATA_TYPE - тип данных (2 - месячный, 4 - текущие данные);
SLAVE_ID - уникальный номер подключенного электросчетчика в базе данных УСПД;
SLAVE_ADDRESS - сетевой адрес электросчетчика на шине;
SLAVE_TYPE - тип электросчетчика (см. документацию на УСПД);
SLAVE_INTERFACE - тип интерфейса (шины);
SLAVE_SERIALNO - серийный номер электросчетчика;A_POS0 - Прямая суммарная активная энергия от сброса;
A_POS1, A_POS2, A_POS3 - Прямая активная энергия от сброса по тарифу №1-3;
R_POS0 - Обратная суммарная активная энергия от сброса;
R_POS1, R_POS2, R_POS3 - Прямая реактивная энергия от сброса по тарифу №1-3;
A_NEG0 - Обратная суммарная активная энергия от сброса;
A_NEG1, A_NEG2, A_NEG3 - Обратная активная энергия от сброса по тарифу №1-3;
R_NEG0 - Обратная суммарная реактивная энергия от сброса;
R_NEG1, R_NEG2, R_NEG3 - Обратная реактивная энергия от сброса по тарифу №1-3;Только текущие данные
U - напряжение;
I - ток ;
CF - Значение косинуса F;
P - Мгновенная активная мощность;
Q - Мгновенная реактивная мощность;
S - Мгновенная полная мощность;
F - частота сети;TD -расхождение времени часов счетчика и УСПД;
EVENT_ID - код события (неисправности).
Запись данных в текстовый лог файл
Наша программа может параллельно создавать текстовые лог файлы, в которые будет записывать все принятые и обработанные данные. Лог файл можно рассматривать как резервную копию данных, или использовать их для последующего анализа. Программа может автоматически создавать новый лог файл ежедневно, еженедельно или ежемесячно (рис. 1 и 2).

Рис. 4.1 Настройка вида данных для УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS

Рис. 4.2 Настройка лог файла для УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS
OPC сервер
Программа имеет встроенный OPC DA2, DA3 или OPC UA сервер, через который всегда можно получить и посмотреть последнее считанное текущее или архивное значение. Рекомендуемые настройки сервера OPC представлены на рис. 1 и 2.
Обратите внимание, что OPC сервер не позволяет получать архивные данные. Он хранит только последнее полученное значение, в том числе и для архивных данных.

Рис. 5.1 Включение OPC сервера для УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS

Рис. 5.2 УМ-31 RTU, УМ-40 RTU, УМ-30 GPRS. Пример принятых данных
Для удобства, можно поместить текущие и архивные данные в разные группы тегов. Для этого можно указать правило группировки данные в OPC сервере. В данном примере они группируются по серийному номеру и типу данных.

Рис. 5.3 Группировка данных по типу
Отчеты
Наша программа предназначена для чтения данных, и к сожалению, не имеет программы построения отчетов.
За дополнительную плату мы готовы:
- Разработать программу построения отчетов под ваши нужды.
- Адаптировать программу под вашу базу данных. Можно реализовать запись практически в любую базу данных.
- Сделать передачу данных на веб-сервер.
- Любая другая доработка под ваши нужды.
Сопутствующие статьи:
- Запись данных OPC в базу данных черех ODBC (на примере MS Access) (возможности: добавление групп и переменных, запись в базу ODBC)
- Добавление метки времени в CSV файл (возможности: OPC группы)
- OPC в MSSQL: Запись множества переменных OPC в базу MS SQL 2008
- OPC в MSSQL: Запись нескольких переменных OPC в разные колонки
- OPC в MySQL: Запись тегов OPC в базу данных MySQL 5
- OPC в базу данных: Сохранение OPC тегов в базе данных
- OPC в Excel: Запись данных OPC в Excel
- Фильтрация данных по значению OPC тега, и запись в базу только, когда значение меняется
- Игнорирование данных, если значение тега не равно указанному значению
- Обработка и сохранение данных OPC по событию от OPC сервера
- Агрегация данных с нескольких серверов в один OPC сервер
Настройка DCOM и OPC на Windows 2008 и Windows 7
- Часть 1. Установка OPC компонент, необходимых для функционирования OPC интерфейса.
- Часть 2. Настройка DCOM и OPC. Создание пользователя и выдача прав.
- Часть 3. Настройка брандмауэра Windows 2008 и Windows 7 для разрешения работы DCOM и OPC.
- Часть 4. Настройка параметров DCOM. Dcomcnfg.
- Часть 5. Настройка DCOM и OPC. Проблемы и их решение.
Настройка DCOM и OPC на Windows 8 и Windows Server 2012
- Часть 1. Установка OPC компонент, необходимых для функционирования OPC интерфейса.
- Часть 2. Настройка DCOM и OPC. Создание пользователя и выдача прав.
- Часть 3. Настройка брандмауэра Windows 8 и Windows Server 2012 для разрешения работы DCOM и OPC.
- Часть 4. Настройка параметров DCOM. Dcomcnfg.
- Часть 5. Настройка DCOM и OPC. Проблемы и их решение.