Split to time periods

I have fished this from the net and I'm trying to manipulate it but it's complicated.Although I can use it, it still is complicated, so an easier version would be preferred.

So on 15 minutes, it goes like this:

select OrderH_intID, OrderH_dtmInitiated, -- this is the time I have
          dateadd(minute,
      (datepart(minute, OrderH_dtmInitiated) / 15) * 15,
      dateadd(hour, 
         datepart(hour, OrderH_dtmInitiated), 
         convert(datetime, convert(varchar, OrderH_dtmInitiated, 1))))
          --,sum(StaffingRequirement), sum(ActiveStaff)  ---etc
          from tblorderhistory
where OrderH_dtmInitiated > '20180226 14:19:00'
          group by OrderH_intID,OrderH_dtmInitiated, 
          dateadd(minute,
      (datepart(minute, OrderH_dtmInitiated) / 15) * 15,
      dateadd(hour, 
         datepart(hour, OrderH_dtmInitiated), 
         convert(datetime, convert(varchar, OrderH_dtmInitiated, 1))))