"получаем текущую дату", "если наступил новый час, то сбрасываем почасовой счётчик", "если наступили новые сутки, то сбрасываем суточный".
Так понятно?
Точно нужны именно сбрасывающиеся счётчики, а не "усреднённый расход за последние сутки/последний час"?