Web-Визуализация

WEB Визуализация - одна из видов визуализаций, которая не мало привлекает внимания в области ПЛК. Продемонстрируем в картинках, как она работает.

Что нам необходимо знать и приготовить для этого?

Во-первых, эта визуализация основывается на WEB технологиях и требует поддержки WEB-сервера на ПЛК.

Во-вторых, если заглянуть в папку установки CoDeSys, то можно увидеть содержимое папки Visu (путь по умолчанию C:\Program Files\3S Software\CoDeSys V2.3\Visu) там есть файл webvisu.jar. Это файл контейнер java-файлов (в total commander, нажав ctrl+PgDn на этом файле, можно увидеть содержимое контейнера), который с остальным содержимым папки Visu автоматически будет копироваться в контроллер. Веб-сервер по запросу клиента выдаст webvisu.htm, который загрузит java файлы, и в итоге отобразит визуализацию в браузере. Логично, что для этого на ПК-клиенте понадобиться установленная java, последнюю версию которой можно скачать тут http://java.sun.com/.
Это основное, что может нам потребоваться в данном примере.

В качестве контроллера возьмем знакомый нам по прошлым примерам dk55. Он поддерживает WEB-сервер. В качестве клиента используем ПК с Windows 7 со стандартным для него Internet Explorer 8, и проверим в Google Chrom. Скачиваем и устанавливаем свежую java, приготавливаем тарджеты для контроллера и сам контроллер конечно же. Обратите ВНИМАНИЕ! если у вас самостоятельно собранный, а не стандартный myrts.exe, то в Platform Builder на первой вкладке нужно включить поддержку Web Visu.

Затем запускаем CoDeSys.

Создаем новый проект и в установках тарджета обращаем внимание на галочку Web-Visualization на вкладке Visualization - она должна быть (Рис 1).

1_8.png
Рис 1

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

С галочкой разобрались, теперь пишем вот такую простенькую программку на комбинации языков SFC + ST как на скриншоте ниже (рис 2). Эта программа имитирует движение по периметру, попросту увеличивая или уменьшая координаты в последовательности заданной блоками Step2-Step4.

2_8.png

рис 2.
Во вкладке Visualizations создаем новую визуализацию PLC_VISU (обязательно с таким названием! см также Рис 2) и создаем два прямоугольника на ней с помощью элемента на панели задач Rectangle (первый за стрелкой).
Первый прямоугольник опишет контуры визуализации. Без этого визуализация может не отражаться в браузере. Второй прямоугольник закрасим зеленым цветом и назовем его гордо "рабочим телом".

Перейдем в свойства рабочего тела двойным щелчком на нем. В свойствах Colors устанавливаем цвет, в Moution absolute устанавливаем переменные x и y по соответствующим осям. Эти переменные будут смещать наше рабочее тело.

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

3_8.png
Рис 3.
С координатой Y делаем все по аналогии.

Проект готов, и если все сделано правильно, то, запустив его, мы увидим движение рабочего тела и отображение текущих координат на визуализации.

Забегая вперед, заметим, что если созданное выше отобразить в Веб-браузере, то возможны скачки или зависания картинки. Обусловлено это скоростями опроса контроллера по сети, и загрузкой самой сети. Веб-визуализация- штука не быстрая.
Чтоб избежать этого, притормозим процесс расчета координат. Проще всего это сделать в свойствах задач. Рис 4.

4_8.png
Рис 4.
Этим мы заставим прибавляться координаты раз в полсекунды.

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

Запускаем IE и в адресной строке забиваем IP адрес ПЛК через http протокол, на котором крутится программа (не забываем, что ПЛК должен поддерживать WEB-сервер) рис 6, и для гугль хрома рис 5.

5_8.png
Рис 5.
6_8.png
Рис 6.
видеоролик визуализации в IE8: http://www.prolog-plc.ru/swf/webvisuIE8.swf

Если в текстовых полях мы введем русские буквы, то в браузере они отобразятся затейливыми карюзликами. Чтобы этого не произошло нужно добавить в файл webvisu.htm параметр param name="DEFAULTENCODING" value="TRUE". Лучше это сделать однажды в оригинальном файле C:\Program Files\3S Software\CoDeSys V2.3\Visu\webvisu.htm. Рис 7.

7_8.png

Рис 7.
После этого шрифт должен отображаться нормально.

Помимо этого существуют и другие особенности отображения шрифтов. Если вы используете ПЛК на базе Линукс, вы должны правильно в ПЛК установить русскую Локаль, что не просто, если не иметь опыта работы с линуксами. Еще одну особенность скрывает Windows 7. Для правильного отображения шрифтов надо быть уверенным, что в настройках языка системы Формат и Локаль стоит - Россия.

Судя по письмам приходящими в поддержку, большинство проблем связанных с Веб-визуализацией скрываются в политике безопасности сети. Надо быть уверенным, что ПЛК находиться в "доверенной зоне" вашей сети.

Обсуждение на форуме