Так чтобы в контроллер данные передать нужен не вход, а выход. А выход может иметь неограниченное количество подключений.
Вид для печати
Так чтобы в контроллер данные передать нужен не вход, а выход. А выход может иметь неограниченное количество подключений.
А как подать тогда в контроллер значения с выхода команды и загруженного файла? в перем контроллера имеется вход и выход. Я на вход переменной контроллера подаю выход команды,чтоб при изменении значения в команде и изменялось также в контроллере,а выход с загруженного файла как подать в контроллер,раз уже там сидит выход с команды?
то есть вход переменной контроллера уже занят командой.
Вход может иметь только одну связь.
Вам нужно соединить ОРС переменную с выходом ФБ. У данного ФБ, при записи на выход также передается записанное значение.
Вот именно так получается,а как связать два выхода в одном ФБ,то есть если изменилось значение пишется значение с команды,а если произошла загрузка пишется значение с загруженного файла?
Тогда используйте не данный ФБ, а скрипт из библиотеки как мы вам писали ранее.
Хорошо попробую, спасибо. Ну а там к чему привязывать выход с команды и загруженного файла?
Этот скрипт сохраняет значения команд в файл.
То есть вы вводите значение, команда сразу же передается в контроллер. Также вы можете сохранить ее состояние, и потом загрузить набор значений команд когда вам это потребуется.
Хорошо. А почему вы сделали 3 команды в одном объекте,а одну в другом?
А при запуске скады чтоб значение контроллера вывелось в команду как сделать, чтоб не нули были?
Связь со значением контроллера сделал но не показывает все равно..
Есть ли возможность увеличить число параметров скрипта?
Скрипт сохраняет состояние ВСЕХ команд которые находятся в одном объекте с ним и во вложенных объектах. То есть вам нужно просто добавить столько команд, сколько вам нужно.
Я посмотрел в динамизации входных значений "блока параметров" там прописано всего 10 значений,и в 4 из них ваши команды? если так то разве больше 10 команд можно чтоли туда закинуть?
или можно обойтись без "блока параметров" и просто закидывать команды в мнемосхему?
Можно ли в блок параметров добавить не параметры(кот можно в свойствах добавить),а значения в динамизации входных значений?
В вашем скрипте он с "блоком параметров" работает правильно,а как команду закидывая в мнемосхему работает не так как надо,считывание и запись по команде делает(то есть после редактирования значения),а после загрузки с файла в контроллер не записывает почему то?..
Значения команд при считывании изменились? Значит должно записаться.
Если же значения на выходах не изменились, то запись в ОРС не будет произведена (так как по умолчанию запись по изменению).
При считывании из файла изменяются значения, но не изменяются в контроллере?..
А если изменить в значении самой и нажать "да",то изменяется...может связь не работает правильно?
Пришлите ваш проект. Выполните Проект - Экспортировать.
Вот проект)
Если в самих значениях меняю значения меняется все работает,а если загружу с файла то значение на экране меняются а на контроллере нет.
и при включении скады не должны быть 0,а значения в контроллере.
1) У вас стоит период опроса 1 мс. Зачем? Установите стандартное значение 1000 мс - у корневого объекта, на закладке "Опрос" нажмите кнопку "Вернуть умолчания".
2) Удалите в папке проекта файлы из папок:
MasterSCADA Projects\Projects\БД\Объект\БД\Сохранение и загрузка набора команд\Список строк\
MasterSCADA Projects\Projects\БД\Объект\БД\Сохранение и загрузка набора команд\Объект 1\Сохранение и загрузка набора команд\
У вас сейчас смешаны наборы которые были из старого проекта и нового.
3) На мнемосхему удалите контрол "Блок параметров" - он вам не нужен, раз вы используете собственный контрол команд.
4) У команд, у которых вы используете обратную связь, на закладке "Опрос" поставьте галочку "Не передавать данные обратной связи".
все сделал как вы написали,но все равно после загрузки файла на мнемосхеме значение меняется,а в контроллере нет.?
Пришлите проект снова.
Вот проект.
Подскажите пожалуйста как быть?
Проблема возникает, если у команды установлена галочка "Не передавать данные обратной связи". Пока что снимите ее.
Галочку убрал,но все также.
+ добавилась еще одна проблема,при запуске скады в контроллере значения сбрасываются на 0.
и что в итоге сейчас делать?
Подскажите пожалуйста,как можно решить задачу, очень надо...
Удалите весь код скрипта "Сохранение и загрузка набора команд" (на закладке код) и вставьте код из приложенного текстового файла.
"Не передавать данные обратной связи" у команд включите.
Спасибо большое,работает)
Здравствуйте!
Можно ли реализовать следующее: Создаем ФБ (функциональный блок) устройства, у него есть свои входы и выходы. Без изображения. Например ФБ клапана имеет вход - управление, а выходы - номер аварии и состояние. Далее создаем ФБ изображения, его свойством является цвет. Т.е. входом ФБ изображения есть цвет(какой-то номер, цифра). Делаем связь OPC с экземпляром ФБ объекта, и связь объекта с экземпляром ФБ изображения.
В таком случае можно удобно заменять как изображение так и сам ФБ устройства, можно ли это сделать, создавать не зависящие друг от друга ФБ и изображение,чтоб можно было заменить ФБ, а изображение оставить или наоборот?
То есть сделать два отдельных ФБ - для изображения и реализующий внутренний функционал? Можно, только зачем?
Сделайте объект и изображением, если потребовался другой - сделайте копию объекта и измените изображение. Затем тиражируйте.