Het geluid dat u hoort wordt geproduceerd door de hoge druk lucht haasten uit het ventiel - het opent en sluit zeer snel en geluid produceert. De klep die ik hier gebruikt is van Festo MHE3-MS1H-3 / 2G-QS-6.
De switch op tijd is 2,3 ms en het uitgeschakeld in 2.8ms - zeer indrukwekkend stuk van hardware en ze zijn vrij prijzig - gelukkig kreeg ik het voor bijna niets.
1. het circuit is zeer eenvoudig - gewoon een ULN2003A gebruikt als drijvende kracht voor de klep. Controleer het diagram.
(merk op dat ik moest vervangen van de klep met een solenoïde - maar hey het is een magneetventiel immers. Oh en door de manier - als u niet beschikt over een pneumatische klep het circuit met enkel een regelmatige solenoïde werken zal - gewoon mounten zodat het lijkt een metalen object en moet het geluid te produceren).
SCHAKELSCHEMA -> >
2. hier is de code van de arduino (het is een licht aangepaste versie van een schets gemaakt door Carlton Shepherd) - net exemplaar & deeg bouw de circuit zoals beschreven en het zou moeten werken prima
Const int c = 261;
Const int d = 294;
Const int e = 329;
Const int f = 349;
Const int g = 391;
Const int gS = 415;
Const int een = 440;
Const int aS = 455;
Const int b = 466;
Const int cH = 523;
Const int cSH = 554;
Const int dH = 587;
Const int dSH = 622;
Const int eH = 659;
Const int fH = 698;
Const int fSH = 740;
Const int gH = 784;
Const int gSH = 830;
Const int aH = 880;
Const int buzzerPin = 2;
int counter = 0;
VOID Setup
{
Setup pin modi
pinMode (buzzerPin, OUTPUT);
}
void loop
{
Spelen van de eerste sectie
firstSection();
Spelen van de tweede sectie
secondSection();
Variant 1
pieptoon (f, 250);
pieptoon (gS, 500);
pieptoon (f, 350);
pieptoon (a, 125);
pieptoon (cH, 500);
pieptoon (a, 375);
pieptoon (cH, 125);
Beep(eH, 650);
delay(500);
Tweede gedeelte
secondSection();
Variant 2
pieptoon (f, 250);
pieptoon (gS, 500);
pieptoon (f, 375);
pieptoon (cH, 125);
pieptoon (een, 500);
pieptoon (f, 375);
pieptoon (cH, 125);
pieptoon (a, 650);
delay(650);
}
VOID pieptoon (int opmerking, int duur)
{
Toon op buzzerPin spelen
Toon (buzzerPin, /4, opmerking duur);
Stop Toon op buzzerPin
noTone(buzzerPin);
delay(50);
Increment teller
teller ++;
}
VOID firstSection()
{
pieptoon (een, 500);
pieptoon (een, 500);
pieptoon (een, 500);
pieptoon (f, 350);
pieptoon (cH, 150);
pieptoon (een, 500);
pieptoon (f, 350);
pieptoon (cH, 150);
pieptoon (a, 650);
delay(500);
Beep(eH, 500);
Beep(eH, 500);
Beep(eH, 500);
pieptoon (fH, 350);
pieptoon (cH, 150);
pieptoon (gS, 500);
pieptoon (f, 350);
pieptoon (cH, 150);
pieptoon (a, 650);
delay(500);
}
VOID secondSection()
{
Beep(Ah, 500);
pieptoon (a, 300);
pieptoon (a, 150);
Beep(Ah, 500);
pieptoon (gSH, 325);
pieptoon (gH, 175);
pieptoon (fSH, 125);
pieptoon (fH, 125);
pieptoon (fSH, 250);
delay(325);
pieptoon (aS, 250);
pieptoon (dSH, 500);
pieptoon (dH, 325);
pieptoon (cSH, 175);
pieptoon (cH, 125);
pieptoon (b, 125);
pieptoon (cH, 250);
delay(350);
}