Hola, como podria ocurrir que en un momento, un vehiculo esta ingresando, y justo otro esta saliendo, tienes que trabajar con marcas o banderas...
es decir, en un loop estas continuamente leyendo los sensores, y si realizan una lectura, marcas un bit de una bandera...
luego, podras leer los estados de estas banderas y accionar cada motor, para abrir o cerrar.. de la misma forma que actuaras sobre un registro del contador de vehiculos.
considera emplear un programa antirrebotes
Norberto