Здравствуйте
Есть ли возможность "форсировать" отправку значения команды в контроллер с помощью:
1) скрипта C#?
2) выхода функционального блока?
Необходимость возникла в связи со следующими проблемами:
1) скрипт используется для копирования настроек одного блока на несколько других. Если в момент выполнения скрипта с одним из блоков нет связи, то после восстановления связи повторное выполнение скрипта не приводит к передаче настроек в контроллер блока;
2) при вводе настроек времени используется ФБ "Разбор времени". Выходы ФБ связаны с OPC-переменными. Если установить какое-то время в MasterSCADA (например 12:00), а затем другое время с панели оператора, то при повторном вводе 12:00 в MasterSCADA время в контроллер не передаётся
Последний раз редактировалось osc; 04.04.2017 в 13:26.
Вот так можно
var item=HostFB.OutputGroup.GetPin("Параметр1").TreePi nHlp;
item.AddAssignValueTask(ВашеЗначение,null);
Спасибо.
версия 3,8 значение при размещении на мнемосхеме как значение не меняет цвет при выходе в аварийные границы. Границы заданы шкалой. Цвета в свойствах установлены, галочки установлены. Кстати, при попытке изменения цвета границ в свойствах значения на мнемосхеме, цветовая шкала не открывается (нажимаю на квадратик цвета), цвет не меняется (в индикаторе тоже цвет нельзя изменить).
Что не так делаем?
Приложите ваш проект и несколько скриншотов демонстрирующих проблему.
Спасибо.
Оказалось, что последствия установки значения команды при отсутствии связи с контроллером отличаются в зависимости от используемого OPC-сервера.
Сейчас мы используем Lectus и ожидаем пока прибудет USB-ключ MasterOPC
Lectus ведёт себя так:
связь пропала -> присвоили скриптом значение команде -> связь восстановилась -> значение в контроллере не изменилось -> присвоили скриптом то же значение команде -> значение в контроллере не изменилось.
MasterOPC:
связь пропала -> присвоили скриптом значение команде -> связь восстановилась -> значение в контроллере изменилось на ранее введённое.
Желаемое поведение:
связь пропала -> присвоили скриптом значение команде -> связь восстановилась -> значение в контроллере не изменилось - > присвоили скриптом то же значение команде -> значение в контроллере изменилось.
Так как Lectus мы меняем на MasterOPC, то вопрос изменяется - как сделать так, чтобы при использовании MasterOPC значения в контроллер после восстановления связи отправлялись только после явных действий оператора?
Во вложении тестовый проект.
Не удалось посмотреть ваш проект - некорректно заархивировался. Заархивируйте другим архиватором (7z например)
Спасибо.
Не получается загрузить файл на форум.
Вот ссылка на dropbox: https://www.dropbox.com/s/9vibsgubcn...ttings.7z?dl=0