<< 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 |
Входы и выходы ФБ:
Название |
Тип |
Назначение |
Входы |
||
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 при начале нового запроса). |
Смотрите также