When i need to get somewhere on time I force myself into planning for a longer commute than I have. If it takes 20 minutes to get to work I tell myself I MUST give myself 30 minutes. That way when I inevitably run late I still have buffer time. It might seem childish but it really saves me
I also set the clock on my car 7 minutes ahead but I know not everyone drives to work