Hola:
Sería raro lo de la resistencia, ya que suelen proporcionar el cable amarillo del tacómetro 5 V por cada vuelta o cada dos vueltas depende del ventilador.
Aún no entiendo exactamente el array que comenté arriba, esos números. Dijiste tipo de ventilador. Si, ¿Y?
Mirando más el código está cli(); y sei();. ¿Qué son?
Saludos.