Perdón por interferir, pues igual meto la pata, pero así como entiendo la interrupción para detectar el corte de corriente, creo que sobra usarla para la reanudación, ya que se supone que la recuperación de datos se debe hacer en el setup del programa, ¿no?
Eso sí, cuando se detecta el corte de corriente se deberían grabar los datos y no hacer nada más hasta que el arduino vuelva a encender tras el corte, porque si modificamos mientras las posiciones de los servos respecto a lo grabado...
Es decir, yo entiendo que cuando se detecta corte, se debería:
-guardar los datos.
-entrar en un bucle sin fin, comprobando que la corriente no haya vuelto, en cuyo caso retornaría a la ejecución de programa (no hará falta recargar datos, ya que no se deberían haber perdido) y que el arduino "languidezca" en ese bucle si no vuelve la corriente.
A nivel hardware, creo que había por ahí algo llamado brownout detector, para mantener el arduino en reset al bajar la corriente de un punto, evitando que "malfuncione" al bajar la tensión o al recuperarla, mientras ésta no sea estable.