विषयसूची:

दुनिया का सबसे सस्ता I2C (I-Squared-C) अडैप्टर: 5 कदम (चित्रों के साथ)
दुनिया का सबसे सस्ता I2C (I-Squared-C) अडैप्टर: 5 कदम (चित्रों के साथ)

वीडियो: दुनिया का सबसे सस्ता I2C (I-Squared-C) अडैप्टर: 5 कदम (चित्रों के साथ)

वीडियो: दुनिया का सबसे सस्ता I2C (I-Squared-C) अडैप्टर: 5 कदम (चित्रों के साथ)
वीडियो: महोबत को दुनिया सलाम करती है manchan dot com 2024, जुलाई
Anonim
दुनिया का सबसे सस्ता I2C (I-Squared-C) अडैप्टर
दुनिया का सबसे सस्ता I2C (I-Squared-C) अडैप्टर

अपने कंप्यूटर के लिए एक रुपये से कम के लिए एक सेंसर इंटरफ़ेस बनाएं! अद्यतन ६/९/०८: कई रास्ते तलाशने के बाद मैंने निष्कर्ष निकाला है कि माइक्रोसॉफ्ट विंडोज में इस तकनीक को लागू करने का कोई व्यावहारिक तरीका नहीं है। यह छोटा ओएस कोसने वाला नहीं है, मैंने वास्तव में कोशिश कर रहे एक अखरोट का भंडाफोड़ किया है! माफ़ करना! I2C क्षमताओं की आवश्यकता वाले विंडोज़ उपयोगकर्ताओं को मौजूदा यूएसबी-आधारित समाधानों द्वारा सर्वोत्तम सेवा प्रदान की जाती है। अपडेट 5/24/08: लिनक्स समर्थन जोड़ा गया है, साथ ही निंटेंडो वाईआई नंचुक नियंत्रक और ब्लिंकएम "स्मार्ट एलईडी" के लिए नमूना कोड भी जोड़ा गया है। लिनक्स पर संकलन और सेटअप पर निर्देशों के लिए स्रोत कोड के साथ शामिल README.txt फ़ाइल देखें। I2C (इंटर-इंटीग्रेटेड सर्किट के लिए संक्षिप्त) एक दो-तार सीरियल बस है जो आमतौर पर आंतरिक घटकों के बीच निम्न-स्तरीय संचार के लिए कंप्यूटर में उपयोग की जाती है। I2C रोबोटिक्स में भी लोकप्रिय है। सभी प्रकार के सेंसर और एक्चुएटर I2C-संगत रूप में उपलब्ध हैं: अल्ट्रासोनिक रेंजफाइंडर, त्वरण के लिए सेंसर, झुकाव, तापमान और दबाव, सर्वो नियंत्रक, और बस विस्तारक जो अतिरिक्त सामान्य-उद्देश्य (GPIO) लाइनें प्रदान करते हैं। अधिकांश आधुनिक माइक्रोकंट्रोलर (Atmel), माइक्रोचिप PIC, आदि) में I2C के लिए समर्थन है। लेकिन माइक्रोकंट्रोलर पर उपलब्ध प्रसंस्करण शक्ति सीमित है, और सॉफ्टवेयर विकास - विशेष क्रॉस-कंपाइलर और प्रोग्रामिंग वातावरण के साथ - कभी-कभी एक घर का काम हो सकता है। लैपटॉप और सिंगल-बोर्ड कंप्यूटरों के छोटे और अधिक किफायती होने के साथ, इन प्रणालियों को सीधे रोबोटिक्स और इलेक्ट्रॉनिक्स परियोजनाओं में उपयोग करते हुए देखना आम बात है। यह दृष्टि प्रसंस्करण और अधिक परिष्कृत एआई जैसी नई क्षमताओं के लिए पर्याप्त शक्ति प्रदान करता है, और यह उपलब्ध विकास उपकरणों और भाषाओं के दायरे का विस्तार करता है … उपभोक्ता-श्रेणी के पोर्ट जैसे USB; कोई बाहरी रूप से उपलब्ध "I2C पोर्ट" नहीं है जिसे हम अपने सेंसर का उपयोग करने के लिए टैप कर सकते हैं … या है ना?

