<< Click to Display Table of Contents >> Navigation: Проект в MasterSCADA 4D > Дерево библиотек > Библиотека BaseObjects > BaseObjects.ФБ.Системные > Работа с COM > COMPortByte |
Функциональный блок COMPortByte служит для работы с COM-портом устройства (с данными типа ARRAY [*] of BYTE), на котором установлена среда исполнения. Данный ФБ обеспечивает отправку сообщения и ожидание получения ответа.
Важно! Для возможности работы c ФБ COMPortByte в исполнительную систему должна входить опция MSRT4D-COMCreate. Данная опция включена в базовый функционал лицензий Standard, Professional и Enterprise.
Этот функциональный блок может использоваться как самостоятельно, вне программ, так и в составе любой программы.
Важно! Для корректной работы функционального блока необходимо добавить протокол Универсальный протокол COM порта. На вход функционального блока нужно подать номер COM-порта, который настроен в протоколе. При работе функциональный блок будет использовать настройки (скорость, четность и др), указанные в протоколе.
Находится в библиотеке BaseObjects.
Вид в дереве |
Вид в редакторе FBD |
Входы и выходы ФБ:
Название |
Тип |
Назначение |
Входы |
||
Port |
DINT |
Задается номер COM-порта протокола, в задаче которого должен работать данный блок. |
Timeout |
DINT |
Задаётся время ожидания ответа. По умолчанию установлено значение 1000. Если пользователю не нужен ответ, то необходимо установить значение 0. Например, если ожидается получить ответ, состоящий из 10 байт, то значение входа MaxResponseCount также должно быть установлено на 10. Если установить значение входа MaxResponseCount больше, чем ожидаемый размер ответа, то в противном случае система будет продолжать ожидать получения дополнительных символов до завершения времени ожидания, заданного на входе Timeout. |
Count |
INT |
Задается количество байт, которое необходимо передать. |
Send |
BOOL |
Отправляет запрос по переднему фронту изменения значения на этом входе. |
Message |
ARRAY [*] of BYTE |
Задается запрос. |
MaxResponseCount |
INT |
Задается максимальное количество байт в ответе. По умолчанию установлено значение 0. |
Выходы |
||
Response |
ARRAY [*] of BYTE |
Выдается ответ. |
ResponseCount |
INT |
Показывается фактическое количество полученных байт. |
StatusCode |
DINT |
Выдается код ответа: •-5 — ответ получен по истечению Timeout; •0 — ответ получен по достижению количества символов в ответе, заданном в MaxResponseCount. |
State |
DINT |
Показывает состояние ФБ. •0 — ожидание регистрации порта; •1 — ожидание отправки запроса; •2 — отправка запроса. Важно! Если нет протокола с таким же номером COM-порта, как указан на входе Port, то всегда будет выдаваться значение State - 0. |
Смотрите также