Money Heist BELLA CIAO სიმღერა Arduino Uno– ში: 9 ნაბიჯი (სურათებით)
Money Heist BELLA CIAO სიმღერა Arduino Uno– ში: 9 ნაბიჯი (სურათებით)
Anonim
Image
Image

ამ გაკვეთილში მე გაჩვენებთ თუ როგორ შეგიძლიათ ითამაშოთ Money Heist Song Bella Ciao ნებისმიერ არდუინოში პიეზოელექტრული ზუზუნის დახმარებით. ეს მაგარი პროექტი ეძღვნება Money Heist- ის ყველა თაყვანისმცემელს მთელს მსოფლიოში. მაშ, დავიწყოთ.

მარაგები

ტექნიკა

  • არდუინო უნო
  • პიეზოელექტრული ბუზერი
  • USB A to B კაბელი

პროგრამული უზრუნველყოფა

Arduino IDE

კოდი და წრე

ჩამოტვირთეთ კოდი ჩვენი GitHub საცავიდან

ნაბიჯი 1: რა არის არდუინო?

Arduino არის ღია კოდის ელექტრონიკის პლატფორმა, რომელიც დაფუძნებულია ადვილად გამოსაყენებელ აპარატურასა და პროგრამულ უზრუნველყოფაზე. არდუინოს დაფებს შეუძლიათ წაიკითხონ შეყვანა - სინათლე სენსორზე, თითი ღილაკზე, ან Twitter შეტყობინება - და გადააქციონ გამომავალში - გაააქტიურონ ძრავა, ჩართონ LED, გამოაქვეყნონ რაღაც ინტერნეტში. თქვენ შეგიძლიათ უთხრათ თქვენს დაფას, თუ რა უნდა გააკეთოს, დაფაზე არსებული მიკროკონტროლერისთვის მითითებების გაგზავნით. ამისათვის თქვენ იყენებთ Arduino პროგრამირების ენას (გაყვანილობის საფუძველზე) და Arduino პროგრამულ უზრუნველყოფას (IDE), დამუშავების საფუძველზე.

წლების განმავლობაში არდუინო იყო ათასობით პროექტის ტვინი, ყოველდღიური ობიექტებიდან დაწყებული რთული სამეცნიერო ინსტრუმენტებით დამთავრებული. შემქმნელთა მსოფლიო საზოგადოება - სტუდენტები, ჰობისტები, მხატვრები, პროგრამისტები და პროფესიონალები - შეიკრიბნენ ამ ღია კოდის პლატფორმის გარშემო, მათმა წვლილმა დაამატა წარმოუდგენელი რაოდენობის ხელმისაწვდომი ცოდნა, რომელიც შეიძლება იყოს დიდი დახმარება დამწყებთათვისაც და ექსპერტებისთვისაც.

ნაბიჯი 2: Arduino UNO

პიეზოელექტრული ბუზერი
პიეზოელექტრული ბუზერი

Arduino UNO არის საუკეთესო დაფა ელექტრონიკისა და კოდირების დასაწყებად. თუ ეს არის თქვენი პირველი გამოცდილება პლატფორმასთან მუშაობისას, გაერო არის ყველაზე ძლიერი დაფა, რომლითაც შეგიძლიათ დაიწყოთ თამაში. UNO არის ყველაზე გავრცელებული და დოკუმენტირებული დაფა არდუინოს მთელი ოჯახიდან.

Arduino Uno არის მიკროკონტროლის დაფა, რომელიც დაფუძნებულია ATmega328P (მონაცემთა ცხრილში). მას აქვს 14 ციფრული შეყვანის/გამომავალი ქინძისთავები (რომელთაგან 6 შეიძლება გამოყენებულ იქნას როგორც PWM გამოსასვლელი), 6 ანალოგური შეყვანა, 16 MHz კერამიკული რეზონატორი (CSTCE16M0V53-R0), USB კავშირი, დენის ჯეკი, ICSP სათაური და გადატვირთვის ღილაკი რა ის შეიცავს ყველაფერს, რაც საჭიროა მიკროკონტროლერის მხარდასაჭერად; უბრალოდ დაუკავშირეთ კომპიუტერს USB კაბელით ან ჩართეთ AC-to-DC ადაპტერი ან ბატარეა დასაწყებად.. თქვენ შეგიძლიათ შეურიგდეთ თქვენს Uno– ს ისე, რომ არ ინერვიულოთ ზედმეტად რაიმე არასწორად, უარეს შემთხვევაში შეგიძლიათ შეცვალოთ ჩიპი რამდენიმე დოლარად და დაიწყეთ თავიდან.

