Estoy de acuerdo en que el Arduino será más probable que conduzca un transistor MOSFET a la saturación, pero no creo que ese sea el único problema. Una vez que encienda el transistor, el gran consumo de corriente hará que el voltaje de la batería caiga por debajo de los 3.3V que necesita el Arduino. Esto hará que el Arduino deje que el transistor se apague. Entonces el voltaje de la batería se recuperará, el Arduino se reiniciará y todo el proceso se repetirá una y otra vez ...
Mida el voltaje real en la batería cuando está conectado a la carga inductiva. Si se mantiene lo suficientemente alto (3.3V + caída del regulador de voltaje), reemplace el NPN con un MOSFET y viva una vida larga y feliz. Si no, tienes más trabajo por hacer.
No dijiste cuál es la carga inductiva, pero supongo que es algo mecánico como un relé o solenoide, todos los cuales tienen un comportamiento eléctrico similar. Lo primero que hay que entender acerca de ellos es que requieren una cantidad mínima de corriente para operarlos. Es posible que no se requiera el voltaje completo de la batería para impulsar esa cantidad mínima de corriente a través de ellos.
La solución más obvia es una resistencia en serie. En su forma actual, la corriente (después del transitorio inductivo) está limitada solo por la resistencia de 5 ohmios de la carga. Añadir más resistencia para bajar la corriente. Si tiene suerte, habrá un valor de resistencia adicional que aún permita que fluya suficiente corriente para operar la carga, pero no tanto para disminuir el voltaje de la batería por debajo de lo que se necesita para mantener vivo al Arduino.
La solución más sofisticada es utilizar Arduino para PWM el transistor para mantener la corriente necesaria. Para ello, tendrá que agregar un diodo de rueda libre a través de la carga. Estos a veces se denominan diodos de retención o de retención, pero en este caso lo llamé diodo de marcha libre porque permite que el inductor continúe conduciendo después de que se apague el transistor. Dejemos que el transistor gire libremente como en la figura de la derecha.
Entonces, la idea es que use el Arduino para encender y apagar el transistor a aproximadamente 10 kHz (PWM) y ajustar el ciclo de trabajo de modo que la corriente sea tan alta como sea necesario a través del relé o solenoide. o cualquiera que sea la carga inductiva.
El siguiente paso en sofisticación es implementar el llamado controlador de pico y retención. Esto se aprovecha del hecho de que los relés y solenoides normalmente requieren una gran corriente para activarlos, pero luego comparativamente menos corriente para mantenerlos. En su caso, debe mantener la carga activada durante aproximadamente medio segundo, pero dependiendo del dispositivo, probablemente pueda reducir la corriente después de una pequeña fracción de ese tiempo. Con el controlador PWM, simplemente reduce el ciclo de trabajo después de, por ejemplo, 100 ms, para reducir la corriente.
Las corrientes y tiempos reales deberán determinarse a partir de hojas de datos, experimentación o ambas.