Сравнение времени

Avatar
  • обновлен
Есть станок подключеный к СКАДА по Modbus TCP .  В станке есть счетчик продукции.  Как сделать чтоб этот счетчик можно было сбросить на ноль несколько раз в сутки когда меняются смены .  Причем в разное время года разное количество смен.  Пробовал сравнивать время , ничего не получилось. Потом прочитал в Степике что время нельзя сравнить , и зашел в тупик.

Avatar
pixta4ek

И вам доброго дня,  попробую.  Спасибо. 

Avatar

День добрый.

На прямую дату/время лучше так не сравнивать. Как вариант "распакуйте" дату/время и сравнивайте по дням, месяцам, годам и т.д.

https://simplight.ru/manual_next/funktsii-dlya-raboty-s-datoy-i-vremenem/decodedate

https://simplight.ru/manual_next/funktsii-dlya-raboty-s-datoy-i-vremenem/decodetime

Avatar
pixta4ek
Цитата от СИМП Лайт (тех поддержка)

День добрый.


В скриптах можно сравнивать время, с этим проблем нет. А такую идею не рассматривали - использовать элемент расписание. С помощью него организовать сброс счетчика в нужные промежутки времени.

Begin

WriteValue('TTime',Now);

In1 := ReadValue('TTime');

In2 := ReadValue('EntTime');

If in1 = in2 then

Out1 := 1

else

Out1 := 0 ;

WriteValue('Virtual Channel 10',Out1);

end.

Вот как то так я делаю , оно не работает.  Прошу только сильно не пинать , как программист я не очень. 

Avatar

День добрый.


В скриптах можно сравнивать время, с этим проблем нет. А такую идею не рассматривали - использовать элемент расписание. С помощью него организовать сброс счетчика в нужные промежутки времени.