ნაბიჯი 3: პიეზოელექტრული ბუზერი

პიეზო ზარი არის ხმის წარმომქმნელი მოწყობილობა. მუშაობის ძირითადი პრინციპი ემყარება თეორიას, რომ როდესაც ელექტრო პოტენციალი გამოიყენება პიეზოელექტრული მასალის გასწვრივ, წარმოიქმნება წნევის ცვალებადობა. პიეზო ზუზარი შედგება პიეზო კრისტალებისგან ორ გამტარს შორის. როდესაც პოტენციური განსხვავება ვრცელდება ამ კრისტალებზე, ისინი უბიძგებენ ერთ გამტარს, ხოლო მეორე გამტარს უბიძგებენ თავიანთი შინაგანი თვისებებით. უწყვეტი დაძაბვისა და ბიძგის მოქმედება წარმოქმნის მკვეთრ ხმოვან ტალღას. პიეზო ზუმერები წარმოქმნიან ხმამაღალ და მკვეთრ ხმას. ასე რომ, ისინი ჩვეულებრივ გამოიყენება როგორც სიგნალიზაციის სქემები. ასევე, ისინი გამოიყენება მოვლენის, სიგნალის ან სენსორის შეყვანის გაფრთხილებისათვის. პიეზო ზუზერის განსაკუთრებული მახასიათებლებია, ხმის ტემბრი ან დონე არ არის დამოკიდებული ძაბვის დონეზე, ანუ ის მუშაობს მხოლოდ კონკრეტულ ძაბვის დიაპაზონში. როგორც წესი, პიეზო ზუმერს შეუძლია წარმოქმნას ხმა 2 -დან 4 კჰც -მდე დიაპაზონში.

ნაბიჯი 4: როგორ ვითამაშოთ ჩანაწერები?

უპირველეს ყოვლისა, ჩვენ უნდა განვსაზღვროთ ნოტების სიხშირე (სასიამოვნო მოსასმენად) "int" ფუნქციით. შემდეგ განსაზღვრეთ BPM- ის მნიშვნელობა (შეგიძლიათ აშკარად შეცვალოთ იგი) და ამის მიხედვით განსაზღვრეთ შენიშვნის მნიშვნელობები.

int rounda = 0; int roundp = 0; int თეთრი = 0; int whitep = 0; int შავი = 0; int blackp = 0; int quaver = 0; int quaverp = 0; int semiquaver = 0; int semiquaverp = 0;

შემდეგ მე განვსაზღვრე BPM- ის მნიშვნელობა (თქვენ შეგიძლიათ მისი აშკარად შეცვლა).

int bpm = 120;

BPM განსაზღვრული მნიშვნელობის მიხედვით განსაზღვრეთ შენიშვნის მნიშვნელობები.

შავი = 35000/წთ; blackp = შავი*1.5; თეთრი = შავი*2; თეთრი = თეთრი*1.5; მრგვალი = შავი*4; roundp = rounda*1.5; quaver = შავი/2; quaverp = quaver*1.5; semiquaver = შავი/4; semiquaverp = semiquaver*1.5;

ამ განსაზღვრული მნიშვნელობებით თქვენ შეგიძლიათ მარტივად დაუკრათ ჩანაწერი ბრძანებით "ტონი" ასე.

ტონი (პინი, შენიშვნა, ხანგრძლივობა);

ამ პროექტში ჩვენ ვიყენებთ იმავე მეთოდს.

