No he probado el código, pero una vez se apaga el motor por desactivación de la boya inferior, no debería volver a encender hasta que se active la superior; que creo que es lo que buscabas.
Obviamente, si en cualquier momento se apaga el arduino o se hace un reset, el setup hará que se encienda hasta que se desactive la boya inferior.
En todo caso, cuando pruebes comenta si funciona.