I understand what you're saying. I think in your design you can keep it essentially one-way without needing anything on the car. This could be done by reading the plate and assigning it to the system, which would then allow tokens to be added/subtracted on the system side only. This does, however, mean that all the traffic lights are hooked up together, but still this is much easier than asking that all cars be modified.
The congestion charging system in London works in a very similar way - it doesn't pretend to know when a car is going to come in or out - just reads the plate and stores it in the database.
The congestion charging system in London works in a very similar way - it doesn't pretend to know when a car is going to come in or out - just reads the plate and stores it in the database.