ტონი (BuzzerPin, Mi, შავი); შეფერხება (შავი+50);

ამ გზით, მე შევქმენი მელოდია ბელა ციაოს სიმღერისთვის. ეს ყველაფერი კოდს ეხება.

შეეცადეთ კოდი თავად დაწეროთ. მოერიდეთ ასლის ჩასმას.

მოდით ატვირთოთ კოდი ჩვენს არდუინოს დაფაზე.

ნაბიჯი 5: ატვირთეთ კოდი არდუინოში

ატვირთეთ კოდი არდუინოში
ატვირთეთ კოდი არდუინოში
ატვირთეთ კოდი არდუინოში
ატვირთეთ კოდი არდუინოში

გახსენით კოდი Arduino Software– ში. შეარჩიეთ დაფის მოდელი, რომელსაც იყენებთ. აქ წავალ არდუინო უნოსთან ერთად. დაფის ასარჩევად, გადადით "ინსტრუმენტები> დაფები".

ახლა შეარჩიეთ პორტი, სადაც თქვენი Arduino არის დაკავშირებული. პორტის შესარჩევად, გადადით "ინსტრუმენტები> პორტი".

სწორი ვარიანტების არჩევის შემდეგ დააწკაპუნეთ ატვირთვის ღილაკზე, რომ ატვირთოთ კოდი Arduino– ში.

ნაბიჯი 6: ბუზერის დაკავშირება არდუინოსთან

ბუზერის დაკავშირება არდუინოსთან
ბუზერის დაკავშირება არდუინოსთან

ჩვენ წარმატებით დავპროგრამეთ ჩვენი მიკროკონტროლერი, რომ ითამაშოს Bella ciao Notes. ახლა ჩვენ უნდა დავუკავშიროთ პიეზო ბუზერს მუსიკის მოსასმენად. ასე რომ, დააკავშირეთ პიეზო ბუზერის წითელი მავთული არდუინო უნოს მე -11 პინთან და შავი მავთული 'GND' - თან, როგორც ეს ნაჩვენებია წრიულ დიაგრამაში.

ნაბიჯი 7: როგორ გავაკეთოთ ეს პროექტი Tinkercad სქემებში?

როგორ განვახორციელოთ ეს პროექტი Tinkercad სქემებში?
როგორ განვახორციელოთ ეს პროექტი Tinkercad სქემებში?
როგორ განვახორციელოთ ეს პროექტი Tinkercad სქემებში?
როგორ განვახორციელოთ ეს პროექტი Tinkercad სქემებში?
როგორ გავაკეთოთ ეს პროექტი Tinkercad სქემებში?
როგორ გავაკეთოთ ეს პროექტი Tinkercad სქემებში?

ჩვენ ყველანი ჩაკეტილ მდგომარეობაში ვართ COVID19– ის გამო. ასე რომ არ ინერვიულოთ, თუ არ გაქვთ ფაქტობრივი კომპონენტები. თქვენ შეგიძლიათ მოახდინოთ ამ პროექტის სიმულაცია tinkercad სქემებში და გაიგოთ მუშაობა.

გადადით Tinkercad ვებსაიტზე აქედან. დააწკაპუნეთ ღილაკზე "გაწევრიანდი ახლავე", თუ ჯერ არ გაქვს ანგარიში. მე შევდივარ ჩემი ადრე გაკეთებული ანგარიშით. მას შემდეგ რაც Tinker cad Dashboard- ში ხართ, დააწკაპუნეთ ეკრანის მარცხენა მხარეს ნაჩვენებ 'სქემებზე'. დააწკაპუნეთ ღილაკზე "ახალი სქემის შექმნა". ახლა თქვენი ახალი პროექტი შეიქმნა. ახლა მოძებნეთ Arduino UNO და გადაიტანეთ იგი მთავარ ეკრანზე მარჯვენა ბარიდან. ახლა მოძებნეთ Buzzer და გადაიტანეთ ზუმერი მთავარ ეკრანზე. ახლა დაამყარეთ კავშირი როგორც დიაგრამაში.

