Drumbot: verschil tussen versies
Naar navigatie springen
Naar zoeken springen
Regel 2: | Regel 2: | ||
Door: Joris Metzemaekers & Daan Steenbakkers & Roland van der Burg | Door: Joris Metzemaekers & Daan Steenbakkers & Roland van der Burg | ||
Dit is een robot gemaakt voor het kekrobot project. | Dit is een robot gemaakt voor het kekrobot project. | ||
De Drumbot is een machine, die door middel van een Arduino Uno en een drumstel, kan drummen. Hiervoor gebruiken wij relais. | De Drumbot is een machine, die door middel van een [[ http://www.arduino.cc/en/Main/arduinoBoardUno Arduino Uno]] en een drumstel, kan drummen. Hiervoor gebruiken wij [[http://nl.wikipedia.org/wiki/Relais relais]]. | ||
== Status: == | == Status: == |
Versie van 13 nov 2012 23:40
Info:
Door: Joris Metzemaekers & Daan Steenbakkers & Roland van der Burg Dit is een robot gemaakt voor het kekrobot project. De Drumbot is een machine, die door middel van een [[ http://www.arduino.cc/en/Main/arduinoBoardUno Arduino Uno]] en een drumstel, kan drummen. Hiervoor gebruiken wij [relais].
Status:
De drumbot kan rythme en noten spelen.
Problemen:
-De Launchpad is te beperkt voor seriële communicatie
-Servo motoren maakte onvoldoende geluid.
-Stap response motor was stil genoeg maar had niet de kracht.
Code:
#include "Wire.h" int bass = 9; int tom = 10; int snare = 8; int cymbal = 11; int count = 0; int delay_drums = 0; void setup() { Wire.begin(3); pinMode(bass, OUTPUT); pinMode(tom, OUTPUT); pinMode(snare, OUTPUT); pinMode(cymbal, OUTPUT); } void loop() { delay_drums = Wire.read(); if (delay_drums != 0) // todo commando stop afvangen en stop(); aanroepen { switch (count) { case 0: Rhythm1(delay_drums); count++; break; case 1: Rhythm2(delay_drums); count++; break; case 2: Rhythm3(delay_drums); count++; break; case 3: count++; break; case 4: count = 0; break; default: break; } } }
void BassDrum(void) { digitalWrite(bass, HIGH); } void TomDrum(void) { digitalWrite(tom, HIGH); } void SnareDrum(void) { digitalWrite(snare, HIGH); } void CymbalDrum(void) { digitalWrite(cymbal, HIGH); } void Reset(void) { digitalWrite(bass, LOW); digitalWrite(tom, LOW); digitalWrite(snare, LOW); digitalWrite(cymbal, LOW); }