चरण 1: मौजूदा विकल्प

मौजूदा विकल्प
मौजूदा विकल्प
मौजूदा विकल्प
मौजूदा विकल्प

I2C उपकरणों को एक साधारण डेस्कटॉप या लैपटॉप कंप्यूटर से जोड़ने का एक तरीका USB-to-I2C एडेप्टर के माध्यम से है। वहाँ कम से कम एक दर्जन ऐसे विकल्प हैं, जिनमें ओपन सोर्स सॉफ़्टवेयर के साथ स्वयं करें किट से लेकर हर घंटी और सीटी के साथ परिष्कृत वाणिज्यिक इकाइयां शामिल हैं।

USB-to-I2C दृष्टिकोण का एक नकारात्मक पहलू लागत है। एक पूर्ण विशेषताओं वाले वाणिज्यिक मॉडल की कीमत $250 या अधिक हो सकती है। यहां तक कि "मुक्त" होमब्रे विकल्प भी भागों का एक संग्रह और एक माइक्रोकंट्रोलर प्रोग्रामर में एक पूर्व निवेश और इसका उपयोग करने के लिए संबंधित ज्ञान ग्रहण करते हैं। एक और नकारात्मक पहलू लोकप्रिय विंडोज फोल्ड के बाहर ड्राइवर समर्थन की सापेक्ष कमी है। इनमें से कुछ डिवाइस मैकिंटोश या लिनक्स कंप्यूटर पर मूल रूप से काम करते हैं।

चरण 2: डीडीसी I2C है

डीडीसी I2C है
डीडीसी I2C है
डीडीसी I2C है
डीडीसी I2C है
डीडीसी I2C है
डीडीसी I2C है

जब मैंने परिचय में कहा कि अधिकांश कंप्यूटरों पर कोई बाहरी I2C पोर्ट नहीं है, तो मैंने झूठ बोला। पता चला है कि वहाँ है, और यह लगभग एक दशक से वहाँ है, ज्यादातर निष्क्रिय बैठे हैं।

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

चरण 3: केबल विदारक

केबल विदारक
केबल विदारक
केबल विदारक
केबल विदारक

हमारे I2C इंटरफ़ेस के लिए चार तारों की आवश्यकता होती है: +5V पावर, ग्राउंड, सीरियल डेटा और सीरियल क्लॉक। विभिन्न प्रकार के वीडियो पोर्ट के लिए पिनआउट विकिपीडिया या Pinouts.ru पर देखे जा सकते हैं। याद रखें कि पिन के पूर्ण पूरक के साथ एक को खोजने के लिए वीजीए केबल का उपयोग कर रहे हैं; कुछ में केवल एक उपसमुच्चय शामिल होता है। केबल के बाहर से इन्सुलेशन और परिरक्षण को काटकर, आपको संभवतः तारों के दो समूह मिलेंगे। मोटे तार, या अतिरिक्त परिरक्षण में लिपटे तारों के बंडल, आमतौर पर वीडियो सिग्नल ले जाते हैं। हमें इनमें कोई दिलचस्पी नहीं है और इन्हें वापस काटा जा सकता है। पतले, बिना परिरक्षित तार आमतौर पर दूसरों के बीच डीडीसी (I2C) सिग्नल ले जाते हैं। एक मल्टीमीटर या निरंतरता परीक्षक आपके केबल के लिए सही चार तारों को खोजने में मदद कर सकता है। नंगे कनेक्टर का उपयोग करना यहां फायदेमंद हो सकता है, क्योंकि आपको केवल चार तारों को रुचि के पिनों में मिलाप करने की आवश्यकता होती है। +5V पावर पर एक नोट: उपलब्ध करंट बहुत सीमित है; डीडीसी विनिर्देश के अनुसार लगभग 50 एमए। अधिकांश I2C डिवाइस केवल एक छोटा सा करंट बहाते हैं, इसलिए एक साथ कई चलाना संभव होना चाहिए … लेकिन यदि एक या दो से अधिक LED (या अन्य तुलनात्मक रूप से उच्च-वर्तमान डिवाइस) का उपयोग कर रहे हैं, तो बाहरी शक्ति प्रदान की जानी चाहिए।

