En efecto debes de comenzar con la programación, pero la forma mas amena es con un arduino en la mano y probando y entendiendo los ejemplos.
Lo normal para comenzar es un UNO, pero para tu proyecto probablemente si te vaya a hacer falta un Mega (dependerá principalmente de la cantidad de aparatos a controlar) así que tampoco es descabellado aprender con Mega, solo hay que tener en cuenta que a veces cambia el uso de un pin por otro en los ejemplos, muchas veces viene indicado.
Conceptos básicos, de como funcionan los pines y de como están compuestos los programas
http://arduino.cc/es/Tutorial/FoundationsReferencia del lenguaje
http://arduino.cc/es/Reference/HomePage