So I realize now I didn't mention I had a field that defined the time in a second-by-second manner. Given that, the following bit of SQL does what I intended. Hope it helps others! 
The fields are: ID , TIME, and SEQUENCE (which has all the 1's and 0's)
Code:
SELECT x.ID, Min(x.TIME) AS ["FirstPd"], Max(x.TIME) AS ["LastPd"]
FROM (
SELECT dat1.[ID], dat1.[SEQUENCE], dat1.[TIME], dat1.[SEQUENCE ], (
SELECT count(*)
FROM [YOURTABLE] AS dat2
WHERE dat2.[ID] = dat1.[ID]
AND dat2.[TIME] <= dat1.[TIME]
AND dat2.[SEQUENCE] <> dat1.[SEQUENCE] )
AS rungroup
FROM [YOURTABLE]
AS dat1)
AS x
WHERE (((x.Expr1001)=1))
GROUP BY x.ID, x.rungroup
HAVING (((Count(*))>=3))
ORDER BY x.ID, "FirstPd";