While there is some overlap in their usage, there are significant differences between these prepositions.
"At" can indicate a specific location or time
He arrived at the airport.
He arrived at 7:00PM
"In" can indicate a specific or relative location or relative time.
He arrived in London
He put the shoes in the box. (It has the sense of "inside" - the position of the shoes relative to the box)
He arrived in time. (Relative to when he should have arrived) You would never use "in" with regard to a specific time. For example "He arrived in 7:00PM" would be WRONG.
"On" is used with regard to specific dates (but never times), relative times, relative locations and specific locations with some grammatical adjustments.
He arrived on Saturday. He arrived on the 3rd of June.
He arrived on time. (But "He arrived on 7:00PM is WRONG)
He put the shoes on the box. (The shoes were on top of the box, not inside it)
He arrived on the island of Hawaii. (He arrived on Hawaii is WRONG)