चरण 4: पूर्ण एडेप्टर

पूरा एडेप्टर
पूरा एडेप्टर

यहाँ तैयार एडॉप्टर है। यही सब है इसके लिए! मैंने अपना अतिरिक्त ठूंठ बनाया ताकि यह मेरे लैपटॉप बैग में आसानी से फिट हो सके, और एक चार-पिन प्लग जोड़ा जो सीधे एक I2C सर्वो नियंत्रक से जुड़ता है जो मेरे पास है।

चरण 5: सॉफ्टवेयर और परियोजनाएं

सॉफ्टवेयर और परियोजनाएं
सॉफ्टवेयर और परियोजनाएं
सॉफ्टवेयर और परियोजनाएं
सॉफ्टवेयर और परियोजनाएं

एडेप्टर के साथ काम करने के लिए मैक ओएस एक्स और लिनक्स स्रोत कोड मेरी वेब साइट से डाउनलोड किया जा सकता है (डाउनलोड लिंक पृष्ठ के नीचे है)। यह सी में लिखा गया है, और आपको जीसीसी स्थापित करने की आवश्यकता होगी (लिनक्स में आमतौर पर इसे डिफ़ॉल्ट रूप से शामिल किया जाता है, जबकि मैक उपयोगकर्ताओं को डेवलपर टूल इंस्टॉल करने की आवश्यकता होगी जो आपके मूल ओएस डिस्क पर वैकल्पिक इंस्टॉलर हैं, या ऐप्पल से डाउनलोड करने योग्य हैं)। उदाहरण कोड एक तापमान संवेदक को पढ़ने, एक ब्लिंकएम "स्मार्ट एलईडी" को चमकाने, एक सीरियल EEPROM को लिखने और सत्यापित करने, एक Nintento Wii Nunchuk नियंत्रक (केवल लिनक्स) को पढ़ने और एक सर्वो नियंत्रक बोर्ड के साथ संचार करने के लिए शामिल है। दुर्भाग्य से यह एडेप्टर योजना नहीं है सभी प्रणालियों के साथ संगत। DDC के लिए समर्थन अनिवार्य नहीं है, इसलिए सभी वीडियो कार्ड इस क्षमता का समर्थन नहीं करते हैं। मुझे अब तक मैक सिस्टम के साथ अच्छी किस्मत मिली है जिसमें अति या इंटेल ग्राफिक्स चिप्स हैं, लेकिन एनवीआईडीआईए-आधारित सिस्टम भाग्य से बाहर हैं। लिनक्स पक्ष पर मैंने केवल आईबीएम थिंकपैड ए31पी (एटीआई ग्राफिक्स) का सफलतापूर्वक परीक्षण किया है, लेकिन यह एसस ईईपीसी (इंटेल) के साथ काम नहीं करेगा। यहां की छवियां एक परीक्षण रिग दिखाती हैं जो विभिन्न I2C उपकरणों को कार्रवाई में प्रदर्शित करती है। कंप्यूटर लगातार I2C तापमान सेंसर से परिवेश के तापमान को पढ़ता है, समय-समय पर इस डेटा को I2C सीरियल EEPROM चिप में लॉग करता है (हाँ, यह सिर्फ एक फ़ाइल पर प्रिंट कर सकता है, लेकिन यह I2C अनुप्रयोगों को और प्रदर्शित करना था), और फिर एक सर्वो (के माध्यम से) एक I2C नियंत्रक) एक अस्थायी संकेतक डायल के रूप में कार्य करता है। इन उपकरणों के लिए पहले से ही पुस्तकालय और नमूना कोड के साथ, इस डेमो को एक साथ रखने में केवल कुछ मिनट लगे (और इसमें से अधिकांश संकेतक डायल बनाने में था)।

सिफारिश की: