Skip to content

Latest commit

 

History

History
172 lines (109 loc) · 8.76 KB

readme.md

File metadata and controls

172 lines (109 loc) · 8.76 KB

ptusa_main

Программа ptusa_main непосредственно управляет технологическим процессом.

Содержание

  1. Общая архитектура системы
  2. Общее описание
  3. Как собрать проект
  4. Использование набора инструментов PLCnext Technology C++ для ОС Windows
  5. Как запустить проект

Общая архитектура системы

Общая архитектура автоматизированной системы управления технологическим процессом (АСУТП) изображена на рисунке ниже:

System architecture

Общее описание

Управляющая логика реализуется в виде скрипта Lua. В ходе выполнения программы управление передается в отдельные специальные функции Lua, которые отвечают за отдельные этапы.

  • Общая схема работы программы контроллера (в Drakon diagram language)

Control program

  • Выполнение технологического процесса:
%%{ init: {'theme': 'neutral'} }%%

flowchart TD
    A(["<b>2 Выполнение <br/> технологического процесса</b>"])
    ---
    B[/"Для каждого <br/> аппарата (unit)"\]
    B --- C[["<p style='width:150px'>3 Выполнение <br/> аппаратной <br/> процедуры"]]
    C --- D[\"Следующий <br/> аппарат (unit)"/]
    D --- E([Конец])

Loading
%%{ init: {'theme': 'neutral'} }%%

flowchart TD
    A(["<b>3 Выполнение <br/> аппаратной процедуры</b>"]) --- B[/Для каждой операции\]
    B --- C[[4 Выполнение операции]]
    C --- D[\Следующая операция/]
    D --- E([Конец])

Loading

Operation

%%{ init: {'theme': 'neutral'} }%%

flowchart TD
    A([<b>5 Выполнение шагов</b>]) --- A1[[<p style='width:150px'>6 Выполнение <br/> главного шага]]
    A1 --- B[/Для каждого <br/> дополнительного шага\]
    B --- C[[<p style='width:150px'>6 Выполнение шага]]
    C --- D[\"Следующий <br/> дополнительный шаг"/]
    D --- E([Конец])

Loading
%%{ init: {'theme': 'neutral'} }%%

flowchart TD
    A([<b>6 Выполнение шага</b>]) --- B[/Для каждого действия\]
    B --- C[[7 Выполнение действия]]
    C --- D[\Следующее действие/]
    D --- E([Конец])

Loading
%%{ init: {'theme': 'neutral'} }%%

flowchart TD
    A([<b>7 Выполнение действия</b>]) --- B[<p style='width:150px'> Логика действия]
    B --- E([Конец])

Loading
  • При включении/выключении операции происходит следующее:

Clone repository

  • При выполнении команды происходит следующее:

Clone repository

Как собрать проект

Вы можете клонировать репозиторий при помощи следующей команды: git clone --recurse-submodules https://github.com/savushkin-r-d/ptusa_main.git

Или, если вы клонировали проект без инициализированных и обновленных подмодулей, попробуйте следующее: git submodules update --init --recursive

win

Требования:

  • Qt Creator

В Qt вы можете открыть файл CMakeList.txt клонированного репозитория.

Или клонировать репозиторий используя Qt: Добавить -> Импортировать проект -> Клонирование Git указать ссылку на репозиторий и поставить галочку для рекурсивного клонирования.

  • Microsoft Visual Studio Community 2022

Перед запуском проекта необходимо убедиться в том, что у вас установлен C++ CMake tools for Windows. Средства C++ CMake для Windows устанавливаются с помощью:

Visual Studio Installer -> Разработка классических приложений на C++ -> Средства CMake C++ для Windows

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

После этого вы должны открыть (в Visual Studio) корневой каталог. Таким образом, вы получаете проект на основе CMake. Если после запуска возникла ошибка, то следует очистить кэш CMake: Проект -> Удалить кэш и выполнить перенастройку.

linux

Eclipse IDE с проектом на базе CMake в Linux.

Использование набора инструментов PLCnext Technology C++ для ОС Windows

Загрузите последние версии с веб-сайта Phoenix Contact https://www.phoenixcontact.com/products (например, из области AXC F 2152) PLCnext Technology C++ Toolchain для Windows (текущая 2023.0 LTS) и sdk для Windows 64 bit (текущая 2022.0.4 LTS) , в разделе Загрузки->Программное обеспечение $-$ http://www.phoenixcontact.com/qr/2404267/softw.

Перейдите в папку, где находятся загрузки (типичный путь %userprofile%/Downloads), распакуйте архив (SDK_2021.9_Windows_AXC_F_2152.tar.xz.zip).

Установка (обновление) SDK

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

plcncli.exe install sdk –d [путь установки] –p [путь к архивному файлу]

Если вы устанавливаете несколько SDK, Phoenix Contact рекомендует использовать структуру папок "целевое имя/версия встроенного ПО".

Также ваш путь установки должен совпадать с путем в CMake.

Например:

plcncli.exe install sdk -d C:\CLI\sdks\AXCF2152\2022_0 \ -p pxc-glibc-x86_64-mingw32-axcf2152-image-mingw-cortexa9t2hf-neon-axcf2152-toolchain-2022.0.tar.xz

SDK указан для контроллера. Полный список контроллеров можно найти на сайте PHOENIX CONTACT (Главная страница > Продукция > ПЛК и системы ввода-вывода > Управление PLCnext > Список продуктов Технология PLCnext components)

Как запустить проект

Для запуска демо проекта вы должны использовать эту команду:

windows

  • После сборки и развертывания windows-default конфигурации cmake:
    bin\install\windows-default\Release\ptusa_main.exe ^
    --path demo_projects/T1-PLCnext-Demo/ ^
    --sys_path demo_projects/T1-PLCnext-Demo/sys/ ^
    --debug ^
    demo_projects/T1-PLCnext-Demo/main.plua
  • Запуск проекта в Microsoft Visual Studio Community 2022: Выбрать элемент запуска -> ptusa_main.exe.