Тестовый канал 109, где мы включаем и выключаем.
110-й следующий канал расчетный с входной формулой триггера по спаду (переход с 1 на 0) — Ftrig(Val(109))
Следующий наш счетчик, настроенный на канал FTrig c формулой Val(110) >0 ? Val(111)+1 : Val(111)
Сама формула триггера по спаду
// Ftrig - импульс при переходе с 1 на 0
int[] FtrigN = new int[1];
bool[] FtrigM = new bool[1];
public double Ftrig (double clk)
{
bool q = Val(CnlNum) > 0;
bool c = clk > 0;
int res = Array.IndexOf(FtrigN, CnlNum);
if (res == -1)
{
res = FtrigN.Length;
Array.Resize(ref FtrigN, res+1);
Array.Resize(ref FtrigM, res+1);
FtrigN[res] = CnlNum;
FtrigM[res] = true;
}
q = !c && !FtrigM[res];
FtrigM[res] = !c;
return Convert.ToDouble(q);
}
Надо бы переделать ее давно, но работает… Она возвращает 1-цу на один цикл в канал