Turinys:
- 1 žingsnis: Pjezo garsinis signalas
- 2 žingsnis: Spauskite mygtukus
- 3 žingsnis: potenciometras
- 4 žingsnis: kodas
Video: „Arduino“- pjezo trijų mygtukų fortepijonas: 4 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
Trijų mygtukų fortepijonas yra projektas pradedantiesiems, turintiems tam tikros patirties naudojant „Arduino“.
Pirmą kartą žaisdamas su pjezo garsiniu signalu netyčia buvau priblokštas bandydamas tai sukurti. Buvo TAI garsiai! Bandydamas išsiaiškinti įvairius būdus, kaip padaryti garsinį signalą tylesnį ir išbandyti skirtingus dažnius, naudojant toną () ir noTone () funkciją, supratau, kad gali būti smagu pabandyti sumaišyti pjezo garsinį signalą kartu su kitais mėgstamais mano „Arduino“komponentais rinkinys: mygtukai ir potenciometras.
Reikalingos medžiagos apima:
- 1 Arduino
- 1 Duonos lenta
- 1 USB kabelis
- Trumpieji laidai (įvairių spalvų)
- 1 330 Kilo omų rezistorius
- 1 pjezo garsinis signalas
- 3 Mygtukai
- 1 potenciometras
1 žingsnis: Pjezo garsinis signalas
Norėdami pradėti, nustatykite pjezo ant „Arduino“duonos lentos. Viena jos pusė (trumpesnė kojos pusė) turi bėgti prie žemės. Kitą pusę (ilgesnę kojos pusę) reikia prijungti prie skaitmeninio įvesties kaiščio. Aš nusprendžiau prijungti jį prie 8.
2 žingsnis: Spauskite mygtukus
Tada atėjo laikas nustatyti mygtukus. Kaip ir pjezo, mygtukai turi būti prijungti prie žemės ir prie skaitmeninio įvesties kaiščio.
3 žingsnis: potenciometras
Paskutinis fizinio kūrimo žingsnis yra potenciometras. Potenciometrai būna kelių formų. Mes naudosime potenciometrą kaip įtampos daliklį, todėl reikia sujungti visas tris jo kojas.
Dešinė koja: neigiama juosta (žemė)
Vidurinė koja: analoginis kaištis 0
Kairė koja: teigiama juosta
4 žingsnis: kodas
Rašydamas šio projekto kodą, nurodiau informaciją apie keletą konkrečių funkcijų tipų:
tonas()
noTone () (aš šio nenaudojau. Vietoj to nustatiau „0“dažnį.)
žemėlapis ()
Dar vieną puikią nuorodą pirmą kartą naudojantiems „Piezo Buzzers“vartotojams rasite čia. Nors idėja pakeisti pjezo garsinio signalo garsą atrodo paprasta, iš pradžių tai gali būti šiek tiek stulbinanti!
Tono () funkciją galima suskirstyti į tris dalis:
- Smeigtukas (kaištis, prie kurio prijungtas pjezo garsinis signalas)
- Dažnis (garso dažnis hercais)
- Trukmė (garso trukmė, nurodyta milisekundėmis)
Iš esmės tai atrodo taip: tonas (kaištis, dažnis, trukmė). Trečias komponentas (trukmė) yra neprivalomas, o kiti du yra būtini, kad garsinis signalas veiktų. Tono funkcijos „dažnio“komponentas yra tai, ką galima laikyti „garsu“, kurį skleidžia garsinis signalas.
Taip pat pastebėsite, kad kode yra du kiti kodo bitai. Yra keletas „if/else“teiginių, kurie nurodo „Arduino“, ką daryti, jei paspaudžiami skirtingi mygtukai, ir nustatyti jį „dažnis = 0“, kai nepaspaudžiamas nė vienas mygtukas. „If/else“teiginiuose žemėlapio () funkcijos naudojamos potenciometro skalės susiejimui su dažnių rinkiniu. Šiuos galima pakeisti! Žaiskite su skirtingomis dažnio vertėmis, kad pamatytumėte, kokius skirtingus garsus galite išgauti iš pjezo.
Patikrinkite kodą, kurį naudoju kurdamas trijų mygtukų fortepijoną, arba patikrinkite žemiau.
int piezoPin = 8; // Prie Piezo prijungtas kaištis.
int sensorPin = 0; // Nustatykite kaištį, prijungtą prie jutiklio (potenciometro). int sensorValue = 0;
int mygtukas1 = 5; // Nustatykite įvesties kaiščius, prijungtus prie mygtukų.
int mygtukas2 = 4; int mygtukas3 = 3;
int dažnis = 0;
const int delayTime = 500; // Nustatykite tono () funkcijos atidėjimo laiko kintamojo konstantą.
void setup () {
pinMode (1 mygtukas, INPUT_PULLUP); pinMode (mygtukas2, INPUT_PULLUP); pinMode (3 mygtukas, INPUT_PULLUP); }
void loop () {
sensorValue = analogRead (sensorPin); // Skaitykite jutiklį. // Susieti skirtingas potenciometro vertes pagal kiekvieno trijų mygtukų dažnių rinkinį. if (digitalRead (button1) == LOW) {dažnis = žemėlapis (sensorValue, 0, 1023, 400, 499); } else if (digitalRead (button2) == LOW) {dažnis = žemėlapis (sensorValue, 0, 1023, 500, 599); } else if (digitalRead (button3) == LOW) {dažnis = žemėlapis (sensorValue, 0, 1023, 600, 699); } else {dažnis = 0; } tonas (piezoPin, dažnis, uždelsimo laikas); // Nustatykite tono () funkcijas su kintamaisiais. }
Rekomenduojamas:
Trijų ašių vilkikas (cnc) - PLC: 4 žingsniai
Trys ašiniai vilkikai (cnc)-PLC: Sveiki. Šioje disertacijoje aptariamas KLOKNER MOELLER PLC-PS3 programavimas, siekiant abiem tikslams atlikti mechaninio modelio, vadinamojo trijų ašių transportavimo krano, funkcionalumo. metalinių krovinių gabenimas. Tai esmė
Greitas ir purvinas - elektrinis paspirtuko trijų laidų droselis: 3 žingsniai
Greitas ir purvinas-elektrinis paspirtuko 3 laidų bandymo droselis: užsisakiau naują 36 voltų motorolerio variklio valdiklį be naujo 3 laidų droselio. Kol laukiu, kol atvyks mano naujasis droselis, sukūriau greitą ir purviną projektą, kad imituotų naujojo valdiklio droselį. Sukūriau kitą projektą, kuris taip pat pakeis dabartinį
Trijų fazių transformatoriaus apsaugos diferencialinė relė: 7 žingsniai
Procentinė diferencinė relė trijų fazių transformatoriaus apsaugai: Šioje instrukcijoje parodysiu, kaip sukurti procentinę diferencinę relę naudojant „Arduino“, kuri yra labai paplitusi mikrovaldiklio plokštė. Maitinimo transformatorius yra svarbiausia įranga, perduodanti galią elektros sistemoje. Vieno remonto kaina
Trijų taškų apšvietimas: 4 žingsniai
Trijų taškų apšvietimas: tinkamo fotografavimo apšvietimo nustatymas gali būti labai svarbus vaizdui. Vienas iš labiausiai žinomų apšvietimo įrenginių yra trijų taškų apšvietimas. Sąranka buvo sėkminga daugeliui fotografų. Dydis, atstumas, intensyvumas
„Sun“trijų mygtukų „RGB Light Doodler“pelė: 11 žingsnių (su nuotraukomis)
„Sun Three Button RGB Light Doodler“pelė: šiais metais susitinku su Lori Stotko ir Stuartu Nafey http://lightdoodles.com/ „Makers Faire Auditions“. Jie turėjo šiuos šaunius šviesius rašiklius, kuriuos jie padarė piešti. Aš grįžęs namo nusprendžiau padaryti keletą ir prisiminiau seną saulę su trimis sagutėmis