Здравствуйте!
Счетчик импульсов СИ30 в ПЛК150 отдает значение текущего количества импульсов. Необходимо в ПЛК произвести расчет текущей скорости. Подскажите, каким образом это можно осуществить?
Здравствуйте!
Счетчик импульсов СИ30 в ПЛК150 отдает значение текущего количества импульсов. Необходимо в ПЛК произвести расчет текущей скорости. Подскажите, каким образом это можно осуществить?
импульсы переводите в расстояние, расстояние и время переводите вскорость.
Могу предложить еще вариант
Если значения счетчика долго не меняются, то значит объект остановился, обнуляем скорость (можно использовать таймер TOF).
Допишите после вызова R_TRIG1:
Вообще-то лучше текущее время запоминать после очередного опроса счетчика. Тогда при начале движения объекта погрешность первого показания будет меньше.TOF1(IN:= R_TRIG1.Q, PT:= t#5s);
IF NOT TOF1.Q THEN (*если в течении 5 секунд счетчик не изменился*)
v:=0; (*обнуляем скорость*)
old_time:=TIME(); (*запоминаем текущее время*)
END_IF
Последний раз редактировалось amn; 22.08.2016 в 21:33.
Обнуление заработало, спасибо.
К сожалению проявляется проблема с подсчетом скорости: показания не стабильны. Присутствует некий шаг, через который индицируются показания. А при небольшой скорости выводится слишком большое значение. Возможно существуют какие-то ошибки в нижеприведенной программе.