при загрузке спк110 - белый экран и в логе три строки подряд - image not found. В чем проблема?
Вид для печати
при загрузке спк110 - белый экран и в логе три строки подряд - image not found. В чем проблема?
Проблема, видимо, в том, что из контроллера пропала эта картинка:
Вложение 17813
В какой момент стал появляться белый экран? После перепрошивки?
эта картинка не пропала. а белый экран появляется после каждой перезагрузки проекта.
А в CODESYS эта картинка нормально отображается (на стартовом экране и в пуле изображений)? Вы пробовали ее перезаливать?
Выложите, проект, пожалуйста (с картинкой в svg).
У меня при загрузке проекта появляется такая ошибка:
Вложение 17816
и, как вы писали, в логе три строки подряд - image not found.
Но во второй раз проект загружается, и картинка отображается.
Если удалить из пула изображений битые ссылки (красные) и убрать кириллицу из названия картинки, то первая ошибка исчезает.
По поводу появления рамок вместо рисунков, изминение веса файла не помогло. какието вставляются какието нет, увеличение время цикла тоже не помогло. Буду довольствоваться тем что есть.
Выкладываю прект, он не закончен , находиться в стадии разработки. На странице визуализации VIZ_1 набрасал группу из 5 рисунков Вложение 17818 которые прорисовываються рамками, причем ""motor 1" раньше ни как не появлялся на экране СПК . но остальные 4 по прежнему ни как. Так же отдельна папка с рисунками , там для удобства 2 папки с рисунками которые можно увидить на экране и другая с которыми это не проходит. Наверное толькот прийдётся прописать новый путь для открытия рисунков в пуле изображений.
У меня на экране СПК110 выглядит все точно также, как на вашем скриншоте (т.е. нормальные картинки).
Добавил веб-визуализацию - в ней вместо трех элементов были рамки с красными крестами. В пуле изображений у этих рисунков были кириллические названия.
Исправил на латинницу - в веб-визуализации тоже стало все нормально.
Сейчас убрал в названиях кирилицу в пути к двум файлам Вложение 17825, вот скрин без подключения к СПК Вложение 17826, а вот на СПК Вложение 17827, в последнем случаи даже контурных рамок нет. Ну ладно буду работать с тем что есть. В любом случаи спасибо за внимание.
Здравствуйте.
Интересует несколько вопросов для визуализации на СПК207:
1. Когда использую диалог VUM_Login для ввода логина и пароля, то при нажатии на поле для ввода вызывается другой диалог с клавиатурой(я полагаю он называется "TextinputWithLimits"), так вот при первом вызове в этом диалоге активированна кнопка Shift. Каким образов в программе можно настроить этот диалог чтобы при вызове у него ввод начинался бы с маленьких букв?
2. В свойствах например элементов управления в группе Inputconfiguration, есть свойство OnDialogClosed, но как я понимаю оно активируется при закрытии любого диалога. В моём случае при нажатии на элемент управления вызывается диалог VUM_Login, а потом он вызывает TextinputWithLimits если нажать на его поля, соответственно когда я закончил вводить логин или пароль, и нажал ОК то отобразится обратно диалог VUM_Login, но при этом вызовется на исполнение условия обозначенные в OnDialogClosed, хотя диалог ещё не закрыт. Вопрос в том как можно обойти этот момент, то есть как программе узнать что был закрыт(по ОК или Canсel ) именно первый диалог VUM_Login.
1. Диалог с клавиатурой называется Keypad. Можно сделать так: открываете библиотеку VisuDialogs.library (у меня она расположена по адресу C:\Program Files (x86)\3S CODESYS 3.5 SP6\CODESYS\Projects\Visu\Dialogs).
Находите в ней диалог Keypad, в его переменных присваиваете переменной bShift начальное значение TRUE.
Далее нажимаете пиктограмму в виде желтой тумбочки на Панели инструментов (Сохранить проект и установить в репозиторий библиотек).
Вложение 17837
После этого надо будет перезапустить CODESYS и открыть в нем ваш проект.
2. Да, OnDialogClosed завязан на закрытие любого диалога - привязаться к конкретному не получится. Вообще, насколько я знаю, это известная проблема, которую, возможно, исправят в следующих версиях CODESYS.
Идея хорошая!Цитата:
1. Диалог с клавиатурой называется Keypad. Можно сделать так: открываете библиотеку VisuDialogs.library (у меня она расположена по адресу C:\Program Files (x86)\3S CODESYS 3.5 SP6\CODESYS\Projects\Visu\Dialogs).
Находите в ней диалог Keypad, в его переменных присваиваете переменной bShift начальное значение TRUE.
Далее нажимаете пиктограмму в виде желтой тумбочки на Панели инструментов (Сохранить проект и установить в репозиторий библиотек).
Но почему то у меня не получилось таким способом исправить проблему. Причём после исправления и сохранения библиотеки, когда я в своём проекте через Менеджер библиотек смотрю на этот диалог Keypad, то вижу что исправления попали в мой проект. Но тем не менее диалог стартует всё равно с большими буквами. Причём я перезагружал Codesys и даже ПК тоже пробовал.
Выложите свой проект, пожалуйста.
Подскажите как сделать, что бы 2-мя кнопками можно было листать страницы визуализации в фрейме по кругу, в право или в лево.
Как вариант - пронумеровать названия экранов визуализации (vis1, vis2, vis3), и по нажатию на кнопку выполнять код Number:=Number-1; или Number:=Number+1;
В коде программы прописать: VisuElems.CurrentVisu:=CONCAT('vis', INT_TO_STRING(NUMBER));
Также нужно в коде добавить блок, который будет в случае number=0 и number=номер последнего экрана визуализации+1 переключать номера экранов на последний и первый соответственно.
Предварительно требуется поставить галочку Использовать переменную CurrentVisu в установках Менеджера визуализации.
Если я неправильно понял вопрос, и речь шла об аналоге кнопок Back/Forward в браузерах, то это реализуется на этапе настройки кнопки:
Вложение 17887
Спасибо. я не так спросил, нужно листать страницы визуализации в фрейме по кругу.
Фреймы можно переключать через строковую переменную:
Вложение 17891
Переменная должна выглядеть следующим образом:
Цитата:
device name.application name.visualization name.frame element name
Пример: frame_var: STRING:='MyPlc.Application.Test1.Frame1';
можно переменной типа word или int и ФБ для перебора цифр от 0 до хх и обратно.
Да, как вариант, можно привязаться к индексам фреймов (эта переменная соответствует переменной из поля Индес для в настройках OnMouseClick).
Здравствуйте,скажите,пожалуйста, как создать кнопку,которая отвечает за доступ и которой подчиняются все кнопки и переменные запись которых находится под паролем,т.е. ввел пароль и открылся доступ для записи(во всех кнопках), и соответственно LOG out нажатием для выхода?
Подскажите пожалуйста, как можно увеличить скорость визуализации на СПК-207 [М01]. Особенно это касается уменьшения время перехода между окнами и уменьшения времени отклика кнопки после ее нажатия.
Еще такой вопрос.
Появилась идея реализовать так называемый "быстрый задатчик". Т.е. есть параметр, который необходимо изменять из визуализации. Есть также кнопки "+" и "-", нажатие которых приводит к увеличению или уменьшению значения параметра. При каждом нажатии на одну из этих кнопок параметр изменяется на фиксированное значение (например, +1 или -1). А если необходимо значительно изменить значение, придется много раз нажимать и долго ждать. Поэтому реализовал следующее. При кратковременном нажатии кнопки "+" или "-" значение параметра изменяется на фиксированный шаг, но при более длительном нажатии и удержании кнопки значение параметра увеличивается быстрее, и чем дольше удерживаешь, тем быстрее изменяется значение. При отпускании кнопки изменение останавливается. Так вот, это решение отлажено в отдельном проекте. Теперь нужно его интегрировать в разработанную программу, в которой изменение параметра реализовано кнопками "+" или "-" , но с фиксированным шагом. Как добавить? Использовать функцию и обращаться к ней каждый раз при необходимости изменения параметра? Пока не разберу. Если интересно, выложу код программы или саму программу "быстрый задатчик".
Да. Только, что сообразил. Но прозрачность, что-то не получается. С цветом всё нормально.
Здравствуйте.
Честно. Искал. Не нашел...
СПК107. Вот сделал я пользователя. Задал ему пароль. Сдал систему заказчику. Пользователь (физический) поработал и уволился. Пароль, как всегда, никому не сообщил. Из под администратора я могу менять только пароль администратора. Как поменять или сбросить пароль любого другого пользователя без подключения к компу?
Для того чтобы можно было его поменять без "компа", необходимо выполнение следующих условий в проекте:
1. Должен быть пользователь, которому доверено администрирование пользователей:
Вложение 18043
2. В визуализации должна существовать кнопка (например прямоугольник) со следующими настройками действия при нажатии:
Вложение 18044
Если это есть, то: а) Логинимся на СПК под пользователем с правами администрирования пользователей п.1.
б) Жмем на кнопку из п.2 и видим:
Вложение 18045
Думаю дальше объяснять не надо как поменять пароль уволившемуся пользователю.
Если у Вас этого в проекте нет, то это уже становится вашей проблемой :-) и без "компа" вы не обойдетесь.
спасибо всем за помощь в вопросе авторизации на СПК. теперь у меня другой вопрос. после авторизации попадаю на нужную мне страницу. далее мне необходимо реализовать выход из системы - по нажатию кнопки "выход" вновь попасть на страницу авторизации. делаю по руководству "визуализация codesys": сделал кнопку выход, в настройках usermanagement выбираю диалог Logout, загружаю в спк, нажимаю кнопку -ничего не происходит. подскажите в чём дело.
Вы же понимаете, что смысл кнопки Logout - это "разлогинивание" пользователя, которое не имеет прямого отношения к смене отображаемого экрана визуализации?
Чтобы эта кнопка работала, как вы хотите, нужно поставить соответствующую галочку в Менеджере визуализации, вкладка Управление пользователями, раздел Установки:
Вложение 18061
да, я понял. спасибо большое.