Классическое ПЛК программирование с ... · 2015-04-29 ·...

26
CODESYS ® a trademark of 3S-Smart Software Solutions GmbH Классическое ПЛК программирование с использованием библиотек CODESYS Users' Conference 2015 Игорь Петров

Upload: others

Post on 17-Jul-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

CODESYS® a trademark of 3S-Smart Software Solutions GmbH

Классическое ПЛК программирование с использованием библиотек

CODESYS Users' Conference 2015Игорь Петров

Page 2: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

CODESYS® a trademark of 3S-Smart Software Solutions GmbH

1

2

3

4

Основные особенности библиотек CODESYS

Стандартные библиотеки CODESYS

Неявно подключаемые библиотеки

Библиотеки полезные и разные

Page 3: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Набор повторно используемых элементов ▪ Программные компоненты (функции и ФБ) ▪ Структуры, объединения, перечисления (DUT) ▪ Глобальные переменные, константы и списки параметров

▪ Интерфейсы, их методы и свойства ▪ Списки текстов, рисунки, визуализации ▪ Внешние файлы (например, документация) ▪ Таблицы CAM

Что может содержать библиотека в CODESYS?

Основные особенности библиотек CODESYS

Page 4: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Библиотеки помогают: ▪ Защитить свой код. ▪ Предоставить свой код другим пользователям. ▪ Четко разделить работу над проектом в команде. ▪ Быстро решать повторяющиеся задачи. ▪ Экономить время. ▪ Просто и удобно документировать код.

Зачем работать с библиотеками?

Основные особенности библиотек CODESYS

Page 5: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Базовый тип МЭК библиотеки – это ".library*"

▪ Закрытые библиотеки: ▪ Интерфейсные библиотеки (*._Itfs.library) – не генерируют код ▪ Контейнерные библиотеки (*_Cnt.library) – устанавливают другие библиотеки и документацию

▪ Компилированные библиотеки *.compiled-library, без исходных кодов (для передачи в чужие руки)

Какие типы библиотек могут быть?

Основные особенности библиотек CODESYS

Page 6: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Репозиторий библиотек: ▪ Управление библиотеками в масштабе среды программирования

▪ Менеджер библиотек: ▪ Управление библиотекамив масштабе проекта

Как управлять библиотеками?

Основные особенности библиотек CODESYS

Page 7: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

Нет репозитория?

Основные особенности библиотек CODESYS

Page 8: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Менеджер библиотек:

Как изучить библиотечный компонент?

Основные особенности библиотек CODESYS

Page 9: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Дает возможность автоматически подключать нужную библиотеку и управлять версиями библиотек и используемого компилятора

▪ Определяется в ▪ Описании устройства ▪ Профиле библиотеки ▪ В проекте

Зачем нужны заполнители (placeholder)?

Основные особенности библиотек CODESYS

<LibraryProfile> <Resolution PlaceholderName="DataServer" CompilerVersion="3.5.0.0“ GroupName="DataServer"> Data Server, 3.5.0.0 (System) <Resolution <LibraryProfile>

Page 10: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Запускаем 2 экземпляра CODESYS 1. В первом собираем все желаемые элементы и делаем из них библиотеку 2. Во втором тестируем результат

▪ Первый экземпляр CODESYS: ▪ Задаем имя и свойства библиотеки (см. ‘Создание библиотек’ в хелпе) ▪ Собираем элементы в дерево POU, записываем как *.library ▪ Устанавливаем библиотеку в репозиторий

▪ Второй экземпляр CODESYS: ▪ Добавляем библиотеку в менеджере библиотек проекта ▪ Применяем элементы из библиотеки в МЭК 61131-3 приложении

➔ Наслаждаемся повторным использованием кода ☺

Как практически сделать простую библиотеку самому?

Основные особенности библиотек CODESYS

Page 11: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Краткое имя должно быть составлено латинскими буквами, уникально и максимально компактно

▪ Пример: "LAT" для библиотеки "Lists and Trees"

▪ Для регистрации нужно написать на: [email protected]

▪ В установке CODESYS есть файл зарегистрированных “LibraryRegistry.chm”

▪ Пример указания пространства имен: ▪ CL2.Send(); ▪ SIO.Send(); ➔ Это вызовы разных POU

Как определить уникальное пространство имен (namespace)?

Основные особенности библиотек CODESYS

Page 12: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

1

2

3

4

Основные особенности библиотек CODESYS

Стандартные библиотеки CODESYS

Неявно подключаемые библиотеки

Библиотеки полезные и разные

Page 13: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Включают компоненты МЭК 61131-3

▪ Утилиты

▪ Входят в любой комплект поставки CODESYS

▪ Расположены в категории Application

Стандартные аппаратно-независимые библиотеки приложений

Стандартные библиотеки CODESYS

Page 14: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Ориентированы на системных программистов ▪ Имеются аналоги для CODESYS V2.3 ▪ Реализация системных функций аппаратно-зависима➔ Выполняется изготовителем устройства ➔ Приложение, использующее системные функции, не будет переносимо без проблем

