Реклама ⓘ
Главная » Промышленная электроника
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Реклама ⓘ

S7-200 создание HMI интерфейса

Рассмотрим создание HMI интерфейса. Как я уже писал ранее HMI интерфейс может быть реализован на базе панели оператора и на базе компьютера.

Для примера возьмем панель TD200 (она есть в симуляторе и работа с панелями другого типа концептуально одинакова).

В WicroWin запускаем мастер TD200 из вкладки Wizard.

Нажимаем Next и выбираем тип панели на следующем окне.

В окне Localize Display оставляем все без изменений и нажимаем Next.

В окне Standart Menus and Password можно объявить отображать ли время, установить пароль и разрешить ли прямое управление входами выходами (force режим). Отметим везде No и нажмем Next.

На этом окне необходимо задать область меркерной памяти где будут храниться меркеры нажатых кнопок (по дефолту M0 пусть так и останется). Также необходимо выбрать, будет ли нажатие кнопок приводить к установке меркеров или к прямому опросу кнопок из программы. Эта функция поддерживается в панелях с прошивкой новее 2.1. Мы выбираем установку меркеров. И выбираем как быстро опрашивать панель.

На этом окне выбираем сколько символов будет отображаться в сообщении 20 или 40. В случае 20 можно отображать по два сообщения на экране. Отметим, что будем отображать по 20 символов и всего сообщений у нас например 2. Нажимаем Next.

На этой странице будут определяться адреса в которых будут храниться настройки панели и размещения сообщений. Оставляем все по дефолту. Нажимаем Next.

Здесь заполняем первое сообщение. В отмеченном поле показано каким битом будет вызываться это сообщение. В нашем случае V14.7. Нажимаем Next Message для заполнения второго сообщения.

%D1%80%D0%B8%D1%81%2073.jpg

Если мы хотим передавать не только статичную надпись, но и переменную из программы, то мы должны после сообщения встать в нужное поле и нажать Embedded Data.

%D1%80%D0%B8%D1%81%2074.jpg

В всплывшем окне необходимо указать какой тип данных будет отображаться, положение запятой, будет ли требоваться подтверждение от оператора. Также будет указана ячейка памяти куда класть нужное значение (в нашем случае VW53). Нажимаем OK.

%D1%80%D0%B8%D1%81%2075.jpg

Теперь видим что место зарезервировано (заполнено темно серым цветом). Вызов этого сообщения осуществляется битом V14.6. Нажимаем Next и в следующем окне финиш.

Отлично мы сформировали блок данных под именем TD_DATA_0. Можно его открыть и посмотреть что куда пишется и откуда считывается.

%D1%80%D0%B8%D1%81%2076.jpg

Напишем программу которая по включению входа i0.0 на экран выводится сообщение 1 «message 1», а нажатие кнопки F4 на экране идет подсчет нажатий и отображается значение переменной на экране в строке «count».

%D1%80%D0%B8%D1%81%2077.jpg

Экспортируем программу в awl файл. Теперь необходимо открыть data block под именем TD_DATA_0 и еще раз нажать export. Программа предложит экспортировать Data block в файл типа txt. Соглашаемся и даем имя. Теперь открываем симулятор. Меняем тип процессора на CPU226, нажимаем load program и отмечаем что грузим не только программу но и блоки данных

%D1%80%D0%B8%D1%81%2078.jpg

Нажимаем accept и поочередно подставляем файл awl и вместо файла db подставляем наша txt файл. Нажимаем кнопку включения панели TD200. Произойдет инициализация панели и появится надпись SIMATIC TD 200.

%D1%80%D0%B8%D1%81%2079.jpg

Запускаем контроллер в RUN и включаем вход i0.0. На экране отобразиться наше сообщение message 1.

%D1%80%D0%B8%D1%81%2080.jpg

Нажимая на экране F4 выводим сообщение count с числом подсчитанных нажатий.

%D1%80%D0%B8%D1%81%2081.jpg

Естественно на место переменной VW53 можно подставить любые данные из программы вплоть до величины аналоговых входов.

Теперь рассмотрим создание HMI интерфейса на базе PC с помощью программы Protool. Для начала необходимо установить программы S7-200 PC Access (для создания ОРС сервера) и программы Protool CS и Protool RT. Программа S7-200 PC Access создает сервер который читает данные из ПЛК и раздает всем потребителям. Он дает возможность подключения к одной SCADA системе нескольких GKR/ Имеет возможность работы через интерфейсы PPI, Ethernet, modem. Это позволяет использовать в качестве HMI системы не только программы от Siemens (Protool или WinCC) но и даже Exel.

