Есть Спк107 + мк110 и другие модули все 3 штуки
На первом входе подключен датчик оборотов
Обороты не стабильно показывает - скачет- к этому же датчик подключен си8 чтобы сравнить и проверить!
если на си8 показывает 530 +-2
то на спк показыват от 490 до 560
вот так часть кода касательно датчика
// генерируем импульс каждую секунду
fbTON(IN:=NOT(fbTON.Q), PT:=T#5S);
IF fbTON.Q THEN
MK110_8D_DN_4R.wCounter1:=0;
// если счетчик перешел через ноль, тогда вычисляем правильное значение импульсов
IF MK110_8D_DN_4R.rCounter1 < wPrevCount THEN
wCountPerSec:=MK110_8D_DN_4R.rCounter1+(65535-wPrevCount);
// иначе по стандартной формуле
ELSE wCountPerSec:=MK110_8D_DN_4R.rCounter1-wPrevCount;
END_IF
wPrevCount:=MK110_8D_DN_4R.rCounter1;
// текущее
rRotatePerSec:=wCountPerSec/31.0; // переводим число импульсов в число оборотов
rRotatePerMin:=rRotatePerSec*12; // вычисляем число оборотов за минуту
IF rRotatePerMin <> 0 THEN
rPrevRotatePerMin:=rRotatePerMin;
rRotatePerMinVisu:=rRotatePerMin;
ELSE rRotatePerMinVisu:=rPrevRotatePerMin;
END_IF
END_IF
// сбрасываем результат когда все выключенно в ноль каждые 3 секунды на визуализации
fbTONreset(IN:=(wCountPerSec=0),PT:=T#3S);
IF fbTONreset.Q THEN
rRotatePerMinVisu:=0.0;
END_IF
Если кто то может помочь буду благодарен.