विषयसूची:

पहनने योग्य - अंतिम परियोजना: 7 कदम
पहनने योग्य - अंतिम परियोजना: 7 कदम

वीडियो: पहनने योग्य - अंतिम परियोजना: 7 कदम

वीडियो: पहनने योग्य - अंतिम परियोजना: 7 कदम
वीडियो: गरुड़ पुराण : मृत्यु समीप होने पर क्या करना चाहिए? | Last Rites before Death in Hinduism 2024, जून
Anonim
पहनने योग्य - अंतिम परियोजना
पहनने योग्य - अंतिम परियोजना

परिचय

इस परियोजना में हमारे पास एक साइबोर्ग कार्यों के आधार पर एक कार्यात्मक पहनने योग्य प्रोटोटाइप बनाने का कार्य था। क्या आप जानते हैं कि आपका दिल संगीत के बीपीएम के साथ तालमेल बिठाता है? आप संगीत के माध्यम से अपने मूड को नियंत्रित करने की कोशिश कर सकते हैं, लेकिन क्या होगा अगर हम तकनीक को हमें शांत करने में मदद करें? हमें बस कुछ घटकों, एक Arduino और आपके हेडफ़ोन की आवश्यकता है। चलो नवाचार करें!

मार्क विला, गुइलेर्मो स्टॉफ़ेकर और पाऊ कारसेले द्वारा परियोजना

चरण 1: सामग्री और अवयव

सामग्री और अवयव
सामग्री और अवयव

निर्माण सामग्री:

- 3डी प्रिंटेड रिस्टबैंड

- एम3 स्क्रू (x8)

- M3 नट (x12)

- दबूसा लपेटना

इलेक्ट्रॉनिक सामग्री:

-हार्ट रेट सेंसर बीपीएम

- बटन (x2)

- पोटेंशियोमीटर

- एलसीडी सी १६०२ मॉड्यूल

- मॉड्यूल डीएफप्लेयर मिनी एमपी३

- 3.5 मिमी जैक स्टीरियो टीआरआरएस हेडसेट

- माइक्रो एसडी कार्ड

- Arduino Uno प्लेट

- वेल्डर

- बैकेलाइट प्लेट

चरण 2: एक रिस्टबैंड डिज़ाइन करें

एक रिस्टबैंड डिजाइन करें
एक रिस्टबैंड डिजाइन करें
एक रिस्टबैंड डिजाइन करें
एक रिस्टबैंड डिजाइन करें

पहले हम रिस्टबैंड में विभिन्न घटकों को व्यवस्थित करने के लिए कई रेखाचित्र बनाते हैं।

स्पष्ट विचार के साथ, हमने समूह के सदस्यों की तीनों भुजाओं का माप लिया, फिर हमने डिजाइन के लिए इष्टतम माप खोजने के लिए औसत बनाया। अंत में हम उत्पाद को 3D प्रोग्राम के साथ डिज़ाइन करते हैं और इसे 3D प्रिंटर से प्रिंट करते हैं।

आप यहां. STL फाइलें डाउनलोड कर सकते हैं।

चरण 3: इलेक्ट्रॉनिक कनेक्शन

इलेक्ट्रॉनिक कनेक्शन
इलेक्ट्रॉनिक कनेक्शन

हम अपने 3डी डिज़ाइन की आवश्यक जाँच करना जारी रखते हैं, हमने यह देखने के लिए प्रोटोटाइप में सभी घटकों की पहली असेंबली बनाई कि माप सही थे।

Arduino बोर्ड के सभी घटकों को जोड़ने के लिए, हमने 0, 5 मीटर केबल का उपयोग करके घटकों से अलग-अलग कनेक्शन बनाए, इस तरह हम बोर्ड की दृश्यता को कम करते हैं और हम प्रोटोटाइप को बेहतर ढंग से व्यवस्थित करते हैं।

चरण 4: कोड

कोड
कोड
कोड
कोड
कोड
कोड

यह प्रोजेक्ट एक साइबोर्ग प्रोटोटाइप है। जाहिर है कि हमने त्वचा के नीचे घटकों को पेश नहीं किया है, इसलिए हमने इसे एक ब्रेसलेट के साथ एक ऑर्थोसिस (कार्यात्मक पहलुओं को संशोधित करने के लिए शरीर पर लागू बाहरी उपकरण) के रूप में अनुकरण किया है।

