Обозначение


Описание

Функциональный блок SysExecute используется для отправки команды в терминал Linux и получения ответа.
Интерфейс данного блока соответствует CAA Behavior Model (PLCopen Behavior Model).
Работа ФБ выполняется в отдельном потоке и не оказывает влияние на время работы циклов таймера и фона.

Важно:
1. Вызываемые команды могут выполнятся в неблокирующем режиме – т.е. поток может освобождаться после подачи команды и через определенное время забирать ее ответ. Для этого в конце команды необходимо добавить знак '&' (амперсанд).
2. В случае если результат выполнения команды содержит более 1023 символов, выполнение команды будет прервано, будут подняты флаги done, error, но результат работы будет содержаться в output.
3. Запуск выполнения команды не произойдет, если поднят флаг прерывания abort.

Назначение входов и выходов

ВходыТипОписание
executebзапуск выполнения команды по восходящему фронту (0->1)
commandstrтекст команды
abortbзапуск прерывания исполнения команды по восходящему фронту (0->1)
priorityi32приоритет потока ожидания выполнения команды, по умолчанию 5
ВыходыТипОписание
outputstrрезультат выполнения команды (менее 1024 символов)
donebвыполнение завершено
abortedbвыполнение было прервано
busybидет работа
errorbработа была прервана из-за переполнения результирующей строки

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

Выполнение команды PING


Чтение содержимого файла с карты памяти в ПЛК


Ссылки