დააწკაპუნეთ "კოდის" განყოფილებაზე თქვენი Arduino- ს დასაპროგრამებლად. წაშალეთ წინასწარ დამზადებული ბლოკები და შეცვალეთ ფანჯარა ბლოკის რეჟიმში ტექსტის რეჟიმში. ჩასვით კოდი წინა ცარიელი კოდის შეცვლით. ახლა დააჭირეთ დაწყების სიმულაციის ღილაკს, რომ ნახოთ თქვენი პროექტი მოქმედებაში.

თქვენ შეგიძლიათ გაიმეოროთ ჩემი პროექტი აქ დაჭერით.

ნაბიჯი 8: Arduino კოდი

/ * * * შექმნილია Pi BOTS MakerHub * * ელ.ფოსტა: [email protected] * * Github: https://github.com/pibotsmakerhub * * საავტორო უფლება (გ) 2020 Pi BOTS MakerHub * * WhatsApp: +91 9400 7010 88 * */ int BuzzerPin = 11; // დააკავშირეთ ბუზერი არდუინოს პინთან 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; // დაბალი ოქტავა 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; int Re = 587; int DoS = 554; int Do = 523; // განსაზღვრეთ ნოტები int rounda = 0; int roundp = 0; int თეთრი = 0; int whitep = 0; int შავი = 0; int blackp = 0; int quaver = 0; int quaverp = 0; int semiquaver = 0; int semiquaverp = 0; int bpm = 120; void setup () {pinMode (BuzzerPin, OUTPUT); შავი = 35000/წთ; blackp = შავი*1.5; თეთრი = შავი*2; თეთრი = თეთრი*1.5; მრგვალი = შავი*4; roundp = rounda*1.5; quaver = შავი/2; quaverp = quaver*1.5; semiquaver = შავი/4; semiquaverp = semiquaver*1.5; } void loop () {ტონი (BuzzerPin, Mi, black); დაგვიანებით (შავი+50); ტონი (BuzzerPin, La, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Si, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Do2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, La, შავი); დაგვიანებით (2*თეთრი+50); ტონი (BuzzerPin, Mi, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, La, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Si, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Do2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, La, შავი); დაგვიანებით (2*თეთრი+50); ტონი (BuzzerPin, Mi, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, La, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Si, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Do2, თეთრი*1.3); დაგვიანებით (2*შავი+50); ტონი (BuzzerPin, Si, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, La, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Do2, თეთრი*1.3); დაგვიანებით (2*შავი+50); ტონი (BuzzerPin, Si, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, La, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Mi2, შავი); დაგვიანებით (თეთრი+50); ტონი (BuzzerPin, Mi2, შავი); დაგვიანებით (თეთრი+100); ტონი (BuzzerPin, Mi2, შავი); დაგვიანებით (თეთრი+50); ტონი (BuzzerPin, Re2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Mi2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Fa2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Fa2, თეთრი*1.3); დაყოვნება (მრგვალი+100); ტონი (BuzzerPin, Fa2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Mi2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Re2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Fa2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Mi2, თეთრი*1.3); დაყოვნება (მრგვალი+100); ტონი (BuzzerPin, Mi2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Re2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Do2, შავი); დაგვიანებით (შავი+50); ტონი (BuzzerPin, Si, თეთრი*1.3); დაგვიანებით (თეთრი+50); ტონი (BuzzerPin, Mi2, თეთრი*1.3); დაგვიანებით (თეთრი+50); ტონი (BuzzerPin, Si, თეთრი*1.3); დაგვიანებით (თეთრი+50); ტონი (BuzzerPin, Do2, თეთრი*1.3); დაგვიანებით (თეთრი+50); ტონი (BuzzerPin, La, rounda*1.3); შეფერხება (მრგვალი+50); }

ნაბიჯი 9: უყურეთ ჩვენს Youtube ვიდეოს

Სულ ეს არის. გამოგვყევით უფრო საინტერესო პროექტებისთვის. გთხოვთ მოგვყევით Instagram- ზე:

Გმადლობთ.

გირჩევთ: