Inhoudsopgave:

Geldroof BELLA CIAO-nummer in Arduino Uno - Ajarnpa
Geldroof BELLA CIAO-nummer in Arduino Uno - Ajarnpa

Video: Geldroof BELLA CIAO-nummer in Arduino Uno - Ajarnpa

Video: Geldroof BELLA CIAO-nummer in Arduino Uno - Ajarnpa
Video: La Casa De Papel - Bella Ciao (Money Heist) | EASY Piano Tutorial 2024, November
Anonim
Image
Image

In deze tutorial laat ik je zien hoe je Money Heist Song Bella Ciao in elke Arduino kunt spelen met behulp van een piëzo-elektrische zoemer. Dit coole project is opgedragen aan alle Money Heist-fans over de hele wereld. Dus laten we beginnen.

Benodigdheden

Hardware

  • Arduino Uno
  • Piëzo-elektrische zoemer
  • USB A naar B-kabel

Software

Arduino IDE

Code en het circuit

Download de code van onze GitHub-repository

Stap 1: Wat is Arduino?

Arduino is een open-source elektronicaplatform gebaseerd op gebruiksvriendelijke hardware en software. Arduino-boards kunnen inputs lezen - licht op een sensor, een vinger op een knop of een Twitter-bericht - en dit omzetten in een output - een motor activeren, een LED aanzetten, iets online publiceren. U kunt uw bord vertellen wat het moet doen door een reeks instructies naar de microcontroller op het bord te sturen. Hiervoor gebruik je de Arduino programmeertaal (gebaseerd op Wiring), en de Arduino Software (IDE), gebaseerd op Processing.

In de loop der jaren is Arduino het brein geweest van duizenden projecten, van alledaagse voorwerpen tot complexe wetenschappelijke instrumenten. Een wereldwijde gemeenschap van makers - studenten, hobbyisten, artiesten, programmeurs en professionals - heeft zich verzameld rond dit open-sourceplatform, hun bijdragen hebben geleid tot een ongelooflijke hoeveelheid toegankelijke kennis die zowel beginners als experts van grote hulp kan zijn.

Stap 2: Arduino UNO

Piëzo-elektrische zoemer
Piëzo-elektrische zoemer

De Arduino UNO is het beste bord om aan de slag te gaan met elektronica en codering. Als dit je eerste ervaring is met sleutelen aan het platform, is de UNO het meest robuuste bord waarmee je kunt beginnen met spelen. De UNO is het meest gebruikte en gedocumenteerde bord van de hele Arduino-familie.

Arduino Uno is een microcontrollerbord gebaseerd op de ATmega328P (datasheet). Het heeft 14 digitale input/output-pinnen (waarvan 6 kunnen worden gebruikt als PWM-uitgangen), 6 analoge ingangen, een 16 MHz keramische resonator (CSTCE16M0V53-R0), een USB-aansluiting, een stroomaansluiting, een ICSP-header en een resetknop. Het bevat alles wat nodig is om de microcontroller te ondersteunen; sluit hem gewoon aan op een computer met een USB-kabel of voed hem met een AC-naar-DC-adapter of batterij om aan de slag te gaan. chip voor een paar dollar en begin opnieuw.

Stap 3: piëzo-elektrische zoemer

Een piëzo-zoemer is een geluid producerend apparaat. Het belangrijkste werkingsprincipe is gebaseerd op de theorie dat, wanneer een elektrische potentiaal wordt aangelegd over een piëzo-elektrisch materiaal, een drukvariatie wordt gegenereerd. Een piëzo-zoemer bestaat uit piëzo-kristallen tussen twee geleiders. Wanneer een potentiaalverschil over deze kristallen wordt aangelegd, duwen ze de ene geleider en trekken ze de andere geleider door hun interne eigenschap. De continue trek- en duwactie genereert een scherpe geluidsgolf. Piezo-zoemers genereren een luid en scherp geluid. Ze worden dus meestal gebruikt als alarmcircuits. Ook worden ze gebruikt om een melding te maken van een gebeurtenis, signaal of sensoringang. Een speciaal kenmerk van de piëzo-zoemer is dat de toonhoogte of het geluidsniveau niet afhankelijk is van het spanningsniveau, dat wil zeggen, het werkt alleen in een specifiek spanningsbereik. Typisch kan een piëzo-zoemer een geluid genereren in het bereik van 2 tot 4 kHz.

Stap 4: Hoe speel je de noten?

