Advanced OPC Data Logger

Trust In Confidence!

Для Win2000 - Windows 11 (2022) (Server, x86, x64). Последняя версия: 3.10.0 build 306. 6 марта 2024.


OPC-ODBC bridge. Запись данных OPC в базу данных черех ODBC

Задача:

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

Таблица в базе данных MS Access имеет следующую структуру:

OPC ODBC. Структура таблицы
Рис.1. OPC ODBC. Структура таблицы

Данная структура таблицы удобна при небольшом количестве переменных, которые должны соответствовать одной метке времени.

Требования:

  • Advanced OPC Data Logger Professional или пробная версия;
  • Модуль "DDE server" для opc logger (опционально, для тестирования);
  • Модуль "ODBC database" для opc logger.

Предполагается что:

Вы работали ранее с OPC серверами и имеете представление об организации обмена данными между OPC клиентом и OPC сервером.

Решение:

Необходимо добавить переменные в Opc Logger. Для этого необходимо добавить конфигурацию в программу, если вы не сделали этого ранее. Для создания конфигурации воспользуйтесь кнопкой с плюсом в главном окне программы. В появившемся диалоговом окне перейдите к закладке "Настройки OPC" (рис.2).

OPC ODBC. Настройки OPC
Рис.2. OPC ODBC. Настройки OPC

На этой закладке необходимо создать:

  1. Группу OPC тэгов и определить ее параметры (рис.3);
  2. Добавить необходимые тэги OPC (рис.4).

OPC ODBC. Настройки группы
Рис.3. OPC ODBC. Настройки группы

Если опция "Активно" включена, то данные собираются с OPC сервера и экспортируются;

Если опция "Экспортировать всю группу" включена, то данные из всей группы экспортируются одновременно. Если значение переменной изменилось, то экспортируется новое значение, иначе экспортируется предыдущее значение из внутреннего буфера. Это значит, что каждая колонка в базе данных будет иметь свое значение. Если данная опция отключена, то данные могут быть записаны в базу данных в виде 4 колонок (которые выбираются дополнительными опциями):

  1. Имя переменной
  2. Значение переменной
  3. Качество переменной
  4. Метка времени переменной

Пример данных в главном окне программы, если опция включена:

Пример данных opc logger

Каждая переменная имеет уникальное имя. С этим именем переменная будет экспортироваться (рис.5).

Пример данных в главном окне программы, если опция выключена:

Пример данных opc logger

Как видно из примера выше переменные имеют фиксированные имена:

  • ITEM_NAME – переменная, которая содержит имя изменившегося OPC тэга;
  • ITEM_VALUE – переменная, которая содержит значение изменившегося OPC тэга;
  • UPDATE_DATE_TIME – переменная, которая содержит метку времени изменившегося OPC тэга;
  • ITEM_QUALITY – переменная, которая содержит качество (quality) изменившегося OPC тэга.

В этом примере требуется экспортировать каждую OPC переменную в свою колонку. Поэтому опция "Экспортировать всю группу" должна быть включена. В результате, после обновления переменных, в главном окне программы будет видно экспортируемые данные (рис.5).

OPC ODBC. Добавление OPC переменных
Рис.4. OPC ODBC. Добавление OPC переменных

  1. Необходимо указать имя компьютера, на котором находится OPC сервер, и нажать "Обновить". Если сервер находится на локальном компьютере, то нужно оставить это поле пустым или указать там LOCALHOST. Для доступа к удаленным серверам необходимо установить пакет OPC Core Components Redistributable, который свободно можно скачать с сайта opcfoundation.org. Затем настроить DCOM для доступа к удаленным серверам;
  2. Выберите имя сервера из списка. Если сервера нет в списке, то это значит, что вы неправильно настроили DCOM или не установили OPC Core Components Redistributable. В этом случаем можно ввести уникальный идентификатор сервера в поле "ClsID". После выбора сервера нажмите "Подсоединится"
  3. В появившемся списке переменных отметьте "галочкой" те тэги, которые вы хотите добавить. Если список пустой, то сервер не поддерживает получения списка переменных. Тогда укажите список переменных вручную.
  4. Нажмите "OK", для того, чтобы переменные были добавлены в выбранную группу (рис.2)

OPC ODBC. Главное окно программы
Рис.5. OPC ODBC. Главное окно программы.