हमारा कोड उपयोगकर्ता के कीस्ट्रोक्स लेता है और उन्हें एलसीडी स्क्रीन का उपयोग करके दिखाता है। बीपीएम के अलावा, स्क्रीन वांछित तीव्रता दिखाती है ताकि उपयोगकर्ता इसकी हृदय गति से तुलना कर सके। ऐसी कई स्थितियाँ हैं जहाँ अपने स्वयं के BPM को बढ़ाना या घटाना दिलचस्प है। उदाहरण के लिए, धीरज रखने वाले एथलीटों को धड़कनों को नियंत्रित करना चाहिए ताकि अत्यधिक थकान न हो। एक रोज़मर्रा का उदाहरण यह होगा कि आप घबराहट की स्थिति में सोना या शांत होना चाहते हैं। इसे ऑटिज्म से पीड़ित लोगों के लिए उनके द्वारा महसूस किए जाने वाले तनाव को कम करने के लिए एक चिकित्सीय पद्धति के रूप में भी लागू किया जा सकता है। स्क्रीन के बगल में वांछित तीव्रता को नियंत्रित करने और हृदय गति को बढ़ाने या घटाने के लिए दो बटन हैं। तीव्रता के आधार पर, पहले से अध्ययन किया गया संगीत बजाया जाता है। ऐसे अध्ययन हैं जो बताते हैं कि संगीत बीपीएम को बदल सकता है। बीट्स प्रति मिनट गाने के अनुसार, मानव शरीर उन बीपीएम की नकल करता है और उससे मेल खाता है।

इंट सेटरेसअप = 11; // तीव्रता वृद्धि बटन के साथ Arduino के 10 पिन करें। int SetResDown = 12; // अरुडिनो का पिन 11 तीव्रता में कमी बटन के साथ

int ResButtonCounter = 0;// बार काउंटर जो प्रतिरोध सेटिंग को बढ़ाता या घटाता है, 0 int ResButtonUpState = 0 का प्रारंभिक मान; // तीव्रता वृद्धि बटन की वर्तमान स्थिति int ResButtonDownState = 0; // तीव्रता में कमी बटन की वर्तमान स्थिति int lastResButtonUpState = 0; // तीव्रता वृद्धि बटन की अंतिम स्थिति int lastResButtonDownState = 0; // तीव्रता में कमी बटन की अंतिम स्थिति

इंट पल्सपिन = 0; // पल्स सेंसर पोर्ट A0 से जुड़ा है // ये चर अस्थिर हैं क्योंकि इनका उपयोग दूसरे टैब में इंटरप्ट रूटीन के दौरान किया जाता है। अस्थिर इंट बीपीएम; // बीट्स प्रति मिनट अस्थिर इंट सिग्नल; // पल्स सेंसर डेटा इनपुट अस्थिर int IBI = ६००; // पल्स समय अस्थिर बूलियन पल्स = झूठा; // सच है जब पल्स वेव अधिक होती है, जब यह कम वाष्पशील बूलियन क्यूएस = झूठी होती है;

# Start_Byte 0x7E को परिभाषित करें # वर्जन_बाइट 0xFF को परिभाषित करें # Command_Length 0x06 को परिभाषित करें # End_Byte 0xEF को परिभाषित करें # Acknowledge 0x00 को परिभाषित करें // कमांड 0x41 के साथ जानकारी लौटाता है [0x01: जानकारी, 0x00: कोई जानकारी नहीं]

// PANTALLA #include // LCD स्क्रीन के कार्यों के लिए लाइब्रेरी अपलोड करें #include #include

लिक्विड क्रिस्टल एलसीडी (7, 6, 5, 4, 3, 2); // उन बंदरगाहों की घोषणा करें जहां एलसीडी जुड़ा हुआ है

//LECTOR #include #include // मॉड्यूल dfplayer mini MP3 के कार्यों के लिए लाइब्रेरी अपलोड करें।

चार सीरियलडेटा; int nsong; टीवी में;

सॉफ्टवेयर सीरियल कॉम (9, 10); // उन बंदरगाहों की घोषणा करें जहां DFPlayer जुड़ा हुआ है DFRobotDFPlayerMini mp3;