Eerst moeten we de frequenties van de noten definiëren (aangenaam om gehoord te worden) met de "int"-functie. Definieer vervolgens de waarde van BPM (u kunt deze uiteraard wijzigen) en definieer op basis daarvan de nootwaarden.

int rounda=0;int roundp=0; int wit = 0; int witp=0; int zwart=0; int blackp=0; int quaver=0; int quaverp =0; int semiquaver=0; int semiquaverp=0;

Ik heb toen de waarde van de BPM gedefinieerd (u kunt deze uiteraard wijzigen).

int bpm= 120;

Definieer de nootwaarden volgens de gedefinieerde waarde van BPM.

zwart= 35000/bpm; blackp=zwart*1.5; wit = zwart*2; witp=wit*1.5; ronda= zwart*4; roundp= rounda*1.5; trilling = zwart/2; trillen = trillen * 1.5; semiquaver = zwart/4; semiquaverp=halve kwart*1.5;

Met deze gedefinieerde waarden kun je gemakkelijk een noot spelen met het commando "toon" zoals dit.

toon (pin, noot, duur);

In dit project gebruiken we dezelfde methode.

toon (BuzzerPin, Mi, zwart); vertraging (zwart+50);

Op deze manier maakte ik de melodie voor het Bella Ciao-lied. Dat is alles over de code.

Probeer de code zelf te schrijven. vermijd kopiëren en plakken.

Laten we de code nu uploaden naar ons Arduino-bord.

Stap 5: Upload de code naar Arduino

Upload de code naar Arduino
Upload de code naar Arduino
Upload de code naar Arduino
Upload de code naar Arduino

Open de code in Arduino-software. Selecteer het model Board dat u gebruikt. Hier zal ik gaan met de Arduino Uno. Om het bord te selecteren, ga naar "Extra > Borden".

Selecteer nu de poort waarop uw Arduino is aangesloten. om de poort te selecteren, ga naar "Extra > POORT".

Nadat u de juiste hebt geselecteerd, klikt u op de knop Uploaden om de code naar de Arduino te uploaden.

Stap 6: De zoemer verbinden met Arduino

De zoemer verbinden met Arduino
De zoemer verbinden met Arduino

We hebben onze microcontroller met succes geprogrammeerd om de Bella ciao Notes af te spelen. Nu moeten we de Piezo Buzzer aansluiten om de muziek te horen. Sluit dus de rode draad van de piëzo-zoemer aan op de 11e pin van Arduino Uno en de zwarte draad op 'GND' zoals weergegeven in het schakelschema.

Stap 7: Hoe maak je dit project in Tinkercad Circuits?

Hoe maak je dit project in Tinkercad Circuits?
Hoe maak je dit project in Tinkercad Circuits?
Hoe maak je dit project in Tinkercad Circuits?
Hoe maak je dit project in Tinkercad Circuits?
Hoe maak je dit project in Tinkercad Circuits?
Hoe maak je dit project in Tinkercad Circuits?

We zitten allemaal in Lockdown vanwege COVID19. Maak je dus geen zorgen als je niet over de eigenlijke componenten beschikt. U kunt dit project in tinkercad-circuits simuleren en de werking begrijpen.

Ga vanaf hier naar de Tinkercad-website. Klik op de knop "MELD NU AAN" als u nog geen account heeft. Ik log in met mijn eerder aangemaakte account. Als je eenmaal in het Tinker cad Dashboard bent, klik je op de 'Circuits' aan de linkerkant van het scherm. Klik op de knop Nieuw circuit maken. Nu is uw nieuwe project gemaakt. Zoek nu naar Arduino UNO en sleep deze vanaf de rechterzijbalk naar het hoofdscherm. Zoek nu naar Buzzer en sleep de zoemer naar het hoofdscherm. Maak nu de verbinding zoals in het diagram.

Klik op de sectie "Code" om uw Arduino te programmeren. Verwijder de vooraf gemaakte blokken en verander het venster van blokmodus naar tekstmodus. Plak de code in door de vorige lege code te vervangen. Klik nu op de Start Simulation-knop om uw project in actie te zien.

U kunt mijn project repliceren door hier te klikken.

Stap 8: Arduino-code

