विषयसूची:

अरुडिनो बर्थडे केक: 4 कदम
अरुडिनो बर्थडे केक: 4 कदम

वीडियो: अरुडिनो बर्थडे केक: 4 कदम

वीडियो: अरुडिनो बर्थडे केक: 4 कदम
वीडियो: LED Track DIY Escape Room Puzzle Tutorial 2024, नवंबर
Anonim

इस निर्देशयोग्य में, मैं एक बहुत ही सरल और बुनियादी arduino प्रोजेक्ट बनाऊँगा: एक जन्मदिन का केक!

Arduino पर UTFT स्क्रीन शील्ड पर एक जन्मदिन का केक प्रदर्शित होता है और एक स्पीकर "हैप्पी बर्थडे" संगीत बजाता है।

जब आप माइक्रोफ़ोन पर फूंक मारते हैं, तो मोमबत्तियां बंद हो जाती हैं।

चरण 1: सामग्री

सामग्री
सामग्री
सामग्री
सामग्री
सामग्री
सामग्री
सामग्री
सामग्री

इस सरल परियोजना के लिए, आपको आवश्यकता होगी:

- एक आर्डिनो मेगा

- एक स्पीकर या बजर

- एक माइक्रोफोन मॉड्यूल

- एक UTFT स्क्रीन arduino शील्ड

मैंने इस परियोजना के लिए दो कारणों से एक arduino MEGA बोर्ड का उपयोग करने का निर्णय लिया: इसमें बहुत मेमोरी है और इसमें बहुत सारे पिन हैं।

आप इस प्रोजेक्ट के लिए एक arduino UNO का उपयोग नहीं कर सकते हैं, क्योंकि जब UTFT स्क्रीन को उस पर प्लग किया जाता है तो सभी पिन छिपे होते हैं (माइक्रोफ़ोन और स्पीकर के लिए कोई और उपलब्ध नहीं हैं), और इसमें पर्याप्त मेमोरी नहीं है (UTFT लाइब्रेरी है बहुत बड़ा)।

चरण 2: वायरिंग

तारों
तारों
तारों
तारों
तारों
तारों
तारों
तारों

स्पीकर arduino के पिन D40 और GND पर प्लग करता है।

माइक्रोफ़ोन पिन GND ("G"), 5V ("+") और A10 ("A0") पर प्लग करता है।

UTFT स्क्रीन एक नियमित ढाल की तरह प्लग करती है।

UTFT स्क्रीन शील्ड arduino MEGA के साथ पूरी तरह से संगत नहीं है: arduino बोर्ड का USB प्लग बहुत बड़ा है।

इस समस्या को ठीक करने के लिए, मैंने UTFT स्क्रीन को एक अन्य arduino शील्ड (लंबे पिन के साथ) पर प्लग किया, फिर मैंने दोनों को arduino पर प्लग किया।

चरण 3: माइक्रोफ़ोन को कैलिब्रेट करें

माइक्रोफ़ोन को कैलिब्रेट करें
माइक्रोफ़ोन को कैलिब्रेट करें
माइक्रोफ़ोन को कैलिब्रेट करें
माइक्रोफ़ोन को कैलिब्रेट करें

माइक्रोफ़ोन को कैलिब्रेट करने के लिए, आपको एक स्क्रूड्राइवर और अपने कंप्यूटर की आवश्यकता होगी।

सबसे पहले, निम्नलिखित कोड को अपने arduino पर अपलोड करें:

इंट वैल = 0;

शून्य सेटअप () {Serial.begin (९६००); } शून्य लूप () {वैल = एनालॉग रीड (10); सीरियल.प्रिंट्लन (वैल); देरी (100); }

फिर सीरियल मॉनिटर पर जाएं और कोई आवाज न होने पर पोटेंशियोमीटर को स्क्रूड्राइवर से घुमाकर माइक्रोफ़ोन को कैलिब्रेट करें, मान लगभग 30 ~ 40 होना चाहिए।

जब आप माइक्रोफ़ोन पर फूंक मारते हैं, तो मान १०० से अधिक होना चाहिए।

सुनिश्चित करें कि जब आप बोलते हैं तो मान 100 से छोटा होता है (यहां तक कि जोर से)।

चरण 4: कोड

यहाँ परियोजना का कोड है।

यह UTFT पर मोमबत्तियों के साथ जन्मदिन का केक प्रदर्शित करता है और स्पीकर के साथ "जन्मदिन मुबारक" खेलता है। केक आयतों के साथ बनाया गया है।

इस कार्यक्रम के लिए UTFT पुस्तकालय की आवश्यकता है।

#शामिल

बाहरी uint8_t बिगफॉन्ट ; // इन मानों को अपने स्क्रीन मॉडल UTFT myGLCD (ITDB28, A5, A4, A3, A2) के अनुसार बदलें; इंट मेलोडी = {196, 196, 220, 196, 262, 247, 196, 196, 220, 196, 294, 262, 196, 196, 392, 330, 262, 247, 220, 349, 349, 330, २६२, २९४, २६२}; इंट नोट अवधि = {8, 8, 4, 4, 4, 2, 8, 8, 4, 4, 4, 2, 8, 8, 4, 4, 4, 4, 3, 8, 8, 4, 4, 4, 2}; इंट वैल = 0; शून्य सेटअप () { myGLCD. InitLCD (); myGLCD.setFont (बिगफॉन्ट); myGLCD.fillScr(20, 200, 150); //नीली पृष्ठभूमि myGLCD.setColor(200, 125, 50); // ब्राउन केक myGLCD.fillRect (१००, ९०, २२०, १६०); myGLCD.setColor (255, 255, 255); // व्हाइट आइसिंग myGLCD.fillRect (१००, ९०, २२०, १०५); myGLCD.setColor (255, 50, 50); // लाल रेखाएँ myGLCD.fillRect (१००, १२०, २२०, १२३); myGLCD.fillRect (१००, १४०, २२०, १४३); myGLCD.setColor(255, 255, 0); // पीली लाइन myGLCD.fillRect (१००, १३०, २२०, १३३); myGLCD.setColor (255, 170, 255); // गुलाबी मोमबत्तियाँ myGLCD.fillRect(128, 70, 132, 90); myGLCD.fillRect(१५८, ७०, १६२, ९०); myGLCD.fillRect(१८८, ७०, १९२, ९०); myGLCD.setColor (२५५, २५५, ०); // मोमबत्तियों की आग myGLCD.fillCircle(130, 62, 5); myGLCD.fillCircle(160, 62, 5); myGLCD.fillCircle(१९०, ६२, ५); myGLCD.setColor(0, 255, 0); // जन्मदिन मुबारक संदेश myGLCD.print ("जन्मदिन मुबारक हो!", केंद्र, 200); के लिए (int thisNote = 0; thisNote 100) { myGLCD.setColor(20, 200, 150); // मोमबत्तियों को बंद कर देता है myGLCD.fillCircle(130, 62, 5); myGLCD.fillCircle(160, 62, 5); myGLCD.fillCircle(१९०, ६२, ५); myGLCD.setColor (255, 255, 255); // और "बधाई" संदेश प्रदर्शित करता है myGLCD.print("CONGRATULATIONS !!!", CENTER, 10); देरी (10000); myGLCD.clrScr (); // 10s के बाद स्पष्ट स्क्रीन}}

सिफारिश की: