27986[/ATTACH]
Настройка "PRU цикла" (PRU0 100мс, PRU1 200мс)
Снимок экрана 2016-12-06 в 17.16.17.png
Пример "делаем быстрый счётчик" (==чтение быстрых входов):
Снимок экрана 2016-12-06 в 17.15.38.png
Можно сделать и пример, когда BOOL значение из КДС просто записывается в fast out.
Это будет так:
Код:
@Export()
val : BOOL;
...
FAST_OUTPUTS(out3 := val);
Тут два варианта:
2.1) enable:=false и quantity:=0 можно менять одновременно. Да, потребуется цикл ПЛК + ещё время от того, как ПЛК осознает значение "аварии".
2.2) При составлении программы в Hardella можно напрямую читать быстрые входы, вообще без "основного цикла ПЛК". Если аварийный сигнал завести на один из быстрых входов, то можно останавливать блок ШД "прямо сразу"
Например, так (считаем, что в случае аварии сигнал на in1 пропадает, и импульсы нужно прекращать):
Снимок экрана 2016-12-06 в 17.22.05.png
Тут интервал от появления аварии до реакции будет порядка микросекунд (зависит от того, какой настроить цикл PRU)