/* * * Gemaakt door Pi BOTS MakerHub * * E-mail: [email protected] * * Github: https://github.com/pibotsmakerhub * * Copyright (c) 2020 Pi BOTS MakerHub * * WhatsApp: +91 9400 7010 88 * */ int BuzzerPin = 11; // Verbind zoemer met Arduino pin 11 int Si2 = 1975; int LaS2=1864; int La2= 1760; int SolS2=1661; int Sol2=1567; int FaS2=1479; int Fa2= 1396; int Mi2= 1318; int ReS2=1244; int Re2= 1174; int DoS2=1108; int Do2= 1046; // Laag octaaf int Si = 987; int LaS= 932; int La = 880; int SolS=830; int Sol= 783; int FaS= 739; int Fa= 698; int Mi= 659; int ReS= 622; intRe = 587; int DoS = 554; int Do = 523; // definieer de noten int rounda=0; int roundp=0; int wit = 0; int witp=0; int zwart=0; int blackp=0; int quaver=0; int quaverp =0; int semiquaver=0; int semiquaverp=0; int bpm= 120; void setup(){ pinMode(BuzzerPin, OUTPUT); zwart= 35000/bpm; blackp=zwart*1.5; wit = zwart*2; witp=wit*1.5; ronda= zwart*4; roundp= rounda*1.5; trilling = zwart/2; trillen = trillen * 1.5; semiquaver = zwart/4; semiquaverp=halve kwart*1.5; } void loop(){ tone(BuzzerPin, Mi, zwart); vertraging (zwart+50); toon (BuzzerPin, La, zwart); vertraging (zwart+50); toon (BuzzerPin, Si, zwart); vertraging (zwart+50); toon (BuzzerPin, Do2, zwart); vertraging (zwart+50); toon (BuzzerPin, La, zwart); vertraging (2*wit+50); toon (BuzzerPin, Mi, zwart); vertraging (zwart+50); toon (BuzzerPin, La, zwart); vertraging (zwart+50); toon (BuzzerPin, Si, zwart); vertraging (zwart+50); toon (BuzzerPin, Do2, zwart); vertraging (zwart+50); toon (BuzzerPin, La, zwart); vertraging (2*wit+50); toon (BuzzerPin, Mi, zwart); vertraging (zwart+50); toon (BuzzerPin, La, zwart); vertraging (zwart+50); toon (BuzzerPin, Si, zwart); vertraging (zwart+50); toon (BuzzerPin, Do2, wit * 1.3); vertraging (2*zwart+50); toon (BuzzerPin, Si, zwart); vertraging (zwart+50); toon (BuzzerPin, La, zwart); vertraging (zwart+50); toon (BuzzerPin, Do2, wit * 1.3); vertraging (2*zwart+50); toon (BuzzerPin, Si, zwart); vertraging (zwart+50); toon (BuzzerPin, La, zwart); vertraging (zwart+50); toon (BuzzerPin, Mi2, zwart); vertraging (wit+50); toon (BuzzerPin, Mi2, zwart); vertraging (wit + 100); toon (BuzzerPin, Mi2, zwart); vertraging (wit+50); toon (BuzzerPin, Re2, zwart); vertraging (zwart+50); toon (BuzzerPin, Mi2, zwart); vertraging (zwart+50); toon (BuzzerPin, Fa2, zwart); vertraging (zwart+50); toon (BuzzerPin, Fa2, wit * 1.3); vertraging (ronda+100); toon (BuzzerPin, Fa2, zwart); vertraging (zwart+50); toon (BuzzerPin, Mi2, zwart); vertraging (zwart+50); toon (BuzzerPin, Re2, zwart); vertraging (zwart+50); toon (BuzzerPin, Fa2, zwart); vertraging (zwart+50); toon (BuzzerPin, Mi2, wit * 1.3); vertraging (ronda+100); toon (BuzzerPin, Mi2, zwart); vertraging (zwart+50); toon (BuzzerPin, Re2, zwart); vertraging (zwart+50); toon (BuzzerPin, Do2, zwart); vertraging (zwart+50); toon (BuzzerPin, Si, wit * 1.3); vertraging (wit+50); toon (BuzzerPin, Mi2, wit * 1.3); vertraging (wit+50); toon (BuzzerPin, Si, wit * 1.3); vertraging (wit+50); toon (BuzzerPin, Do2, wit * 1.3); vertraging (wit+50); toon (BuzzerPin, La, rounda*1.3); vertraging (ronda+50); }

Stap 9: Bekijk onze YouTube-video

Dat is alles. Volg ons voor meer interessante projecten. Volg ons op Instagram:

Bedankt.

Aanbevolen: