Просмотр полной версии : CODESYS + Python
Добрый день, коллеги, а кто нибудь применял такую связку CODESYS + Python, Не совсем понимаю, для чего и для каких кокретно задач требуется применение скриптов на ПЛК и насколько это грамотно и опасно их применять?
Может кто реализовывал?
Евгений Кислов
08.10.2022, 18:33
Добрый день, коллеги, а кто нибудь применял такую связку CODESYS + Python, Не совсем понимаю, для чего и для каких кокретно задач требуется применение скриптов на ПЛК и насколько это грамотно и опасно их применять?
Может кто реализовывал?
Добрый день.
Прошивки с поддержкой Python появились относительно недавно, поэтому вряд ли много пользователей успело применить его в реальных проектах.
Что касается задач - вот несколько примеров:
- генерация отчетов в форматах json/xml/xlsx/docx/pdf (для последних трех - с форматированием, таблицами, для СПК можно и скриншот экрана визуализации вставить)
- работа с web-сервисами через REST API (например, для получения информации о текущей погоде, передачи данных в платформы типа Эвотор, ЗООТЕХНИК.рус и т.д., обмена с устройствами, подключенными к OwenCloud и т.д., и т.п.)
- можно поднять в самом ПЛК web-сервер - если уже система верхнего уровня хочет выступать REST-клиентом для получения данных от ПЛК
Насчет грамотности/опасности - зависит от разработчика.
На МЭК-языках написать программу, запуск который приведет к исключению - тоже весьма несложно.
ДаниилСПб
01.03.2023, 16:09
- можно поднять в самом ПЛК web-сервер - если уже система верхнего уровня хочет выступать REST-клиентом для получения данных от ПЛК
Тема старая, но интересная..
Не совсем понятно, как поднять REST сервер на плк при помощи Codesys и python?
Что будет выступать в роле REST сервера?
Евгений Кислов
01.03.2023, 16:30
В интернете множество информации о том, как с помощью Python поднять web-сервер.
ДаниилСПб
03.03.2023, 09:44
В интернете множество информации о том, как с помощью Python поднять web-сервер.
Как поднять web сервер на python понятно, но как связать его с Codesys, если из Codesys можно выполнять только скрипты на Python?
ДаниилСПб
03.03.2023, 10:55
если Вы поднимите веб-сервер, он должен жить своей жизнью, следовательно может посылать запросы с помощью requests или сокетов непосредственно в порт который слушает программа КДС.
Тогда это история не про python в codesys?
Евгений Кислов
03.03.2023, 11:01
Тогда это история не про python в codesys?
Это история про интерпретатор Python в прошивке нашего ПЛК.
Вы, видимо, имели в виду ScriptEngine самой CODESYS IDE?
Это совсем другая история для совсем других целей - автоматизации создания проектов, тестирования и т.д.
ДаниилСПб
03.03.2023, 12:07
Спасибо всем за комментарии, просто рассматривал на будущее возможность организации REST сервера непосредственно Codesys ПЛК например для организации клиента на мобильном приложении без промежуточных серверов. Вроде web gui codesys отдает, а REST API не совсем понятно можно ли из него получить. Видимо нет...
TonyMilkers
26.02.2024, 14:13
Это история про интерпретатор Python в прошивке нашего ПЛК.
Вы, видимо, имели в виду ScriptEngine самой CODESYS IDE?
Это совсем другая история для совсем других целей - автоматизации создания проектов, тестирования и т.д.
А об этом где можно почитать? А то как раз стоит задача автоматизации создания проектов. У вас на сервере ничего не нашёл. Возможно, плохо искал.
Евгений Кислов
26.02.2024, 14:18
А об этом где можно почитать? А то как раз стоит задача автоматизации создания проектов. У вас на сервере ничего не нашёл. Возможно, плохо искал.
https://content.helpme-codesys.com/en/CODESYS%20Scripting/_script_start_page.html
edvard_munch
28.03.2024, 20:10
- работа с web-сервисами через REST API (например, для получения информации о текущей погоде, передачи данных в платформы типа Эвотор, ЗООТЕХНИК.рус и т.д.
В ожидании ПЛК200 на виртуальном контроллере пока такое бесполезно тестировать, насколько я понимаю?
Евгений Кислов
29.03.2024, 06:12
В ожидании ПЛК200 на виртуальном контроллере пока такое бесполезно тестировать, насколько я понимаю?
На виртуальном - да.
Но если сервис у вас развернут не локально, то вы можете использовать наш демо-ПЛК для отладки обмена с ним:
https://owen.ru/forum/showthread.php?t=34242
В ожидании ПЛК200 на виртуальном контроллере пока такое бесполезно тестировать, насколько я понимаю?
У питона же есть версия, если на такой же версии на ПК будет работать, почему не должно в контроллер заработать
edvard_munch
29.03.2024, 19:22
На виртуальном - да.
Но если сервис у вас развернут не локально, то вы можете использовать наш демо-ПЛК для отладки обмена с ним:
https://owen.ru/forum/showthread.php?t=34242
Спасибо, посмотрю
edvard_munch
29.03.2024, 19:26
У питона же есть версия, если на такой же версии на ПК будет работать, почему не должно в контроллер заработать
Ну скрипты на Питоне понятно что можно писать и тестировать
Больше имелось ввиду работа с прокладкой между Питоном и визуализацией Codesys
Чтобы увидеть результаты скрипта на мнемосхеме. Но, возможно это не стоит того и там не сложно и не долго будет отладиться на живом устройстве при наличии готового скрипта на Питоне
SysExecute вернёт в КДС вывод скрипта в виде строки. Желаемую строку можно парсить и в эмуляторе
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot