castle
Junior Member / Новичок
Участник № / Member № 3993
отправлено / posted
Добрый день. Подскажите пожалуйста в общих словах как подключить расходомер ЭХО-Р к ТМ. В последней версии вроде бы добавили драйвер для этого прибора, но я его не могу найти.
Сообщения / Posts 9 | Из / From: Ukraine
| IP / IP: IP адрес / IP address |
отправлено / posted
Для расходомера ЭХО-Р специальный драйвер не создавался. Чтение параметров с этого прибора можно реализовать либо с помощью каналов ChGroupReq с ПАРАМЕТР>0, подключаемых к Modbus-переменной R_FIFO_Queue, либо с помощью механизма "Обмен по произвольному протоколу по RS".
Сообщения / Posts 17345 | Из / From: Россия
| IP / IP: IP адрес / IP address |
castle
Junior Member / Новичок
Участник № / Member № 3993
отправлено / posted
На сайте сказано: "...в новый релиз SCADA TRACE MODE 6.06.3 добавлен механизм создания драйверов УСО, контроллеров или счетчиков по шине RS 485 без программирования. При помощи нового механизма уже созданы драйверы для ... расходомера ЭХО и других устройств." Я так понимаю механизм создания драйверов УСО - это и есть "Обмен по произвольному протоколу по RS" ?
Сообщения / Posts 9 | Из / From: Ukraine
| IP / IP: IP адрес / IP address |
отправлено / posted
Именно так. Драйвер, по существу, формируется в самом проекте узла. Реализован самим пользователем.
Сообщения / Posts 17345 | Из / From: Россия
| IP / IP: IP адрес / IP address |
castle
Junior Member / Новичок
Участник № / Member № 3993
отправлено / posted
Спасибо за консультацию. Интересно, можно как-то получить такой проект? Я конечно понимаю, лучше самому разобраться и настроить, но все-таки может кто-то готов поделиться?
Сообщения / Posts 9 | Из / From: Ukraine
| IP / IP: IP адрес / IP address |
g40in
Junior Member / Новичок
Участник № / Member № 6642
отправлено / posted
Добрый день AdAstra Technical Support . Пришлите пож-та пример который отправляли для castle
Сообщения / Posts 2 | Из / From: Россия
| IP / IP: IP адрес / IP address |
ControlEngineer
Junior Member / Новичок
Участник № / Member № 8769
отправлено / posted
Пожалуйста пришлите и мне пример с драйвером расходомера ЭХО-Р-02 по RS232.
Сообщения / Posts 4 | Из / From: Россия
| IP / IP: IP адрес / IP address |
ControlEngineer
Junior Member / Новичок
Участник № / Member № 8769
отправлено / posted
Решение получения данных с ЭХО-Р дистанционно нашел, через софт производителя, но остался чисто академический интерес завести данные в СКАДА ТМ. Нашел описание протокола ЭХО-Р:
"Маркер начала команды компьютера используется код 0хаа" (Все байты команды представлены в формате BCD.) Команды: 01 Идентификация: 1Б - Тип прибора 1Б - Версия 4Б - Заводской номер 2Б - CRC 02 Текущие данные: 4Б - H,м (float) 4Б - Q,м3/сек или U, м3 (float) 4Б - U, м3 4Б - t, мин 1Б - PU (lg(KU)+3, от 0 до 5 ) 1Б - ERR 2Б - CRC
Пример обработки полученных данных для получения текущего расхода:
Запрос данных: "AA 02";
Ответ на запрос: "04 47 3C 3E 13 A1 AF 3C 00 46 04 00 E0 7E 00 00 02 00 FF DD";
Значение расхода занимает с 5 по 8 байты: "13 A1 AF 3C";
Перевод ответа в нормальную последовательность: "3C AF A1 13";
Результат: Число с плавающей точкой одинарной точности (IEEE754), в десятичном виде: 0,0163 [куб.м/сек] или 58,68 куб.м/час
Сообщения / Posts 4 | Из / From: Россия
| IP / IP: IP адрес / IP address |
ControlEngineer
Junior Member / Новичок
Участник № / Member № 8769
отправлено / posted
Не нашел как запрашивать-получать данные с tcp\rs232 конвертера по ip, поэтому пытаюсь использовать часть рабочего решения с виртуальным COM портом, настроенным на передачу данных как IP:PORT(com5):
Установил ТМ6(base), создаю новый проект. В разделе "Источники\приемники" создаю группу "Пользовательске данные", в ней группу "Type12", внутри компонент "UniversalPLC_type1_1", указываю адрес порта 0х4 (COM_5?), тип: Integer(?) в строку дополнительно "SENDCMD=AA01"
В раздел "Система" создаю узел RTM_1, в каналлах "CALL#1", тип вызова "VECTOR", период 1 секунда, в аргументах "ARG_000" типа "IN" и данные "REAL".
Создаю здесь же экран "Экран#1:2" добавляю графический эдемент "Значение аргумента", перетаскиваю в "Аргументы экрана" ранее созданный "CALL#1" и потом оттуда его на созданный графический элемент "Значение аргумента".
В узле "RTM_1" создаю группу "Com порты", настраиваю как "COM5", назначение "Host variant".
Сохраняю проект, сохраняю для МРВ, запускаю профайлер, запускаю и.. ничего.
ControlEngineer
Junior Member / Новичок
Участник № / Member № 8769
отправлено / posted
quote:Отправитель / Originally posted by АдАстра. Техподдержка: В присланном Вам примере...
В присланном мне примере, действительно, есть файл проекта base версии, но этот проект имеет два экрана, "Экран#3:8" на уровне RTM_1 и "Экран#4:10"на уровне "Каналы".
Оба этих экрана пусты, каким образом выводилась и выводилась ли вообще переменная "Объем" я догадаться не cмог.
Естественно, я добавил переменную "Объем" в виде "Элементы для графических панелей - Значение аргумента" на оба экрана, перенастроил "COM-порт#1" уровня "RTM_1 - COM-порты" на номер порта используемого для связи с прибором (Com5) сохранил для использования в мониторе реального времени и запустил.
Сообщения / Posts 4 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Для отладки используйте панель МРВ - Вкладка Компоненты, анализируйте значения каналов, их достоверность, для каналов CALL аргументы в 124 атрибуте. Вывод в графику отлаживайте позже. Анализируйте перехват по данному COM-порту. CALL.Vector - отдельный механизм.
Сообщения / Posts 17345 | Из / From: Россия
| IP / IP: IP адрес / IP address |