Como han dicho otros, SPI y I2C se pueden usar en largas distancias siempre que las resistencias de pull-up, las frecuencias de reloj, etc.
Las principales alternativas (que darán una mejor inmunidad al ruido) son RS485 y CAN . Ambos utilizan líneas diferenciales para minimizar los problemas de ruido y se adaptan mejor a esta longitud de transmisión de datos que I2C o SPI. Sin embargo, no creo que muchos (¿algunos?) AVR vengan con periféricos CAN integrados, lo que hace que el uso de CAN sea mucho más fácil.
Diría que lo más importante a tener en cuenta al elegir un bus es asegurarse de que el protocolo que utiliza para comunicarse entre dispositivos incluya un CRC o equivalente para que pueda determinar si un mensaje se ha recibido correctamente (CAN lo tiene como parte del paquete). Teniendo en cuenta esto, también es útil tener una respuesta de tipo ACK / NACK como parte del protocolo para que se pueda retransmitir un mensaje dañado.