Библиотеки блоков / Устройства |
в палитре | на схеме |
Блок предоставляет возможность автоматической синхронизации памяти Slave-блока с базой данных в процессе расчёта.
На каждом расчётном шаге значения регистров считываются с выходного порта Slave-блока и записываются в соответствующие им сигналы в базе данных. Значения из базы данных в свою очередь также могут перезаписывать память блока. Частота записи из базы в блок регламентируется настройками (не обязательно на каждом шаге).
Все операции по записи/чтению сигналов базы данных реализуются за один расчётный шаг. Сигнал считывается из базы данных, передаётся в slave-блок, где прописывается в память, считывается с его выходного порта и, замыкая круг, перезаписывает своё же значение в базе данных за один расчётный шаг.
С точки зрения реализации блок представляет из себя внешнюю обёртку над Slave-блоком. Весь функционал блока основан на инструментах SimInTech, предоставляемых пользователю, и полностью открыт. Все параметры расчёта задаются на уровне блока-интерфейса и автоматически передаются в Slave-блок.
Количество подключений, которые готов принять блок при работе в TCP режиме. Максимально возможное количество - 64.
Выводить в консоль программы информацию об успешных событиях подключения/отключения к Слейву (или COM-порту для RTU режима).
Выводить в консоль программы информацию об ошибках подключения и работы.
Регистровый размер памяти блока. Задаётся один раз до начала расчёта. При задании свойства vals_nmb в нижней части свойств блока автоматически формируется шаблон таблицы соответствия регистров сигналам базы данных.
Внимание, данное свойство задаёт количество значений, с которыми предполагается работать. Реальный размер памяти (в регистрах) определяется значением свойства vals_nmb, умноженным на количество регистров, которые занимает выбранный тип (свойство RegsType).
Свойство задаёт начальный адрес нумерации регистровой памяти.
Для возможности работы с системами, в которых принят другой порядок следования байт, блок предоставляет возможность перестановки байт местами при записи и чтении. Предоставляемые варианты: AB CD, CD AB, BA DC, DC BA.
Предоставляемые варианты: AB CD, CD AB, BA DC, DC BA.
Предоставляемые варианты: AB CD EF GH, GH EF CD AB, BA DC FE HG, HG FE DC BA.
Битовый размер памяти блока. Задаётся один раз до начала расчёта. При задании свойства bits_nmb в нижней части свойств блока автоматически формируется шаблон таблицы соответствия регистров сигналам базы данных.
Свойство задаёт начальный адрес нумерации битовой памяти.
Данная опция позволяет осуществлять подключение нескольких SLAVE-устройств к одному COM-порту. Реальное подключение к COM-порту осуществляется единожды, распределение пакетов осуществляется уже на уровне среды SimInTech, поэтому данный режим не накладывает никаких специальных требований на COM-порт
Для работы в данном режиме опция должна быть включена для каждого блока, который будет использовать целевой COM-порт.
Непосредственная работа slave-блока программно осуществляется в параллельном потоке, поэтому в общем случае скорость обработки блоком внешних запросов master-устройств не зависит от расчётного шага системы.
Свойство задаёт шаг синхронизации между внутренней памятью блока и портами входа/выхода. Шаг считается относительно расчётного времени системы SimInTech. Если заданный шаг меньше расчётного шага системы, синхронизация будет происходить на каждом расчётном шаге.
Пример: на предыдущем расчётном шаге блок имел значения регистров [А1, А2]. На следующем шаге пользователь поднимает флаг writeRegsFromInput и подаёт в блок значения [А1*, А2] (А1* - новое значение, А2 - совпадает со старым). От внешнего устройства приходит запрос на запись 2 регистра А2*. Новые значения регистров будут [А1*, А2*] – конфликта нет, независимо от значения параметра writeDataPriority. Другая ситуация – со входа приходит [А1*, А2], при этом внешнее устройство также пытается заменить значения первого регистра А1**. В этом случае то, кому будет отдано предпочтение определится параметром writeDataPriority.
Свойство определяет частоту перезаписи памяти блока со схемы для третьего режима работы свойства fromBDtoBlock. Шаг должен иметь целое значение.
Информационное свойство, текущую выводящее информацию о всех регистровых значениях в виде одного массива.
Информационное свойство, текущую выводящее информацию о всех битовых значениях в виде одного массива.
В свойства вручную прописывается полное имя сигнала базы данных, с которым будет синхронизирован указанный участок памяти блока (формат записи: <группа>_<сигнал>). Если значение строки оставлено пустым, в ассоциированные регистры при синхронизации будет записываться 0. При задании несуществующего в базе данных сигнала блок сообщит об ошибке.
Информационные свойства, в которые выводятся соответствующие регистровые значения на текущем расчётном шаге.
В свойства вручную прописывается полное имя сигнала базы данных, с которым будет синхронизирован указанный бит памяти блока (формат записи: <группа>_<сигнал>). Если значение строки оставлено пустым, в ассоциированный бит при синхронизации будет записываться 0. При задании несуществующего в базе данных сигнала блок сообщит об ошибке.
Информационные свойства, в которые выводятся соответствующие битовые значения на текущем расчётном шаге.