Просмотр полной версии : Как на ST в определенном фрейме переключить визуализацию
Это возможно?
КДС 3.5 SP5
Евгений Кислов
13.08.2015, 15:01
Это возможно?
КДС 3.5 SP5
Вы под фреймом имеете в виду элемент Фрейм?
У него есть параметр Переключить переменную фрейма. Привяжите к нему переменную и меняйте ее значение в программе.
0 - во фрейме открыт первый экран, 1 - второй и т.д.
Вы под фреймом имеете в виду элемент Фрейм?
У него есть параметр Переключить переменную фрейма. Привяжите к нему переменную и меняйте ее значение в программе.
0 - во фрейме открыт первый экран, 1 - второй и т.д.
Я так пробовал, как только я привязываю переменную с типом INT, к этому парамиетру, визуализация начинает жутко глючить.
Может через visualElems как то можно?
Евгений Кислов
13.08.2015, 15:03
Я так пробовал, как только я привязываю переменную с типом INT, визуализация начинает жутко глючить
Что значит "жутко глючить"?
Если есть возможность, выложите проект.
Если к этому полю привязать переменную PLC_PRG.frame : INT
И эту переменную в проекте нигде не использовать, то:
Перестают быть видны кнопки основной визуализации.
Если на кнопки основной визуализации назначить например скрипт PLC_PRG.frame := 0;
То кнопки появляются, но визуализация начинает тормозить и меняется фон визуализации фрейма на темно-зеленый
Евгений Кислов
13.08.2015, 15:21
Перестают быть видны кнопки основной визуализации.
Подробнее опишите, когда это происходит. Переключаю экраны во фрейме - нижний ряд кнопок всегда отображается.
На КДС в онлайне у меня они тоже отображаются, а на самой СПК нет
Теперь в переменную PLC_PRG.frame записываю значения с 3х кнопок, по клику.
Две кнопки на основной мнемосхеме, а третья на мнемосхеме mnemo, по клику на невидимую область ввода крана К1
И теперь у меня нижние кнопки нигде не видны, ни на СПК, ни в КДС-онлайн.
Евгений Кислов
13.08.2015, 15:41
На КДС в онлайне у меня они тоже отображаются, а на самой СПК нет
Попробуйте создать новый проект, в котором будет только Фрейм, и посмотреть, корректно ли он работает.
С темно-зеленым цветом в принципе понятно - он у вас выбран в качестве фона экрана Visualization и перекрывает цвет фрейма после первого переключения фрейма (похоже, это баг CDS).
Куда подевались кнопки?
На скриншоте у вас открыт экран, который вы хотите открывать во фрейме. Естественно, на нем нет кнопок.
Я, кажется, понял - вы в CODESYS открываете экраны Mnemo, Arhive и т.д., и в этот момент они отображаются на панели без кнопок. По-моему, вполне очевидно, почему это происходит. Работайте только с экраном Visualization.
На скриншоте у вас открыт экран, который вы хотите открывать во фрейме. Естественно, на нем нет кнопок.
Да, тут я ошибся, не ту визуализацию включил для скрина, просто на самом СПК была такая же картинка (без кнопок внизу), там то ведь должно быть видно всё.
Когда я создал пустой стандартный проект, и сделал там фрейм с двумя визуализациями, по началу тоже были подобные глюки.
Затем я удалил элемент TargetVisualisation, и снова вставил его, после чего на тестовом проекте все нормально заработало.
Такой же финт с ушами я провел на своём проекте, после чего стало немного лучше, стали отображаться нижние кнопки, но но некоторые глюки еще остались.
Затем я удалил тёмно-зеленый фон основной визуализации и всё стало нормально. Чудеса да и только.
С вызовом визуализации из ST разобрались.
А вот как теперь из ST подсунуть на интерфейс визуализации Valve_mnemo теги , с каждого крана свой набор?
Евгений Кислов
13.08.2015, 18:50
С вызовом визуализации из ST разобрались.
А вот как теперь из ST подсунуть на интерфейс визуализации Valve_mnemo теги , с каждого крана свой набор?
Я подозреваю, что так сделать нельзя, поскольку работать можно только с переменными интерфейса открытого экрана.
Можно подробно описать, что именно вы хотите получить в результате?
Ну у меня есть визуализация крана (общая) Valve_mnemo.
Эта визуализация имеет интерфейс (VAR_IN_OUT).
На мнемосхеме у меня 9 кранов.
Я хочу на каждый поставить невидиммый ввод, по нажатию на который, в интерфейс окна Valve_mnemo подставятся переменные соответствующего крана с последующим вызовом окна Valve_mnemo.
Евгений Кислов
13.08.2015, 19:56
в интерфейс окна Valve_mnemo подставятся переменные соответствующего крана с последующим вызовом окна Valve_mnemo.
Так, по-моему, невозможно сделать. Я бы сделал переменные Valve_mnemo глобальными.
Я подозреваю, что так сделать нельзя, поскольку работать можно только с переменными интерфейса открытого экрана.
В экране visualization есть фрейм, в списке экранов этого фрейма есть экран Valve_mnemo, который имеет список тегов интересующего меня интерфейса.
А таким образом можно как то подставить теги?
А разве VisuElems не позволяет добраться до любого объекта визуализации и изменить его свойства?
Так, по-моему, невозможно сделать. Я бы сделал переменные Valve_mnemo глобальными.
Глобальными их конечно можно сделать, но тогда придётся делать экран на каждый кран.
Что даст большой геморой, если что то нужно изменить или добавить.
Евгений Кислов
13.08.2015, 20:10
В экране visualization есть фрейм, в списке экранов этого фрейма есть экран Valve_mnemo, который имеет список тегов интересующего меня интерфейса.
А таким образом можно как то подставить теги?
В настройках фрейма к "тегам" привязываются переменные программы.
Т.е. можно в одном фрейме открывать разные экземпляры одного и того же экрана, к каждому из которых будут привязаны свои переменные.
Я тут подумал, может вам так сделать?
19531
И к каждому экземпляру привязать переменные одного крана.
Всё таки что то не так с переключением фрейма.
Есть проблема, описанная на скрине.
Даже если эта добавленная переменная больше нигде не используется, всё равно начинаются тормоза и тормоза эти очень ощутимые, проявляются только на основной мнемосхеме "mnemo", на экране управления краном или архиве тормозов нет.
С чем это может быть связано?
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot