Drumfunctie: verschil tussen versies

Uit TrompBot
Naar navigatie springen Naar zoeken springen
Geen bewerkingssamenvatting
Regel 8: Regel 8:
==Het Drumstel==
==Het Drumstel==
Dit is het drumstel wat we gaan gebruiken.  
Dit is het drumstel wat we gaan gebruiken.  
* 3 Trommels
* 3 Trommels (rood, groen en paars)
* 1 Servo om de arm boven de verschillende trommels te bewegen (Servo A)
* 1 Servo om de arm boven de verschillende trommels te bewegen (motor A)
* 1 Servo voor de arm naar beneden te bewegen (servo B)
* 1 Servo voor de arm naar beneden te bewegen (motor B)


[[Bestand:trommel-3.png]]
[[Bestand:trommel-3.png|350px]]


== Het programma ==
== Het programma ==

Versie van 23 feb 2014 11:06

Dit is een voorbeeld van een programma voor een drumstel met 3 trommels en twee servos. Je kan het aanpassen naar meer of minder trommels en je kan makkelijk de posities van de trommels en het ritme aanpassen. Dat komt omdat het programma gebruik maakt van functies. Met een functie kan je een stuk van je programma meerdere keren gebruiken. Als je dan iets moet veranderen dan hoeft dat alleen in de functie en niet op alle verschillende plekken in het programma. Dus: als de positie van je servos niet helemaal goed is, hoef je maar 1 getal in de functie te veranderen. Of: als je het ritme wilt aanpassen hoef je alleen de volgorde van het aanroepen van de functies te veranderen, en niet de wat er in de functie geschreven is.

Het Drumstel

Dit is het drumstel wat we gaan gebruiken.

  • 3 Trommels (rood, groen en paars)
  • 1 Servo om de arm boven de verschillende trommels te bewegen (motor A)
  • 1 Servo voor de arm naar beneden te bewegen (motor B)

Het programma

 // beweeg.ino: Beweeg een servo tussen twee posities
 #include <Servo.h>    // zeg de computer dat we de servo functies willen gebruiken, anders kan hij die niet vinden

 Servo motorA;  // definieer een servo met de naam motorA 
 Servo motorB;  // definieer een servo met de naam motorB 
 
 void setup() 
 {                
   motorA.attach(13); // vebind servo met aansluitpen 13
   motorB.attach(10); // vebind servo met aansluitpen 10

 }
 
 void loop() 
 {
   motorA.write(30);          // beweeg naar 30 graden stand
   motorB.write (30);         // beweeg naar 30 graden stand
   delay(1000);               // Wacht 1 seconden (1000 milliseconden)
   motorA.write(120);         // beweeg naar 120 graden stand
   motorB.write(120);         // beweeg naar 120 graden stand
   delay(1000);               // Wacht 1 seconden (1000 milliseconden)
 }