Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
doc:jroboplc:modules:peripherial [2020/12/15 06:31] denis [Карта адресов каналов CHANNELMAP] |
doc:jroboplc:modules:peripherial [2024/11/17 18:25] (текущий) vitaly [Общие параметры] |
||
---|---|---|---|
Строка 15: | Строка 15: | ||
</code> | </code> | ||
- | ===== Общие настройки ===== | + | ===== Общие параметры ===== |
+ | ^ Параметр ^ Умолчание ^ Описание ^ | ||
|**portnum** | ''0'' |номер последовательного порта, который должен быть заранее определен (см. [[doc:jroboplc:modules:serial]]) | | |**portnum** | ''0'' |номер последовательного порта, который должен быть заранее определен (см. [[doc:jroboplc:modules:serial]]) | | ||
|**retrial** | ''1'' |кол-во повторных запросов при ошибке связи | | |**retrial** | ''1'' |кол-во повторных запросов при ошибке связи | | ||
Строка 25: | Строка 25: | ||
|**type** | |тип устройства | | |**type** | |тип устройства | | ||
|**logerror** | ''0'' |количество лог записей, производимых при ошибках связи. Данный параметр также можно менять одноименной командой модуля| | |**logerror** | ''0'' |количество лог записей, производимых при ошибках связи. Данный параметр также можно менять одноименной командой модуля| | ||
- | |**proxy** | |имя модуля-посредника, предоставляющего значения тегов | | + | |**logreq** | ''0'' |количество лог записей для успешных запросов. Данный параметр также можно менять одноименной командой модуля| |
- | |**delay_ms** | ''0'' |задержка перед отправкой запроса, мс | | + | |**delay_ms** | ''0'' |задержка перед отправкой запроса, мс | |
- | |**chmap** | ''off'' |разрешение создания тегов ''CHANNELMAP'' | | + | |**chmap** | ''off'' |разрешение создания тегов ''CHANNELMAP'' | |
- | |**chmap.name** | ''f'' |короткое имя модуля, используемое в ''CHANNELMAP''. Если не указано, то используется имя модуля | | + | |**chmap.name** | '''' |короткое имя модуля, используемое в ''CHANNELMAP''. Если не указано, то используется имя модуля | |
- | |**chmap.value** | ''f'' |предопределенный вручную список тегов в ''CHANNELMAP'' | | + | |**chmap.value** | '''' |предопределенный вручную список тегов в ''CHANNELMAP'' | |
+ | |**debug.logging** | ''off'' | on/off - тотальное логирование всех запрос ответов модуля | | ||
+ | |||
- | ===== Карта адресов каналов CHANNELMAP ===== | + | ===== Адресация каналов CHANNELMAP ===== |
Каждый периферийный модуль содержит в себе множество тегов. В некоторых ситуациях пользователю необходимо вводить имя тега вручную, например, чтобы прописать адрес в канал в [[doc:jroboplc:modules:roboplant]]. Чтобы облегчить пользователю процесс установки канала и исключить необходимость помнить имена тегов полностью, нужно предоставить пользователю возможность выбора тега из списка, содержащего только предназначенные для каналов теги. Данную задачу решает ''CHANNELMAP''. | Каждый периферийный модуль содержит в себе множество тегов. В некоторых ситуациях пользователю необходимо вводить имя тега вручную, например, чтобы прописать адрес в канал в [[doc:jroboplc:modules:roboplant]]. Чтобы облегчить пользователю процесс установки канала и исключить необходимость помнить имена тегов полностью, нужно предоставить пользователю возможность выбора тега из списка, содержащего только предназначенные для каналов теги. Данную задачу решает ''CHANNELMAP''. | ||
Строка 45: | Строка 48: | ||
inp12:12 cnt12 inp13:13 cnt13 inp14:14 cnt14 inp15:15 cnt15 | inp12:12 cnt12 inp13:13 cnt13 inp14:14 cnt14 inp15:15 cnt15 | ||
</code> | </code> | ||
- | Если значение строки слишком большое, то тегов ''SYSTEM.CHANNELMAP'' будет создано несколько. | + | Если значение строки слишком большое, то тегов ''SYSTEM.CHANNELMAP'' будет создано несколько, т.е. длинная строка делится на несколько маленьких и помещается в теги SYSTEM.CHANNELMAP.0, SYSTEM.CHANNELMAP.1 и т.д. На стороне клиента нужно просто соединить значения данных тегов (через пробел), чтобы получить единый список. |
**Формат значения ''CHANNELMAP''**\\ | **Формат значения ''CHANNELMAP''**\\ | ||
Строка 57: | Строка 60: | ||
Задача HMI найти все имеющиеся теги, содержащие в имени подстроку ''CHANNELMAP'', и построить единую карту тегов, которая будет использоваться элементами управления пользовательского интерфейса. Например, из вышеприведенного примера получится следующее: | Задача HMI найти все имеющиеся теги, содержащие в имени подстроку ''CHANNELMAP'', и построить единую карту тегов, которая будет использоваться элементами управления пользовательского интерфейса. Например, из вышеприведенного примера получится следующее: | ||
^Полное имя тега ^Адрес модуля ^Адрес тега ^ | ^Полное имя тега ^Адрес модуля ^Адрес тега ^ | ||
- | |owen1.inp00 |1 |0 | | + | | owen1.inp00 | 1 | 0 | |
- | |owen1.inp01 |1 |1 | | + | | owen1.inp01 | 1 | 1 | |
- | |: |: | | + | | : | : | : | |
- | |owen1.inp15 |1 |15 | | + | | owen1.inp15 | 1 | 15 | |
- | |owen1.cnt00 |1 |cnt0 | | + | | owen1.cnt00 | 1 | cnt0 | |
- | |owen1.cnt01 |1 |cnt1 | | + | | owen1.cnt01 | 1 | cnt1 | |
- | |: |: | | + | | : | : | : | |
- | |owen1.cnt00 |1 |cnt15 | | + | | owen1.cnt00 | 1 | cnt15 | |
//Примечание: В таблице для примера использована точка для разделения имени модуля и тега. Разделитель может быть любым.// | //Примечание: В таблице для примера использована точка для разделения имени модуля и тега. Разделитель может быть любым.// | ||
- | Далее, развивая пример, hmi-клиент дает пользователю возможность выбрать (или прописать) короткое имя модуля из одного выпадающего списка, а затем выбрать (или прописать) короткое имя тега из другого выпадающего списка, в котором будут содержаться только принадлежащие модулю теги. | + | Далее, развивая пример, hmi-клиент дает пользователю возможность выбрать/прописать адрес (короткое имя) модуля из одного выпадающего списка, а затем выбрать/прописать адрес (короткое имя) тега из другого выпадающего списка, в котором будут содержаться только принадлежащие модулю теги. |
**Задание CHANNELMAP в ручную**\\ | **Задание CHANNELMAP в ручную**\\ | ||
- | Значение тегов ''CHANNELMAP'' можно зададать вручную при помощи параметра ''chmap.value'', например: | + | Для любого периферийного модуля значение тегов ''CHANNELMAP'' можно зададать вручную при помощи параметра ''chmap.value'', например: |
<code yaml> | <code yaml> | ||
- | chmap.enable: on | + | chmap: on |
chmap.name: 1 | chmap.name: 1 | ||
chmap.value: inp00:A inp01:B | chmap.value: inp00:A inp01:B | ||
Строка 78: | Строка 81: | ||
Карта тегов в hmi-клиенте: | Карта тегов в hmi-клиенте: | ||
^Полное имя тега ^Адрес модуля ^Адрес тега ^ | ^Полное имя тега ^Адрес модуля ^Адрес тега ^ | ||
- | |owen1.inp00 |1 |A | | + | | owen1.inp00 | 1 | A | |
- | |owen1.inp01 |1 |B | | + | | owen1.inp01 | 1 | B | |
===== Общие теги ===== | ===== Общие теги ===== | ||
- | |SYSTEM.ErrorCount |Количество ошибок связи | | + | |SYSTEM.ErrorCount | ''INT'' |Количество ошибок связи | |
- | |SYSTEM.ErrorFlag |Флаг ошибки связи | | + | |SYSTEM.ErrorFlag | ''BOOL'' |Флаг ошибки связи | |
- | |SYSTEM.NetAddr |Сетевой адрес | | + | |SYSTEM.NetAddr | ''INT'' |Сетевой адрес | |
- | |SYSTEM.Port |Номер последовательного порта | | + | |SYSTEM.Port | ''INT'' |Номер последовательного порта | |
- | |SYSTEM.TimePeriod |Время, затраченной на опрос в одном цикле | | + | |SYSTEM.TimePeriod | ''INT'' |Время, затраченной на опрос в одном цикле | |
- | |SYSTEM.UpdateDate |Дата последнего запроса | | + | |SYSTEM.UpdateDate | ''INT'' |Дата последнего запроса | |
- | |SYSTEM.UpdateTime |Время последнего запроса | | + | |SYSTEM.UpdateTime | ''INT'' |Время последнего запроса | |
+ | |SYSTEM.SN | ''STRING'' |Серийный номер (опциональный) | | ||