Введение
Версия:
2.2.1.29 20.11.2017 + Поддержка Local echo off для всех подключений + Кнопка сохранения окна Лога в файл + Кнопка коррекции времени устройства 2.2.0.28 10.11.2017 + Поддержка Local echo off для COM-порта 2.2.0.26 03.03.2017 + Работа с COM-портами + ... (много всего) 2.1.0.19 18.12.2015 2.0.2.15 18.08.2015 2.0.1.4 30.05.2014
Назначение
Программа позволяет выполнить проверку обмена данными с устройством, подключенным по
- RS-интерфейсу к КЦС-IPM / КУН-IPM (напрямую или через преобразователь),
- COM-порту к ПК
- доступным напрямую по компьютерной сети (TCP/IP).
Является крайне полезной утилитой при подключении стороннего оборудования (счетчиков, контроллеров) к системе АСУД-248.
Для работы с программой не требуется наличие Драйверов EXT-модуля.
Если вы хотите проверить работу RS-концентраторов АСУД-248, следует воспользоваться программой RS SCAN.EXE
Запуск программы
Внимание! Перед запуском программы следует отключить все потенциальные приложения осуществляющие опрос тестируемого оборудования: * KCSLogger * Tekon OPC Server - остановить службу Windows (предварительно закрыв программу АСУД.SCADA). Т.е. если устройство или концентратор, к которому подключено данное устройство, опрашиваются указанными программами, то они должны быть предварительно закрыты.
В случае, если тестируемое устройство подключено к концентратору КЦС-IPM / КУН-IP следует предварительно выполнить настройку интерфейса концентратора с помощью программы IPSET.EXE
Окно программы KCS_DEMO представлено на рисунке ниже.
Элементы интерфейса:
- Кнопка Открыть - переоткрывает выбранный драйвер, если он закрыт
- Флажок Очищать Лог - при переоткрытии драйвера, очистить лог справа
Порядок работы с программой
1. Выбрать драйвер устройства - обычно наименование драйвера совпадает с именем устройства, или с протоколом работы устройства (например, Modbus).
2. По необходимости нажать Информация и посмотреть описание выбранного Драйвера
-==Информация об устройстве==- Прибор: СЕ-102 код по БД:1021 Архив: С М Число проходов для доступа к архиву: 1 Тип драйвера EXT-модуля: EXT
Архив - типы архивов поддерживаемые устройством:
- Ч - почасовой
- С - посуточный
- М - помесячный
Число проходов по архиву - служебная информация.
Тип драйвера EXT-модуля - указывает тип драйвера, который должен быть записан на USB-ключ защиты для автоматического опроса устройства в программе KCSLogger.
3. Установить параметры связи:
- IP - IP адрес КЦС-IPM, КУН-IP или непосредственно устройства.
- В случае если программа обнаружит свободные COM-порты на ПК их наименование будет выведено в список. При выборе СОМ-порта будут активированы параметры его настройки:
- Скорость
- Бит данных
- Четность
- Число стоп бит
- TimeOut (мс) - по умолчанию 1700.
- Порт - обычно 5000 (при работе с КЦС-IPМ, КУН-IP).
- Local echo off - игнорировать "эхо". Может быть необходимо для преобразователей подключаемых к COM-портам (реже для других типов).
- RS_номер - RS-идентификатор, сетевой адрес устройства, например: в сети RS-485. В некоторых случаях, если подключено одно устройство можно указывать "бродкастный адрес". Подробнее об указании RS_номера, следует смотреть в документации на конкретное устройство в разделе Интеграция.
- Индекс архива - по умолчанию 1, менять не следует.
- Доп. инфо - дополнительная информация, может быть указана в случае необходимости, см. документацию на устройство в разделе Интеграция. При выборе драйвера устройства, для которого следует указывать дополнительную информацию, поле будет заполнено значением по умолчанию для данного типа устройства. Для драйвера M-Bus в поле доп.информация по необходимости можно указать hex-код команды Application Reset (например: 00, C0 и т.п.)
- Фикс. - не изменять значение поля "Доп. инфо" указанное пользователем в ручную.
- Данные (HEX) - после выбора драйвера и инициализации устройства можно послать произвольный набор байт (например: 10 40 FE 3E 16) - обычно данная функция не используется.
4. Инициализировать драйвер, нажать Инициализация
Пример сообщения в окне справа:
-==Инициализация==- Драйвер : Буфер на 100 записей Result = 0 - Нет ошибки ---
5. Запросить последовательно Служебные, Текущие или Архивные данные устройства
- Служебные - данные о внутренних настройках устройства.
- Текущие (мгновенные) - данные текущих измерений.
- Архив - данные архива измерений (если архив присутствует в устройстве).
- Линия - информация об условном качестве линии связи (пока не используется).
Перед запросом Архива следует указать:
- Тип архива
- Дата-время - с какой даты следует прочитать архив
- Индекс архива (оставить 1).
6. Пронаблюдать ответ устройства в окне справа
Пример запроса мгновенных (текущих) значений.
- ">>" - запись данных в устройство
- "<<" - чтение данных из устройства
- "П=" - обозначает код параметра (служебная информация) и его значение, успешно считанное с прибора.
В случае возникновение ошибки, ее код и описание будут указаны в значении Result.
Описание типовых ошибок
| Код ошибки | Описание ошибки | Пояснение ошибки |
|---|---|---|
| 0 | Нет ошибки | |
| 1 | Ошибка Нет устройства (TCP тайм-аут) | За указанное время от устройства не получен ожидаемый ответ. Устройство с таким RS-идентификатором отсутствует. |
| 101 | Ошибка формата пакета | Некорректный ответ устройства. Ошибка в протоколе или реализации драйвера устройства |
| 102 | Ошибка Сетевой номер не верен | Ответ пришел от устройства с другим RS-идентификатором |
| 131 | Ошибка Архив пуст | В архиве устройства отсутствуют данные |
| 132 | Ошибка Архив не поддерживается | Устройство не поддерживается запрашиваемый тип архива |
| 602 | Ошибка команды ответа | Устройство вернуло неожиданный ответ. Ошибка в протоколе или реализации драйвера устройства |
| 603 | Ошибка CRC | Помеха в линии связи. |
| 702 | Ошибка нет инициализации | Необходимо предварительно инициализировать устройство (нажав Инициализация) |
| 801..899 | Ошибка драйвера | Некорректная реализация драйвера. Следует обратиться в Текон-Автоматика |
| 901 | Ошибка Пинг | Нет связи до КЦС-IPM (КУН-IPM) или непосредственно до устройства, подключенного напрямую к компьютерной сети |
| 908 | Ошибка. Входные данные некорректны |
Некорректно указан RS-идентификатор устройства. Следует закрыть драйвер и указать корректный идентификатор. Или некорректно указаны Дополнительные параметры |
| 909 | Опрос устройства блокирован (Драйвер-Ext) | Для опроса устройства требуется приобрести Драйвер Ext-модуля |
7. Закрыть драйвер
В случае необходимости связаться со службой технической поддержки Текон-Автоматика, следует скопировать результаты обмена данными с устройством из окна справа в файл (перед копированием следует переключить раскладку клавиатуры (язык) на Русский (RU)) и переслать его по электронной почте с описанием типа подключаемого устройства и описанием проблемы.
Задание нового RS-идентификатора
Для некоторых типов устройств возможно обновление Идентификатора устройства (адреса устройства в сети) - RS-номера.
При этом после Инициализации драйвера становится активна кнопка Задать RS-номер.
Зачем может потребоваться менять Идентификатор? Как правило, при выпуске устройства программируются с Идентификатором "по умолчанию", а при объединении их в сеть необходимо, чтобы адрес каждого устройства был уникальным в данной сети
Последовательность действий по изменению Идентификатора:
- к ПК (через преобразователь) должен быть подключен только один прибор
- ввести в поле RS-идентификатор текущий Идентификатор или бродкастный адрес
- нажать Служебные, проконтролировать ответ устройства
- нажать Задать RS-номер и ввести новый идентификатор.
Обмен данными с Modbus-устройствами
Отдельно рассмотрим обмен данными с устройствами, работающими по протоколу Modbus.
С помощью программы KCS_DEMO можно:
- прочитать значения 1 - 3 регистров.
- уточнить параметры настройки Modbus-устройства:
- базовый регистр;
- возможность чтения группы регистров;
- возможность чтения группы регистров с пропусками в группе.
Предварительно следует выполнить шаги описанные выше в разделе "Запуск программы".
Далее, выбрать драйвер в зависимости от реализуемого устройством протокола:
- mbrtu.drv (Modbus RTU)
- mbtcp.drv (Modbus TCP)
Чтение одного регистра
Нажать кнопку "Инициализация" и в открывшемся окне указать параметры чтения с устройства
Подробнее о параметрах см. в Modbus-устройства
При первом чтении с устройства установить следующие значения:
- Базовый регистр - 0 (в редких случаях 1).
- Читать за раз не более - 1 регистра.
- Пропуски - Нет.
- Адрес - указать Адрес читаемого регистра. Для указания Адреса в HEX, следует добавить впереди символ $, например: $A001.
- Адрес 2, Адрес 3 - оставить пустыми.
Нажать Ок.
Выполнить чтение данных, нажав кнопку "Текущие", пронаблюдать ответ в окне справа (см. рисунок в п.6 выше).
В случае если не верно был указан РЕГИСТР , будет получено сообщение об ошибке
Следует уточнить Регистр чтения и повторить чтение данных с устройства.
В случае если не верно был указан АДРЕС читаемого регистра, будет получено сообщение об ошибке
Если при этом был указан Базовый регистр = 1, попробовать установить значение 0. Если был указан - 0, попробовать установить - 1.
При необходимости изменить параметры чтения, следует повторно нажать кнопку "Инициализация" и указать другие параметры. После этого снова нажать "Текущие".
Уточнение для ADFweb_HD67044
Для конвертера M-bus ADFWeb HD 67044 в случае если ответ от опрашиваемого прибора не получен, будет получено сообщение об ошибке
Уточнение общих параметров Modbus-устройства
После того, как был успешно прочитан один регистр устройства, можно попытаться уточнить общие параметры Modbus-устройства: можно ли читать группу регистров в одном запросе?
Это в целом влияет лишь на общее время опроса устройства. При возможности чтении группы регистров - общее время опроса устройства снижается, что может иметь значение при большом числе подключенных устройств.
Для начала следует заполнить Адреса 3-х любых регистров устройства последовательно расположенных в таблице и указать параметры:
- Читать за раз не более - 1 регистра.
- Пропуски - Нет.
Нажать "Ок". Нажать "Текущие".
С устройства должны быть корректно считаны три значения.
Далее следует повторно нажать "Инициализация" и указать:
- Читать за раз не более - 0 регистра.
- Пропуски - Нет.
Нажать "Ок". Нажать "Текущие".
Если при этом опять считаются три значения без ошибки, то устройство поддерживает чтение группы регистров в одном запросе. При настройке Modbus-устройства в программе ASUDBase можно указать значение "Читать группу элементов" - 0 (т.е. любое количество). Следует отметить, что в документации на Modbus-устройство может быть ограничено максимальное число элементов группы, поэтому рекомендуется указывать не 0, а например: 10 или 5.
Далее следует проверить возможно ли чтение группы регистров с пропуском.
Для этого следует ввести Адреса 3-х непоследовательно расположенных в адресной таблице регистров и указать параметры:
- Читать за раз не более - 0.
- Пропуски - Да.
Нажать "Ок". Нажать "Текущие".
Если при этом опять считаются три значения без ошибки, то устройство поддерживает чтение группы регистров с пропусками в одном запросе. При настройке Modbus-устройства в программе ASUDBase можно указать "Разрешать пропуски в группе".
По завершении закрыть драйвер, нажав Закрыть.
Обмен данными с M-bus устройством
Рассмотрим обмен данными с устройством, адреса которого мы не знаем.
- Подключитесь к прибору напрямую с помощью M-Bus конвертера
- Если конвертер настраивается укажите параметры интерфейса 2400 8-Е-1 (или уточните по документации на прибор)
- Укажите RS-идентификатор = 0 (бродкастный адрес)
- Нажмите Служебные
В случае корректного ответ прибора будут получены примерно следующие данные:
N=43349047 <-- SecondaryID PrimaryID=13 <-- PrimaryID Тип=Горячая вода Версия прибора=74 Заводской номер=43349047
Закройте Драйвер.
В дальнейшем опрос устройства может проводиться с помощью указанных PrimaryID или SecondaryID. Подробнее об идентификаторах смотри статью M-Bus устройства.
В случае необходимости вы можете поменять PrimaryID, нажав на кнопку RS-идентификатор.
Внимание! Следует учитывать тот факт, что в связи с особенностью реализации M-bus драйвера, повторное нажатие кнопки Текущие не приводит к перечитыванию информации с подключенного прибора. Для полного обновления данных следует переоткрыть Драйвер.