शून्य सेटअप () {Serial.begin (९६००); पिनमोड (सेटरेसअप, इनपुट); पिनमोड (सेटरेसडाउन, इनपुट);

// LCD (16x2) LCD.begin (16, 2) के आयामों को परिभाषित करें; // हम चुनते हैं कि किस कॉलम में और किस लाइन में टेक्स्ट दिखना शुरू होता है //LECTORcom.begin(9600);

mp3.begin (कॉम); // घटक सीरियलडेटा शुरू करता है = (चार) ((' ')); mp3.स्टार्ट (); Serial.println ("प्ले"); // एक गाना चलाएं mp3.volume(25); // मात्रा को परिभाषित करें}

शून्य लूप () { अगर (डिजिटल रीड (11) == कम) {mp3.next (); // अगर बटन दबाया जाता है, तो गाना पास हो जाता है } अगर (डिजिटल रीड(12) == कम){ mp3.previous(); // यदि बटन दबाया जाता है, तो पिछला गाना } //if (SetResUp && SetResDown == LOW) {

इंट पल्सो = एनालॉगरेड (A0); // एनालॉग पोर्ट A0 से जुड़े हृदय गति मॉनिटर का मूल्य पढ़ें

Serial.println(pulso/6); if (QS == true) {// क्वांटिफाइड सेल्फ का फ्लैग सही है जैसे कि arduino सर्च BPM QS = false; // क्वांटिफाइड सेल्फ का झंडा रीसेट करें }

LCD.setCursor(0, 0); // वांछित टेक्स्ट दिखाएं LCD.print("BPM:"); LCD.setCursor(0, 1); // वांछित पाठ दिखाएं LCD.print ("INT:"); LCD.setCursor(5, 0); // वांछित पाठ दिखाएं LCD.print(pulso); LCD.setCursor(5, 1); // वांछित पाठ दिखाएं LCD.print(ResButtonCounter); देरी (50); एलसीडी.क्लियर (); ResButtonUpState = digitalRead (SetResUp); ResButtonDownState = digitalRead (SetResDown);

// TempButtonState की इसकी पिछली स्थिति से तुलना करें

अगर (ResButtonUpState!= lastResButtonUpState && ResButtonUpState == LOW) {// यदि अंतिम स्थिति बदल गई है, तो काउंटर बढ़ाएं

रेसबटन काउंटर++; }

// वर्तमान स्थिति को अंतिम स्थिति के रूप में सहेजें, // अगली बार लूप को निष्पादित करने के लिए lastResButtonUpState = ResButtonUpState;

// अंतिम स्थिति के साथ बटन की स्थिति (वृद्धि या कमी) की तुलना करें

अगर (ResButtonDownState!= lastResButtonDownState && ResButtonDownState == LOW) {

// यदि अंतिम स्थिति बदल गई है, तो काउंटर घटाएं

रेसबटन काउंटर--; }

// वर्तमान स्थिति को अंतिम स्थिति के रूप में सहेजें, // अगली बार लूप को निष्पादित करने के लिए lastResButtonDownState = ResButtonDownState; { सीरियल.प्रिंट्लन (रेसबटन काउंटर);

अगर (रेसबटन काउंटर> = 10) {रेसबटन काउंटर = 10; }

अगर (रेसबटन काउंटर <1) {रेसबटन काउंटर = 1; }

}

}

चरण 5: कुल विधानसभा

कोड के साथ सही ढंग से प्रोग्राम किया गया और हमारे प्रोटोटाइप के दो हिस्से पहले ही इकट्ठे हो गए। हम सभी घटकों को जगह में रखते हैं और इसे ब्रेसलेट पर ठीक करने के लिए टेप से जोड़ते हैं। ब्रेसलेट में जो घटक हैं, वे हैं हार्ट रेट सेंसर बीपीएम, दो बटन, पोटेंशियोमीटर और एलसीडी स्क्रीन, प्रत्येक अपने संबंधित छेद में पहले से 3D फ़ाइल में डिज़ाइन किया गया है। पहले भाग के साथ, हम प्रोटोबार्ड पर ध्यान केंद्रित करते हैं, प्रत्येक कनेक्टर Arduino बोर्ड के सही पिन पर। अंत में, प्रत्येक घटक के सत्यापित संचालन के साथ, हम इसे तारों को छिपाने के लिए फैनी पैक में डालते हैं।

चरण 6: वीडियो

चरण 7: निष्कर्ष

इस परियोजना के बारे में सबसे दिलचस्प बात संगीत के साथ अनजाने में मानव शरीर की नकल करना सीख रही है। यह भविष्य की परियोजनाओं के लिए कई विकल्पों के द्वार खोलता है। मुझे लगता है कि यह एक पूर्ण परियोजना है, हमारे पास एक काम किए गए कोड के साथ कई तरह के घटक हैं। यदि हम फिर से शुरू करते हैं तो हम अन्य घटक विकल्पों के बारे में सोचेंगे या उन्हें बेहतर गुणवत्ता वाले खरीदेंगे। हमें टूटी हुई केबल और वेल्डिंग के साथ बहुत सारी समस्याएं हुई हैं, वे छोटे और बहुत नाजुक (विशेषकर बीपीएम) हैं। दूसरी ओर आपको घटकों को जोड़ते समय सावधान रहना चाहिए, उनके पास कई आउटपुट हैं और गलतियाँ करना आसान है।

यह एक बहुत ही समृद्ध परियोजना है जिसमें हमने Arduino हार्डवेयर और सॉफ्टवेयर विकल्पों की एक विस्तृत विविधता को छुआ है।

सिफारिश की: