COMPort

<< Click to Display Table of Contents >>

Navigation:  Проект в MasterSCADA 4D > Дерево библиотек > Библиотека BaseObjects > BaseObjects.ФБ.Системные > Работа с COM >

COMPort

Функциональный блок COMPort служит для работы с COM-портом устройства (со строковыми данными), на котором установлена среда исполнения.

Важно! Для возможности работы c ФБ COMPort в исполнительную систему должна входить опция MSRT4D-COMCreate. Данная опция включена в базовый функционал лицензий Standard, Professional и Enterprise.

Этот функциональный блок может использоваться как самостоятельно, вне программ, так и в составе любой программы.

Важно! Для корректной работы функционального блока необходимо добавить протокол Универсальный протокол COM порта. На вход функционального блока нужно подать номер COM-порта, который настроен в протоколе. При работе функциональный блок будет использовать настройки (скорость, четность и др), указанные в протоколе. COM порт остается открытым на протяжении всего процесса работы протокола и функционирует в отдельной задаче, отправляя запросы в очередь для задачи протокола.

Находится в библиотеке BaseObjects.

Вид в дереве

Вид в редакторе FBD

COMport

COMport_1

Входы и выходы ФБ:

Название

Тип

Назначение

Входы

Port

DINT

Задается номер COM-порта протокола, в задаче  которого должен работать данный блок.

Timeout

DINT

Задаётся время ожидания ответа. По умолчанию установлено значение 1000. Если пользователю не нужен ответ, то необходимо установить значение 0.

Send

BOOL

Отправляет запрос по переднему фронту изменения значения на этом входе.

Message

STRING

Задается текст запроса.

EndChar

DINT

Устанавливается завершающий символ строки (если 0, то не используется).

MaxResponse

INT

Задается максимальное количество символов в ответе. По умолчанию установлено значение 0.

Encoding

Encoding

Определяется соответствие, с которым идет преобразование строки в массив байт и обратно. Возможные варианты:

UTF8 (по умолчанию),

CP1251,

ASCII

Выходы

Response

STRING

Выдается ответ

StatusCode

DINT

Выдается код ответа:

-5 — ответ получен по истечению Timeout;

0 — ответ получен по достижению завершающего символа (или по достижению MaxResponse символов в ответе)

State

DINT

Показывает состояние ФБ.

0 — ожидание регистрации порта;

1 — ожидание отправки запроса;

2 — отправка запроса.

Важно! Если нет протокола с таким же номером COM-порта, как указан на входе Port, то всегда будет выдаваться значение State - 0.

Completed

BOOL

Устанавливается в TRUE при завершении запроса (даже в случае ошибки), и сбрасывается в False при начале нового запроса).

Смотрите также

Универсальный протокол COM порта