На рисунке 5 показана структура экспортируемых данных:

  1. Имя переменной (до квадратных скобок). Данное имя необходимо использовать в модулях экспорта данных;
  2. Код типа данных в квадратных скобках. Программа использует этот параметр при экспорте;
  3. Значение указано после знака "=".

Если опция "Экспорт всех изменившихся данных одной строкой" на рис.3 включена, то данные будут экспортироваться в виде одной строки, как на рис.5. Данная опция обязательно при экспорте в базу данных. Если данная опция отключена, то данные будут иметь вид:

Пример данных opc logger
Рис.5. Пример данных.

Т.е. экспортируются только изменившееся значения, каждая переменная экспортируется одной строкой, что удобно для восприятия и записи в лог-файл.

Теперь, необходимо настроить экспорт данных в базу данных. Для этого необходимо перейти к странице "Модули-Экспорт данных" (рис.6)

OPC ODBC. Выбор модулей экспорта данных
Рис.6. OPC ODBC. Выбор модулей экспорта данных.

Здесь можно активировать модуль DDE server, чтобы проверить, что данные готовы для экспорта. Активируйте модуль в списке и нажмите "OK", чтобы применить изменения. Затем откройте эту страницу снова, выберите модуль DDE server в списке и нажмите "Настроить". В появившемся окне, на закладке "Активные переменные" должны отображаться переменные, которые были добавлены ранее (рис.7).

OPC ODBC. Активные переменные
Рис.7. OPC ODBC. Активные переменные.

Теперь необходимо настроить модуль экспорта данных "ODBC database" для записи данных в базу данных Microsoft Access. Активируйте этот модуль в списке (рис.6) и нажмите "Настроить".

OPC ODBC. Настройка экспорта в базу данных
Рис.8. OPC ODBC. Настройка экспорта в базу данных.

Активируйте указанные на рисунке 8 опции. Данные опции включают запись в базу данных, при этом соединение с базой данных будет постоянным и будет установлено только при первой необходимости.

На следующей странице (рис.9) необходимо:

  • выбрать имя ODBC соединения. Если нет готового ODBC соединения, то его можно создать в системном менеджере ODBC соединений, нажать кнопку "Настройка", а затем, нажав "Обновить";
  • Указать путь и имя к ранее созданной базе Microsoft Access.

OPC ODBC. Настройка соединения с базой данных
Рис.9. OPC ODBC. Настройка соединения с базой данных.

Далее необходимо "связать" имя переменной OPC с именем колонки в таблице. Это можно сделать на странице "Связывание" (рис. 10).

OPC ODBC. Свзяывание переменных и колонок таблицы
Рис.10. OPC ODBC. Связывание переменных и колонок таблицы.

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

OPC ODBC. Импорт описания таблицы
Рис.11. OPC ODBC. Импорт описания таблицы.

Для выполнения импорта необходимо:

  1. Нажать импорт и согласиться с очисткой списка переменных;
  2. Выбрать таблицу из списка и нажать OK;
  3. Описание колонок будет скопировано в окно "Связывание". Вы можете удалить ненужные колонки (например, в данном примере колонка ID содержит счетчик, который увеличивается автоматически) и указать имя переменной в поле "Имя переменной парсера". Необходимо проконтролировать, что тип данных переменной соответствует типу данных колонки, иначе возникнут ошибки при экспорте данных.

Нажмите "OK" во всех диалоговых окнах, чтобы применить изменения. Если все верно настроено, то в главном окне программы будут отображаться сообщения об успешном экспорте данных (рис.12) (если протокол активирован в опциях программы) и данные будут записаны в таблицу (рис.13).

OPC ODBC. Протокол сообщений
Рис.12. OPC ODBC. Протокол сообщений.

OPC ODBC. Записанные данные
Рис.13. OPC ODBC. Записанные данные.

Архив с тестовым OPC сервером, базой данных и конфигурацией программы можно скачать здесь. Для использования файлов из архива необходимо:

  1. Необходимо запустить OPC сервер один раз перед использованием;
  2. Импортировать конфигурацию (файл с расширением *.ini) (Команды-Загрузка резервной копии);
  3. Изменить путь к базе данных в свойствах модуля экспорта данных.

Сопутствующие статьи:

Настройка DCOM и OPC на Windows 2008 и Windows 7

Настройка DCOM и OPC на Windows 8 и Windows Server 2012