Так, Arduino може керувати вісьмома транзисторами.
Для кожного соленоїда потрібен транзистор.
Ідеальним було б використовувати логічний рівень N-канальних MOSFET, які Arduino 0/5V вихід може керувати безпосередньо. IRFL540 згадується багато, ви можете отримати їх на digikey.com.
Привід ворота через 150 Ом резистор, і 10K резистор від воріт до Gnd так транзистор вимкнений в той час як Arduino скидання (і IO контактів все повернутися до входів).
Залежно від струму, ви можете використовувати регістр зсуву з виходами Open Drain. TPIC6C595, 100мА. TPIC6B595, 150mA. TPIC6595 і TPIC6A595 є ще більш високими діючими поточними частинами.
Додати діод з однаковим рейтингом струму по соленоидной котушці, катод до 24В, так що вибух струму, що генерується котушкою, коли транзистор закривається, має десь розсіятися. (струм в котушці хоче продовжувати текти, як магнітне поле в котушці руйнується, він не може йти через відключений транзистор, так що він йде через котушку і розсіюється в котушці дроти опору).