PDA

Просмотр полной версии : Вопрос к знатокам по спк+мк110 счетчик импульсов



detal-ekb
11.04.2017, 17:03
Есть Спк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



Если кто то может помочь буду благодарен.

lara197a
11.04.2017, 17:10
вы не на ту лошадь поставили.
используйте Си 8 и считывайте показания с него.
ЗЫ у овен для таких задач еще есть тахометр.

detal-ekb
11.04.2017, 17:18
а как подцепить си8 к спк? как модули разобрался) а как си8 ....

Vasyandra
12.04.2017, 07:07
СИ8 подключить вряд ли получится. У него протокол ОВЕН только на борту. А вот СИ30 можно по ModBus зацепить как стандартный слейв-устройство.

capzap
12.04.2017, 07:13
СИ8 подключить вряд ли получится. У него протокол ОВЕН только на борту. А вот СИ30 можно по ModBus зацепить как стандартный слейв-устройство.

хотите сказать что панель от Овен не понимает протокол Овен?

Rake Runner
12.04.2017, 07:23
Обмен по протоколу Овен можно через бибку OwenNet настроить:
http://www.owen.ru/catalog/codesys_v3/80224381

detal-ekb
12.04.2017, 11:19
да на одном порту висят мх100 модули, на второй как раз пытаюсь подцепить через бибку)
взял пример от трм212.

не знаю какой intType указать! в трм212 был флоат24

detal-ekb
12.04.2017, 15:53
короче си8 не вариант!((((( настроили обмен! но данные не совпадают с фактом
зависимость с увеличениями оборотов не линейная((( подогнать не получится множителями-делителями

Newcomer
12.04.2017, 16:04
короче си8 не вариант!((((( настроили обмен! но данные не совпадают с фактом
зависимость с увеличениями оборотов не линейная((( подогнать не получится множителями-делителями

А какова максимальная частота импульсов ?

detal-ekb
23.05.2017, 19:47
около 35-40 импульсов в секунду! счетный диск с 30 зубами. 1000 оборотов в минуты / 30 меток =33 импульса в секунду. не стабильно считает! (((( скачут показания

Сергей0308
23.05.2017, 20:32
около 35-40 импульсов в секунду! счетный диск с 30 зубами. 1000 оборотов в минуты / 30 меток =33 импульса в секунду. не стабильно считает! (((( скачут показания

Если 1000 об/мин, это почти 17 об/с, при 30 зубьях(метках) на оборот, будет ровно 500 имп/с, короче это и СИ8 должен вполне приемлемо считать, если конечно в настройках не начудить или не надо очень большого быстродействия, кстати в СИ8 быстрее секунды не получится!

detal-ekb
24.05.2017, 13:15
си8 по 485 не работает! у него 485 только для связи с компом! уже проверенно и испробыванно.
остается только вариант мк110