Страница 6 из 6 ПерваяПервая ... 456
Показано с 51 по 59 из 59

Тема: CODESYS V3.5. Онлайн-FAQ

  1. #51

    По умолчанию 50. Можно ли изменить картинку "Отсутствует визуализация"?

    Вопрос: можно ли изменить картинки "Отсутствует визуализация" и "Отсутствует загрузочное приложение"?

    1.jpg

    Комментарий: приведенная ниже информация актуальна только для контроллеров, программируемых в CODESYS V3.5 SP11 Patch 5 или выше.

    Ответ: это возможно.

    Подключитесь к контроллеру по SSH (см. CODESYS V3.5. FAQ, п. 13.4) и выполните команду mount -o remount,rw / /

    После этого подключитесь к контроллеру с помощью WinSCP (см. CODESYS V3.5. FAQ, п. 13.5) и перейдите в директорию /usr/bin/CODESYS.

    Вы увидите 4 нужных вам файла (не удаляйте и не редактируйте остальные файлы - это может нарушить нормальную работу контроллера):

    • stop_plc.jpg (Отсутствует загрузочное приложение, горизонтальная ориентация дисплея)
    • stop_plc_v.jpg (Отсутствует загрузочное приложение, вертикальная ориентация дисплея)
    • stop_visu.jpg (Отсутствует визуализация, горизонтальная ориентация дисплея)
    • stop_visu_v.jpg (Отсутствует визуализация, вертикальная ориентация дисплея)


    Вы можете заменить эти изображения на свои, при этом сохранив названия, формат и разрешение.

    После загрузки новых картинок необходимо перезагрузить контроллер командой reboot
    При перезагрузке путем выключения и подачи питания файловая система контроллера может быть повреждена, так как в данный момент она еще примонтирована в режиме read-write.
    После перезагрузки по команде reboot файловая система опять будет смонтирована в режиме read-only.

  2. #52

    По умолчанию 51. Что делать, если появляется ошибка "Адрес уже используется" ?

    Вопрос: при компиляции проекта появляется ошибка "Адрес %<...> уже используется". Как ее убрать?

    Ответ: вероятно, некоторые адреса в каналах компонентов, размещенных в дереве проекта, случайно были назначены вручную, и совпали с уже используемыми.

    В этом случае рядом с ними появляется синяя буква М (17-05-2019 7-40-07.png):

    17-05-2019 7-33-30.png

    Следует проверить все узлы таргет-файла с каналами (системные узлы типа Drives, компоненты Modbus, OwenArhiver) и отменить ручное распределение адресов.

    Для этого следует нажать на ячейку, в которой расположена синяя буква М (17-05-2019 7-40-07.png) и удалить в ней все символы, после чего нажать Enter. В результате адрес канала будет рассчитан автоматически.

  3. #53

    По умолчанию 52. Что делать, если при загрузке проекта появляется ошибка "Download denied..."?

    Вопрос: что делать, если при загрузке проекта появляется подобная ошибка?

    26-06-2019 8-03-03.png

    Ответ: вероятно, ранее контроллер был переведен в режим Заблокировано или Рабочий с помощью команды Онлайн - Режим работы.
    Требуется установить соединение с контроллером (Device - Сканировать сеть - подключится к контроллеру) и использовать команду Онлайн - Режим работы - Отладка.
    После этого можно будет загрузить проект.

    Также такое сообщение может появится, если загрузка проекта запрещена из кода программы через ФБ PlcOperationControl.
    В этом случае требуется удалить текущий проект из контроллера через конфигуратор, после чего загрузить новый.

  4. #54

    По умолчанию 53. Как организовано сохранение retain-переменных?

    Вопрос: как организовано сохранение энергонезависимых переменных (RETAIN и PERSISTENT) в контроллерах ОВЕН?

    Ответ: в контроллерах СПК1хх [М01] и ПЛК210 энергонезависимые переменные сохраняются в микросхеме MRAM. Сохранение энергонезависимых переменных выполняется раз в секунду. Число циклов перезаписи MRAM практически бесконечно. MRAM включает в себя две дублирующие друг друга области памяти. При старте контроллер проверяет CRC этих областей - если для одной области рассчитанный CRC не соответствует сохраненному (такое может быть, например, при пропадании питания в момент сохранения), то значения RETAIN переменных восстанавливаются из другой.

  5. #55

    По умолчанию 54. Что делать, если не удается подключиться к контроллеру через кабель USB B?

    Вопрос: что делать, если не удается подключиться к контроллеру через кабель USB B?

    Ответ:

    1. Убедитесь в исправности кабеля.
    2. Убедитесь, что на ПК установлен драйвер.
    3. Убедитесь, что в сетевых настройках ПК для виртуального адаптера задан корректный адрес и маска (см. пример ниже).
    4. Убедитесь, что в конфигураторе для интерфейсов Ethernet и USB настроены разные подсети.

    Пример корректных настроек:

    Устройство/Параметр IP Маска Шлюз
    Контроллер (Ethernet) 192.168.0.10 255.255.0.0 192.168.0.1
    Контроллер (USB) 10.0.6.10 255.255.0.0 10.0.6.1
    ПК (виртуальный адаптер) 10.0.6.1 255.255.0.0 -


    SpkUsb.png

  6. #56

    По умолчанию 55. Как настроить favicon для страницы web-визуализации?

    Вопрос: как настроить favicon для страницы web-визуализации?

    Ответ: для этого достаточно загрузить (о том, как это сделать - см. п. 13.5 в документе CODESYS V3.5. FAQ) файл favicon.ico в директорию /mnt/ufs/home/root/CODESYS_WRK/PlcLogic/visu
    Чтобы увидеть изменения в браузере потребуется обновить страницу c очисткой кеша (в Google Chrome - Ctrl+F5).

    Favicon01.png

    Также можно настроить мобильный значок страницы. Для этого потребуется загрузить файл значка (например, owen.png) в директорию /mnt/ufs/home/root/CODESYS_WRK/PlcLogic/visu и добавить в файл webvisu.htm (расположенный в той же директории) строку типа

    Код:
    <link rel="apple-touch-icon" sizes="196x196" href="owen.png" />
    Favicon02.png

    Более подробная информация по синтаксису приведена по ссылке.

    Обратите внимание, что при перезагрузке по питанию файл webvisu.htm будет создан заново, поэтому удобнее всего записывать в него эту строку из кода программы при запуске приложения.

    Источник информации: https://www.codesys-blog.com/visuali...visu-app-icon/

  7. #57

    По умолчанию 56. Как запаковать файл в архив с установкой пароля?

    Вопрос: на контроллере сохраняются файлы отчетов, которые требуется передавать на web-сервер в виде запароленных архивов. Каким образом это можно сделать?

    Примечание: для контроллеров СПК1хх [М01] описанный ниже способ поддерживается начиная с версии прошивки 1.1.0611.1056.

    Ответ: предположим, в контроллер есть файл Arc1.log, размещенный в директории /mnt/ufs/home/root:

    16-08-2019 10-42-45.png

    В проект нужно добавить библиотеку CmpSysExeс.
    Для добавления файла в архив с установкой пароля требуется выполнить следующий код:

    Код:
    VAR
    	xCreateArchiveWithPassword:		BOOL;
    	fbSysExec3:			        CmpSysExec.sysExecute3;
    
            fbSysExec3(xExecute := xCreateArchiveWithPassword, sCommand := '/usr/bin/7za a -p123 /mnt/ufs/home/root/Arc1.7z /mnt/ufs/home/root/Arc1.log');
    END_VAR
    В приведенном выше примере кода:

    • 123 - пароль на архив
    • /mnt/ufs/home/root/Arc1.7z - путь к создаваемому файлу архива
    • /mnt/ufs/home/root/Arc1.log - путь к файлу, добавляемого в архив


    Файл архива будет создан по переднему фронту переменной xCreateArchiveWithPassword:

    16-08-2019 10-46-40.png

    Для распаковки архива потребуется ввести пароль:

    16-08-2019 10-47-09.png

  8. #58

    По умолчанию 57. Как переключить экран визуализации при входе пользователя в систему?

    Вопрос: в проекте есть несколько пользователей web-визуализации.
    Требуется при авторизации конкретного пользователя переключить экран визуализации (только для данного пользователя).
    Как это можно сделать?

    Примечание: приведенный ниже пример подходит для контроллеров, программируемых в CODESYS V3.5 SP11 Patch 5 или выше.

    Ответ: см. данный пример, который сделан на базе примера получения информации о пользователях визуализации.

    В примере создано два пользователя: User1 с паролем 1 и User2 с паролем 2.

    SwitchVisuForUserFromCode01.png

    На основном экране (Vis1) расположена кнопка Войти в систему. При нажатии на кнопку появляется окно авторизации.
    После авторизации выполняется сбор информации о пользователя (для этого в настройках кнопки в конфигурации ввода на вкладке OnDialogClosed переменной xLogin присваивается TRUE).
    Сбор информации осуществляется в программе ClientPrg.
    Если обнаружен вход пользователя User1, то осуществляется переход на экран Vis2.
    Если обнаружен вход пользователя User2, то осуществляется переход на экран Vis3.

    Код:
    // переключаем экраны в зависимости от имен залогинившихся пользователей
    FOR i:=1 TO iVisuClientCount DO
    		
    	IF astVisuClientData[i].wsCurrentUserName = "User1" AND NOT(axIsLogged[i]) THEN
    		axIsLogged[i] := TRUE;
    		VisuElems.g_VisuManager.SetMainVisu(astVisuClientData[i].pstClientData, 'Vis2');
    	ELSIF astVisuClientData[i].wsCurrentUserName = "User2" AND NOT(axIsLogged[i]) THEN
    		axIsLogged[i] := TRUE;
    		VisuElems.g_VisuManager.SetMainVisu(astVisuClientData[i].pstClientData, 'Vis3');
    	ELSIF astVisuClientData[i].wsCurrentUserName = "" THEN
    		axIsLogged[i] := FALSE;
    	END_IF
    	
    END_FOR
    Если пользователь нажимает кнопку Назад, то выполняются три действия:

    • переключение на экран Vis1
    • "разлогинивание" пользователя
    • обновление информации о пользователях (xLogin := TRUE), чтобы в программе снять флаг логина данного клиента

  9. #59

    По умолчанию 58. Особенности выполнения команды "Создать загрузочное приложение"

    Приведенная информация актуальна для контроллеров СПК1хх [М01].

    В прошивке 1.0.1229.1031 загрузочное приложение создавалось неявно при загрузке проекта - такой подход используется в современных версиях CODESYS по умолчанию.
    Этот подход имеет существенный недостаток - пользователь не может избежать загрузочного приложения даже в тех случаях, когда оно не требуется.
    Например, в процессе отладки некорректно написанная программа может привести к перезагрузке контроллера.
    Неявно созданное загрузочное приложение в данном случае приведет к циклической перезагрузке контроллера - поэтому потребуется перейти в конфигуратор и удалить проект.

    В прошивке 1.1.0611.1056 (точнее - в таргет-файле для этой прошивки) неявное создание загрузочного приложения отключено.
    Загрузочное приложение создается только при выполнении команды Создать загрузочное приложение из меню Онлайн.
    Этот подход не имеет описанного выше недостатка, но при определенных обстоятельствах может привести к неочевидному для пользователя поведению контроллера.
    Предположим, в контроллере создано загрузочное приложение. Происходит загрузка нового проекта (или онлайн-изменение).
    В этот момент выполняется инициализация области RETAIN-переменных - даже если они отсутствуют в проекте (потому что, например, узел таргет-файла Watchdog использует Retain-память).
    Предположим, пользователь не создает загрузочного проекта и перезагружает контроллер по питанию.
    При старте система исполнения определяет, что загрузочное приложение и образ retain-памяти не соответствуют друг другу.
    В результате генерируется исключение RETAIN_IDENTITY_MISMATCH (его можно увидеть на дисплее, если в конфигураторе включен режим обработки ошибок TraceInfo или TraceInfoAndReboot).
    Пользовательский проект, соответственно, не запускается.
    Если опять перезагрузить контроллер - то retain-память будет заново проинициализирована и проект будет запущен.

    Таким образом, перед перезагрузкой контроллера рекомендуется создать загрузочное приложение, чтобы избежать описанной выше ситуации.

    При желании пользователь может включить неявное создание загрузочного приложения при загрузке и онлайн-изменении.
    Это выполняется в настройка приложения (Application - Свойства - Установки загрузочного приложения).

    27-08-2019 14-57-04.png

Страница 6 из 6 ПерваяПервая ... 456

Похожие темы

  1. Ответов: 1
    Последнее сообщение: 29.06.2017, 11:21

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •