विषयसूची:
- चरण 1: आरंभ करें
- चरण 2: ह्यू ऐप
- चरण 3: ब्रिज कनेक्ट करें
- चरण 4: आईपी पता
- चरण 5:
- चरण 6: अपने रंग को डीबग करें
- चरण 7: आइए आरंभ करें
- चरण 8:
- चरण 9: आइए रोशनी के साथ कुछ करें
- चरण 10:
- चरण 11: आइए प्रकाश को नियंत्रित करें
- चरण 12:
- चरण 13:
- चरण 14:
- चरण 15:
- चरण 16:
- चरण 17:
- चरण 18:
- चरण 19:
वीडियो: IoT स्कूल प्रोजेक्ट फिलिप्स ह्यू: 19 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:20
यह एक मैनुअल है जिसे मुझे स्कूल के लिए लिखना था। यह पूरा नहीं है और मुझे यकीन नहीं है कि आप इसका उपयोग भी कर सकते हैं। एपीआई के बारे में मेरा ज्ञान न्यूनतम है। हम पीठ पर रोशनी के साथ एक इंटरेक्टिव मिरर बनाना चाहते थे जो मौसम, बाहर से प्रकाश आदि पर प्रतिक्रिया करता हो।
मैंने देखा कि मैं एक Arduino के साथ Philips Hue लैम्प को कैसे प्रोग्राम कर सकता हूँ। इसमें मैं अपने सभी कदम और मैं कितनी दूर आ गया हूं, समझाता हूं। मैं Arduino के साथ ह्यू की प्रोग्रामिंग करने में सफल नहीं हुआ लेकिन मुझे लगता है कि यह एक अच्छी शुरुआत है।
मुझे इसकी आवश्यकता है: एक Arduino एक रंग का दीपक एक पुल फिलिप्स ह्यू डेवलपर खाता
स्रोत:https://www.developers.meethue.com/documentation/g…https://github.com/bsalinas/ArduinoHuehttps://arduino-esp8266.readthedocs.io/en/latest/e…https:// www.makeuseof.com/tag/control-philips-hue-…
चरण 1: आरंभ करें
इससे पहले कि आप एपीआई दस्तावेज तक पहुंच सकें, आपको एक डेवलपर के रूप में पंजीकरण करना होगा। यह मुफ़्त है, लेकिन आपको नियम और शर्तें स्वीकार करनी होंगी। आप यहां एक बना सकते हैं >
चरण 2: ह्यू ऐप
आधिकारिक फिलिप्स ह्यू ऐप डाउनलोड करें। अपने फ़ोन को उस नेटवर्क से कनेक्ट करें जिसे आप चाहते हैं कि ह्यू ब्रिज चालू हो।
चरण 3: ब्रिज कनेक्ट करें
अपने ब्रिज को अपने नेटवर्क से कनेक्ट करें और ठीक से काम कर रहा है। परीक्षण करें कि स्मार्टफोन ऐप उसी नेटवर्क पर रोशनी को नियंत्रित कर सकता है। यह उसी वाई-फाई नेटवर्क पर होना चाहिए।
चरण 4: आईपी पता
फिर आपको अपने नेटवर्क पर ब्रिज के आईपी पते की खोज करनी होगी। ऐप में पुल से कनेक्ट करने के लिए लिंक को पुश करें और रोशनी को नियंत्रित करने का प्रयास करें।
चरण 5:
अगर यह सब काम कर रहा है तो ऐप में सेटिंग मेनू पर जाएं। "माई ब्रिज" पर जाएं, "नेटवर्क सेटिंग्स" पर जाएं। डीएचसीपी टॉगल को स्विच ऑफ करें और आप ब्रिज का आईपी एड्रेस देखें। आईपी पते पर ध्यान दें, फिर डीएचसीपी को वापस चालू करें।
चरण 6: अपने रंग को डीबग करें
जब आपने इसे लिखा था तो आपको अपने ह्यू को डीबग करना होगा। इस चरण के लिए आपको आईपी-एड्रेस की आवश्यकता है। आपको अगली साइट पर जाना है।
/debug/clip.html
छवि में इंटरफ़ेस इस तरह दिखेगा। यह सभी वेब ट्रैफ़िक और ह्यू रेस्टफुल इंटरफ़ेस का आधार है।
मुझे यह जानकारी Philips Hue साइट के Restful इंटरफ़ेस के बारे में मिली है।
यूआरएल: यह वास्तव में रंग प्रणाली के अंदर एक विशिष्ट संसाधन (चीज) का स्थानीय पता है। यह प्रकाश हो सकता है, रोशनी का समूह या कई और चीजें। यह वह वस्तु है जिसे आप इस आदेश के भीतर इंटरैक्ट करेंगे।
एक बॉडी: यह संदेश का वह हिस्सा है जो बताता है कि आप क्या बदलना चाहते हैं और कैसे। यहां आप JSON प्रारूप में, संसाधन का नाम और मान दर्ज करते हैं, जिसे आप बदलना/जोड़ना चाहते हैं।
एक विधि: यहां आपके पास 4 HTTP विधियों में से एक विकल्प है जिसे ह्यू कॉल उपयोग कर सकता है।
प्राप्त करें: यह संबोधित संसाधन के बारे में सभी जानकारी प्राप्त करने का आदेश है
PUT: यह एक संबोधित संसाधन को संशोधित करने का आदेश है
पोस्ट: यह संबोधित संसाधन के अंदर एक नया संसाधन बनाने का आदेश है
हटाएं: यह संबोधित संसाधन को हटाने का आदेश है प्रतिक्रिया: इस क्षेत्र में, आप अपने आदेश की प्रतिक्रिया देखेंगे। JSON प्रारूप में भी।
चरण 7: आइए आरंभ करें
अब हमें एक बेतरतीब ढंग से उत्पन्न उपयोगकर्ता नाम की आवश्यकता है जो पुल आपके लिए बनाता है। इसे भरने पर आपको एक मिल जाएगा।
यूआरएल में डालें:
/एपीआई/
शरीर में लगाएं:
और दबाएं GET
यह आदेश मूल रूप से कह रहा है "कृपया निम्नलिखित गुणों के साथ /api" (जहां उपयोगकर्ता नाम बैठते हैं) के अंदर एक नया संसाधन बनाएं। सबसे पहले, आपको एक त्रुटि मिलेगी, और ऐसा इसलिए है क्योंकि यह Philips Hue का सुरक्षा कदम है। बटन दबाकर वे साबित करते हैं कि आपके पास पुल तक भौतिक पहुंच है।
चरण 8:
अब ब्रिज पर बटन दबाएं और फिर से POST पर क्लिक करें।
अब आपको एक यूजरनेम मिलेगा जो ब्रिज आपके लिए बना है।
चरण 9: आइए रोशनी के साथ कुछ करें
अपना उपयोगकर्ता नाम कॉपी करें और इसे निम्न पंक्ति में रखें।
इसे अपने यूआरएल में डालें
/api/ /रोशनी
प्रेस GET
आपको अपने सिस्टम की सभी लाइटों और उनके नामों के साथ एक JSON प्रतिक्रिया मिलनी चाहिए।
चरण 10:
मैंने स्कूल से कुछ ह्यू लाइट्स उधार ली हैं, जिसका मैं उपयोग करता हूं वह आईडी 3 वाली है। मुझे इस लाइट के बारे में विशेष जानकारी चाहिए।
इसे आपके पास पहले से मौजूद URL के आगे रखें:
/api/ /लाइट्स/3
प्रेस GET
अब आपको लेड ३ के बारे में पूरी जानकारी मिल जाएगी (यदि आपके पास १ जैसा कोई दूसरा नंबर है तो आप उसके बारे में जानकारी देखेंगे)।
चरण 11: आइए प्रकाश को नियंत्रित करें
आप "राज्य" में देखते हैं कि मेरा नेतृत्व "चालू" है। हम "राज्य" में प्रकाश को नियंत्रित करना चाहते हैं।
इसे आपके पास पहले से मौजूद URL के आगे रखें:https:// /api/ /lights/3/ State
अगली पंक्ति को BODY में डालें
पुट दबाएं
अब आपकी लाइट बंद हो जाएगी! शरीर में मान को सत्य में बदलें और प्रकाश फिर से चालू हो जाएगा।
चरण 12:
अब सब कुछ काम कर रहा है मैं इसे अपने Arduino के साथ करना चाहता हूं। मैंने हल्के रंग को बदलने के लिए फिलिप्स ह्यू द्वारा दिए गए लिंक को देखा। लेकिन इसके लिए आपको पायथन की जरूरत है, मैंने कभी पायथन के साथ काम नहीं किया इसलिए मैंने कुछ और खोजा।
यदि आप इस कोड को देखना चाहते हैं तो मेरे पास यहां जीथब लिंक है:
github.com/bsalinas/ArduinoHue
चरण 13:
मैंने देखा कि मैं इस डेवलपर साइट से अपने arduino की जानकारी कैसे प्राप्त कर सकता हूं। अधिकांश समय मुझे भाषा समझ में नहीं आती थी। लेकिन मुझे जेम्स ब्रूस की वेबसाइट पर कुछ कोड मिला।
यह वेबसाइट का लिंक है।
www.makeuseof.com/tag/control-philips-hue-lights-arduino-and-motion-sensor/
चरण 14:
पहले मैंने देखा कि वह एक ईथरनेट केबल का उपयोग कर रहा था। मेरे पास केवल एक ह्यू लाइट बल्ब और ब्रिज एक अरुडिनो था, और कोड की थोड़ी समझ थी। मुझे उसका कोड समझने में थोड़ा समय लगा, लेकिन मैं अभी भी इसे वास्तव में समझ नहीं पाया।
मैंने सबसे पहले इस लाइब्रेरी को इंटरनेट के लिए जोड़ा।
#शामिल
यह आपके नेटवर्क के लिए है (इसे ह्यू लाइट बल्ब के समान होना चाहिए)
कास्ट चार * एसएसआईडी = ""; // यहां अपना वाईफाई नेटवर्क डालें SSIDconst char* पासवर्ड = " "; // यहां अपना वाईफाई नेटवर्क पासवर्ड डालें
ये आपके ब्रिज की आईडी और आपके ब्रिज का यूजरनेम आपको दिया गया है। (मुझे नहीं पता कि 80 का मतलब कहां है, लेकिन जब मैंने कुछ शोध किया तो मैंने देखा कि इसका इस्तेमाल नेटवर्क के लिए किया गया था)।
// ह्यू स्थिरांक कास्ट चार ह्यूहबआईपी = ""; // ह्यू हब आईपी कॉन्स्ट चार ह्यू यूज़रनेम = ""; // ह्यू यूज़रनेम कॉन्स्ट इंट ह्यूहबपोर्ट = 80;
// ह्यू वैरिएबल बूल ह्यूऑन; // ऑन / ऑफ इंट ह्यूब्री; // चमक मूल्य लंबी ह्यूह्यू; // ह्यू वैल्यू स्ट्रिंग ह्यूसीएमडी; // ह्यू कमांड
अहस्ताक्षरित लंबा बफर = 0; // प्राप्त डेटा भंडारण के लिए बफर अहस्ताक्षरित लंबे योजक;
चरण 15:
शून्य सेटअप के लिए, मैंने इंटरनेट कनेक्शन के लिए सबसे अधिक प्रयास किया। इस कोड में, Arduino देख रहा है कि क्या वह नेटवर्क से जुड़ सकता है।
शून्य सेटअप () {Serial.begin (९६००);
सीरियल.प्रिंट्लन ();
Serial.printf ("%s से कनेक्ट हो रहा है", ssid);
वाईफाई.बेगिन (एसएसआईडी, पासवर्ड);
जबकि (WiFi.status() != WL_CONNECTED) {
देरी (500);
सीरियल.प्रिंट ("।"); }
Serial.println ("कनेक्टेड"); }
चरण 16:
जेम्स के लूप में, मैंने देखा कि उसके पास एक इफ और अन्य कथन था। लेकिन वह ईथरनेट केबल के लिए था, इसलिए मैंने इसे छोड़ने की कोशिश की। मैंने भी कभी-कभी इसे एडजस्ट करने की कोशिश की, लेकिन मुझे अभी तक बहुत सारे डेटा के बारे में पता नहीं था। कोड में कुछ चीजें जो मुझे समझ में आईं, स्ट्रिंग में वह डेटा है जो ह्यू लाइट को दिया जाता है।
शून्य लूप () {
// चार नमूना आदेशों की एक श्रृंखला, जो रंग लाल और गुलाबी के बीच दो रोशनी को फीका कर देता है। उपयोग किए जाने वाले सटीक आदेशों के बारे में अधिक जानकारी के लिए ह्यू एपीआई // दस्तावेज़ीकरण पर पढ़ें, लेकिन ध्यान दें कि उद्धरण चिह्नों से बचना चाहिए।
स्ट्रिंग कमांड = "{"ऑन\": सच, \"ह्यू\": 50100, \"sat\":255, \"bri\":255, \"transitiontime\":"+String(random(15), 25))+"}";सेटह्यू(1, कमांड);
कमांड = "{"ऑन\": सच, \"ह्यू\": 65280, \"sat\":255, \"bri\":255, \"transitiontime\":"+String(random(15, 25))+"}"; सेटह्यू (2, कमांड);
कमांड = "{"ह्यू\": 65280, \"sat\":255, \"bri\":255, \"transitiontime\":"+String(random(15, 25))+"}"; सेटह्यू (1, कमांड);
कमांड = "{"ह्यू\": 50100, \"sat\":255, \"bri\":255, \"transitiontime\":"+String(random(15, 25))+"}"; सेटह्यू (2, कमांड);
}
चरण 17:
अगला कोड एक बूलियन था, लेकिन Arduino में आपको बूल लिखना होगा। सबसे पहले, क्लाइंट शब्द के कारण मुझे बहुत सारी त्रुटियां मिलीं। तो मैंने इसे देखा और देखा कि कुछ कोड "WifiClient क्लाइंट" लाइन का उपयोग करते हैं। इसलिए मैंने इसका इस्तेमाल किया और यह काम कर गया।
इफ स्टेटमेंट में आप अक्सर क्लाइंट.प्रिंट देखते हैं। यदि आप कोड में देखते हैं, तो आप देखेंगे कि आपके द्वारा पहले दर्ज किया गया URL टुकड़ों में बंटा हुआ है। अब अपना खुद का कोड डालें। मुझे अपनी तीसरी एलईडी लाइट चुननी थी।
/* setHue() हमारा मुख्य कमांड फंक्शन है, जिसे JSON फॉर्मेट में एक लाइट नंबर और * ठीक से फॉर्मेट की गई कमांड स्ट्रिंग को पास करने की जरूरत है (मूल रूप से वेरिएबल्स की एक जावास्क्रिप्ट स्टाइल ऐरे * और वैल्यू। यह तब एक साधारण HTTP PUT रिक्वेस्ट करता है प्रारंभ में निर्दिष्ट IP पर ब्रिज। */
बूल सेटह्यू (इंट लाइटनम, स्ट्रिंग कमांड) {
वाईफाई क्लाइंट क्लाइंट;
अगर (क्लाइंट.कनेक्ट (ह्यूहबआईपी, ह्यूहबपोर्ट)) {
जबकि (क्लाइंट.कनेक्टेड ()) {
क्लाइंट.प्रिंट ("पुट / एपीआई /"); क्लाइंट.प्रिंट (ह्यू यूज़रनेम); क्लाइंट.प्रिंट ("/ लाइट्स /"); क्लाइंट.प्रिंट (लाइटनम); // ह्यूलाइट शून्य आधारित, 1 क्लाइंट जोड़ें। प्रिंट्लन ("3 / राज्य"); // यहां मैंने रंग का नाम और Stateclient.print ("होस्ट:"); क्लाइंट.प्रिंट्लन (ह्यूहबआईपी); क्लाइंट.प्रिंट ("सामग्री-लंबाई:"); client.println(command.length()); client.println ("सामग्री-प्रकार: पाठ/सादा; वर्णसेट = UTF-8"); क्लाइंट.प्रिंट्लन (); // बॉडी क्लाइंट से पहले खाली लाइन। प्रिंट्लन (कमांड); // ह्यू कमांड
} क्लाइंट.स्टॉप (); सच लौटना; // कमांड निष्पादित}
अन्यथा झूठी वापसी; // कमांड विफल}
चरण 18:
दूसरे बूलियन में, मैंने कुछ शब्दों को बदलकर वही किया। मैंने इसे यह देखने के लिए अपलोड किया कि यह काम करता है या नहीं।
/* यदि आपका तर्क प्रकाश की वर्तमान स्थिति पर निर्भर करता है तो एक सहायक कार्य। * यह कई वैश्विक चर सेट करता है जिसे आप यह पता लगाने के लिए जांच सकते हैं कि वर्तमान में कोई प्रकाश चालू है या नहीं * और रंग इत्यादि। केवल आदेश भेजने के लिए जरूरी नहीं है */
बूल गेटह्यू (इंट लाइटनम) {
वाईफाई क्लाइंट क्लाइंट;
अगर (क्लाइंट.कनेक्ट (ह्यूहबआईपी, ह्यूहबपोर्ट)) {
क्लाइंट.प्रिंट ("प्राप्त करें / एपीआई /"); क्लाइंट.प्रिंट (ह्यू यूज़रनेम); क्लाइंट.प्रिंट ("/ लाइट्स /"); क्लाइंट.प्रिंट (लाइटनम); client.println ("3/राज्य"); क्लाइंट.प्रिंट ("होस्ट:"); क्लाइंट.प्रिंट्लन (ह्यूहबआईपी); client.println ("सामग्री-प्रकार: एप्लिकेशन/जेसन"); client.println ("रखें-जीवित"); क्लाइंट.प्रिंट्लन ();
जबकि (क्लाइंट.कनेक्टेड ()) { अगर (क्लाइंट.उपलब्ध ()) {क्लाइंट.फाइंड यूनटिल ("\"ऑन\":", "\0"); ह्यूऑन = (क्लाइंट.readStringUntil(',') == "true"); // यदि प्रकाश चालू है, तो वेरिएबल को ट्रू क्लाइंट पर सेट करें। FindUntil("\"bri\":", "\0"); ह्यूब्री = client.readStringUntil(',').toInt(); // ब्राइटनेस वैल्यू क्लाइंट के लिए वेरिएबल सेट करें। फाइंड यूनटिल ("\"ह्यू \":", "\ 0"); ह्यूह्यू = क्लाइंट.readStringUntil(',').toInt(); // वैरिएबल को ह्यू वैल्यू ब्रेक के लिए सेट करें; // अभी तक अन्य प्रकाश विशेषताओं को कैप्चर नहीं कर रहा है}} client.stop(); सच लौटना; // पर कब्जा कर लिया, bri, रंग} और झूठी वापसी; // त्रुटि पढ़ने पर, bri, रंग}
चरण 19:
मुझे लगता है कि मैं फिलिप्स ह्यू के साथ संबंध बना सकता हूं। मुझे जानकारी प्राप्त होती है लेकिन इसे अभी भी उपयोग करने की आवश्यकता है।
दुर्भाग्य से, यह मैं जो कोड कर सकता हूं उससे आगे जाता है। यदि आप उत्तर जानते हैं, या यदि वास्तविक त्रुटियां हैं जिन्हें ठीक करने की आवश्यकता है, तो मुझे यह सुनना अच्छा लगेगा।:-)
सिफारिश की:
फिलिप्स ह्यू लाइटस्ट्रिप को विभाजित और विस्तारित करें: 8 कदम (चित्रों के साथ)
फिलिप्स ह्यू लाइटस्ट्रिप को विभाजित और विस्तारित करें: मैं और अधिक "स्मार्ट होम" जोड़ रहा हूं मेरे घर के लिए गैजेट टाइप करें, और जिन चीज़ों के साथ मैं खेल रहा हूं उनमें से एक फिलिप्स ह्यू लाइटस्ट्रिप है। यह एलईडी लाइट्स की एक पट्टी है जिसे किसी ऐप से या एलेक्सा या
सैड कैट फिक्सर, कैच-मी कैट टॉय - स्कूल प्रोजेक्ट: 3 कदम
सैड कैट फिक्सर, कैच-मी कैट टॉय - स्कूल प्रोजेक्ट: यहां हमारा उत्पाद है, यह एक इंटरेक्टिव टॉय माउस है: कैच-मी कैट टॉय। यहाँ उन समस्याओं की एक सूची दी गई है जिनका सामना हमारे समाज में कई बिल्लियाँ करती हैं: बिल्लियाँ इन दिनों निष्क्रिय और उदास होती जा रही हैं और उन्हें कुछ नहीं करना है, अधिकांश मालिक काम या स्कूल में व्यस्त हैं और आपकी सीए
फिलिप्स ह्यू लाइट स्ट्रिप्स को काटना और फिर से जोड़ना (उन लोगों के लिए जो सोल्डरिंग के साथ बहुत कुशल नहीं हैं): 6 कदम
फिलिप्स ह्यू लाइट स्ट्रिप्स को काटना और फिर से जोड़ना (हममें से उन लोगों के लिए जो सोल्डरिंग के साथ बहुत कुशल नहीं हैं): यदि आप सोल्डरिंग के साथ कुशल हैं तो यहां 'रुडली' द्वारा एक अच्छी पोस्ट है कि सोल्डर पैड को आधा में काटे बिना इसे कैसे किया जाए। .ये कदम हममें से उन लोगों के लिए हैं जो परिचित हैं, लेकिन सोल्डरिंग के साथ सुपर कुशल नहीं हैं। मैंने बेसिक बिकवाली की है
DIY फिलिप्स ह्यू पैनल लाइट: 4 कदम (चित्रों के साथ)
DIY फिलिप्स ह्यू पैनल लाइट: मैंने हाल ही में अपने बेडरूम के लिए कुछ फिलिप्स ह्यू लाइट्स खरीदी हैं। वे बहुत बढ़िया हैं! मैं एलेक्सा का उपयोग करके उन्हें अपनी आवाज से नियंत्रित कर सकता हूं और अपने फोन के माध्यम से भी उन्हें नियंत्रित कर सकता हूं। मैंने एक रंग बदलने वाली पैनल लाइट खोजने की कोशिश की लेकिन जैसा कि आप जानते होंगे, फिलिप्स ह्यू नहीं
मूड प्रोजेक्टर (जीएसआर के साथ हैक की गई फिलिप्स ह्यू लाइट) टीएफसीडी: 7 कदम (चित्रों के साथ)
मूड प्रोजेक्टर (जीएसआर के साथ फिलिप्स ह्यू लाइट हैक किया गया) टीएफसीडी: लौरा अह्समान द्वारा & माईके वेबर उद्देश्य: कम मूड और तनाव आधुनिक तेज-तर्रार जीवन का एक बड़ा हिस्सा हैं। यह भी कुछ ऐसा है जो बाहर से अदृश्य है। क्या होगा अगर हम नेत्रहीन और ध्वनिक रूप से अपने तनाव के स्तर को प्रोजेक्ट करने में सक्षम थे