▪ Если кто-либо никогда не использовал системные функции, то и не нужно к этому стремиться

▪ Пример:

Системные библиотеки

Стандартные библиотеки CODESYS

Page 15: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Специальный набор Use Cases библиотек

▪ Чем лучше SysLibs? ➔ Разработаны для программистов ПЛК➔ Скрывают системные функции, обеспечивают единообразное использование

▪ Для их поддержки нужно: ▪ Поддержка базовых системных функций изготовителем устройства - ▪ CAN-Bus ▪ Последовательный порт ▪ Часы реального времени ▪ Ethernet ▪ Файловая система

▪ Примеры их применения доступны в CODESYS Store

Библиотеки для типовых сценариев использования приложения

Стандартные библиотеки CODESYS

Page 16: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

1

2

3

4

Основные особенности библиотек CODESYS

Стандартные библиотеки CODESYS

Неявно подключаемые библиотеки

Библиотеки полезные и разные

Page 17: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ При использовании определенной промышленной сети в проекте:➔ Библиотека, реализующая соответствующий стек, подключается автоматически

▪ Стеки, реализованные в МЭК: ▪ CANopen ▪ J1939 ▪ EtherCAT ▪ EtherNet/IP ▪ Sercos ▪ PROFINET

▪ Вызов необходимых функций также выполняется автоматически (неявно)

Неявные вызовы библиотечных функций промышленных сетей

Неявные библиотеки

Page 18: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Визуализация CODESYS основана на использовании неявных библиотек➔ Функции принципиально переносимы (если CODESYS визуализация поддержана в целевом устройстве)

▪ Как только в проект добавляется первый объект визуализации:➔ Соответствующие библиотеки добавляются автоматически➔ Вызывать эти функции из проекта не нужно

Неявные вызовы библиотечных функций в визуализации

Неявные библиотеки

Page 19: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ При поддержке целевым устройством (Device Description) функционала управления движением, библиотеки добавляются автоматически.

▪ Доступные блоки: ▪ Стандартные блоки PLCopen Motion Control ▪ Блоки ЧПУ, в том числе: − Интерполятор − Кинематические преобразования − Корректоры

▪ Многочисленные дополнительные модули − Диагностика и пр.

Библиотеки Motion + CNC

Интегрированные библиотеки

Page 20: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Приложение, использующее ФБ управления движением

Motion + CNC: явное использование блоков

Интегрированные библиотеки

Page 21: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

1

2

3

4

Основные особенности библиотек CODESYS

Стандартные библиотеки CODESYS

Неявно подключаемые библиотеки

Библиотеки полезные и разные

Page 22: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Бесплатные библиотеки:

▪ CANBus Example: открытые примеры (ООП на ST и CFC) библиотеки коммуникаций по шине CAN

▪ OSCAT-Libs (BASIC, Building, Network): открытые библиотекидля задач автоматизации

▪ PLCcloud – решение задач управления через Интернет

▪ mxAutomation – управление роботами KUKA

▪ SQL4CODESYS – работа с базами данных

Библиотеки из CODESYS Store

Библиотеки полезные и разные

• CODESYS Repository Archive

Page 23: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Платные библиотеки

▪ XML Utility

▪ CSV Utility

▪ SNMP

▪ INI File Utility

▪ m2m-Cockpit Connector Lib

▪ Home Energy Control

▪ Матричные вычисления

▪ SMS сервисы

▪ Графический редактор LD

Библиотеки из CODESYS Store

Библиотеки полезные и разные

Page 24: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Полезные примеры по темам: ▪ Управление движением ▪ Визуализация ▪ Обработка событий ▪ Работа с файлами ▪ Дата и время ▪ CAN ▪ Передача данных, удаленный вызов процедур ▪ Прикладные сценарии использования

Примеры использования библиотек

Библиотеки полезные и разные

Page 25: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#›

Работа с библиотеками

© 3S-Smart Software Solutions GmbH

▪ Использование и создание библиотек позволяет:➔ повысить эффективность работы за счет повторного использования кода

▪ В CODESYS интегрирован полноценный инструментарий для использования и разработки библиотек

▪ Разработка библиотек не представляет сложности, но требует соблюдения определенных правил

▪ Существует специальная Интернет платформа CODESYS Store для распространения/продажи библиотек.

▪ Новое в библиотеках: инструментарий для документирования ➢Расскажем подробнее…

Заключение

после перерыва на кофе ☺

Page 26: Классическое ПЛК программирование с ... · 2015-04-29 · Специальный набор Use Cases библиотек ... Библиотеки для

‹#› © 3S-Smart Software Solutions GmbH

Inspiring Automation Solutions

Thank you for your attention.

CODESYS® is a registered trademark of 3S-Smart Software Solutions GmbH. Technical specifications are subject to change.Errors and omissions excepted. No reproduction or distribution, in whole or in part, without prior permission.