Добрый день! Связал кнопку с OPC-каналом типа out, событие передать значение "1" в контроллер БЦП-2 фирмы "ЗЭИМ". Значение доходит до адресата, но в канале остается данное значение. Что нужно сделать, чтобы после отправки любого значения, канал сбрасывался в "0"?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Если значение канала сбросится в 0, то "0" уйдет адресату. Канал OUT отрабатывает (в данном случае - передает) любое изменение своего значения. Вам действительно нужно передать 0?
Posted by FiXiZ (Участник № / Member № 5069) on :
Нет, 0 передавать не нужно. Нужно, чтоб он после передачи сбрасывался в 0, но его не передавал. Есть гарантия, что переданное последнее значение будет просто висеть и не будет постоянно или не постоянно срабатывать и записывать это значение в контроллер?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Есть гарантия, что самостоятельно канал без изменения значения не отработает. При постоянном значении он может отработать только при взведении атрибута EXEC(39) в "1". После каждой отработки этот атрибут сбрасывается. Если канал в соответствии с протоколом обмена должен получить подтверждение об успешной передаче, и он этого подтверждения в течение заданного таймаута не получил, он будет повторять попытки передачи до тех пор, пока не получит подтверждения или не будет выключен.
Posted by FiXiZ (Участник № / Member № 5069) on :
Хотел еще поинтересоваться, если бы все-таки нужно было отослать число (отличное от нуля) и через небольшой промежуток послать нуль, то как это можно реализовать? На ум приходит простая ST-программа, но там проблема сделать задержку. Кнопка же с двумя событиями "передать значение" не помогает, слишком короткий промежуток.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Гарантированную задержку на передачу "0" можно реализовать только программно. Величина задержки не может быть меньше, чем цикл обработки канала программы и квантуется тоже величиной этого цикла. Реализовать задержку можно с помощью, например, FBD раздела "Триггеры и счетчики".
Posted by FiXiZ (Участник № / Member № 5069) on :
Хотелось бы задержку больше цикла обработки канала, где то 300 - 1000 млсек. В FBD это можно организовать?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Величина задержки квантуется величиной цикла и может быть задана количеством циклов.