Hauptmenü

Nachdem der automatische Bonbonspender aus Holz fertig war, hatte ich die Idee zu einem weiteren Süßigkeitenspender. Diesmal aber einen elektrisch angetriebenen, der die Smarties nur frei gibt, wenn ein Pin des Arduino HIGH ist. 

Holzkiste für den Bonbonspender  

Ein Carson Servomotor cs 6 (12 Euro), ein Arduino Nano Klon 3.0 (5 Euro) und eine Holzkiste mit einem Gurkenglas (4 Euro) sind die Grundlage für dieses kleine Spiel.  

servo arduino projekt suesigkeiten spender

 An der Seite ist eine Lüsterklemme angebaut. An diese können die unterschiedlichsten Spiele, Taster oder sonstwas angeschlossen werden. So ist die Box nicht nur für einen Anlass gebaut, sondern für viele. Sobald der Süßigkeitenspender ein HIGH, also ein 5 Volt Signal bekommt, wird der Servo für 330ms geöffnet und dann wieder geschlossen. Die Smarties fallen über eine kleine Rutsche dann in die Glasschüssel. 

servo arduino projekt bonbon spender

  

Schaltung für den Süßigkeitenspender 

 Die 9 Volt Blockbatterie wird mit dem Vin und dem Gnd des Arduino über einen Schalter verbunden. Der Servomotor und die Klemmen für das externe Gerät bekommen 5 Volt +/- vom Arduino. Der Eingang an Pin 3 ist über einen 10KΩ Pull down Widerstand mit Gnd verbunden. Das PWM Signal für den Servo kommt von Pin 9. 

suesigkeiten servo spender holz bauen Code

 Den Code habe ich wie üblich mit Ardublock geschrieben. Bekommt der Arduino Micro Spannung, fährt er den Servo in die Ausgangsstellung auf 53 Grad. Ist Pin 3 HIGH, bekommt der PWM Pin 9 für 1000 Mills "vorsichtshalber" noch mal das Signal für die "geschlossen" Stellung. Wartet 1000 Mills und fährt dann für 330 Mills auf 80 Grad. Nachdem die Smarties aus dem Glas gefallen sind, fährt der Servo wider auf 53 Grad, wartet noch 1000 Mills und wartet nun wieder auf ein HIGH Signal. 

servo mit ardublock steuern

 Arduino IDE Code

#include
Servo servo_pin_9;

void setup()
{
pinMode( 3 , INPUT);
servo_pin_9.attach(9);
servo_pin_9.write( 53 );

delay( 1000 );
}

void loop()
{
if (digitalRead(3))
{
servo_pin_9.write( 53 );
delay( 1000 );
servo_pin_9.write( 80 );
delay( 330 );
servo_pin_9.write( 53 );
delay( 1000 );
}
}

Suchen