Создадим в программе MicroWin следующую программу.

%D1%80%D0%B8%D1%81%2082.jpg

Если меркер M0.0 равен 1 то и выход Q0.0 тоже равен 1.

Считываем состояние байта IB1 и передаем его в переменную VW0.

Присвоим символьные имена (для чего будет показано дальше).

%D1%80%D0%B8%D1%81%2083.jpg

Сохраняем и компилируем и заливаем проект в ПЛК. Переводим ПЛК в RUN

Запускаем программу S7-200 PC Access.

%D1%80%D0%B8%D1%81%2084.jpg

Встаем на PC/PPI cable и нажимаем File -> Import Symbol и выбираем наш проект MicroWin.

%D1%80%D0%B8%D1%81%2085.jpg

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

%D1%80%D0%B8%D1%81%2086.jpg

Теперь необходимо обязательно сохранить проект ОРС сервера нажав кнопку Save (это необходимо делать всегда при изменении передаваемых параметров в ОРС сервере иначе SCADA система их не увидит несмотря на то, что в Tast Client ОРС сервера они будут отображаться корректно).

 Для проверки связи с ПЛК (или при необходимости узнать состояние передаваемых значений из ПЛК в SCADA систему необходимо встать на необходимый параметр (или на группу параметров) и нажать сначала Add Current Items to Test client. При этом выбранные параметры переместятся в Test Client расположенный внизу.

%D1%80%D0%B8%D1%81%2087.jpg

Состояние bad в колонке Quality свидетельствует об отсутствии связи с ПЛК или об остановленной службе Test Client. Для запуска службы необходимо нажать Test Client Status. Если связь с ПЛК есть и ПЛК находиться в режиме RUN то состояние bad измениться на Good и проявиться бегающий голубой прогресс бар.

%D1%80%D0%B8%D1%81%2088.jpg

Теперь если изменить состояние входов I1 то в переменной VB0 отобразиться его значение.

%D1%80%D0%B8%D1%81%2089.jpg

Теперь когда ОРС сервер настроен и работает можно приступить к созданию SCADA системы.

Можно выключить Test Client Status повторным нажатием на соответствующую кнопку и закрыть S7-200 PC Access. Созданный сервер работает автоматически без загрузки самой программы.

Запускаем Protool CS. Нажимаем File -> New. Откроется окно.

%D1%80%D0%B8%D1%81%2090.jpg

Тут предлагается выбор для чего будет использован текущий проект Protool-а. Видно, что Protool поддерживает огромное количество панелей. Мы выберем просто РС. Нажимаем далее.

%D1%80%D0%B8%D1%81%2091.jpg

В этом окне мы должны задать название нашего рабочего ПЛК и выбрать протокол обмена. Просмотрев список видим что Protool поддерживает ПЛК всех типов и может работать через все доступные коммуникации. Мы выбираем ОРС V6.0, что означает что мы работаем с ПЛК через ОРС сервер. Нажимаем далее и готово. Открывается окно нашего проекта с экранной клавиатурой (дань возможности использовать тач панели со встроенной Windows CE). Клавиатуру можно закрыть убрав галочку View -> Keyboard.

%D1%80%D0%B8%D1%81%2092.jpg

Обмен SACADA с ПЛК идет через так называемые тэги “Tag”. Теги могут быть внутренние и внешние. Все динамические элементы HMI интерфейса имеют различные привязки к тегам. С них и начнем. Кликаем два раза по картинке Tags. Откроется окно.

%D1%80%D0%B8%D1%81%2093.jpg

Меняем имя “Name“ на любое удобоваримое. Выбираем тип тега “PLC:” привязанные к ПЛК (выбираем PLC_1) или внутренний (выбираем no Controller). Тип данных int, real bool и т.д. И нажимаем brouse.

%D1%80%D0%B8%D1%81%2094.jpg

В открывшемся окне выбираем обрабатываемый адрес ПЛК из нашего ОРС сервера. Нажимаем “apply items” и OK в следующем окне. Создадим тег типа bool с именем button_1. С его помощью будем менять состояние меркера M0.0. Видим, что появился тег button_1.

%D1%80%D0%B8%D1%81%2095.jpg

 Таким же образом создаем тег port_I1 типа “byte” с привязкой port1_status.

%D1%80%D0%B8%D1%81%2096.jpg

И тег out_Q00 типа bool с привязкой out_1.

%D1%80%D0%B8%D1%81%2097.jpg

Наши теги созданы и можно приступать к созданию экранов визуализации.

Кликаем два раза по иконке “screen”.

%D1%80%D0%B8%D1%81%2098.jpg

 Открывается окно с виртуальным экраном. Снизу есть виртуальные кнопки F1 – F12 и они же с шифтом. На них можно назначить любые действия.

Рисуем на экране кружок

%D1%80%D0%B8%D1%81%2099.jpg

Кликаем два раза по кружку и открываем окно его свойств. Сделаем так, что бы цвет этого кружка менялся в соответствии с состоянием тега out_Q00. Он будет сигнализировать о включении выхода Q0.0 ПЛК. Для этого переходим на вкладку Attributes и нажимаем кнопку multiplexing. В открывшемся окне из выпадающего тега выбираем тег out_Q00 и нажимаем OK. Выбираем цвет кружка «background» для значения 0 (поле Value) и нажимаем Add. Видим что у нас появилась запись для состояния 0. Для состояния 1 выбираем цвет “green” и тоже нажимаем Add.

%D1%80%D0%B8%D1%81%20100.jpg

Таким образом мы привязали цвет нашего кружка к состоянию выхода Q0.0 ПЛК.

Создадим текстовое поле в котором будем отображать состояние входом порта I1 ПЛК. В выпадающем поле тегов выбираем port_I1. Тут же выбираем выравнивание в поле и размер шрифта. Нажимаем OK.

%D1%80%D0%B8%D1%81%20101.jpg

Добавим кнопку которая будет менять состояние мекрера M0.0 который управляет выходом Q0.0. Выбираем кнопку. Рисуем ее на эране. В открывшемся окне даем название кнопки «On / Off». Переходим на вкладку Function и из выпадающего списка выбираем OnClick

%D1%80%D0%B8%D1%81%20102.jpg

Из списка доступных действий выбираем EditBit -> InvertBit и нажимаем Add.

%D1%80%D0%B8%D1%81%20103.jpg

И в следующем окне выбираем тэг «button_1» нажимаем ОК.

Отлично. Теперь сохраняем проект и можно запускать на исполнение. Если есть реальный ПЛК или симулятор типа S7200SIM от SUNLiGHT software который может взаимодействовать с WicroWin так и с ОРС сервером.

В этом случае нажимаем кнопку Start ProTool RT.

%D1%80%D0%B8%D1%81%20106.jpg

Запустится Protool RT и после сообщения об установлении связи с ОРС сервером откроется окно нашего проекта в котором будет отображаться состояние входа I1 и будет возможность зажигать светодиод нажатием кнопки.

Вот как это выглядит при соединении с симулятором S7200SIM

%D1%80%D0%B8%D1%81%20104.jpg

Если нет ПЛК и нет симулятора то можно просимулировать только ProTool. Для этого воспользоваться кнопкой Sart Protool Simulator.

%D1%80%D0%B8%D1%81%20107.jpg

Откроется окно где можно будет изменять состояние тэгов и смотреть их состояние.

%D1%80%D0%B8%D1%81%20108.jpg

Ну вот пожалуй и все. На этом цикл статей про ПЛК S7-200 от SIEMENS закончен.

Файлы курса лекций по MicroWin и ProTool:

Прикрепленные файлы:

Теги:

Опубликована: 01.02.2013 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (3) | Я собрал (0) | Подписаться

0
ded2006 #
Спасибо за нужную статью
Ответить
0
Алексей #
А про косвенную адресацию не могли бы объяснить по подробнее?
Заранее благодарен
Ответить
0
fire6i9 #
Здравствуйте. Пытаюсь связать s7-200 "221-0BA23-0xB0" c Simatic Panel "TP170B MONO". Судя по тому, что в полях в место решеточек появляются нули, соединение имеется. Однако битовые команды и аналоговые не передаются. Прочитал верхнюю статью, На примере ND 200. Очень удобно, но в этом же списке отсутствует мое устройство. Как можно добавить его список или есть другие методы?
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическая мощность?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Raspberry Pi 2
Raspberry Pi 2
Паяльная станция Hakko 936 200 Вт усилитель класса D на IRS2092
вверх