You can also use humor or humiliation as punishment for being tardy. I once met a teacher who made students sing for 2 minutes if they were late. After he proposed this rule, only one student was late the entire semester. The rest of the class also found it enjoyable to listen to the students horrible singing. In that way, they respected the teachers idea because they got a laugh out of it.
Another more traditional way is to dedicate seats at the front of the room to the tardy students. This way might not be as effective as humor, but it still gets the poitn across. Students want to sit with their friends. Also by seeing a student sitting alone at the front of the class, the other students make up their mind whether to be tardy or not because they don't want to have to sit at the front of the classroom.
I remember my friend in high school telling me once about a teacher who would give physical punishment if you were tardy, but not in the way that you would think. The teacher would assign wall-sits to the tardy students for however many minutes they were late. If you were going to use this strategy, I would probably ask your principal before putting it in action. Again, the students really got a kick out of watching their friends do wall-sits at the front of the classroom.
In conclusion, if you want your students to arrive to class on time, you must first receive their respect. You can do that by fear, humiliation, humor, or any mixture there of. Once they respect you, they will like you and chances are, they will also enjoy your class. Verbal warnings and referrals to the principal just won't cut it these days. You have to think outside the box.