This is topic Отчет тревог in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/31/t/001418.html

Posted by lenasher (Участник № / Member № 6606) on :
 
Здравствуйте, программа динамически формирует выходной аргумент типа STRING.
Необходимо записать строку в Отчет тревог с возможностью задавать свойства Квитирования, и категории сообщений (например, ошибка, инф., тревога, как в словарях сообщений). Подскажите, пожалуйста, алгоритм действий.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Передавайте строку из программы в аргументы 0 и 1 канала CALL.STRING поочередно.
Привяжите к этому каналу "Словарь сообщений" (на вкладке "Архивирование" редактора канала CALL.STRING).
В реальном времени в этот словарь будут записываться тексты из аргументов CALL.STRING.
Генерируйте сообщения в ОТ через числовой канал, настроенный на ОТ и этот словарь (например, канал HEX16 с взведенным флагом "Вид представления DEC") - значения канала синхронно с генерацией строки той же программой изменяйте 0/1.
 
Posted by lenasher (Участник № / Member № 6606) on :
 
Словарь Сообщений какого типа должен быть? Для_HEX16 ?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Да.
 
Posted by lenasher (Участник № / Member № 6606) on :
 
После предложенных манипуляций в ОТ идет сообщение из словаря, а не из аргументов канала CALL.STRING.
Также, в руководстве есть запись:
Запись длинных строк в канал CALL
Длинные (до 64 байт) строки могут быть записаны в аргументы каналов CALL.STRING, CALL.ChGroupReq и CALL.TVC. Аргументы не должны иметь привязок и иметь тип данных STRING.
Т.е. Аргументы могут быть STRING или нет?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Аргументы канала CALL.STRING должны иметь тип данных STRING.

Как Вы наблюдали содержимое атрибутов канала CALL.STRING? В каких именно аргументах?
Оно соответствует строкам, генерируемым программой?
Как Вы привязали словарь сообщений к каналу CALL.SCRIPT?
Какой канал посылает ожидаемые сообщения в ОТ?
Как меняются его значения?

Предложенный Вам механизм перепроверен в релизе 6.09.2.
 
Posted by lenasher (Участник № / Member № 6606) on :
 
Может, пришлете ваш пример с предложенным механизмом?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Проверка осуществлена в рамках реального проекта. Прислать его не можем.

Разработка специальных тестовых проектов по конкретные задачи проекта пользователя не входит в функции службы техподдержки.
Надеемся на понимание.
 
Posted by lenasher (Участник № / Member № 6606) on :
 
1. Данные STRING в панели МРВ видны в аргументах канала CALL.STRING и соответствует выходным аргументам типа OUT STRING ПРОГРАММЫ. (Только почему-то выводится 4 символа).
2. В свойствах канала CALL.STRING -> Архивация отметила ОТЧЕТ ТРЕВОГ и выбрала Индекс аварийного словаря.
3. В числовой канал, для которого тоже выбран Архивация -> Индекс аварийного словаря посылаю 1. Числовой канал HEX32 и словарь ДЛЯ_HEX32
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1. Привязку аргументов программы к аргументам CALL.STRING следует делать в аргументах CALL.Progr.
2. В свойствах канала CALL.STRING -> "Архивация" не надо отмечать "Отчет тревог". Достаточно привязать словарь.

3. Сколько аргументов у канала CALL.STRING?
4. В какой аргумент канала CALL.STRING передается строка, формируемая программой?
5. Когда Вы подаете "1" в канал HEX16? До генерации нужной строки в программе или после?
Сначала надо изменить строку в аргументе CALL.STRING и только потом подавать "1" в канал HEX16.
 
Posted by lenasher (Участник № / Member № 6606) on :
 
Отправила проект, помогите решить проблему.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
У нас нет возможности анализировать пользовательские проекты на правильность решения задачи.
В порядке исключения отвечаю на Ваш вопрос.
Программа написана неверно.

Для проверки работы узла в реальном времени после запуска узла выключите канал Программа#1:8 (через "Панель МРВ/Компоненты/Программа#1:8/атрибут3=1(OFF)").
Вручную меняйте значение (0/1) канала DOMess16.
Увидите в ОТ сообщения с заданными в программе строками.
 
Posted by lenasher (Участник № / Member № 6606) on :
 
Больше двух аргументов у канала CALL.STRING задавать можно? Динамически менять атрибуты словарей, можно (связывать, например, аргумент программы OUT и атрибут 130, Категория сообщения, словаря ДЛЯ_HEX32)?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Больше двух аргументов у канала CALL.STRING задавать можно.

Уточните, пожалуйста, назначение атрибута 130 у числового канала.
 
Posted by fenestarh (Участник № / Member № 6982) on :
 
Здравствуйте. Простите, что поднимаю эту тему, но у меня не получается выдать сообщение из канала CALL.String. Я храню строку в атрибуте 80 "Комментарий", индекс аварийного словаря привязан, но когда пишу в созданный канал HEX16 (у него то же привязан индекс аварийного словаря) 1, то выдаётся сообщение из словаря, а не моё из String-а. Подскажите, что я возможно делаю не так?
 
Posted by fenestarh (Участник № / Member № 6982) on :
 
Вопрос снят. Строка для сообщения должна храниться в аргументе CALL.String.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2