chore(i18n): sync translations with latest source changes (chunk 1/1, 185 changes)

pull/577/head
localizeflow[bot] 3 weeks ago
parent 2ab3362115
commit 4781f400c8

@ -738,8 +738,8 @@
"language_code": "hi"
},
"README.md": {
"original_hash": "3fcc056cd3837e33d2bdf79f9c359fcf",
"translation_date": "2026-01-30T01:32:24+00:00",
"original_hash": "accf69391fa4450eadbf492ca024cccf",
"translation_date": "2026-04-06T16:51:20+00:00",
"source_file": "README.md",
"language_code": "hi"
},

@ -1,6 +1,6 @@
# IoT का परिचय
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.jpg)
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-1.2606670fa61ee904.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़ी छवि देखने के लिए चित्र पर क्लिक करें।

@ -203,7 +203,7 @@ Python वर्चुअल एनवायरनमेंट कॉन्फ
ऐप चलना शुरू करेगा और आपके वेब ब्राउज़र में खुलेगा:
![ब्राउज़र में चल रहा Counter Fit ऐप](../../../../../translated_images/hi/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.png)
![ब्राउज़र में चल रहा Counter Fit ऐप](../../../../../translated_images/hi/counterfit-first-run.433326358b669b31.webp)
इसे *Disconnected* के रूप में चिह्नित किया जाएगा, और शीर्ष-दाएं कोने में LED बंद होगा।
@ -224,7 +224,7 @@ Python वर्चुअल एनवायरनमेंट कॉन्फ
1. इस नए टर्मिनल में, पहले की तरह `app.py` फ़ाइल चलाएं। CounterFit की स्थिति **Connected** में बदल जाएगी और LED जल उठेगा।
![Counter Fit कनेक्टेड दिखा रहा है](../../../../../translated_images/hi/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.png)
![Counter Fit कनेक्टेड दिखा रहा है](../../../../../translated_images/hi/counterfit-connected.ed30b46d8f79b092.webp)
> 💁 आप इस कोड को [code/virtual-device](../../../../../1-getting-started/lessons/1-introduction-to-iot/code/virtual-device) फ़ोल्डर में पा सकते हैं।

@ -1,6 +1,6 @@
# IoT में गहराई से समझना
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-2.324b0580d620c25e.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़ी छवि देखने के लिए चित्र पर क्लिक करें।
@ -38,7 +38,7 @@ IoT में **चीज़** उस डिवाइस को संदर्
ये डिवाइस भौतिक दुनिया के साथ इंटरैक्ट करते हैं, या तो सेंसर का उपयोग करके अपने आसपास से डेटा इकट्ठा करते हैं या आउटपुट या एक्टुएटर्स को नियंत्रित करके भौतिक परिवर्तन करते हैं। इसका एक सामान्य उदाहरण स्मार्ट थर्मोस्टेट है - एक डिवाइस जिसमें तापमान सेंसर होता है, एक डायल या टचस्क्रीन जैसे वांछित तापमान सेट करने का साधन होता है, और एक हीटिंग या कूलिंग सिस्टम से कनेक्शन होता है जिसे तब चालू किया जा सकता है जब पता लगाया गया तापमान वांछित सीमा से बाहर हो। तापमान सेंसर यह पता लगाता है कि कमरा बहुत ठंडा है और एक एक्टुएटर हीटिंग चालू कर देता है।
![एक डायग्राम जिसमें IoT डिवाइस के इनपुट के रूप में तापमान और डायल दिखाया गया है, और आउटपुट के रूप में हीटर का नियंत्रण](../../../../../translated_images/hi/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.png)
![एक डायग्राम जिसमें IoT डिवाइस के इनपुट के रूप में तापमान और डायल दिखाया गया है, और आउटपुट के रूप में हीटर का नियंत्रण](../../../../../translated_images/hi/basic-thermostat.a923217fd1f37e5a.webp)
IoT डिवाइस के रूप में काम करने वाली चीज़ों की एक बड़ी विविधता है, जैसे कि एक समर्पित हार्डवेयर जो केवल एक चीज़ को सेंसर करता है, या सामान्य प्रयोजन डिवाइस, यहां तक कि आपका स्मार्टफोन भी! एक स्मार्टफोन सेंसर का उपयोग करके अपने आसपास की दुनिया का पता लगा सकता है और एक्टुएटर्स का उपयोग करके दुनिया के साथ इंटरैक्ट कर सकता है - उदाहरण के लिए, GPS सेंसर का उपयोग करके आपका स्थान पता लगाना और स्पीकर का उपयोग करके आपको गंतव्य तक नेविगेशन निर्देश देना।
@ -54,7 +54,7 @@ IoT एप्लिकेशन का **इंटरनेट** पक्ष
स्मार्ट थर्मोस्टेट के उदाहरण में, थर्मोस्टेट होम वाईफाई का उपयोग करके क्लाउड में चल रही क्लाउड सेवा से कनेक्ट होगा। यह तापमान डेटा इस क्लाउड सेवा को भेजेगा, और वहां से इसे किसी प्रकार के डेटाबेस में लिखा जाएगा जिससे गृहस्वामी फोन ऐप का उपयोग करके वर्तमान और पिछले तापमान की जांच कर सके। क्लाउड में एक अन्य सेवा यह जानती होगी कि गृहस्वामी कौन सा तापमान चाहता है, और क्लाउड सेवा के माध्यम से IoT डिवाइस को संदेश भेजेगी ताकि हीटिंग सिस्टम को चालू या बंद किया जा सके।
![एक डायग्राम जिसमें IoT डिवाइस के इनपुट के रूप में तापमान और डायल दिखाया गया है, IoT डिवाइस और क्लाउड के बीच दो-तरफा संचार, और क्लाउड और फोन के बीच दो-तरफा संचार, और आउटपुट के रूप में हीटर का नियंत्रण](../../../../../translated_images/hi/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.png)
![एक डायग्राम जिसमें IoT डिवाइस के इनपुट के रूप में तापमान और डायल दिखाया गया है, IoT डिवाइस और क्लाउड के बीच दो-तरफा संचार, और क्लाउड और फोन के बीच दो-तरफा संचार, और आउटपुट के रूप में हीटर का नियंत्रण](../../../../../translated_images/hi/mobile-controlled-thermostat.4a994010473d8d6a.webp)
एक और स्मार्ट संस्करण क्लाउड में AI का उपयोग कर सकता है, जो अन्य IoT डिवाइस जैसे कि ऑक्यूपेंसी सेंसर से जुड़े अन्य सेंसर से डेटा के साथ-साथ मौसम और यहां तक कि आपके कैलेंडर जैसे डेटा का उपयोग करके स्मार्ट तरीके से तापमान सेट करने के निर्णय ले सकता है। उदाहरण के लिए, यह आपके कैलेंडर से पढ़कर हीटिंग बंद कर सकता है यदि आप छुट्टी पर हैं, या कमरे के उपयोग के आधार पर कमरे-दर-कमरे हीटिंग बंद कर सकता है, डेटा से सीखते हुए समय के साथ अधिक सटीक होता जा सकता है।
@ -94,7 +94,7 @@ CPU एक घड़ी पर निर्भर करता है जो प
> 💁 CPU प्रोग्राम को [फेच-डिकोड-एक्ज़ीक्यूट चक्र](https://wikipedia.org/wiki/Instruction_cycle) का उपयोग करके निष्पादित करता है। प्रत्येक घड़ी टिक के लिए, CPU मेमोरी से अगला निर्देश फेच करेगा, इसे डिकोड करेगा, फिर इसे निष्पादित करेगा जैसे कि दो संख्याओं को जोड़ने के लिए एक एरिथमेटिक लॉजिक यूनिट (ALU) का उपयोग करना। कुछ निष्पादन को चलाने में कई टिक लगते हैं, इसलिए अगला चक्र उस टिक पर चलेगा जब निर्देश पूरा हो जाएगा।
![फेच डिकोड एक्ज़ीक्यूट चक्र दिखाते हुए जिसमें RAM में संग्रहीत प्रोग्राम से एक निर्देश फेच किया जाता है, फिर CPU पर डिकोड और निष्पादित किया जाता है](../../../../../translated_images/hi/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.png)
![फेच डिकोड एक्ज़ीक्यूट चक्र दिखाते हुए जिसमें RAM में संग्रहीत प्रोग्राम से एक निर्देश फेच किया जाता है, फिर CPU पर डिकोड और निष्पादित किया जाता है](../../../../../translated_images/hi/fetch-decode-execute.2fd6f150f6280392.webp)
माइक्रोकंट्रोलर्स में डेस्कटॉप या लैपटॉप कंप्यूटर, या यहां तक कि अधिकांश स्मार्टफोन की तुलना में बहुत कम घड़ी की गति होती है। उदाहरण के लिए, Wio Terminal में एक CPU होता है जो 120MHz या 120,000,000 चक्र प्रति सेकंड पर चलता है।
@ -182,7 +182,7 @@ Arduino बोर्ड C या C++ में कोड किए जाते
आप अपने सेटअप कोड को `setup` फंक्शन में लिखेंगे, जैसे WiFi और क्लाउड सेवाओं से कनेक्ट करना या इनपुट और आउटपुट के लिए पिन्स को इनिशियलाइज़ करना। आपका लूप कोड फिर प्रोसेसिंग कोड को शामिल करेगा, जैसे सेंसर से डेटा पढ़ना और इसे क्लाउड पर भेजना। आप आमतौर पर प्रत्येक लूप में एक देरी जोड़ेंगे, उदाहरण के लिए, यदि आप केवल हर 10 सेकंड में सेंसर डेटा भेजना चाहते हैं, तो आप लूप के अंत में 10 सेकंड की देरी जोड़ेंगे ताकि माइक्रोकंट्रोलर सो सके, पावर बचा सके, और फिर 10 सेकंड बाद जब आवश्यक हो तो लूप को फिर से चलाए।
![Arduino स्केच पहले setup चलाता है, फिर loop को बार-बार चलाता है](../../../../../translated_images/hi/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.png)
![Arduino स्केच पहले setup चलाता है, फिर loop को बार-बार चलाता है](../../../../../translated_images/hi/arduino-sketch.79590cb837ff7a7c.webp)
✅ इस प्रोग्राम आर्किटेक्चर को *इवेंट लूप* या *मैसेज लूप* के रूप में जाना जाता है। कई एप्लिकेशन इसे बैकग्राउंड में उपयोग करते हैं और यह अधिकांश डेस्कटॉप एप्लिकेशन के लिए मानक है जो Windows, macOS या Linux जैसे OS पर चलते हैं। `loop` यूजर इंटरफेस घटकों जैसे बटन, या कीबोर्ड जैसे उपकरणों से संदेशों को सुनता है और उनका जवाब देता है। आप इसके बारे में अधिक पढ़ सकते हैं इस [इवेंट लूप पर लेख](https://wikipedia.org/wiki/Event_loop) में।

@ -1,6 +1,6 @@
# सेंसर और एक्ट्यूएटर्स के साथ भौतिक दुनिया से जुड़ें
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.jpg)
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-3.cc3b7b4cd646de59.webp)
> स्केच नोट: [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़ी छवि देखने के लिए क्लिक करें।
@ -92,7 +92,7 @@ IoT डिवाइस डिजिटल होते हैं - वे एन
सबसे सरल डिजिटल सेंसर एक बटन या स्विच है। यह एक सेंसर है जिसमें दो अवस्थाएँ होती हैं, चालू या बंद।
![एक बटन को 5 वोल्ट भेजा जा रहा है। जब दबाया नहीं जाता तो यह 0 वोल्ट लौटाता है, और जब दबाया जाता है तो यह 5 वोल्ट लौटाता है](../../../../../translated_images/hi/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.png)
![एक बटन को 5 वोल्ट भेजा जा रहा है। जब दबाया नहीं जाता तो यह 0 वोल्ट लौटाता है, और जब दबाया जाता है तो यह 5 वोल्ट लौटाता है](../../../../../translated_images/hi/button.eadb560b77ac45e5.webp)
IoT डिवाइस के पिन्स जैसे GPIO पिन्स इस संकेत को सीधे 0 या 1 के रूप में माप सकते हैं। यदि भेजा गया वोल्टेज लौटाए गए वोल्टेज के समान है, तो पढ़ा गया मान 1 होता है, अन्यथा पढ़ा गया मान 0 होता है। संकेत को परिवर्तित करने की आवश्यकता नहीं होती, यह केवल 1 या 0 हो सकता है।
@ -125,7 +125,7 @@ IoT डिवाइस के पिन्स जैसे GPIO पिन्स
नीचे दिए गए संबंधित गाइड का पालन करें ताकि सेंसर द्वारा नियंत्रित एक्ट्यूएटर को अपने IoT डिवाइस में जोड़ सकें और IoT नाइटलाइट बना सकें। यह लाइट सेंसर से प्रकाश स्तरों को एकत्र करेगा और जब पता लगाया गया प्रकाश स्तर बहुत कम होगा तो LED के रूप में एक्ट्यूएटर का उपयोग करके प्रकाश उत्सर्जित करेगा।
![असाइनमेंट का फ्लो चार्ट, जिसमें प्रकाश स्तरों को पढ़ा और जांचा जा रहा है, और LED को नियंत्रित किया जा रहा है](../../../../../translated_images/hi/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.png)
![असाइनमेंट का फ्लो चार्ट, जिसमें प्रकाश स्तरों को पढ़ा और जांचा जा रहा है, और LED को नियंत्रित किया जा रहा है](../../../../../translated_images/hi/assignment-1-flow.7552a51acb1a5ec8.webp)
* [Arduino - Wio Terminal](wio-terminal-actuator.md)
* [सिंगल-बोर्ड कंप्यूटर - Raspberry Pi](pi-actuator.md)
@ -140,7 +140,7 @@ IoT डिवाइस के पिन्स जैसे GPIO पिन्स
एनालॉग एक्ट्यूएटर एक एनालॉग संकेत लेते हैं और इसे किसी प्रकार के इंटरैक्शन में बदलते हैं, जहां इंटरैक्शन आपूर्ति किए गए वोल्टेज के आधार पर बदलता है।
एक उदाहरण एक डिमेबल लाइट है, जैसे कि आपके घर में हो सकती है। लाइट को आपूर्ति किए गए वोल्टेज की मात्रा यह निर्धारित करती है कि यह कितनी उज्ज्वल है।
![कम वोल्टेज पर हल्की रोशनी और उच्च वोल्टेज पर तेज रोशनी](../../../../../translated_images/hi/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.png)
![कम वोल्टेज पर हल्की रोशनी और उच्च वोल्टेज पर तेज रोशनी](../../../../../translated_images/hi/dimmable-light.9ceffeb195dec1a8.webp)
सेंसर की तरह, असली IoT डिवाइस डिजिटल सिग्नल पर काम करता है, एनालॉग पर नहीं। इसका मतलब है कि एनालॉग सिग्नल भेजने के लिए, IoT डिवाइस को डिजिटल से एनालॉग कनवर्टर (DAC) की आवश्यकता होती है, जो या तो सीधे IoT डिवाइस पर या कनेक्टर बोर्ड पर होता है। यह IoT डिवाइस से 0s और 1s को एनालॉग वोल्टेज में बदल देगा जिसे एक्टुएटर उपयोग कर सकता है।
@ -187,7 +187,7 @@ IoT डिवाइस से डिजिटल सिग्नल को ए
एक साधारण डिजिटल एक्टुएटर LED है। जब डिवाइस 1 का डिजिटल सिग्नल भेजता है, तो एक उच्च वोल्टेज भेजा जाता है जो LED को जलाता है। जब 0 का डिजिटल सिग्नल भेजा जाता है, तो वोल्टेज 0V तक गिर जाता है और LED बंद हो जाती है।
![0 वोल्ट पर LED बंद और 5V पर चालू](../../../../../translated_images/hi/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.png)
![0 वोल्ट पर LED बंद और 5V पर चालू](../../../../../translated_images/hi/led.ec6d94f66676a174.webp)
✅ आप और कौन से साधारण 2-स्टेट एक्टुएटर के बारे में सोच सकते हैं? एक उदाहरण है सोलोनॉइड, जो एक इलेक्ट्रोमैग्नेट है जिसे दरवाजे की कुंडी को लॉक/अनलॉक करने जैसे काम करने के लिए सक्रिय किया जा सकता है।

@ -26,7 +26,7 @@ Otherwise
एलईडी को कनेक्ट करें।
![एक ग्रोव एलईडी](../../../../../translated_images/hi/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.png)
![एक ग्रोव एलईडी](../../../../../translated_images/hi/grove-led.6c853be93f473cf2.webp)
1. अपनी पसंदीदा एलईडी चुनें और उसके पिन्स को एलईडी मॉड्यूल के दो छेदों में डालें।
@ -40,7 +40,7 @@ Otherwise
1. रास्पबेरी पाई को बंद करके, ग्रोव केबल के दूसरे सिरे को ग्रोव बेस हैट पर **D5** चिह्नित डिजिटल सॉकेट में कनेक्ट करें। यह सॉकेट GPIO पिन्स के पास वाले सॉकेट्स की पंक्ति में बाईं ओर से दूसरा है।
![ग्रोव एलईडी D5 सॉकेट से जुड़ी हुई](../../../../../translated_images/hi/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.png)
![ग्रोव एलईडी D5 सॉकेट से जुड़ी हुई](../../../../../translated_images/hi/pi-led.97f1d474981dc35d.webp)
## नाइटलाइट को प्रोग्राम करें

@ -16,13 +16,13 @@
लाइट सेंसर को कनेक्ट करें।
![एक Grove लाइट सेंसर](../../../../../translated_images/hi/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.png)
![एक Grove लाइट सेंसर](../../../../../translated_images/hi/grove-light-sensor.b8127b7c434e632d.webp)
1. Grove केबल के एक सिरे को लाइट सेंसर मॉड्यूल के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।
1. रास्पबेरी पाई को बंद करके, Grove केबल के दूसरे सिरे को Grove Base हैट पर **A0** नामक एनालॉग सॉकेट में कनेक्ट करें। यह सॉकेट GPIO पिन के पास वाले सॉकेट की पंक्ति में दाईं ओर से दूसरा है।
![सॉकेट A0 से जुड़ा Grove लाइट सेंसर](../../../../../translated_images/hi/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.png)
![सॉकेट A0 से जुड़ा Grove लाइट सेंसर](../../../../../translated_images/hi/pi-light-sensor.66cc1e31fa48cd7d.webp)
## लाइट सेंसर को प्रोग्राम करें

@ -36,11 +36,11 @@ CounterFit ऐप में LED जोड़ें।
1. **Add** बटन चुनें ताकि Pin 5 पर LED बनाई जा सके।
![LED सेटिंग्स](../../../../../translated_images/hi/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.png)
![LED सेटिंग्स](../../../../../translated_images/hi/counterfit-create-led.ba9db1c9b8c622a6.webp)
LED बनाई जाएगी और एक्टुएटर्स की सूची में दिखाई देगी।
![बनी हुई LED](../../../../../translated_images/hi/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.png)
![बनी हुई LED](../../../../../translated_images/hi/counterfit-led.c0ab02de6d256ad8.webp)
LED बनने के बाद, आप *Color* पिकर का उपयोग करके रंग बदल सकते हैं। रंग चुनने के बाद **Set** बटन चुनें।

@ -28,11 +28,11 @@ CounterFit ऐप में लाइट सेंसर जोड़ें।
1. **Add** बटन चुनें ताकि Pin 0 पर लाइट सेंसर बनाया जा सके।
![लाइट सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.png)
![लाइट सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-light-sensor.9f36a5e0d4458d8d.webp)
लाइट सेंसर बनाया जाएगा और सेंसर सूची में दिखाई देगा।
![लाइट सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.png)
![लाइट सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-light-sensor.5d0f5584df56b90f.webp)
## लाइट सेंसर को प्रोग्राम करें

@ -26,7 +26,7 @@ Grove LED एक मॉड्यूल के रूप में आता ह
LED को कनेक्ट करें।
![एक Grove LED](../../../../../translated_images/hi/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.png)
![एक Grove LED](../../../../../translated_images/hi/grove-led.6c853be93f473cf2.webp)
1. अपना पसंदीदा LED चुनें और उसके पैरों को LED मॉड्यूल के दो छेदों में डालें।

@ -1,6 +1,6 @@
# अपने डिवाइस को इंटरनेट से कनेक्ट करें
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-4.7344e074ea68fa54.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़ी छवि देखने के लिए क्लिक करें।
@ -47,7 +47,7 @@ MQTT IoT डिवाइस के लिए सबसे लोकप्रि
MQTT में एक ब्रॉकर और कई क्लाइंट होते हैं। सभी क्लाइंट ब्रॉकर से जुड़ते हैं, और ब्रॉकर संदेशों को संबंधित क्लाइंट्स तक पहुंचाता है। संदेशों को नामित टॉपिक्स का उपयोग करके रूट किया जाता है, बजाय इसके कि उन्हें सीधे किसी व्यक्तिगत क्लाइंट को भेजा जाए। एक क्लाइंट किसी टॉपिक पर प्रकाशित कर सकता है, और उस टॉपिक की सदस्यता लेने वाले सभी क्लाइंट्स को संदेश प्राप्त होगा।
![IoT डिवाइस /telemetry टॉपिक पर टेलीमेट्री प्रकाशित कर रहा है, और क्लाउड सेवा उस टॉपिक की सदस्यता ले रही है](../../../../../translated_images/hi/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.png)
![IoT डिवाइस /telemetry टॉपिक पर टेलीमेट्री प्रकाशित कर रहा है, और क्लाउड सेवा उस टॉपिक की सदस्यता ले रही है](../../../../../translated_images/hi/mqtt.cbf7f21d9adc3e17.webp)
✅ शोध करें। यदि आपके पास बहुत सारे IoT डिवाइस हैं, तो आप कैसे सुनिश्चित कर सकते हैं कि आपका MQTT ब्रॉकर सभी संदेशों को संभाल सके?
@ -69,7 +69,7 @@ MQTT में एक ब्रॉकर और कई क्लाइंट ह
> 💁 यह परीक्षण ब्रॉकर सार्वजनिक और असुरक्षित है। कोई भी आपके द्वारा प्रकाशित सामग्री को सुन सकता है, इसलिए इसे किसी भी निजी डेटा के साथ उपयोग नहीं किया जाना चाहिए।
![असाइनमेंट का फ्लो चार्ट जिसमें प्रकाश स्तर पढ़ा और जांचा जा रहा है, और LED नियंत्रित किया जा रहा है](../../../../../translated_images/hi/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.png)
![असाइनमेंट का फ्लो चार्ट जिसमें प्रकाश स्तर पढ़ा और जांचा जा रहा है, और LED नियंत्रित किया जा रहा है](../../../../../translated_images/hi/assignment-1-internet-flow.3256feab5f052fd2.webp)
MQTT ब्रॉकर से अपने डिवाइस को कनेक्ट करने के लिए नीचे दिए गए संबंधित चरण का पालन करें:
@ -350,7 +350,7 @@ Python वर्चुअल एनवायरनमेंट कॉन्फ
IoT डिवाइस डिज़ाइनरों को यह भी विचार करना चाहिए कि क्या IoT डिवाइस इंटरनेट आउटेज या स्थान के कारण सिग्नल की हानि के दौरान उपयोग किया जा सकता है। एक स्मार्ट थर्मोस्टेट को कुछ सीमित निर्णय लेने में सक्षम होना चाहिए ताकि यदि यह क्लाउड को टेलीमेट्री नहीं भेज सकता है, तो भी हीटिंग को नियंत्रित किया जा सके।
[![यह फेरारी ब्रिक हो गया क्योंकि किसी ने इसे भूमिगत अपग्रेड करने की कोशिश की जहां कोई सेल रिसेप्शन नहीं था](../../../../../translated_images/hi/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.png)](https://twitter.com/internetofshit/status/1315736960082808832)
[![यह फेरारी ब्रिक हो गया क्योंकि किसी ने इसे भूमिगत अपग्रेड करने की कोशिश की जहां कोई सेल रिसेप्शन नहीं था](../../../../../translated_images/hi/bricked-car.dc38f8efadc6c59d.webp)](https://twitter.com/internetofshit/status/1315736960082808832)
MQTT के लिए कनेक्टिविटी के नुकसान को संभालने के लिए, डिवाइस और सर्वर कोड को यह सुनिश्चित करने की जिम्मेदारी लेनी होगी कि संदेश डिलीवरी आवश्यक होने पर सुनिश्चित हो, उदाहरण के लिए सभी भेजे गए संदेशों को एक रिप्लाई टॉपिक पर अतिरिक्त संदेशों द्वारा उत्तर देने की आवश्यकता हो, और यदि नहीं, तो उन्हें मैन्युअल रूप से कतारबद्ध किया जाए ताकि बाद में रिप्ले किया जा सके।
@ -358,7 +358,7 @@ MQTT के लिए कनेक्टिविटी के नुकसा
कमांड वे संदेश हैं जो क्लाउड से डिवाइस को भेजे जाते हैं, उन्हें कुछ करने का निर्देश देते हैं। अधिकांश समय यह किसी प्रकार का आउटपुट देने के लिए एक एक्टुएटर के माध्यम से होता है, लेकिन यह डिवाइस के लिए एक निर्देश भी हो सकता है, जैसे कि रीबूट करना, या अतिरिक्त टेलीमेट्री एकत्र करना और इसे कमांड के उत्तर के रूप में वापस करना।
![एक इंटरनेट कनेक्टेड थर्मोस्टेट को हीटिंग चालू करने का कमांड प्राप्त हो रहा है](../../../../../translated_images/hi/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.png)
![एक इंटरनेट कनेक्टेड थर्मोस्टेट को हीटिंग चालू करने का कमांड प्राप्त हो रहा है](../../../../../translated_images/hi/commands.d6c06bbbb3a02cce.webp)
एक थर्मोस्टेट क्लाउड से हीटिंग चालू करने का कमांड प्राप्त कर सकता है। सभी सेंसरों से टेलीमेट्री डेटा के आधार पर, यदि क्लाउड सेवा ने तय किया है कि हीटिंग चालू होनी चाहिए, तो यह संबंधित कमांड भेजता है।

@ -1,6 +1,6 @@
## पौधों की वृद्धि की भविष्यवाणी IoT के साथ
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.jpg)
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-5.42b234299279d263.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -102,7 +102,7 @@
उदाहरण के लिए, यदि दिन का सबसे अधिक तापमान 25°C है और सबसे कम 12°C:
![GDD = 25 + 12 को 2 से विभाजित करें, फिर परिणाम से 10 घटाएं, जिससे 8.5 प्राप्त होता है](../../../../../translated_images/hi/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.png)
![GDD = 25 + 12 को 2 से विभाजित करें, फिर परिणाम से 10 घटाएं, जिससे 8.5 प्राप्त होता है](../../../../../translated_images/hi/gdd-calculation-strawberries.59f57db94b22adb8.webp)
* 25 + 12 = 37
* 37 / 2 = 18.5

@ -33,7 +33,7 @@
जुपिटर शुरू होगा और आपके ब्राउज़र में नोटबुक खोल देगा। नोटबुक में दिए गए निर्देशों का पालन करें ताकि मापे गए तापमान को विज़ुअलाइज़ किया जा सके और ग्रोइंग डिग्री डेज़ की गणना की जा सके।
![जुपिटर नोटबुक](../../../../../translated_images/hi/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.png)
![जुपिटर नोटबुक](../../../../../translated_images/hi/gdd-jupyter-notebook.c5b52cf21094f158.webp)
## मूल्यांकन मानदंड

@ -16,13 +16,13 @@ Grove तापमान सेंसर को रास्पबेरी प
तापमान सेंसर को कनेक्ट करें
![एक Grove तापमान सेंसर](../../../../../translated_images/hi/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.png)
![एक Grove तापमान सेंसर](../../../../../translated_images/hi/grove-dht11.07f8eafceee17004.webp)
1. Grove केबल के एक सिरे को ह्यूमिडिटी और तापमान सेंसर के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।
1. रास्पबेरी पाई को बंद करके, Grove केबल के दूसरे सिरे को Grove बेस हैट पर **D5** नामक डिजिटल सॉकेट में कनेक्ट करें, जो पाई से जुड़ा है। यह सॉकेट GPIO पिन के पास वाले सॉकेट की पंक्ति में बाईं ओर से दूसरा है।
![Grove तापमान सेंसर सॉकेट A0 से जुड़ा हुआ](../../../../../translated_images/hi/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.png)
![Grove तापमान सेंसर सॉकेट A0 से जुड़ा हुआ](../../../../../translated_images/hi/pi-temperature-sensor.3ff82fff672c8e56.webp)
## तापमान सेंसर को प्रोग्राम करें

@ -38,11 +38,11 @@ CounterFit ऐप में आर्द्रता और तापमान
1. **Add** बटन का चयन करें ताकि पिन 5 पर आर्द्रता सेंसर बनाया जा सके।
![आर्द्रता सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.png)
![आर्द्रता सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-humidity-sensor.2750e27b6f30e09c.webp)
आर्द्रता सेंसर बनाया जाएगा और सेंसर सूची में दिखाई देगा।
![आर्द्रता सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.png)
![आर्द्रता सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-humidity-sensor.7b12f7f339e430cb.webp)
1. एक तापमान सेंसर बनाएं:
@ -54,11 +54,11 @@ CounterFit ऐप में आर्द्रता और तापमान
1. **Add** बटन का चयन करें ताकि पिन 6 पर तापमान सेंसर बनाया जा सके।
![तापमान सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.png)
![तापमान सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-temperature-sensor.199350ed34f7343d.webp)
तापमान सेंसर बनाया जाएगा और सेंसर सूची में दिखाई देगा।
![तापमान सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.png)
![तापमान सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-temperature-sensor.f0560236c96a9016.webp)
## तापमान सेंसर ऐप प्रोग्राम करें

@ -18,7 +18,7 @@ Grove तापमान सेंसर को Wio Terminal के डिजि
तापमान सेंसर को कनेक्ट करें।
![एक Grove तापमान सेंसर](../../../../../translated_images/hi/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.png)
![एक Grove तापमान सेंसर](../../../../../translated_images/hi/grove-dht11.07f8eafceee17004.webp)
1. Grove केबल के एक सिरे को ह्यूमिडिटी और तापमान सेंसर के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।

@ -13,7 +13,7 @@ I²C में 2 मुख्य तारों के साथ 2 पावर
| VCC | वोल्टेज कॉमन कलेक्टर | डिवाइसों के लिए पावर सप्लाई। यह तार SDA और SCL तारों से जुड़ा होता है और एक पुल-अप रेसिस्टर के माध्यम से उनकी पावर प्रदान करता है, जो सिग्नल को तब बंद कर देता है जब कोई डिवाइस कंट्रोलर न हो। |
| GND | ग्राउंड | यह इलेक्ट्रिकल सर्किट के लिए एक सामान्य ग्राउंड प्रदान करता है। |
![I2C बस जिसमें 3 डिवाइस SDA और SCL तारों से जुड़े हुए हैं, और एक सामान्य ग्राउंड तार साझा कर रहे हैं](../../../../../translated_images/hi/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.png)
![I2C बस जिसमें 3 डिवाइस SDA और SCL तारों से जुड़े हुए हैं, और एक सामान्य ग्राउंड तार साझा कर रहे हैं](../../../../../translated_images/hi/i2c.83da845dde02256b.webp)
डेटा भेजने के लिए, एक डिवाइस एक स्टार्ट कंडीशन जारी करेगा ताकि यह दिखा सके कि वह डेटा भेजने के लिए तैयार है। इसके बाद वह कंट्रोलर बन जाएगा। कंट्रोलर फिर उस डिवाइस का पता भेजता है जिससे वह संवाद करना चाहता है, साथ ही यह भी बताता है कि वह डेटा पढ़ना चाहता है या लिखना। डेटा ट्रांसमिट होने के बाद, कंट्रोलर एक स्टॉप कंडीशन भेजता है ताकि यह संकेत दे सके कि उसने काम पूरा कर लिया है। इसके बाद कोई अन्य डिवाइस कंट्रोलर बन सकता है और डेटा भेज या प्राप्त कर सकता है।

@ -20,14 +20,14 @@
ग्रेविमेट्रिक मिट्टी की नमी की गणना इस प्रकार की जाती है:
![मिट्टी की नमी % = गीली मिट्टी का वजन - सूखी मिट्टी का वजन, ÷ सूखी मिट्टी का वजन, × 100](../../../../../translated_images/hi/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.png)
![मिट्टी की नमी % = गीली मिट्टी का वजन - सूखी मिट्टी का वजन, ÷ सूखी मिट्टी का वजन, × 100](../../../../../translated_images/hi/gsm-calculation.6da38c6201eec14e.webp)
* W - गीली मिट्टी का वजन
* W - सूखी मिट्टी का वजन
उदाहरण के लिए, मान लें कि आपके पास एक मिट्टी का नमूना है जिसका वजन गीला होने पर 212g और सूखा होने पर 197g है।
![गणना भरी हुई](../../../../../translated_images/hi/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.png)
![गणना भरी हुई](../../../../../translated_images/hi/gsm-calculation-example.99f9803b4f29e976.webp)
* W = 212g
* W = 197g

@ -18,13 +18,13 @@ Grove मिट्टी नमी सेंसर को रास्पबे
मिट्टी नमी सेंसर को कनेक्ट करें।
![एक Grove मिट्टी नमी सेंसर](../../../../../translated_images/hi/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.png)
![एक Grove मिट्टी नमी सेंसर](../../../../../translated_images/hi/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78b.webp)
1. Grove केबल के एक सिरे को मिट्टी नमी सेंसर के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।
1. रास्पबेरी पाई को बंद करके, Grove केबल के दूसरे सिरे को Grove Base Hat पर **A0** चिह्नित एनालॉग सॉकेट में कनेक्ट करें। यह सॉकेट GPIO पिन्स के पास वाली पंक्ति में दाईं ओर से दूसरा है।
![A0 सॉकेट से जुड़ा Grove मिट्टी नमी सेंसर](../../../../../translated_images/hi/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.png)
![A0 सॉकेट से जुड़ा Grove मिट्टी नमी सेंसर](../../../../../translated_images/hi/pi-soil-moisture-sensor.fdd7eb2393792cf6.webp)
1. मिट्टी नमी सेंसर को मिट्टी में डालें। इसमें एक 'उच्चतम स्थिति रेखा' होती है - सेंसर पर एक सफेद रेखा। सेंसर को इस रेखा तक, लेकिन इससे आगे नहीं डालें।

@ -34,11 +34,11 @@ CounterFit ऐप में मिट्टी नमी सेंसर जो
1. **Add** बटन चुनें ताकि *Soil Moisture* सेंसर Pin 0 पर बनाया जा सके।
![मिट्टी नमी सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.png)
![मिट्टी नमी सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-soil-moisture-sensor.35266135a5e0ae68.webp)
मिट्टी नमी सेंसर बनाया जाएगा और सेंसर सूची में दिखाई देगा।
![मिट्टी नमी सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.png)
![मिट्टी नमी सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-soil-moisture-sensor.81742b2de0e9de60.webp)
## मिट्टी नमी सेंसर ऐप प्रोग्राम करें

@ -18,7 +18,7 @@ Grove मिट्टी नमी सेंसर को Wio Terminal के
मिट्टी नमी सेंसर को कनेक्ट करें।
![Grove मिट्टी नमी सेंसर](../../../../../translated_images/hi/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.png)
![Grove मिट्टी नमी सेंसर](../../../../../translated_images/hi/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78b.webp)
1. Grove केबल के एक सिरे को मिट्टी नमी सेंसर के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।

@ -1,6 +1,6 @@
# स्वचालित पौधों की सिंचाई
![इस पाठ का एक स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.jpg)
![इस पाठ का एक स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-7.30b5f577d3cb8e03.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -32,7 +32,7 @@ IoT डिवाइस कम वोल्टेज का उपयोग क
इसका समाधान यह है कि पंप को एक बाहरी पावर सप्लाई से जोड़ा जाए, और एक एक्ट्यूएटर का उपयोग करके पंप को चालू किया जाए, जैसे कि आप एक लाइट को चालू करने के लिए स्विच का उपयोग करते हैं। आपके उंगली से स्विच को फ्लिप करने के लिए बहुत कम ऊर्जा (आपके शरीर में ऊर्जा के रूप में) की आवश्यकता होती है, और यह लाइट को 110v/240v पर चलने वाली मुख्य बिजली से जोड़ता है।
![एक लाइट स्विच लाइट को पावर चालू करता है](../../../../../translated_images/hi/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.png)
![एक लाइट स्विच लाइट को पावर चालू करता है](../../../../../translated_images/hi/light-switch.760317ad6ab8bd6d.webp)
> 🎓 [मेन बिजली](https://wikipedia.org/wiki/Mains_electricity) का मतलब है वह बिजली जो दुनिया के कई हिस्सों में राष्ट्रीय बुनियादी ढांचे के माध्यम से घरों और व्यवसायों को दी जाती है।
@ -72,7 +72,7 @@ IoT डिवाइस कम वोल्टेज का उपयोग क
इलेक्ट्रोमैग्नेट को सक्रिय करने और लीवर को खींचने के लिए बहुत अधिक पावर की आवश्यकता नहीं होती है, इसे 3.3V या 5V आउटपुट का उपयोग करके IoT डिवाइस से नियंत्रित किया जा सकता है। आउटपुट सर्किट बहुत अधिक पावर ले जा सकता है, रिले के आधार पर, जिसमें मुख्य वोल्टेज या यहां तक कि औद्योगिक उपयोग के लिए उच्च पावर स्तर शामिल हैं। इस तरह एक IoT डिवाइस एक सिंचाई प्रणाली को नियंत्रित कर सकता है, एक छोटे पौधे के लिए एक छोटे पंप से लेकर एक पूरे वाणिज्यिक खेत के लिए एक विशाल औद्योगिक प्रणाली तक।
![एक ग्रोव रिले जिसमें नियंत्रण सर्किट, आउटपुट सर्किट और रिले लेबल किए गए हैं](../../../../../translated_images/hi/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.png)
![एक ग्रोव रिले जिसमें नियंत्रण सर्किट, आउटपुट सर्किट और रिले लेबल किए गए हैं](../../../../../translated_images/hi/grove-relay-labelled.293e068f5c3c2a19.webp)
ऊपर दी गई छवि एक ग्रोव रिले दिखाती है। नियंत्रण सर्किट IoT डिवाइस से जुड़ता है और 3.3V या 5V का उपयोग करके रिले को चालू या बंद करता है। आउटपुट सर्किट में दो टर्मिनल होते हैं, जिनमें से कोई भी पावर या ग्राउंड हो सकता है। आउटपुट सर्किट 250V तक 10A संभाल सकता है, जो कई मुख्य पावर वाले उपकरणों के लिए पर्याप्त है। आप ऐसे रिले प्राप्त कर सकते हैं जो और भी उच्च पावर स्तर संभाल सकते हैं।

@ -18,13 +18,13 @@ Grove रिले को रास्पबेरी पाई से जोड
रिले को कनेक्ट करें।
![एक Grove रिले](../../../../../translated_images/hi/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.png)
![एक Grove रिले](../../../../../translated_images/hi/grove-relay.d426958ca210fbd0.webp)
1. Grove केबल के एक सिरे को रिले के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।
1. रास्पबेरी पाई को बंद करके, Grove केबल के दूसरे सिरे को Grove Base Hat पर **D5** नामक डिजिटल सॉकेट में कनेक्ट करें। यह सॉकेट GPIO पिन के पास वाले सॉकेट की पंक्ति में बाईं ओर से दूसरा है। मिट्टी की नमी सेंसर को **A0** सॉकेट में कनेक्टेड रहने दें।
![Grove रिले D5 सॉकेट से कनेक्टेड और मिट्टी की नमी सेंसर A0 सॉकेट से कनेक्टेड](../../../../../translated_images/hi/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.png)
![Grove रिले D5 सॉकेट से कनेक्टेड और मिट्टी की नमी सेंसर A0 सॉकेट से कनेक्टेड](../../../../../translated_images/hi/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e.webp)
1. मिट्टी की नमी सेंसर को मिट्टी में डालें, अगर यह पहले से पिछले पाठ से मिट्टी में नहीं है।

@ -28,11 +28,11 @@ CounterFit ऐप में रिले जोड़ें।
1. **Add** बटन चुनें ताकि Pin 5 पर रिले बनाया जा सके।
![रिले सेटिंग्स](../../../../../translated_images/hi/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.png)
![रिले सेटिंग्स](../../../../../translated_images/hi/counterfit-create-relay.fa7c40fd0f2f6afc.webp)
रिले बनाया जाएगा और एक्टुएटर्स सूची में दिखाई देगा।
![रिले बनाया गया](../../../../../translated_images/hi/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.png)
![रिले बनाया गया](../../../../../translated_images/hi/counterfit-relay.bbf74c1dbdc8b9ac.webp)
## रिले को प्रोग्राम करें

@ -1,6 +1,6 @@
# अपने पौधे को क्लाउड पर माइग्रेट करें
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.jpg)
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-8.3f21f3c11159e6a0.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -46,8 +46,8 @@ IoT डिवाइस ने एक सार्वजनिक MQTT ब्र
क्लाउड को अक्सर मजाक में 'किसी और का कंप्यूटर' कहा जाता है। प्रारंभिक विचार सरल था - कंप्यूटर खरीदने के बजाय, आप किसी और का कंप्यूटर किराए पर लें। कोई और, एक क्लाउड कंप्यूटिंग प्रदाता, विशाल डेटा सेंटर प्रबंधित करेगा। वे हार्डवेयर खरीदने और इंस्टॉल करने, पावर और कूलिंग प्रबंधित करने, नेटवर्किंग, इमारत की सुरक्षा, हार्डवेयर और सॉफ़्टवेयर अपडेट, सब कुछ के लिए जिम्मेदार होंगे। ग्राहक के रूप में, आप केवल उन कंप्यूटरों को किराए पर लेंगे जिनकी आपको आवश्यकता है, मांग बढ़ने पर अधिक किराए पर लेंगे, और मांग कम होने पर किराए को कम कर देंगे। ये क्लाउड डेटा सेंटर दुनिया भर में फैले हुए हैं।
![Microsoft क्लाउड डेटा सेंटर](../../../../../translated_images/hi/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.png)
![Microsoft क्लाउड डेटा सेंटर का नियोजित विस्तार](../../../../../translated_images/hi/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.png)
![Microsoft क्लाउड डेटा सेंटर](../../../../../translated_images/hi/azure-region-existing.73f704604f2aa6cb.webp)
![Microsoft क्लाउड डेटा सेंटर का नियोजित विस्तार](../../../../../translated_images/hi/azure-region-planned-expansion.a5074a1e8af74f15.webp)
ये डेटा सेंटर कई वर्ग किलोमीटर के आकार के हो सकते हैं। ऊपर की छवियां कुछ साल पहले एक Microsoft क्लाउड डेटा सेंटर में ली गई थीं, और प्रारंभिक आकार के साथ-साथ नियोजित विस्तार को दिखाती हैं। विस्तार के लिए साफ किया गया क्षेत्र 5 वर्ग किलोमीटर से अधिक है।
@ -108,11 +108,11 @@ Azure के दो अलग-अलग प्रकार के मुफ्
IoT डिवाइस या तो डिवाइस SDK (एक लाइब्रेरी जो सेवा की विशेषताओं के साथ काम करने के लिए कोड प्रदान करती है) का उपयोग करके, या सीधे MQTT या HTTP जैसे संचार प्रोटोकॉल के माध्यम से क्लाउड सेवा से कनेक्ट होते हैं। डिवाइस SDK आमतौर पर सबसे आसान तरीका होता है क्योंकि यह आपके लिए सब कुछ संभालता है, जैसे कि कौन से टॉपिक्स पर प्रकाशित करना है या सब्सक्राइब करना है, और सुरक्षा को कैसे संभालना है।
![डिवाइस डिवाइस SDK का उपयोग करके सेवा से कनेक्ट होते हैं। सर्वर कोड भी SDK के माध्यम से सेवा से कनेक्ट होता है](../../../../../translated_images/hi/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.png)
![डिवाइस डिवाइस SDK का उपयोग करके सेवा से कनेक्ट होते हैं। सर्वर कोड भी SDK के माध्यम से सेवा से कनेक्ट होता है](../../../../../translated_images/hi/iot-service-connectivity.7e873847921a5d6f.webp)
आपका डिवाइस तब आपके एप्लिकेशन के अन्य भागों के साथ इस सेवा के माध्यम से संवाद करता है - उसी तरह जैसे आपने MQTT के माध्यम से टेलीमेट्री भेजी और कमांड प्राप्त किए। यह आमतौर पर सेवा SDK या एक समान लाइब्रेरी का उपयोग करके किया जाता है। संदेश आपके डिवाइस से सेवा तक आते हैं, जहां आपके एप्लिकेशन के अन्य घटक उन्हें पढ़ सकते हैं, और संदेश आपके डिवाइस पर वापस भेजे जा सकते हैं।
![जिन डिवाइसों के पास वैध सीक्रेट की नहीं है, वे IoT सेवा से कनेक्ट नहीं हो सकते](../../../../../translated_images/hi/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.png)
![जिन डिवाइसों के पास वैध सीक्रेट की नहीं है, वे IoT सेवा से कनेक्ट नहीं हो सकते](../../../../../translated_images/hi/iot-service-allowed-denied-connection.818b0063ac213fb8.webp)
ये सेवाएं सुरक्षा को लागू करती हैं, यह जानकर कि कौन से डिवाइस कनेक्ट हो सकते हैं और डेटा भेज सकते हैं, या तो डिवाइस को सेवा के साथ पहले से पंजीकृत करके, या उन्हें सीक्रेट कीज़ या प्रमाणपत्र देकर जो वे पहली बार कनेक्ट होने पर सेवा के साथ खुद को पंजीकृत करने के लिए उपयोग कर सकते हैं। अज्ञात डिवाइस कनेक्ट नहीं हो सकते, यदि वे प्रयास करते हैं तो सेवा कनेक्शन को अस्वीकार कर देती है और उनके द्वारा भेजे गए संदेशों को अनदेखा कर देती है।
@ -124,7 +124,7 @@ IoT डिवाइस या तो डिवाइस SDK (एक लाइब
अब जब आपके पास Azure सदस्यता है, तो आप IoT सेवा के लिए साइन अप कर सकते हैं। Microsoft की IoT सेवा को Azure IoT Hub कहा जाता है।
![Azure IoT Hub लोगो](../../../../../translated_images/hi/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.png)
![Azure IoT Hub लोगो](../../../../../translated_images/hi/azure-iot-hub-logo.28a19de76d0a1932.webp)
नीचे दिया गया वीडियो Azure IoT Hub का संक्षिप्त परिचय देता है:

@ -1,6 +1,6 @@
# अपनी एप्लिकेशन लॉजिक को क्लाउड में माइग्रेट करें
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.jpg)
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-9.dfe99c8e891f48e1.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -28,7 +28,7 @@
सर्वरलेस, या सर्वरलेस कंप्यूटिंग, छोटे कोड ब्लॉक्स बनाने का तरीका है जो विभिन्न प्रकार की घटनाओं के जवाब में क्लाउड में चलते हैं। जब घटना होती है, तो आपका कोड चलता है और घटना के बारे में डेटा प्राप्त करता है। ये घटनाएं कई स्रोतों से हो सकती हैं, जैसे वेब अनुरोध, किसी कतार में डाले गए संदेश, डेटाबेस में डेटा में परिवर्तन, या IoT डिवाइस द्वारा IoT सेवा को भेजे गए संदेश।
![IoT सेवा से सर्वरलेस सेवा तक भेजे जा रहे संदेश, जो एक साथ कई फंक्शन्स द्वारा संसाधित किए जा रहे हैं](../../../../../translated_images/hi/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.png)
![IoT सेवा से सर्वरलेस सेवा तक भेजे जा रहे संदेश, जो एक साथ कई फंक्शन्स द्वारा संसाधित किए जा रहे हैं](../../../../../translated_images/hi/iot-messages-to-serverless.0194da1cc0732bb7.webp)
> 💁 यदि आपने पहले डेटाबेस ट्रिगर्स का उपयोग किया है, तो इसे उसी तरह समझ सकते हैं, जैसे कोड किसी घटना जैसे कि पंक्ति डालने पर ट्रिगर होता है।
@ -54,7 +54,7 @@ IoT डेवलपर के रूप में, सर्वरलेस म
Microsoft का सर्वरलेस कंप्यूटिंग सेवा Azure Functions कहलाती है।
![Azure Functions का लोगो](../../../../../translated_images/hi/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.png)
![Azure Functions का लोगो](../../../../../translated_images/hi/azure-functions-logo.1cfc8e3204c9c44a.webp)
नीचे दिया गया छोटा वीडियो Azure Functions का अवलोकन प्रदान करता है:

@ -1,6 +1,6 @@
# अपने पौधे को सुरक्षित रखें
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.jpg)
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-10.829c86b80b9403bb.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -52,11 +52,11 @@ IoT सुरक्षा का मतलब है यह सुनिश्
जब कोई डिवाइस IoT सेवा से कनेक्ट होता है, तो यह खुद को पहचानने के लिए एक आईडी का उपयोग करता है। समस्या यह है कि इस आईडी को क्लोन किया जा सकता है - एक हैकर एक दुर्भावनापूर्ण डिवाइस सेट कर सकता है जो एक असली डिवाइस की तरह ही आईडी का उपयोग करता है लेकिन गलत डेटा भेजता है।
![सही और दुर्भावनापूर्ण डिवाइस एक ही आईडी का उपयोग करके टेलीमेट्री भेज सकते हैं](../../../../../translated_images/hi/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.png)
![सही और दुर्भावनापूर्ण डिवाइस एक ही आईडी का उपयोग करके टेलीमेट्री भेज सकते हैं](../../../../../translated_images/hi/iot-device-and-hacked-device-connecting.e0671675df74d6d9.webp)
इस समस्या का समाधान यह है कि भेजे जा रहे डेटा को एक गुप्त प्रारूप में बदल दिया जाए, जिसे केवल डिवाइस और क्लाउड ही जानते हों। इस प्रक्रिया को *एन्क्रिप्शन* कहा जाता है, और डेटा को एन्क्रिप्ट करने के लिए उपयोग किए जाने वाले मान को *एन्क्रिप्शन कुंजी* कहा जाता है।
![यदि एन्क्रिप्शन का उपयोग किया जाता है, तो केवल एन्क्रिप्टेड संदेश स्वीकार किए जाएंगे, अन्य अस्वीकार कर दिए जाएंगे](../../../../../translated_images/hi/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.png)
![यदि एन्क्रिप्शन का उपयोग किया जाता है, तो केवल एन्क्रिप्टेड संदेश स्वीकार किए जाएंगे, अन्य अस्वीकार कर दिए जाएंगे](../../../../../translated_images/hi/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f.webp)
क्लाउड सेवा तब डेटा को एक पठनीय प्रारूप में बदल सकती है, जिसे *डिक्रिप्शन* कहा जाता है, और यह प्रक्रिया या तो उसी एन्क्रिप्शन कुंजी या एक *डिक्रिप्शन कुंजी* का उपयोग करके की जाती है। यदि एन्क्रिप्टेड संदेश को कुंजी द्वारा डिक्रिप्ट नहीं किया जा सकता है, तो डिवाइस हैक हो गया है और संदेश अस्वीकार कर दिया जाता है।

@ -1,6 +1,6 @@
# स्थान ट्रैकिंग
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-11.9fddbac4b664c6d5.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -63,13 +63,13 @@ IoT माल परिवहन के तरीके को बदल रह
> 💁 कोई वास्तव में नहीं जानता कि वृत्तों को 360 डिग्री में क्यों विभाजित किया गया। [डिग्री (कोण) पृष्ठ विकिपीडिया पर](https://wikipedia.org/wiki/Degree_(angle)) कुछ संभावित कारणों को कवर करता है।
![अक्षांश रेखाएं: उत्तरी ध्रुव पर 90°, भूमध्य रेखा और दक्षिणी ध्रुव के बीच](../../../../../translated_images/hi/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.png)
![अक्षांश रेखाएं: उत्तरी ध्रुव पर 90°, भूमध्य रेखा और दक्षिणी ध्रुव के बीच](../../../../../translated_images/hi/latitude-lines.11d8d91dfb2014a5.webp)
अक्षांश को रेखाओं का उपयोग करके मापा जाता है जो पृथ्वी को घेरती हैं और भूमध्य रेखा के समानांतर चलती हैं, उत्तरी और दक्षिणी गोलार्ध को 90° में विभाजित करती हैं। भूमध्य रेखा 0° पर है, उत्तरी ध्रुव 90° पर है, जिसे 90° उत्तर भी कहा जाता है, और दक्षिणी ध्रुव -90° पर है, जिसे 90° दक्षिण भी कहा जाता है।
देशांतर को पूर्व और पश्चिम में मापी गई डिग्री की संख्या के रूप में मापा जाता है। देशांतर का 0° मूल बिंदु *प्राइम मेरिडियन* कहलाता है, जिसे 1884 में परिभाषित किया गया था कि यह एक रेखा है जो उत्तरी ध्रुव से दक्षिणी ध्रुव तक जाती है और [ब्रिटिश रॉयल ऑब्जर्वेटरी, ग्रीनविच, इंग्लैंड](https://wikipedia.org/wiki/Royal_Observatory,_Greenwich) से गुजरती है।
![देशांतर रेखाएं: प्राइम मेरिडियन के पश्चिम में -180°, प्राइम मेरिडियन पर 0°, और प्राइम मेरिडियन के पूर्व में 180°](../../../../../translated_images/hi/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.png)
![देशांतर रेखाएं: प्राइम मेरिडियन के पश्चिम में -180°, प्राइम मेरिडियन पर 0°, और प्राइम मेरिडियन के पूर्व में 180°](../../../../../translated_images/hi/longitude-meridians.ab4ef1c91c064586.webp)
> 🎓 मेरिडियन एक काल्पनिक सीधी रेखा है जो उत्तरी ध्रुव से दक्षिणी ध्रुव तक जाती है, एक अर्धवृत्त बनाती है।
@ -100,7 +100,7 @@ IoT माल परिवहन के तरीके को बदल रह
* अक्षांश 47.6423109 (भूमध्य रेखा के उत्तर में 47.6423109 डिग्री) है।
* देशांतर -122.1390293 (प्राइम मेरिडियन के पश्चिम में 122.1390293 डिग्री) है।
![माइक्रोसॉफ्ट कैंपस 47.6423109,-122.117198 पर](../../../../../translated_images/hi/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.png)
![माइक्रोसॉफ्ट कैंपस 47.6423109,-122.117198 पर](../../../../../translated_images/hi/microsoft-gps-location-world.a321d481b010f6ad.webp)
## ग्लोबल पोजिशनिंग सिस्टम (GPS)
@ -112,7 +112,7 @@ GPS सिस्टम इस प्रकार काम करते है
> 💁 GPS सेंसर को रेडियो तरंगों का पता लगाने के लिए एंटीना की आवश्यकता होती है। ट्रकों और कारों में ऑन-बोर्ड GPS के साथ निर्मित एंटीना को अच्छी सिग्नल प्राप्त करने के लिए रखा जाता है, आमतौर पर विंडशील्ड या छत पर। यदि आप एक अलग GPS सिस्टम का उपयोग कर रहे हैं, जैसे स्मार्टफोन या IoT डिवाइस, तो आपको यह सुनिश्चित करना होगा कि GPS सिस्टम या फोन में निर्मित एंटीना का आकाश का स्पष्ट दृश्य हो, जैसे कि इसे विंडशील्ड पर माउंट करना।
![सेंसर से कई उपग्रहों की दूरी जानकर लोकेशन की गणना की जा सकती है](../../../../../translated_images/hi/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.png)
![सेंसर से कई उपग्रहों की दूरी जानकर लोकेशन की गणना की जा सकती है](../../../../../translated_images/hi/gps-satellites.04acf1148fe25fbf.webp)
GPS उपग्रह पृथ्वी की परिक्रमा कर रहे हैं, सेंसर के ऊपर एक निश्चित बिंदु पर नहीं हैं, इसलिए लोकेशन डेटा में समुद्र तल से ऊंचाई के साथ-साथ अक्षांश और देशांतर भी शामिल होता है।

@ -18,13 +18,13 @@ Grove GPS सेंसर को रास्पबेरी पाई से
GPS सेंसर को कनेक्ट करें।
![एक Grove GPS सेंसर](../../../../../translated_images/hi/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.png)
![एक Grove GPS सेंसर](../../../../../translated_images/hi/grove-gps-sensor.247943bf69b03f0d.webp)
1. Grove केबल का एक सिरा GPS सेंसर के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।
1. रास्पबेरी पाई को बंद करके, Grove केबल का दूसरा सिरा Grove बेस हैट पर **UART** नामक सॉकेट में कनेक्ट करें। यह सॉकेट मध्य पंक्ति में है, SD कार्ड स्लॉट के पास, USB पोर्ट्स और ईथरनेट सॉकेट के विपरीत दिशा में।
![UART सॉकेट से जुड़ा Grove GPS सेंसर](../../../../../translated_images/hi/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.png)
![UART सॉकेट से जुड़ा Grove GPS सेंसर](../../../../../translated_images/hi/pi-gps-sensor.1f99ee2b2f652891.webp)
1. GPS सेंसर को इस तरह से रखें कि जुड़ा हुआ एंटीना आकाश को देख सके - आदर्श रूप से एक खुली खिड़की के पास या बाहर। एंटीना के रास्ते में कुछ भी न होने पर सिग्नल अधिक स्पष्ट रूप से प्राप्त होता है।

@ -38,11 +38,11 @@ GPS सेंसर को CounterFit ऐप में जोड़ें।
1. **Add** बटन चुनें ताकि `/dev/ttyAMA0` पोर्ट पर GPS सेंसर बनाया जा सके।
![GPS सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.png)
![GPS सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-gps-sensor.6385dc9357d85ad1.webp)
GPS सेंसर बनाया जाएगा और सेंसर सूची में दिखाई देगा।
![GPS सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.png)
![GPS सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-gps-sensor.3fbb15af0a536756.webp)
## GPS सेंसर को प्रोग्राम करें
@ -102,17 +102,17 @@ GPS सेंसर ऐप को प्रोग्राम करें।
* **Source** को `Lat/Lon` पर सेट करें, और एक स्पष्ट लैटिट्यूड, लॉन्गिट्यूड और GPS फिक्स प्राप्त करने के लिए उपयोग किए गए सैटेलाइट्स की संख्या सेट करें। यह मान केवल एक बार भेजा जाएगा, इसलिए **Repeat** बॉक्स को चेक करें ताकि डेटा हर सेकंड दोहराया जा सके।
![GPS सेंसर लैट लॉन के साथ चुना गया](../../../../../translated_images/hi/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.png)
![GPS सेंसर लैट लॉन के साथ चुना गया](../../../../../translated_images/hi/counterfit-gps-sensor-latlon.008c867d75464fbe.webp)
* **Source** को `NMEA` पर सेट करें और कुछ NMEA वाक्य टेक्स्ट बॉक्स में जोड़ें। ये सभी मान भेजे जाएंगे, प्रत्येक नए GGA (पोजिशन फिक्स) वाक्य को पढ़ने से पहले 1 सेकंड की देरी होगी।
![GPS सेंसर NMEA वाक्य के साथ सेट किया गया](../../../../../translated_images/hi/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.png)
![GPS सेंसर NMEA वाक्य के साथ सेट किया गया](../../../../../translated_images/hi/counterfit-gps-sensor-nmea.c62eea442171e17e.webp)
आप [nmeagen.org](https://www.nmeagen.org) जैसे टूल का उपयोग करके इन वाक्यों को मैप पर ड्रॉ करके जनरेट कर सकते हैं। ये मान केवल एक बार भेजे जाएंगे, इसलिए **Repeat** बॉक्स को चेक करें ताकि डेटा एक सेकंड बाद फिर से भेजा जा सके।
* **Source** को GPX फ़ाइल पर सेट करें और ट्रैक लोकेशन के साथ एक GPX फ़ाइल अपलोड करें। आप [AllTrails](https://www.alltrails.com/) जैसे लोकप्रिय मैपिंग और हाइकिंग साइट्स से GPX फ़ाइलें डाउनलोड कर सकते हैं। इन फ़ाइलों में एक ट्रेल के रूप में कई GPS लोकेशन होती हैं, और GPS सेंसर प्रत्येक नई लोकेशन को 1 सेकंड के अंतराल पर लौटाएगा।
![GPS सेंसर GPX फ़ाइल के साथ सेट किया गया](../../../../../translated_images/hi/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.png)
![GPS सेंसर GPX फ़ाइल के साथ सेट किया गया](../../../../../translated_images/hi/counterfit-gps-sensor-gpxfile.8310b063ce8a425c.webp)
ये मान केवल एक बार भेजे जाएंगे, इसलिए **Repeat** बॉक्स को चेक करें ताकि डेटा एक सेकंड बाद फिर से भेजा जा सके।

@ -18,7 +18,7 @@ Grove GPS सेंसर को Wio Terminal से जोड़ा जा स
GPS सेंसर को कनेक्ट करें।
![एक Grove GPS सेंसर](../../../../../translated_images/hi/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.png)
![एक Grove GPS सेंसर](../../../../../translated_images/hi/grove-gps-sensor.247943bf69b03f0d.webp)
1. Grove केबल का एक सिरा GPS सेंसर के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।

@ -1,6 +1,6 @@
# स्टोर लोकेशन डेटा
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-12.ca7f53039712a3ec.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -75,7 +75,7 @@ NoSQL डेटाबेस को NoSQL कहा जाता है क्य
> 💁 उनके नाम के बावजूद, कुछ NoSQL डेटाबेस आपको SQL का उपयोग करके डेटा क्वेरी करने की अनुमति देते हैं।
![NoSQL डेटाबेस में फोल्डरों में डॉक्यूमेंट](../../../../../translated_images/hi/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.png)
![NoSQL डेटाबेस में फोल्डरों में डॉक्यूमेंट](../../../../../translated_images/hi/noqsl-database.62d24ccf5b73f60d.webp)
NoSQL डेटाबेस में पहले से परिभाषित स्कीमा नहीं होता जो डेटा को स्टोर करने के तरीके को सीमित करता है। इसके बजाय, आप किसी भी असंरचित डेटा को डाल सकते हैं, आमतौर पर JSON डॉक्यूमेंट का उपयोग करके। इन डॉक्यूमेंट को फोल्डरों में व्यवस्थित किया जा सकता है, जैसे आपके कंप्यूटर पर फाइलें। प्रत्येक डॉक्यूमेंट में अन्य डॉक्यूमेंट से अलग फील्ड हो सकते हैं - उदाहरण के लिए, यदि आप अपने खेत के वाहनों से IoT डेटा स्टोर कर रहे हैं, तो कुछ में एक्सेलेरोमीटर और गति डेटा के लिए फील्ड हो सकते हैं, जबकि अन्य में ट्रेलर के तापमान के लिए फील्ड हो सकते हैं। यदि आप एक नए ट्रक प्रकार को जोड़ते हैं, जैसे कि ऐसा ट्रक जिसमें उत्पाद के वजन को ट्रैक करने के लिए बिल्ट-इन स्केल हो, तो आपका IoT डिवाइस इस नए फील्ड को जोड़ सकता है और इसे डेटाबेस में बिना किसी बदलाव के स्टोर किया जा सकता है।
@ -89,7 +89,7 @@ NoSQL डेटाबेस में पहले से परिभाषि
पिछले पाठ में आपने अपने IoT डिवाइस से जुड़े GPS सेंसर से GPS डेटा कैप्चर किया। इस IoT डेटा को क्लाउड में स्टोर करने के लिए, आपको इसे IoT सेवा पर भेजना होगा। एक बार फिर, आप Azure IoT Hub का उपयोग करेंगे, वही IoT क्लाउड सेवा जिसे आपने पिछले प्रोजेक्ट में उपयोग किया था।
![IoT डिवाइस से IoT हब तक GPS टेलीमेट्री भेजना](../../../../../translated_images/hi/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.png)
![IoT डिवाइस से IoT हब तक GPS टेलीमेट्री भेजना](../../../../../translated_images/hi/gps-telemetry-iot-hub.8115335d51cd2c12.webp)
### कार्य - GPS डेटा को IoT हब पर भेजें
@ -171,7 +171,7 @@ IoT डिवाइस से क्लाउड तक प्रवाहित
एक बार जब डेटा आपके IoT हब में प्रवाहित हो रहा हो, तो आप कुछ सर्वरलेस कोड लिख सकते हैं जो इवेंट-हब संगत एंडपॉइंट पर प्रकाशित इवेंट्स को सुनता है। यह वॉर्म पाथ है - इस डेटा को स्टोर किया जाएगा और अगले पाठ में यात्रा की रिपोर्टिंग के लिए उपयोग किया जाएगा।
![IoT डिवाइस से IoT हब तक GPS टेलीमेट्री भेजना, फिर इवेंट हब ट्रिगर के माध्यम से Azure Functions तक](../../../../../translated_images/hi/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.png)
![IoT डिवाइस से IoT हब तक GPS टेलीमेट्री भेजना, फिर इवेंट हब ट्रिगर के माध्यम से Azure Functions तक](../../../../../translated_images/hi/gps-telemetry-iot-hub-functions.24d3fa5592455e9f.webp)
### कार्य - GPS इवेंट्स को सर्वरलेस कोड का उपयोग करके हैंडल करें
@ -193,7 +193,7 @@ IoT डिवाइस से क्लाउड तक प्रवाहित
## Azure स्टोरेज अकाउंट्स
![Azure स्टोरेज लोगो](../../../../../translated_images/hi/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.png)
![Azure स्टोरेज लोगो](../../../../../translated_images/hi/azure-storage-logo.605c0f602c640d48.webp)
Azure स्टोरेज अकाउंट्स एक सामान्य उद्देश्य स्टोरेज सेवा है जो विभिन्न तरीकों से डेटा संग्रहीत कर सकती है। आप डेटा को ब्लॉब्स, कतारों, तालिकाओं, या फ़ाइलों के रूप में संग्रहीत कर सकते हैं, और यह सब एक साथ कर सकते हैं।

@ -1,6 +1,6 @@
# स्थान डेटा का विज़ुअलाइज़ेशन
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-13.a259db1485021be7.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -64,11 +64,11 @@
एक इंसान के लिए इस डेटा को समझना मुश्किल हो सकता है। यह केवल संख्याओं की एक दीवार है जिसमें कोई अर्थ नहीं है। इस डेटा को विज़ुअलाइज़ करने के पहले चरण के रूप में, इसे एक लाइन चार्ट पर प्लॉट किया जा सकता है:
![उपरोक्त डेटा का एक लाइन चार्ट](../../../../../translated_images/hi/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.png)
![उपरोक्त डेटा का एक लाइन चार्ट](../../../../../translated_images/hi/chart-soil-moisture.fd6d9d0cdc0b5f75.webp)
इसे और बेहतर बनाने के लिए एक रेखा जोड़ी जा सकती है जो यह दिखाती है कि स्वचालित सिंचाई प्रणाली कब मिट्टी की नमी के स्तर 450 पर चालू हुई:
![मिट्टी की नमी का चार्ट जिसमें 450 पर एक रेखा है](../../../../../translated_images/hi/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.png)
![मिट्टी की नमी का चार्ट जिसमें 450 पर एक रेखा है](../../../../../translated_images/hi/chart-soil-moisture-relay.fbb391236d34a64d.webp)
यह चार्ट बहुत जल्दी दिखाता है कि मिट्टी की नमी का स्तर क्या था और सिंचाई प्रणाली कब चालू हुई।
@ -84,7 +84,7 @@ GPS डेटा के साथ काम करते समय, सबसे
मानचित्रों के साथ काम करना एक दिलचस्प अभ्यास है, और चुनने के लिए कई विकल्प हैं जैसे Bing Maps, Leaflet, Open Street Maps, और Google Maps। इस पाठ में, आप [Azure Maps](https://azure.microsoft.com/services/azure-maps/?WT.mc_id=academic-17441-jabenn) और उनके माध्यम से अपने GPS डेटा को प्रदर्शित करने के बारे में जानेंगे।
![Azure Maps का लोगो](../../../../../translated_images/hi/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.png)
![Azure Maps का लोगो](../../../../../translated_images/hi/azure-maps-logo.35d01dcfbd81fe61.webp)
Azure Maps "भौगोलिक सेवाओं और SDKs का एक संग्रह है जो ताज़ा मानचित्र डेटा का उपयोग करके वेब और मोबाइल अनुप्रयोगों को भौगोलिक संदर्भ प्रदान करता है।" डेवलपर्स को सुंदर, इंटरैक्टिव मानचित्र बनाने के लिए उपकरण प्रदान किए जाते हैं जो ट्रैफ़िक मार्गों की सिफारिश करने, ट्रैफ़िक घटनाओं की जानकारी देने, इनडोर नेविगेशन, खोज क्षमताओं, ऊंचाई की जानकारी, मौसम सेवाओं और बहुत कुछ करने में सक्षम होते हैं।
@ -185,7 +185,7 @@ Azure Maps "भौगोलिक सेवाओं और SDKs का एक
यदि आप अपने `index.html` पेज को वेब ब्राउज़र में खोलते हैं, तो आपको एक मानचित्र लोड होता हुआ दिखाई देगा, जो सिएटल क्षेत्र पर केंद्रित है।
![सिएटल, वाशिंगटन राज्य, यूएसए का मानचित्र](../../../../../translated_images/hi/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.png)
![सिएटल, वाशिंगटन राज्य, यूएसए का मानचित्र](../../../../../translated_images/hi/map-image.8fb2c53eb23ef39c.webp)
✅ अपने मानचित्र प्रदर्शन को बदलने के लिए ज़ूम और केंद्र पैरामीटर के साथ प्रयोग करें। आप अपने डेटा के अक्षांश और देशांतर के अनुरूप विभिन्न निर्देशांक जोड़ सकते हैं ताकि मानचित्र को पुनः केंद्रित किया जा सके।
@ -319,7 +319,7 @@ Azure Maps "भौगोलिक सेवाओं और SDKs का एक
1. HTML पेज को अपने ब्राउज़र में लोड करें। यह मानचित्र लोड करेगा, फिर स्टोरेज से सभी GPS डेटा लोड करेगा और इसे मानचित्र पर प्रदर्शित करेगा।
![सिएटल के पास सेंट एडवर्ड स्टेट पार्क का एक मानचित्र, जिसमें पार्क के किनारे के चारों ओर एक पथ दिखाने वाले सर्कल हैं](../../../../../translated_images/hi/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.png)
![सिएटल के पास सेंट एडवर्ड स्टेट पार्क का एक मानचित्र, जिसमें पार्क के किनारे के चारों ओर एक पथ दिखाने वाले सर्कल हैं](../../../../../translated_images/hi/map-path.896832e72dc696ff.webp)
> 💁 आप इस कोड को [code](../../../../../3-transport/lessons/3-visualize-location-data/code) फ़ोल्डर में पा सकते हैं।

@ -1,6 +1,6 @@
# जियोफेंस
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-14.63980c5150ae3c15.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -35,7 +35,7 @@
जियोफेंस वास्तविक दुनिया के भौगोलिक क्षेत्र के लिए एक आभासी परिधि है। जियोफेंस सर्कल हो सकते हैं, जो एक बिंदु और त्रिज्या के रूप में परिभाषित होते हैं (उदाहरण के लिए, किसी इमारत के चारों ओर 100 मीटर चौड़ा सर्कल), या एक बहुभुज जो किसी क्षेत्र को कवर करता है, जैसे स्कूल ज़ोन, शहर की सीमाएँ, या विश्वविद्यालय या कार्यालय परिसर।
![Microsoft कंपनी स्टोर के चारों ओर एक सर्कुलर जियोफेंस और Microsoft वेस्ट कैंपस के चारों ओर एक बहुभुज जियोफेंस के कुछ उदाहरण](../../../../../translated_images/hi/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.png)
![Microsoft कंपनी स्टोर के चारों ओर एक सर्कुलर जियोफेंस और Microsoft वेस्ट कैंपस के चारों ओर एक बहुभुज जियोफेंस के कुछ उदाहरण](../../../../../translated_images/hi/geofence-examples.172fbc534665769f.webp)
> 💁 आपने पहले से ही जियोफेंस का उपयोग किया हो सकता है, बिना इसे जाने। यदि आपने iOS रिमाइंडर्स ऐप या Google Keep में किसी स्थान के आधार पर रिमाइंडर सेट किया है, तो आपने जियोफेंस का उपयोग किया है। ये ऐप्स दिए गए स्थान के आधार पर जियोफेंस सेट करेंगे और जब आपका फोन जियोफेंस में प्रवेश करेगा तो आपको अलर्ट करेंगे।
@ -212,7 +212,7 @@ API कॉल से परिणाम लौटाए जाने पर, प
उदाहरण के लिए, कल्पना करें कि GPS रीडिंग दिखाती है कि एक वाहन एक सड़क पर चल रहा था जो अंततः जियोफेंस के पास जाती है। यदि एक GPS मान गलत है और वाहन को जियोफेंस के अंदर रखता है, जबकि वहां कोई वाहन पहुंच नहीं है, तो इसे अनदेखा किया जा सकता है।
![GPS ट्रेल दिखा रहा है कि एक वाहन Microsoft कैंपस के पास 520 पर गुजर रहा है, जिसमें सड़क के साथ GPS रीडिंग हैं, सिवाय एक के जो कैंपस पर है, जियोफेंस के अंदर](../../../../../translated_images/hi/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.png)
![GPS ट्रेल दिखा रहा है कि एक वाहन Microsoft कैंपस के पास 520 पर गुजर रहा है, जिसमें सड़क के साथ GPS रीडिंग हैं, सिवाय एक के जो कैंपस पर है, जियोफेंस के अंदर](../../../../../translated_images/hi/geofence-crossing-inaccurate-gps.6a3ed911202ad9ca.webp)
ऊपर दी गई छवि में, Microsoft कैंपस के एक हिस्से पर एक जियोफेंस है। लाल रेखा एक ट्रक को 520 के साथ चलते हुए दिखाती है, जिसमें GPS रीडिंग्स को दिखाने के लिए वृत्त हैं। इनमें से अधिकांश सटीक हैं और 520 के साथ हैं, लेकिन एक गलत रीडिंग जियोफेंस के अंदर है। यह रीडिंग सही नहीं हो सकती - ट्रक के लिए 520 से अचानक कैंपस में मुड़ने और फिर वापस 520 पर जाने का कोई रास्ता नहीं है। जियोफेंस की जांच करने वाला कोड परिणामों पर कार्रवाई करने से पहले पिछली रीडिंग्स को ध्यान में रखना होगा।
✅ GPS रीडिंग को सही मानने के लिए आपको कौन सा अतिरिक्त डेटा जांचने की आवश्यकता होगी?
@ -284,7 +284,7 @@ API कॉल से परिणाम लौटाए जाने पर, प
उत्तर है कि यह नहीं जान सकता! इसके बजाय आप इवेंट्स को पढ़ने के लिए कई अलग-अलग कनेक्शन परिभाषित कर सकते हैं, और प्रत्येक अप्रयुक्त संदेशों के पुन:प्ले का प्रबंधन कर सकता है। इन्हें *कंज्यूमर ग्रुप्स* कहा जाता है। जब आप एंडपॉइंट से कनेक्ट करते हैं, तो आप निर्दिष्ट कर सकते हैं कि आप किस कंज्यूमर ग्रुप से कनेक्ट करना चाहते हैं। आपके एप्लिकेशन का प्रत्येक घटक एक अलग कंज्यूमर ग्रुप से कनेक्ट होगा।
![एक IoT Hub जिसमें 3 कंज्यूमर ग्रुप्स एक ही संदेशों को 3 अलग-अलग Functions ऐप्स में वितरित कर रहे हैं](../../../../../translated_images/hi/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.png)
![एक IoT Hub जिसमें 3 कंज्यूमर ग्रुप्स एक ही संदेशों को 3 अलग-अलग Functions ऐप्स में वितरित कर रहे हैं](../../../../../translated_images/hi/consumer-groups.a3262e26fc27ba20.webp)
सिद्धांत रूप में प्रत्येक कंज्यूमर ग्रुप से 5 एप्लिकेशन तक कनेक्ट हो सकते हैं, और वे सभी संदेश प्राप्त करेंगे जब वे आएंगे। यह सुनिश्चित करने के लिए कि सभी कतारबद्ध संदेश सही ढंग से संसाधित किए गए हैं, प्रत्येक कंज्यूमर ग्रुप तक केवल एक एप्लिकेशन की पहुंच होना सबसे अच्छा अभ्यास है। उदाहरण के लिए, यदि आपने अपने Functions ऐप को लोकली लॉन्च किया और इसे क्लाउड में भी चलाया, तो वे दोनों संदेशों को संसाधित करेंगे, जिससे स्टोरेज अकाउंट में डुप्लिकेट ब्लॉब्स संग्रहीत होंगे।

@ -1,6 +1,6 @@
# फल गुणवत्ता डिटेक्टर को प्रशिक्षित करें
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-15.843d21afdc6fb2bb.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़ी छवि देखने के लिए क्लिक करें।
@ -38,7 +38,7 @@
स्वचालित कटाई के उदय ने उत्पादों की छंटाई को कटाई से फैक्ट्री तक स्थानांतरित कर दिया। भोजन लंबी कन्वेयर बेल्ट पर यात्रा करता था, जहां लोगों की टीमें उत्पादों को छांटती थीं और जो गुणवत्ता मानकों पर खरा नहीं उतरता था उसे हटा देती थीं। मशीनरी के कारण कटाई सस्ती हो गई, लेकिन भोजन को मैन्युअल रूप से छांटने की लागत अभी भी बनी रही।
![यदि एक लाल टमाटर का पता चलता है तो वह बिना रुके अपनी यात्रा जारी रखता है। यदि एक हरे टमाटर का पता चलता है तो उसे एक लीवर द्वारा कचरे के डिब्बे में फेंक दिया जाता है](../../../../../translated_images/hi/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.png)
![यदि एक लाल टमाटर का पता चलता है तो वह बिना रुके अपनी यात्रा जारी रखता है। यदि एक हरे टमाटर का पता चलता है तो उसे एक लीवर द्वारा कचरे के डिब्बे में फेंक दिया जाता है](../../../../../translated_images/hi/optical-tomato-sorting.61aa134bdda4e5b1.webp)
अगला विकास मशीनों का उपयोग करके छंटाई करना था, या तो हार्वेस्टर में निर्मित, या प्रसंस्करण संयंत्रों में। इन मशीनों की पहली पीढ़ी ने रंगों का पता लगाने के लिए ऑप्टिकल सेंसर का उपयोग किया, जो लीवर या हवा के झोंकों का उपयोग करके हरे टमाटरों को कचरे के डिब्बे में धकेलते थे, और लाल टमाटरों को कन्वेयर बेल्ट के नेटवर्क पर जारी रखते थे।
@ -62,7 +62,7 @@
> 🎓 ML मॉडल के परिणामों को *भविष्यवाणियां* कहा जाता है।
![2 केले, एक पका हुआ जिसमें 99.7% पका और 0.3% अधपका की भविष्यवाणी है, और एक अधपका जिसमें 1.4% पका और 98.6% अधपका की भविष्यवाणी है](../../../../../translated_images/hi/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.png)
![2 केले, एक पका हुआ जिसमें 99.7% पका और 0.3% अधपका की भविष्यवाणी है, और एक अधपका जिसमें 1.4% पका और 98.6% अधपका की भविष्यवाणी है](../../../../../translated_images/hi/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50e.webp)
ML मॉडल एक बाइनरी उत्तर नहीं देते, बल्कि संभावनाएं देते हैं। उदाहरण के लिए, एक मॉडल को एक केले की तस्वीर दी जा सकती है और यह `पका` को 99.7% और `अधपका` को 0.3% भविष्यवाणी कर सकता है। आपका कोड सबसे अच्छी भविष्यवाणी को चुनता है और तय करता है कि केला पका है।
@ -90,7 +90,7 @@ ML मॉडल एक बाइनरी उत्तर नहीं देत
Custom Vision एक क्लाउड-आधारित उपकरण है जो छवि वर्गीकरणकर्ताओं को प्रशिक्षित करता है। यह आपको केवल कुछ छवियों का उपयोग करके एक वर्गीकरणकर्ता को प्रशिक्षित करने की अनुमति देता है। आप छवियों को वेब पोर्टल, वेब API या SDK के माध्यम से अपलोड कर सकते हैं, प्रत्येक छवि को एक *टैग* दे सकते हैं जो उस छवि का वर्गीकरण है। फिर आप मॉडल को प्रशिक्षित करते हैं और यह देखने के लिए परीक्षण करते हैं कि यह कितना अच्छा प्रदर्शन करता है। एक बार जब आप मॉडल से संतुष्ट हो जाते हैं, तो आप इसके संस्करण प्रकाशित कर सकते हैं जिन्हें वेब API या SDK के माध्यम से एक्सेस किया जा सकता है।
![Azure Custom Vision लोगो](../../../../../translated_images/hi/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.png)
![Azure Custom Vision लोगो](../../../../../translated_images/hi/custom-vision-logo.d3d4e7c8a87ec9da.webp)
> 💁 आप केवल 5 छवियों प्रति वर्गीकरण के साथ एक कस्टम विजन मॉडल को प्रशिक्षित कर सकते हैं, लेकिन अधिक बेहतर है। कम से कम 30 छवियों के साथ आपको बेहतर परिणाम मिल सकते हैं।
@ -146,7 +146,7 @@ Custom Vision का उपयोग करने के लिए, आपको
जब आप अपना प्रोजेक्ट बनाते हैं, तो सुनिश्चित करें कि आप पहले बनाए गए `fruit-quality-detector-training` संसाधन का उपयोग कर रहे हैं। *Classification* प्रोजेक्ट प्रकार, *Multiclass* वर्गीकरण प्रकार, और *Food* डोमेन का उपयोग करें।
![Custom Vision प्रोजेक्ट के लिए सेटिंग्स, नाम `fruit-quality-detector`, कोई विवरण नहीं, संसाधन `fruit-quality-detector-training`, प्रोजेक्ट प्रकार `classification`, वर्गीकरण प्रकार `multi class`, और डोमेन `food`](../../../../../translated_images/hi/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.png)
![Custom Vision प्रोजेक्ट के लिए सेटिंग्स, नाम `fruit-quality-detector`, कोई विवरण नहीं, संसाधन `fruit-quality-detector-training`, प्रोजेक्ट प्रकार `classification`, वर्गीकरण प्रकार `multi class`, और डोमेन `food`](../../../../../translated_images/hi/custom-vision-create-project.cf46325b92d8b131.webp)
✅ अपने छवि वर्गीकरणकर्ता के लिए Custom Vision UI का अन्वेषण करने के लिए कुछ समय लें।
@ -164,7 +164,7 @@ Custom Vision का उपयोग करने के लिए, आपको
* 2 पके केले का उपयोग करते हुए, प्रत्येक का कुछ अलग-अलग कोणों से तस्वीरें लें, कम से कम 7 तस्वीरें (5 प्रशिक्षण के लिए, 2 परीक्षण के लिए), लेकिन आदर्श रूप से अधिक।
![2 अलग-अलग केले की तस्वीरें](../../../../../translated_images/hi/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.png)
![2 अलग-अलग केले की तस्वीरें](../../../../../translated_images/hi/banana-training-images.530eb203346d73bc.webp)
* यही प्रक्रिया 2 कच्चे केले के साथ दोहराएं।
@ -174,7 +174,7 @@ Custom Vision का उपयोग करने के लिए, आपको
1. [Microsoft Docs पर क्लासिफायर क्विकस्टार्ट के "तस्वीरें अपलोड और टैग करें" अनुभाग](https://docs.microsoft.com/azure/cognitive-services/custom-vision-service/getting-started-build-a-classifier?WT.mc_id=academic-17441-jabenn#upload-and-tag-images) का अनुसरण करें और अपनी प्रशिक्षण तस्वीरें अपलोड करें। पके फल को `ripe` और कच्चे फल को `unripe` के रूप में टैग करें।
![पके और कच्चे केले की तस्वीरें अपलोड करने वाले डायलॉग](../../../../../translated_images/hi/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.png)
![पके और कच्चे केले की तस्वीरें अपलोड करने वाले डायलॉग](../../../../../translated_images/hi/image-upload-bananas.0751639f3815e0ec.webp)
1. [Microsoft Docs पर क्लासिफायर क्विकस्टार्ट के "क्लासिफायर को प्रशिक्षित करें" अनुभाग](https://docs.microsoft.com/azure/cognitive-services/custom-vision-service/getting-started-build-a-classifier?WT.mc_id=academic-17441-jabenn#train-the-classifier) का अनुसरण करें और अपनी अपलोड की गई तस्वीरों पर इमेज क्लासिफायर को प्रशिक्षित करें।
@ -192,7 +192,7 @@ Custom Vision का उपयोग करने के लिए, आपको
1. [Microsoft Docs पर "अपने मॉडल का परीक्षण करें" दस्तावेज़](https://docs.microsoft.com/azure/cognitive-services/custom-vision-service/test-your-model?WT.mc_id=academic-17441-jabenn#test-your-model) का अनुसरण करें और अपने इमेज क्लासिफायर का परीक्षण करें। उन परीक्षण तस्वीरों का उपयोग करें जो आपने पहले बनाई थीं, न कि वे तस्वीरें जो आपने प्रशिक्षण के लिए उपयोग की थीं।
![एक कच्चे केले को 98.9% संभावना के साथ कच्चा और 1.1% संभावना के साथ पका हुआ वर्गीकृत किया गया](../../../../../translated_images/hi/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.png)
![एक कच्चे केले को 98.9% संभावना के साथ कच्चा और 1.1% संभावना के साथ पका हुआ वर्गीकृत किया गया](../../../../../translated_images/hi/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64.webp)
1. आपके पास उपलब्ध सभी परीक्षण तस्वीरों को आज़माएं और संभावनाओं का निरीक्षण करें।

@ -1,6 +1,6 @@
# IoT डिवाइस से फलों की गुणवत्ता जांचें
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-16.215daf18b00631fb.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़ी छवि देखने के लिए क्लिक करें।
@ -26,7 +26,7 @@
कैमरा सेंसर, जैसा कि नाम से पता चलता है, ऐसे कैमरे हैं जिन्हें आप अपने IoT डिवाइस से कनेक्ट कर सकते हैं। ये स्थिर छवियां ले सकते हैं या स्ट्रीमिंग वीडियो कैप्चर कर सकते हैं। कुछ कच्चे इमेज डेटा लौटाते हैं, जबकि अन्य इमेज डेटा को JPEG या PNG जैसे इमेज फाइल में संपीड़ित करते हैं। आमतौर पर IoT डिवाइस के साथ काम करने वाले कैमरे छोटे और कम रिज़ॉल्यूशन वाले होते हैं, लेकिन आप उच्च रिज़ॉल्यूशन वाले कैमरे प्राप्त कर सकते हैं जो उच्च गुणवत्ता वाले फोन के बराबर होते हैं। आप विभिन्न प्रकार के इंटरचेंजेबल लेंस, मल्टीपल कैमरा सेटअप, इंफ्रारेड थर्मल कैमरे, या UV कैमरे प्राप्त कर सकते हैं।
![एक दृश्य से प्रकाश लेंस के माध्यम से गुजरता है और CMOS सेंसर पर केंद्रित होता है](../../../../../translated_images/hi/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.png)
![एक दृश्य से प्रकाश लेंस के माध्यम से गुजरता है और CMOS सेंसर पर केंद्रित होता है](../../../../../translated_images/hi/cmos-sensor.75f9cd74decb1371.webp)
अधिकांश कैमरा सेंसर इमेज सेंसर का उपयोग करते हैं जहां प्रत्येक पिक्सेल एक फोटो डायोड होता है। एक लेंस छवि को इमेज सेंसर पर केंद्रित करता है, और हजारों या लाखों फोटो डायोड प्रत्येक पर पड़ने वाले प्रकाश का पता लगाते हैं और इसे पिक्सेल डेटा के रूप में रिकॉर्ड करते हैं।
@ -74,7 +74,7 @@
1. पुनरावृत्ति के लिए **Publish** बटन का चयन करें।
![पब्लिश बटन](../../../../../translated_images/hi/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.png)
![पब्लिश बटन](../../../../../translated_images/hi/custom-vision-publish-button.b7174e1977b0c33b.webp)
1. *Publish Model* डायलॉग में, *Prediction resource* को उस `fruit-quality-detector-prediction` संसाधन पर सेट करें जिसे आपने पिछले पाठ में बनाया था। नाम को `Iteration2` के रूप में छोड़ दें और **Publish** बटन का चयन करें।
@ -88,7 +88,7 @@
*Prediction-Key* मान की भी एक प्रति लें। यह एक सुरक्षित कुंजी है जिसे आपको मॉडल को कॉल करते समय पास करना होगा। केवल वे एप्लिकेशन जो इस कुंजी को पास करते हैं, मॉडल का उपयोग करने की अनुमति प्राप्त करते हैं, अन्य सभी एप्लिकेशन अस्वीकार कर दिए जाते हैं।
![भविष्यवाणी API डायलॉग जिसमें URL और कुंजी दिख रही है](../../../../../translated_images/hi/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.png)
![भविष्यवाणी API डायलॉग जिसमें URL और कुंजी दिख रही है](../../../../../translated_images/hi/custom-vision-prediction-key-endpoint.30c569ffd0338864.webp)
✅ जब एक नई पुनरावृत्ति प्रकाशित होती है, तो इसका नाम अलग होता है। आप कैसे सोचते हैं कि आप IoT डिवाइस द्वारा उपयोग की जा रही पुनरावृत्ति को बदलेंगे?
@ -109,7 +109,7 @@
एक इमेज क्लासिफायर के लिए सर्वोत्तम परिणाम प्राप्त करने के लिए, आप चाहते हैं कि मॉडल को उन छवियों के साथ प्रशिक्षित किया जाए जो भविष्यवाणियों के लिए उपयोग की जाने वाली छवियों के जितना संभव हो उतना समान हों। उदाहरण के लिए, यदि आपने प्रशिक्षण के लिए अपने फोन कैमरे का उपयोग करके छवियां कैप्चर की हैं, तो छवि गुणवत्ता, तीक्ष्णता, और रंग IoT डिवाइस से जुड़े कैमरे से अलग होंगे।
![2 केले की तस्वीरें, एक IoT डिवाइस से खराब रोशनी और कम रिज़ॉल्यूशन वाली, और दूसरी फोन से अच्छी रोशनी और उच्च रिज़ॉल्यूशन वाली](../../../../../translated_images/hi/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.png)
![2 केले की तस्वीरें, एक IoT डिवाइस से खराब रोशनी और कम रिज़ॉल्यूशन वाली, और दूसरी फोन से अच्छी रोशनी और उच्च रिज़ॉल्यूशन वाली](../../../../../translated_images/hi/banana-picture-compare.174df164dc326a42.webp)
ऊपर दी गई छवि में, बाईं ओर का केला चित्र Raspberry Pi कैमरे का उपयोग करके लिया गया था, और दाईं ओर का चित्र उसी केले का उसी स्थान पर iPhone का उपयोग करके लिया गया था। गुणवत्ता में एक स्पष्ट अंतर है - iPhone चित्र अधिक तीक्ष्ण है, उज्जवल रंगों और अधिक कंट्रास्ट के साथ।

@ -16,7 +16,7 @@
### कार्य - कैमरा कनेक्ट करें
![रास्पबेरी पाई कैमरा](../../../../../translated_images/hi/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.png)
![रास्पबेरी पाई कैमरा](../../../../../translated_images/hi/pi-camera-module.4278753c31bd6e75.webp)
1. पाई को बंद करें।
@ -24,17 +24,17 @@
आप [रास्पबेरी पाई गेटिंग स्टार्टेड विद कैमरा मॉड्यूल डाक्यूमेंटेशन](https://projects.raspberrypi.org/en/projects/getting-started-with-picamera/2) पर क्लिप खोलने और केबल डालने का एक एनीमेशन देख सकते हैं।
![कैमरा मॉड्यूल में डाली गई रिबन केबल](../../../../../translated_images/hi/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.png)
![कैमरा मॉड्यूल में डाली गई रिबन केबल](../../../../../translated_images/hi/pi-camera-ribbon-cable.0bf82acd251611c2.webp)
1. पाई से ग्रोव बेस हैट को हटा दें।
1. रिबन केबल को ग्रोव बेस हैट के कैमरा स्लॉट से पास करें। सुनिश्चित करें कि केबल की नीली साइड एनालॉग पोर्ट्स **A0**, **A1** आदि की ओर हो।
![ग्रोव बेस हैट से गुजरती रिबन केबल](../../../../../translated_images/hi/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.png)
![ग्रोव बेस हैट से गुजरती रिबन केबल](../../../../../translated_images/hi/grove-base-hat-ribbon-cable.501fed202fcf73b1.webp)
1. रिबन केबल को पाई के कैमरा पोर्ट में डालें। फिर से, काले प्लास्टिक की क्लिप को ऊपर खींचें, केबल डालें, और फिर क्लिप को वापस धकेलें। केबल की नीली साइड USB और ईथरनेट पोर्ट्स की ओर होनी चाहिए।
![पाई के कैमरा सॉकेट में जुड़ी रिबन केबल](../../../../../translated_images/hi/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.png)
![पाई के कैमरा सॉकेट में जुड़ी रिबन केबल](../../../../../translated_images/hi/pi-camera-socket-ribbon-cable.a18309920b118009.webp)
1. ग्रोव बेस हैट को फिर से फिट करें।
@ -101,7 +101,7 @@
`camera.rotation = 0` लाइन इमेज की रोटेशन सेट करती है। रिबन केबल कैमरे के नीचे से आती है, लेकिन यदि आपका कैमरा उस वस्तु की ओर आसानी से इंगित करने के लिए घुमाया गया है जिसे आप क्लासिफाई करना चाहते हैं, तो आप इस लाइन को रोटेशन के डिग्री के अनुसार बदल सकते हैं।
![ड्रिंक कैन के ऊपर लटका कैमरा](../../../../../translated_images/hi/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.png)
![ड्रिंक कैन के ऊपर लटका कैमरा](../../../../../translated_images/hi/pi-camera-upside-down.5376961ba3145988.webp)
उदाहरण के लिए, यदि आप रिबन केबल को किसी वस्तु के ऊपर लटकाते हैं ताकि वह कैमरे के शीर्ष पर हो, तो रोटेशन को 180 पर सेट करें:

@ -84,7 +84,7 @@
आप देख पाएंगे कि ली गई छवि और ये मान **Predictions** टैब में कस्टम विजन में दिखाई देंगे।
![कस्टम विजन में एक केला, 56.8% पर पका हुआ और 43.1% पर कच्चा भविष्यवाणी की गई](../../../../../translated_images/hi/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.png)
![कस्टम विजन में एक केला, 56.8% पर पका हुआ और 43.1% पर कच्चा भविष्यवाणी की गई](../../../../../translated_images/hi/custom-vision-banana-prediction.30cdff4e1d72db5d.webp)
> 💁 आप इस कोड को [code-classify/pi](../../../../../4-manufacturing/lessons/2-check-fruit-from-device/code-classify/pi) या [code-classify/virtual-iot-device](../../../../../4-manufacturing/lessons/2-check-fruit-from-device/code-classify/virtual-iot-device) फ़ोल्डर में पा सकते हैं।

@ -34,11 +34,11 @@ CounterFit ऐप में कैमरा जोड़ें।
1. कैमरा बनाने के लिए **Add** बटन चुनें।
![कैमरा सेटिंग्स](../../../../../translated_images/hi/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.png)
![कैमरा सेटिंग्स](../../../../../translated_images/hi/counterfit-create-camera.a5de97f59c0bd3cb.webp)
कैमरा बनाया जाएगा और सेंसर सूची में दिखाई देगा।
![कैमरा बनाया गया](../../../../../translated_images/hi/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.png)
![कैमरा बनाया गया](../../../../../translated_images/hi/counterfit-camera.001ec52194c8ee5d.webp)
## कैमरा प्रोग्राम करें
@ -103,7 +103,7 @@ CounterFit ऐप में कैमरा जोड़ें।
1. उस छवि को कॉन्फ़िगर करें जिसे CounterFit में कैमरा कैप्चर करेगा। आप या तो *Source* को *File* पर सेट कर सकते हैं, फिर एक छवि फाइल अपलोड करें, या *Source* को *WebCam* पर सेट कर सकते हैं, और छवियां आपके वेबकैम से कैप्चर की जाएंगी। सुनिश्चित करें कि आपने एक तस्वीर चुनने या अपने वेबकैम का चयन करने के बाद **Set** बटन चुना है।
![CounterFit में एक फाइल को इमेज स्रोत के रूप में सेट किया गया है, और एक वेबकैम सेट किया गया है जिसमें एक व्यक्ति को केले के साथ दिखाया गया है](../../../../../translated_images/hi/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.png)
![CounterFit में एक फाइल को इमेज स्रोत के रूप में सेट किया गया है, और एक वेबकैम सेट किया गया है जिसमें एक व्यक्ति को केले के साथ दिखाया गया है](../../../../../translated_images/hi/counterfit-camera-options.eb3bd5150a8e7dff.webp)
1. एक छवि कैप्चर की जाएगी और वर्तमान फ़ोल्डर में `image.jpg` के रूप में सेव की जाएगी। आप इस फाइल को VS Code एक्सप्लोरर में देखेंगे। छवि देखने के लिए फाइल का चयन करें। यदि इसे रोटेशन की आवश्यकता है, तो `camera.rotation = 0` लाइन को आवश्यकतानुसार अपडेट करें और एक और तस्वीर लें।

@ -208,7 +208,7 @@ Custom Vision सेवा में एक REST API है जिसे आप
आप वह छवि देख पाएंगे जो ली गई थी, और ये मान Custom Vision के **Predictions** टैब में देख पाएंगे।
![Custom Vision में एक केला, 56.8% पर पका हुआ और 43.1% पर कच्चा भविष्यवाणी की गई](../../../../../translated_images/hi/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.png)
![Custom Vision में एक केला, 56.8% पर पका हुआ और 43.1% पर कच्चा भविष्यवाणी की गई](../../../../../translated_images/hi/custom-vision-banana-prediction.30cdff4e1d72db5d.webp)
> 💁 आप इस कोड को [code-classify/wio-terminal](../../../../../4-manufacturing/lessons/2-check-fruit-from-device/code-classify/wio-terminal) फोल्डर में पा सकते हैं।

@ -1,6 +1,6 @@
# अपने फल डिटेक्टर को एज पर चलाएं
![इस पाठ का एक स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.jpg)
![इस पाठ का एक स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-17.bc333c3c35ba8e42.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -33,11 +33,11 @@
एज कंप्यूटिंग का मतलब है कि IoT डेटा को वहीं प्रोसेस करना जहां डेटा उत्पन्न होता है। क्लाउड में प्रोसेसिंग करने के बजाय, इसे क्लाउड के किनारे पर ले जाया जाता है - यानी आपके आंतरिक नेटवर्क पर।
![एक आर्किटेक्चर डायग्राम जिसमें क्लाउड में इंटरनेट सेवाएं और एक लोकल नेटवर्क पर IoT डिवाइस दिखाए गए हैं](../../../../../translated_images/hi/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.png)
![एक आर्किटेक्चर डायग्राम जिसमें क्लाउड में इंटरनेट सेवाएं और एक लोकल नेटवर्क पर IoT डिवाइस दिखाए गए हैं](../../../../../translated_images/hi/cloud-without-edge.b4da641f6022c95e.webp)
अब तक के पाठों में, आपने डेटा इकट्ठा करने और उसे क्लाउड में भेजने वाले डिवाइस का उपयोग किया है, जहां डेटा का विश्लेषण किया जाता है, जैसे कि क्लाउड में सर्वरलेस फंक्शन या AI मॉडल चलाना।
![एक आर्किटेक्चर डायग्राम जिसमें IoT डिवाइस लोकल नेटवर्क पर एज डिवाइस से जुड़ते हैं, और वे एज डिवाइस क्लाउड से जुड़ते हैं](../../../../../translated_images/hi/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.png)
![एक आर्किटेक्चर डायग्राम जिसमें IoT डिवाइस लोकल नेटवर्क पर एज डिवाइस से जुड़ते हैं, और वे एज डिवाइस क्लाउड से जुड़ते हैं](../../../../../translated_images/hi/cloud-with-edge.1e26462c62c126fe.webp)
एज कंप्यूटिंग में कुछ क्लाउड सेवाओं को क्लाउड से हटाकर IoT डिवाइस के समान नेटवर्क पर चलने वाले कंप्यूटरों पर ले जाया जाता है, और केवल आवश्यकता होने पर क्लाउड से संपर्क किया जाता है। उदाहरण के लिए, आप एज डिवाइस पर AI मॉडल चला सकते हैं ताकि फलों की पकी अवस्था का विश्लेषण किया जा सके, और केवल एनालिटिक्स को क्लाउड पर भेजा जा सके, जैसे कि पके और कच्चे फलों की संख्या।
@ -85,7 +85,7 @@ IoT सिस्टम के लिए, आप अक्सर क्लाउ
## Azure IoT Edge
![Azure IoT Edge का लोगो](../../../../../translated_images/hi/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.png)
![Azure IoT Edge का लोगो](../../../../../translated_images/hi/azure-iot-edge-logo.c1c076749b5cba2e.webp)
Azure IoT Edge एक सेवा है जो आपको वर्कलोड को क्लाउड से हटाकर एज पर ले जाने में मदद कर सकती है। आप एक डिवाइस को एज डिवाइस के रूप में सेट करते हैं, और क्लाउड से उस एज डिवाइस पर कोड तैनात कर सकते हैं। यह आपको क्लाउड और एज की क्षमताओं को मिलाने की अनुमति देता है।
@ -99,7 +99,7 @@ IoT Edge IoT हब में बनाया गया है, इसलिए
IoT Edge *कंटेनरों* से कोड चलाता है - स्व-निहित एप्लिकेशन जो आपके कंप्यूटर पर अन्य एप्लिकेशन से अलग-थलग चलाए जाते हैं। जब आप एक कंटेनर चलाते हैं, तो यह आपके कंप्यूटर के अंदर एक अलग कंप्यूटर की तरह कार्य करता है, जिसमें इसका अपना सॉफ़्टवेयर, सेवाएं और एप्लिकेशन चलते हैं। अधिकांश समय कंटेनर आपके कंप्यूटर पर कुछ भी एक्सेस नहीं कर सकते जब तक आप फ़ोल्डर जैसी चीज़ों को साझा करने का विकल्प नहीं चुनते। कंटेनर तब एक खुले पोर्ट के माध्यम से सेवाओं को उजागर करता है जिसे आप कनेक्ट कर सकते हैं या अपने नेटवर्क पर उजागर कर सकते हैं।
![एक वेब अनुरोध को एक कंटेनर पर पुनर्निर्देशित किया गया](../../../../../translated_images/hi/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.png)
![एक वेब अनुरोध को एक कंटेनर पर पुनर्निर्देशित किया गया](../../../../../translated_images/hi/container-web-browser.4ee81dd4f0d8838c.webp)
उदाहरण के लिए, आप एक कंटेनर में एक वेबसाइट चला सकते हैं जो पोर्ट 80 पर चल रही है, जो डिफ़ॉल्ट HTTP पोर्ट है, और आप इसे अपने कंप्यूटर से भी पोर्ट 80 पर उजागर कर सकते हैं।
@ -195,11 +195,11 @@ IoT Edge डिवाइस का उपयोग करने के लिए
## अपने कंटेनर को डिप्लॉयमेंट के लिए तैयार करें
![कंटेनर बनाए जाते हैं, फिर कंटेनर रजिस्ट्री में पुश किए जाते हैं, और फिर IoT Edge का उपयोग करके कंटेनर रजिस्ट्री से edge device पर डिप्लॉय किए जाते हैं](../../../../../translated_images/hi/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.png)
![कंटेनर बनाए जाते हैं, फिर कंटेनर रजिस्ट्री में पुश किए जाते हैं, और फिर IoT Edge का उपयोग करके कंटेनर रजिस्ट्री से edge device पर डिप्लॉय किए जाते हैं](../../../../../translated_images/hi/container-edge-flow.c246050dd60ceefd.webp)
एक बार जब आपने अपना मॉडल डाउनलोड कर लिया है, तो इसे कंटेनर में बनाया जाना चाहिए, फिर कंटेनर रजिस्ट्री में पुश किया जाना चाहिए - एक ऑनलाइन स्थान जहां आप कंटेनरों को स्टोर कर सकते हैं। IoT Edge फिर रजिस्ट्री से कंटेनर डाउनलोड कर सकता है और इसे आपके डिवाइस पर पुश कर सकता है।
![Azure Container Registry लोगो](../../../../../translated_images/hi/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.png)
![Azure Container Registry लोगो](../../../../../translated_images/hi/azure-container-registry-logo.09494206991d4b29.webp)
इस पाठ के लिए आप जो कंटेनर रजिस्ट्री उपयोग करेंगे वह Azure Container Registry है। यह एक मुफ्त सेवा नहीं है, इसलिए पैसे बचाने के लिए सुनिश्चित करें कि आप [अपने प्रोजेक्ट को साफ करें](../../../clean-up.md) जब आप इसे समाप्त कर लें।

@ -1,6 +1,6 @@
# सेंसर से फल की गुणवत्ता का पता लगाना शुरू करें
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.jpg)
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-18.92c32ed1d354caa5.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -39,7 +39,7 @@ IoT एप्लिकेशन को *चीजें* (डिवाइस)
### संदर्भ IoT आर्किटेक्चर
![एक संदर्भ IoT आर्किटेक्चर](../../../../../translated_images/hi/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.png)
![एक संदर्भ IoT आर्किटेक्चर](../../../../../translated_images/hi/iot-reference-architecture.2278b98b55c6d4e8.webp)
ऊपर दिया गया आरेख एक संदर्भ IoT आर्किटेक्चर दिखाता है।
@ -49,7 +49,7 @@ IoT एप्लिकेशन को *चीजें* (डिवाइस)
* **इनसाइट्स** सर्वरलेस एप्लिकेशन से आते हैं, या संग्रहीत डेटा पर चलाए गए एनालिटिक्स से।
* **एक्शन** डिवाइस को भेजे गए कमांड हो सकते हैं, या डेटा का विज़ुअलाइज़ेशन जो मनुष्यों को निर्णय लेने की अनुमति देता है।
![एक संदर्भ IoT आर्किटेक्चर](../../../../../translated_images/hi/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.png)
![एक संदर्भ IoT आर्किटेक्चर](../../../../../translated_images/hi/iot-reference-architecture-azure.0b8d2161af924cb1.webp)
ऊपर दिया गया आरेख इन पाठों में अब तक कवर किए गए कुछ घटकों और सेवाओं को दिखाता है और वे संदर्भ IoT आर्किटेक्चर में कैसे जुड़े हुए हैं।
@ -89,7 +89,7 @@ IoT एप्लिकेशन को *चीजें* (डिवाइस)
### अपने एप्लिकेशन का प्रोटोटाइप बनाना
![फल गुणवत्ता जांच के लिए संदर्भ IoT आर्किटेक्चर](../../../../../translated_images/hi/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.png)
![फल गुणवत्ता जांच के लिए संदर्भ IoT आर्किटेक्चर](../../../../../translated_images/hi/iot-reference-architecture-fruit-quality.cc705f121c3b6fa7.webp)
ऊपर दिया गया आरेख इस प्रोटोटाइप एप्लिकेशन के लिए संदर्भ आर्किटेक्चर दिखाता है।
@ -124,7 +124,7 @@ IoT डिवाइस को किसी प्रकार के ट्र
प्रोटोटाइप फल डिटेक्टर में कई घटक एक-दूसरे के साथ संवाद करते हैं।
![एक-दूसरे के साथ संवाद करने वाले घटक](../../../../../translated_images/hi/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.png)
![एक-दूसरे के साथ संवाद करने वाले घटक](../../../../../translated_images/hi/fruit-quality-detector-message-flow.adf2a65da8fd8741.webp)
* प्रॉक्सिमिटी सेंसर जो फल से दूरी मापता है और इसे IoT हब को भेजता है
* कैमरा डिवाइस को नियंत्रित करने का कमांड IoT हब से आता है

@ -20,7 +20,7 @@ Grove टाइम ऑफ फ्लाइट सेंसर को रास्
टाइम ऑफ फ्लाइट सेंसर को कनेक्ट करें।
![एक Grove टाइम ऑफ फ्लाइट सेंसर](../../../../../translated_images/hi/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.png)
![एक Grove टाइम ऑफ फ्लाइट सेंसर](../../../../../translated_images/hi/grove-time-of-flight-sensor.d82ff2165bfded9f.webp)
1. Grove केबल के एक सिरे को टाइम ऑफ फ्लाइट सेंसर के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।

@ -36,11 +36,11 @@ CounterFit ऐप में दूरी सेंसर जोड़ें।
1. दूरी सेंसर बनाने के लिए **Add** बटन चुनें।
![दूरी सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.png)
![दूरी सेंसर सेटिंग्स](../../../../../translated_images/hi/counterfit-create-distance-sensor.967c9fb98f27888d.webp)
दूरी सेंसर बनाया जाएगा और सेंसर सूची में दिखाई देगा।
![दूरी सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.png)
![दूरी सेंसर बनाया गया](../../../../../translated_images/hi/counterfit-distance-sensor.079eefeeea0b68af.webp)
## दूरी सेंसर प्रोग्राम करें

@ -20,7 +20,7 @@ Grove टाइम ऑफ फ्लाइट सेंसर को Wio Terminal
टाइम ऑफ फ्लाइट सेंसर को कनेक्ट करें।
![एक Grove टाइम ऑफ फ्लाइट सेंसर](../../../../../translated_images/hi/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.png)
![एक Grove टाइम ऑफ फ्लाइट सेंसर](../../../../../translated_images/hi/grove-time-of-flight-sensor.d82ff2165bfded9f.webp)
1. Grove केबल के एक सिरे को टाइम ऑफ फ्लाइट सेंसर के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।

@ -1,6 +1,6 @@
# स्टॉक डिटेक्टर को प्रशिक्षित करें
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-19.cf6973cecadf080c.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -36,7 +36,7 @@
इमेज क्लासिफिकेशन का उद्देश्य पूरी छवि को वर्गीकृत करना है - यह अनुमान लगाना कि पूरी छवि प्रत्येक टैग से कितनी मेल खाती है। आपको मॉडल को प्रशिक्षित करने के लिए उपयोग किए गए प्रत्येक टैग के लिए संभावनाएं मिलती हैं।
![काजू और टमाटर पेस्ट की इमेज क्लासिफिकेशन](../../../../../translated_images/hi/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.png)
![काजू और टमाटर पेस्ट की इमेज क्लासिफिकेशन](../../../../../translated_images/hi/image-classifier-cashews-tomato.bc2e16ab8f05cf9a.webp)
ऊपर दिए गए उदाहरण में, दो छवियों को एक मॉडल का उपयोग करके वर्गीकृत किया गया है जिसे काजू के डिब्बे या टमाटर पेस्ट के कैन को वर्गीकृत करने के लिए प्रशिक्षित किया गया है। पहली छवि काजू के डिब्बे की है, और इमेज क्लासिफायर से दो परिणाम प्राप्त होते हैं:
@ -60,7 +60,7 @@
> 🎓 *बॉन्डिंग बॉक्स* वे बॉक्स होते हैं जो किसी वस्तु के चारों ओर होते हैं।
![काजू और टमाटर पेस्ट की ऑब्जेक्ट डिटेक्शन](../../../../../translated_images/hi/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.png)
![काजू और टमाटर पेस्ट की ऑब्जेक्ट डिटेक्शन](../../../../../translated_images/hi/object-detector-cashews-tomato.1af7c26686b4db0e.webp)
ऊपर दी गई छवि में काजू का एक डिब्बा और टमाटर पेस्ट के तीन कैन हैं। ऑब्जेक्ट डिटेक्टर ने काजू का पता लगाया, और उस बॉन्डिंग बॉक्स को लौटाया जिसमें काजू है, और यह संभावना है कि बॉक्स में वस्तु है, इस मामले में 97.6%। ऑब्जेक्ट डिटेक्टर ने टमाटर पेस्ट के तीन कैन का भी पता लगाया है, और प्रत्येक कैन के लिए तीन अलग-अलग बॉन्डिंग बॉक्स प्रदान किए हैं, और प्रत्येक के पास यह संभावना है कि बॉक्स में टमाटर पेस्ट का कैन है।
@ -111,7 +111,7 @@
जब आप अपना प्रोजेक्ट बनाएं, तो सुनिश्चित करें कि आपने पहले बनाए गए `stock-detector-training` संसाधन का उपयोग किया है। *Object Detection* प्रोजेक्ट प्रकार और *Products on Shelves* डोमेन का उपयोग करें।
![Custom Vision प्रोजेक्ट के लिए सेटिंग्स, नाम fruit-quality-detector, कोई विवरण नहीं, संसाधन fruit-quality-detector-training, प्रोजेक्ट प्रकार classification, classification प्रकार multi class और डोमेन food पर सेट](../../../../../translated_images/hi/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.png)
![Custom Vision प्रोजेक्ट के लिए सेटिंग्स, नाम fruit-quality-detector, कोई विवरण नहीं, संसाधन fruit-quality-detector-training, प्रोजेक्ट प्रकार classification, classification प्रकार multi class और डोमेन food पर सेट](../../../../../translated_images/hi/custom-vision-create-object-detector-project.32d4fb9aa8e7e737.webp)
*Products on Shelves* डोमेन विशेष रूप से स्टोर शेल्फ पर स्टॉक का पता लगाने के लिए लक्षित है। [Microsoft Docs पर Select a domain दस्तावेज़](https://docs.microsoft.com/azure/cognitive-services/custom-vision-service/select-domain?WT.mc_id=academic-17441-jabenn#object-detection) में विभिन्न डोमेन के बारे में और पढ़ें।
@ -133,11 +133,11 @@
1. [Microsoft Docs पर Build an object detector quickstart के Upload and tag images सेक्शन](https://docs.microsoft.com/azure/cognitive-services/custom-vision-service/get-started-build-detector?WT.mc_id=academic-17441-jabenn#upload-and-tag-images) का पालन करें ताकि अपनी प्रशिक्षण छवियां अपलोड की जा सकें। उन वस्तुओं के प्रकारों के आधार पर प्रासंगिक टैग बनाएं जिन्हें आप पहचानना चाहते हैं।
![पके और कच्चे केले की तस्वीरें अपलोड करने का संवाद](../../../../../translated_images/hi/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.png)
![पके और कच्चे केले की तस्वीरें अपलोड करने का संवाद](../../../../../translated_images/hi/image-upload-object-detector.77c7892c3093cb59.webp)
जब आप वस्तुओं के लिए बॉन्डिंग बॉक्स बनाएं, तो उन्हें वस्तु के चारों ओर कसकर रखें। सभी छवियों को आउटलाइन करने में समय लग सकता है, लेकिन टूल यह पता लगाएगा कि उसे क्या लगता है कि बॉन्डिंग बॉक्स हैं, जिससे यह तेज़ हो जाएगा।
![टमाटर पेस्ट को टैग करना](../../../../../translated_images/hi/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.png)
![टमाटर पेस्ट को टैग करना](../../../../../translated_images/hi/object-detector-tag-tomato-paste.f47c362fb0f0eb58.webp)
> 💁 यदि आपके पास प्रत्येक वस्तु के लिए 15 से अधिक छवियां हैं, तो आप 15 के बाद प्रशिक्षण कर सकते हैं और **Suggested tags** सुविधा का उपयोग कर सकते हैं। यह बिना टैग वाली छवि में वस्तुओं का पता लगाने के लिए प्रशिक्षित मॉडल का उपयोग करेगा। आप फिर पता लगी वस्तुओं की पुष्टि कर सकते हैं, या बॉन्डिंग बॉक्स को अस्वीकार और पुनः खींच सकते हैं। यह *बहुत* समय बचा सकता है।
@ -155,7 +155,7 @@
1. **Quick Test** बटन का उपयोग करके परीक्षण छवियां अपलोड करें और सत्यापित करें कि वस्तुओं का पता लगाया गया है। उन परीक्षण छवियों का उपयोग करें जिन्हें आपने पहले बनाया था, न कि उन छवियों का जिन्हें आपने प्रशिक्षण के लिए उपयोग किया था।
![टमाटर पेस्ट के 3 कैन का पता लगाया गया, जिनकी संभावनाएं 38%, 35.5% और 34.6% हैं](../../../../../translated_images/hi/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.png)
![टमाटर पेस्ट के 3 कैन का पता लगाया गया, जिनकी संभावनाएं 38%, 35.5% और 34.6% हैं](../../../../../translated_images/hi/object-detector-detected-tomato-paste.52656fe87af4c37b.webp)
1. आपके पास जितनी भी परीक्षण छवियां हैं, उनका उपयोग करें और संभावनाओं का अवलोकन करें।

@ -1,6 +1,6 @@
# IoT डिवाइस से स्टॉक चेक करें
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.jpg)
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-20.0211df9551a8abb3.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -62,7 +62,7 @@
1. संस्करण के लिए **Publish** बटन चुनें।
![पब्लिश बटन](../../../../../translated_images/hi/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.png)
![पब्लिश बटन](../../../../../translated_images/hi/custom-vision-object-detector-publish-button.34ee379fc650ccb9.webp)
1. *Publish Model* डायलॉग में, *Prediction resource* को उस `stock-detector-prediction` संसाधन पर सेट करें जिसे आपने पिछले पाठ में बनाया था। नाम को `Iteration2` के रूप में छोड़ दें, और **Publish** बटन चुनें।
@ -76,7 +76,7 @@
*Prediction-Key* मान की भी एक प्रति लें। यह एक सुरक्षित कुंजी है जिसे आपको मॉडल को कॉल करते समय पास करना होगा। केवल वे एप्लिकेशन जो इस कुंजी को पास करते हैं, मॉडल का उपयोग करने की अनुमति प्राप्त करते हैं, अन्य सभी एप्लिकेशन अस्वीकार कर दिए जाते हैं।
![भविष्यवाणी API डायलॉग जिसमें URL और कुंजी दिख रही है](../../../../../translated_images/hi/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.png)
![भविष्यवाणी API डायलॉग जिसमें URL और कुंजी दिख रही है](../../../../../translated_images/hi/custom-vision-prediction-key-endpoint.30c569ffd0338864.webp)
✅ जब एक नया संस्करण प्रकाशित होता है, तो उसका नाम अलग होता है। आप कैसे सोचते हैं कि आप IoT डिवाइस द्वारा उपयोग किए जा रहे संस्करण को बदलेंगे?
@ -95,7 +95,7 @@
कस्टम विजन में **Predictions** टैब में भविष्यवाणी के परिणामों में उस छवि पर बाउंडिंग बॉक्स खींचे जाते हैं जिसे भविष्यवाणी के लिए भेजा गया था।
![शेल्फ पर 4 टमाटर पेस्ट के डिब्बे, 35.8%, 33.5%, 25.7% और 16.6% की भविष्यवाणी के साथ](../../../../../translated_images/hi/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.png)
![शेल्फ पर 4 टमाटर पेस्ट के डिब्बे, 35.8%, 33.5%, 25.7% और 16.6% की भविष्यवाणी के साथ](../../../../../translated_images/hi/custom-vision-stock-prediction.942266ab1bcca341.webp)
ऊपर दी गई छवि में, 4 टमाटर पेस्ट के डिब्बे का पता लगाया गया। परिणामों में प्रत्येक ऑब्जेक्ट के लिए एक लाल वर्ग छवि पर ओवरले किया गया है, जो छवि के लिए बाउंडिंग बॉक्स को इंगित करता है।
@ -103,7 +103,7 @@
बाउंडिंग बॉक्स को 4 मानों के साथ परिभाषित किया जाता है - शीर्ष, बायां, ऊंचाई और चौड़ाई। ये मान 0-1 के पैमाने पर होते हैं, जो छवि के आकार के प्रतिशत के रूप में स्थिति को दर्शाते हैं। मूल (0,0 स्थिति) छवि का शीर्ष बायां है, इसलिए शीर्ष मान शीर्ष से दूरी है, और बाउंडिंग बॉक्स का निचला भाग शीर्ष प्लस ऊंचाई है।
![टमाटर पेस्ट के डिब्बे के चारों ओर एक बाउंडिंग बॉक्स](../../../../../translated_images/hi/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.png)
![टमाटर पेस्ट के डिब्बे के चारों ओर एक बाउंडिंग बॉक्स](../../../../../translated_images/hi/bounding-box.1420a7ea0d3d15f7.webp)
ऊपर दी गई छवि 600 पिक्सल चौड़ी और 800 पिक्सल लंबी है। बाउंडिंग बॉक्स 320 पिक्सल नीचे शुरू होता है, जिससे शीर्ष निर्देशांक 0.4 (800 x 0.4 = 320) होता है। बाएं से, बाउंडिंग बॉक्स 240 पिक्सल चौड़ा शुरू होता है, जिससे बाएं निर्देशांक 0.4 (600 x 0.4 = 240) होता है। बाउंडिंग बॉक्स की ऊंचाई 240 पिक्सल है, जिससे ऊंचाई मान 0.3 (800 x 0.3 = 240) होता है। बाउंडिंग बॉक्स की चौड़ाई 120 पिक्सल है, जिससे चौड़ाई मान 0.2 (600 x 0.2 = 120) होता है।
@ -118,7 +118,7 @@
आप बाउंडिंग बॉक्स को संभावनाओं के साथ जोड़कर यह मूल्यांकन कर सकते हैं कि डिटेक्शन कितना सटीक है। उदाहरण के लिए, एक ऑब्जेक्ट डिटेक्टर कई ऑब्जेक्ट्स का पता लगा सकता है जो ओवरलैप करते हैं, जैसे कि एक डिब्बा दूसरे के अंदर। आपका कोड बाउंडिंग बॉक्स को देख सकता है, समझ सकता है कि यह असंभव है, और उन ऑब्जेक्ट्स को अनदेखा कर सकता है जिनका अन्य ऑब्जेक्ट्स के साथ महत्वपूर्ण ओवरलैप है।
![टमाटर पेस्ट के डिब्बे पर दो बाउंडिंग बॉक्स ओवरलैप करते हुए](../../../../../translated_images/hi/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.png)
![टमाटर पेस्ट के डिब्बे पर दो बाउंडिंग बॉक्स ओवरलैप करते हुए](../../../../../translated_images/hi/overlap-object-detection.d431e03cae75072a.webp)
ऊपर दिए गए उदाहरण में, एक बाउंडिंग बॉक्स ने 78.3% की संभावना के साथ टमाटर पेस्ट के डिब्बे का पता लगाया। दूसरा बाउंडिंग बॉक्स थोड़ा छोटा है, और पहले बाउंडिंग बॉक्स के अंदर है जिसकी संभावना 64.3% है। आपका कोड बाउंडिंग बॉक्स की जांच कर सकता है, देख सकता है कि वे पूरी तरह से ओवरलैप करते हैं, और कम संभावना को अनदेखा कर सकता है क्योंकि एक डिब्बा दूसरे के अंदर नहीं हो सकता।

@ -67,7 +67,7 @@
आप ली गई इमेज और इन मानों को Custom Vision के **Predictions** टैब में देख पाएंगे।
![शेल्फ पर रखे टमाटर पेस्ट के 4 कैन, जिनके लिए 4 डिटेक्शन्स के प्रेडिक्शन्स 35.8%, 33.5%, 25.7% और 16.6% हैं](../../../../../translated_images/hi/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.png)
![शेल्फ पर रखे टमाटर पेस्ट के 4 कैन, जिनके लिए 4 डिटेक्शन्स के प्रेडिक्शन्स 35.8%, 33.5%, 25.7% और 16.6% हैं](../../../../../translated_images/hi/custom-vision-stock-prediction.942266ab1bcca341.webp)
> 💁 आप इस कोड को [code-detect/pi](../../../../../5-retail/lessons/2-check-stock-device/code-detect/pi) या [code-detect/virtual-iot-device](../../../../../5-retail/lessons/2-check-stock-device/code-detect/virtual-iot-device) फ़ोल्डर में पा सकते हैं।

@ -95,7 +95,7 @@
आप ली गई इमेज और इन मानों को Custom Vision के **Predictions** टैब में देख पाएंगे।
![शेल्फ पर रखे टमाटर पेस्ट के 4 कैन और उनके 4 डिटेक्शन के लिए 35.8%, 33.5%, 25.7% और 16.6% की संभावना](../../../../../translated_images/hi/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.png)
![शेल्फ पर रखे टमाटर पेस्ट के 4 कैन और उनके 4 डिटेक्शन के लिए 35.8%, 33.5%, 25.7% और 16.6% की संभावना](../../../../../translated_images/hi/custom-vision-stock-prediction.942266ab1bcca341.webp)
> 💁 आप इस कोड को [code-detect/wio-terminal](../../../../../5-retail/lessons/2-check-stock-device/code-detect/wio-terminal) फोल्डर में पा सकते हैं।

@ -1,6 +1,6 @@
# IoT डिवाइस के साथ भाषण को पहचानें
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-21.e34de51354d6606f.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -51,7 +51,7 @@
डायनामिक माइक्रोफोन को काम करने के लिए बिजली की आवश्यकता नहीं होती, विद्युत संकेत पूरी तरह से माइक्रोफोन से उत्पन्न होता है।
![पैटी स्मिथ श्योर SM58 (डायनामिक कार्डियोइड प्रकार) माइक्रोफोन में गाते हुए](../../../../../translated_images/hi/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.jpg)
![पैटी स्मिथ श्योर SM58 (डायनामिक कार्डियोइड प्रकार) माइक्रोफोन में गाते हुए](../../../../../translated_images/hi/dynamic-mic.8babac890a2d80df.webp)
* रिबन - रिबन माइक्रोफोन डायनामिक माइक्रोफोन के समान होते हैं, लेकिन इनमें डायाफ्राम के बजाय एक धातु रिबन होता है। यह रिबन चुंबकीय क्षेत्र में हिलता है और विद्युत धारा उत्पन्न करता है। डायनामिक माइक्रोफोन की तरह, रिबन माइक्रोफोन को काम करने के लिए बिजली की आवश्यकता नहीं होती।
@ -59,11 +59,11 @@
* कंडेंसर - कंडेंसर माइक्रोफोन में एक पतला धातु डायाफ्राम और एक स्थिर धातु बैकप्लेट होता है। इन दोनों पर बिजली लगाई जाती है और जैसे ही डायाफ्राम हिलता है, प्लेटों के बीच स्थिर चार्ज बदलता है और एक संकेत उत्पन्न करता है। कंडेंसर माइक्रोफोन को काम करने के लिए बिजली की आवश्यकता होती है - जिसे *फैंटम पावर* कहा जाता है।
![AKG Acoustics द्वारा C451B छोटे डायाफ्राम कंडेंसर माइक्रोफोन](../../../../../translated_images/hi/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.jpg)
![AKG Acoustics द्वारा C451B छोटे डायाफ्राम कंडेंसर माइक्रोफोन](../../../../../translated_images/hi/condenser-mic.6f6ed5b76ca19e0e.webp)
* MEMS - माइक्रोइलेक्ट्रोमैकेनिकल सिस्टम माइक्रोफोन, या MEMS, चिप पर माइक्रोफोन होते हैं। इनमें सिलिकॉन चिप पर दबाव-संवेदनशील डायाफ्राम होता है, और यह कंडेंसर माइक्रोफोन के समान काम करता है। ये माइक्रोफोन बहुत छोटे हो सकते हैं और सर्किटरी में एकीकृत हो सकते हैं।
![सर्किट बोर्ड पर MEMS माइक्रोफोन](../../../../../translated_images/hi/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.png)
![सर्किट बोर्ड पर MEMS माइक्रोफोन](../../../../../translated_images/hi/mems-microphone.80574019e1f5e4d9.webp)
ऊपर दी गई छवि में, **LEFT** लेबल वाला चिप एक MEMS माइक्रोफोन है, जिसमें एक छोटा डायाफ्राम है जो एक मिलीमीटर से भी कम चौड़ा है।
@ -159,7 +159,7 @@ ML मॉडल हमेशा हर बार समान आकार क
## स्पीच को टेक्स्ट में बदलें
![स्पीच सर्विसेज लोगो](../../../../../translated_images/hi/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.png)
![स्पीच सर्विसेज लोगो](../../../../../translated_images/hi/azure-speech-logo.a1f08c4befb0159f.webp)
जैसे कि एक पहले प्रोजेक्ट में इमेज क्लासिफिकेशन के साथ किया गया था, वैसे ही कुछ प्री-बिल्ट AI सेवाएं हैं जो ऑडियो फाइल के रूप में स्पीच को टेक्स्ट में बदल सकती हैं। ऐसी ही एक सेवा है स्पीच सर्विस, जो Cognitive Services का हिस्सा है, प्री-बिल्ट AI सेवाएं जिन्हें आप अपने ऐप्स में उपयोग कर सकते हैं।

@ -16,13 +16,13 @@
#### कार्य - बटन कनेक्ट करें
![एक ग्रोव बटन](../../../../../translated_images/hi/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.png)
![एक ग्रोव बटन](../../../../../translated_images/hi/grove-button.a70cfbb809a85636.webp)
1. ग्रोव केबल के एक सिरे को बटन मॉड्यूल के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।
1. रास्पबेरी पाई को बंद करके, ग्रोव केबल के दूसरे सिरे को ग्रोव बेस HAT पर **D5** नामक डिजिटल सॉकेट में कनेक्ट करें। यह सॉकेट GPIO पिन के पास वाले सॉकेट की पंक्ति में बाईं ओर से दूसरा है।
![ग्रोव बटन D5 सॉकेट से जुड़ा हुआ](../../../../../translated_images/hi/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.png)
![ग्रोव बटन D5 सॉकेट से जुड़ा हुआ](../../../../../translated_images/hi/pi-button.c7a1a4f55943341c.webp)
## ऑडियो कैप्चर करें

@ -34,7 +34,7 @@
1. यदि आप ReSpeaker 2-Mics Pi HAT का उपयोग कर रहे हैं, तो आप Grove बेस हैट को हटा सकते हैं और उसकी जगह ReSpeaker हैट को फिट कर सकते हैं।
![ReSpeaker हैट के साथ एक रास्पबेरी पाई](../../../../../translated_images/hi/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.png)
![ReSpeaker हैट के साथ एक रास्पबेरी पाई](../../../../../translated_images/hi/pi-respeaker-hat.f00fabe7dd039a93.webp)
आपको इस पाठ में बाद में एक Grove बटन की आवश्यकता होगी, लेकिन यह इस हैट में पहले से ही बिल्ट-इन है, इसलिए Grove बेस हैट की आवश्यकता नहीं है।

@ -10,7 +10,7 @@
✅ DMA के बारे में अधिक पढ़ें [Wikipedia पर डायरेक्ट मेमोरी एक्सेस पेज](https://wikipedia.org/wiki/Direct_memory_access) पर।
![माइक्रोफोन से ऑडियो ADC में जाता है और फिर DMAC में। यह एक बफर में लिखता है। जब यह बफर भर जाता है, तो इसे प्रोसेस किया जाता है और DMAC दूसरे बफर में लिखता है](../../../../../translated_images/hi/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.png)
![माइक्रोफोन से ऑडियो ADC में जाता है और फिर DMAC में। यह एक बफर में लिखता है। जब यह बफर भर जाता है, तो इसे प्रोसेस किया जाता है और DMAC दूसरे बफर में लिखता है](../../../../../translated_images/hi/dmac-adc-buffers.4509aee49145c90b.webp)
DMAC ADC से ऑडियो को निश्चित अंतराल पर कैप्चर कर सकता है, जैसे 16KHz ऑडियो के लिए प्रति सेकंड 16,000 बार। यह कैप्चर किए गए डेटा को एक प्री-अलोकेटेड मेमोरी बफर में लिख सकता है, और जब यह भर जाता है, तो इसे प्रोसेस करने के लिए आपके कोड को उपलब्ध कराता है। इस मेमोरी का उपयोग ऑडियो कैप्चर में देरी कर सकता है, लेकिन आप कई बफर सेट कर सकते हैं। DMAC बफर 1 में लिखता है, फिर जब यह भर जाता है, तो आपके कोड को बफर 1 को प्रोसेस करने के लिए सूचित करता है, जबकि DMAC बफर 2 में लिखता है। जब बफर 2 भर जाता है, तो यह आपके कोड को सूचित करता है, और फिर बफर 1 में लिखने के लिए वापस जाता है। इस तरह, जब तक आप प्रत्येक बफर को भरने में लगने वाले समय से कम समय में प्रोसेस करते हैं, आप कोई डेटा नहीं खोएंगे।

@ -1,6 +1,6 @@
# भाषा को समझें
![इस पाठ का एक स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.jpg)
![इस पाठ का एक स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-22.6148ea28500d9e00.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़े संस्करण के लिए छवि पर क्लिक करें।
@ -46,7 +46,7 @@
## भाषा समझने का मॉडल बनाएं
![LUIS लोगो](../../../../../translated_images/hi/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.png)
![LUIS लोगो](../../../../../translated_images/hi/luis-logo.5cb4f3e88c020ee6.webp)
आप LUIS (Language Understanding Intelligent Service) का उपयोग करके भाषा समझने वाले मॉडल बना सकते हैं, जो Microsoft की एक सेवा है और Cognitive Services का हिस्सा है।
@ -169,7 +169,7 @@ LUIS पोर्टल का उपयोग करने के निर्
1. प्रत्येक उदाहरण दर्ज करते समय, LUIS इकाइयों का पता लगाना शुरू कर देगा और किसी भी पाए गए इकाई को रेखांकित और लेबल करेगा।
![LUIS द्वारा रेखांकित उदाहरण](../../../../../translated_images/hi/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.png)
![LUIS द्वारा रेखांकित उदाहरण](../../../../../translated_images/hi/luis-intent-examples.25716580b2d2723c.webp)
### कार्य - मॉडल को प्रशिक्षित और परीक्षण करें

@ -1,6 +1,6 @@
# टाइमर सेट करें और मौखिक प्रतिक्रिया दें
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.jpg)
![इस पाठ का स्केच नोट](../../../../../translated_images/hi/lesson-23.f38483e1d4df4828.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़ी छवि देखने के लिए क्लिक करें।

@ -1,6 +1,6 @@
# कई भाषाओं का समर्थन करें
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.jpg)
![इस पाठ का स्केच नोट अवलोकन](../../../../../translated_images/hi/lesson-24.4246968ed058510a.webp)
> स्केच नोट [नित्या नरसिम्हन](https://github.com/nitya) द्वारा। बड़ी छवि देखने के लिए क्लिक करें।
@ -74,7 +74,7 @@
### कॉग्निटिव सेवाएं स्पीच सेवा
![स्पीच सेवा लोगो](../../../../../translated_images/hi/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.png)
![स्पीच सेवा लोगो](../../../../../translated_images/hi/azure-speech-logo.a1f08c4befb0159f.webp)
पिछले कुछ पाठों में आपने जिस स्पीच सेवा का उपयोग किया है उसमें स्पीच पहचान के लिए अनुवाद क्षमताएं हैं। जब आप स्पीच को पहचानते हैं, तो आप न केवल उसी भाषा में स्पीच का टेक्स्ट, बल्कि अन्य भाषाओं में भी अनुरोध कर सकते हैं।
@ -82,7 +82,7 @@
### कॉग्निटिव सेवाएं अनुवादक सेवा
![अनुवादक सेवा लोगो](../../../../../translated_images/hi/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.png)
![अनुवादक सेवा लोगो](../../../../../translated_images/hi/azure-translator-logo.c6ed3a4a433edfd2.webp)
अनुवादक सेवा एक समर्पित अनुवाद सेवा है जो टेक्स्ट को एक भाषा से एक या अधिक लक्षित भाषाओं में अनुवाद कर सकती है। अनुवाद के अलावा, यह कई अतिरिक्त सुविधाओं का समर्थन करती है, जिसमें अश्लीलता को छिपाना शामिल है। यह आपको किसी विशेष शब्द या वाक्य के लिए एक विशिष्ट अनुवाद प्रदान करने की अनुमति भी देती है, उन शब्दों के साथ काम करने के लिए जिन्हें आप अनुवादित नहीं करना चाहते हैं, या एक विशिष्ट प्रसिद्ध अनुवाद के साथ।

@ -25,7 +25,7 @@
>
> उदाहरण के लिए, यदि आप LUIS को अंग्रेजी में प्रशिक्षित करते हैं, लेकिन उपयोगकर्ता भाषा के रूप में फ्रेंच का उपयोग करना चाहते हैं, तो आप "set a 2 minute and 27 second timer" जैसे वाक्य को Bing Translate का उपयोग करके अंग्रेजी से फ्रेंच में अनुवाद कर सकते हैं, फिर **Listen translation** बटन का उपयोग करके अनुवाद को अपने माइक्रोफोन में बोल सकते हैं।
>
> ![Bing Translate पर Listen translation बटन](../../../../../translated_images/hi/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.png)
> ![Bing Translate पर Listen translation बटन](../../../../../translated_images/hi/bing-translate.348aa796d6efe2a9.webp)
1. `speech_api_key` के नीचे अनुवादक API कुंजी जोड़ें:

@ -37,7 +37,7 @@
>
> उदाहरण के लिए, यदि आप LUIS को अंग्रेजी में प्रशिक्षित करते हैं, लेकिन उपयोगकर्ता भाषा के रूप में फ्रेंच का उपयोग करना चाहते हैं, तो आप "set a 2 minute and 27 second timer" जैसे वाक्यों को Bing Translate का उपयोग करके अंग्रेजी से फ्रेंच में अनुवाद कर सकते हैं, फिर **Listen translation** बटन का उपयोग करके अनुवाद को अपने माइक्रोफोन में बोल सकते हैं।
>
> ![Bing Translate पर Listen translation बटन](../../../../../translated_images/hi/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.png)
> ![Bing Translate पर Listen translation बटन](../../../../../translated_images/hi/bing-translate.348aa796d6efe2a9.webp)
1. `recognizer_config` और `recognizer` घोषणाओं को निम्नलिखित से बदलें:

@ -105,7 +105,7 @@
>
> उदाहरण के लिए, यदि आप LUIS को अंग्रेजी में प्रशिक्षित करते हैं, लेकिन उपयोगकर्ता भाषा के रूप में फ्रेंच का उपयोग करना चाहते हैं, तो आप Bing Translate का उपयोग करके "set a 2 minute and 27 second timer" जैसे वाक्यों को अंग्रेजी से फ्रेंच में अनुवाद कर सकते हैं, फिर **Listen translation** बटन का उपयोग करके अनुवाद को अपने माइक्रोफोन में बोल सकते हैं।
>
> ![Bing Translate पर Listen translation बटन](../../../../../translated_images/hi/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.png)
> ![Bing Translate पर Listen translation बटन](../../../../../translated_images/hi/bing-translate.348aa796d6efe2a9.webp)
1. `SPEECH_LOCATION` के नीचे अनुवादक API कुंजी और स्थान जोड़ें:

@ -1,212 +1,203 @@
[![GitHub license](https://img.shields.io/github/license/microsoft/IoT-For-Beginners.svg)](https://github.com/microsoft/IoT-For-Beginners/blob/master/LICENSE)
[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/IoT-For-Beginners.svg)](https://GitHub.com/microsoft/IoT-For-Beginners/graphs/contributors/)
[![GitHub issues](https://img.shields.io/github/issues/microsoft/IoT-For-Beginners.svg)](https://GitHub.com/microsoft/IoT-For-Beginners/issues/)
[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/IoT-For-Beginners.svg)](https://GitHub.com/microsoft/IoT-For-Beginners/pulls/)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/IoT-For-Beginners.svg?style=social&label=Watch)](https://GitHub.com/microsoft/IoT-For-Beginners/watchers/)
[![GitHub forks](https://img.shields.io/github/forks/microsoft/IoT-For-Beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/IoT-For-Beginners/network/)
[![GitHub stars](https://img.shields.io/github/stars/microsoft/IoT-For-Beginners.svg?style=social&label=Star)](https://GitHub.com/microsoft/IoT-For-Beginners/stargazers/)
### Azure AI Foundry समुदाय में शामिल हों
यदि आप अटक जाते हैं या AI ऐप्स बनाने के बारे में कोई सवाल है। MCP के बारे में बातचीत में साथी शिक्षार्थियों और अनुभवी डेवलपर्स से जुड़ें। यह एक सहायक समुदाय है जहाँ प्रश्नों का स्वागत है और ज्ञान स्वतंत्र रूप से साझा किया जाता है।
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
यदि आप फंस जाते हैं या AI ऐप बनाने के बारे में कोई सवाल है। MCP के बारे में चर्चा में साथी शिक्षार्थियों और अनुभवी डेवलपर्स से जुड़ें। यह एक सहायक समुदाय है जहां प्रश्नों का स्वागत है और ज्ञान स्वतंत्र रूप से साझा किया जाता है।
यदि आपके पास उत्पाद प्रतिक्रिया या निर्माण के दौरान त्रुटियाँ हों तो यहां जाएं:
[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
इन संसाधनों का उपयोग शुरू करने के लिए निम्न चरणों का पालन करें:
1. **रिपॉजिटरी फ़орк करें**: क्लिक करें [![GitHub forks](https://img.shields.io/github/forks/microsoft/IoT-For-Beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/IoT-For-Beginners/fork)
2. **रिपॉजिटरी क्लोन करें**: `git clone https://github.com/microsoft/IoT-For-Beginners.git`
3. [**Microsoft Foundry Discord में शामिल हों और विशेषज्ञों तथा साथियों से मिलें**](https://discord.com/invite/ByRwuEEgH4)
यदि आपके पास उत्पाद प्रतिक्रिया या निर्माण के दौरान त्रुटियां हैं तो यहाँ जाएं:
इन संसाधनों का उपयोग शुरू करने के लिए इन चरणों का पालन करें:
1. **रिपॉजिटरी से फोर्क करें**: क्लिक करें [![GitHub forks](https://img.shields.io/github/forks/microsoft/IoT-For-Beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/IoT-For-Beginners/fork)
2. **रिपॉजिटरी क्लोन करें**: `git clone https://github.com/microsoft/IoT-For-Beginners.git`
3. [**Microsoft Foundry Discord में शामिल हों और विशेषज्ञों तथा सह डेवलपर्स से मिलें**](https://discord.com/invite/ByRwuEEgH4)
### 🌐 बहुभाषी समर्थन
#### GitHub Action के माध्यम से समर्थित (स्वचालित और हमेशा अपडेटेड)
<!-- CO-OP TRANSLATOR LANGUAGES TABLE START -->
[Arabic](../ar/README.md) | [Bengali](../bn/README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh-CN/README.md) | [Chinese (Traditional, Hong Kong)](../zh-HK/README.md) | [Chinese (Traditional, Macau)](../zh-MO/README.md) | [Chinese (Traditional, Taiwan)](../zh-TW/README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](../fi/README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](./README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Kannada](../kn/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Malayalam](../ml/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Nigerian Pidgin](../pcm/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../pt-BR/README.md) | [Portuguese (Portugal)](../pt-PT/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](../ru/README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Telugu](../te/README.md) | [Thai](../th/README.md) | [Turkish](../tr/README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md)
#### GitHub क्रिया के माध्यम से समर्थित (स्वचालित और हमेशा अद्यतित)
> **स्थानीय रूप से क्लोन करना पसंद करते हैं?**
> इस रिपॉजिटरी में 50+ भाषा अनुवाद शामिल हैं जो डाउनलोड आकार को काफी बढ़ा देते हैं। बिना अनुवाद के क्लोन करने के लिए, sparse checkout का उपयोग करें:
> **स्थानीय रूप से क्लोन करना पसंद है?**
>
> इस रिपॉजिटरी में 50+ भाषा अनुवाद शामिल हैं जो डाउनलोड आकार को बहुत बढ़ा देते हैं। बिना अनुवाद के क्लोन करने के लिए sparse checkout का उपयोग करें:
>
> **Bash / macOS / Linux:**
> ```bash
> git clone --filter=blob:none --sparse https://github.com/microsoft/IoT-For-Beginners.git
> cd IoT-For-Beginners
> git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'
> ```
> इससे आपको पूरे पाठ्यक्रम को पूरा करने के लिए आवश्यक सब कुछ बहुत तेज़ डाउनलोड के साथ मिल जाएगा।
<!-- CO-OP TRANSLATOR LANGUAGES TABLE END -->
>
> **CMD (Windows):**
> ```cmd
> git clone --filter=blob:none --sparse https://github.com/microsoft/IoT-For-Beginners.git
> cd IoT-For-Beginners
> git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"
> ```
>
> यह आपको पाठ्यक्रम को पूरा करने के लिए आवश्यक सब कुछ देता है और डाउनलोड बहुत तेज़ होता है।
# शुरुआती लोगों के लिए IoT - एक पाठ्यक्रम
# IoT शुरुआती लोगों के लिए - एक पाठ्यक्रम
Microsoft के Azure Cloud Advocates गर्व के साथ एक 12-सप्ताह, 24-पाठ का पाठ्यक्रम पेश कर रहे हैं जो पूरी तरह से IoT मूल बातें के बारे में है। प्रत्येक पाठ में पूर्व और पश्चात क्विज़ शामिल हैं, पाठ पूरा करने के लिए लिखित निर्देश, एक समाधान, असाइनमेंट और बहुत कुछ। हमारी परियोजना-आधारित शिक्षण पद्धति आपको निर्माण करते हुए सीखने की अनुमति देती है, जो नई क्षमताओं को 'टिकाए रखने' का bewezen तरीका है।
माइक्रोसॉफ्ट के Azure क्लाउड अधिवक्ताओं को IoT मूल बातें सिखाने वाला 12 सप्ताह, 24-लक्ष्य वाला पाठ्यक्रम प्रस्तुत करते हुए खुशी हो रही है। प्रत्येक पाठ में पूर्व और पश्चात क्विज, लिखित निर्देश, समाधान, असाइनमेंट और अधिक शामिल हैं। हमारी परियोजना-आधारित शिक्षण पद्धति आपको बनाते हुए सीखने देती है, जो नई कौशल को अच्छे से सीखने का एक प्रमाणित तरीका है।
परियोजनाएं भोजन के खेत से तालिका तक यात्रा को कवर करती हैं। इसमें खेती, लॉजिस्टिक्स, विनिर्माण, रिटेल और उपभोक्ता शामिल हैं — सभी IoT उपकरणों के लिए लोकप्रिय उद्योग क्षेत्र।
परियोजनाएं खाद्य यात्रा को खेत से मेज तक कवर करती हैं। इसमें खेती, लॉजिस्टिक्स, निर्माण, रिटेल और उपभोक्ता शामिल हैं ये सभी IoT उपकरणों के लिए लोकप्रिय उद्योग क्षेत्र हैं
![पाठ्यक्रम के लिए रोड मैप जो 24 पाठों को आवरण करता है जिनमें इंट्रो, खेती, परिवहन, प्रसंस्करण, रिटेल और खाना पकाने शामिल हैं](../../translated_images/hi/Roadmap.bb1dec285dda0eda.webp)
![पाठ्यक्रम के लिए 24 पाठों का रोडमैप जो परिचय, खेती, परिवहन, प्रसंस्करण, रिटेल और खाना पकाने को कवर करता है](../../translated_images/hi/Roadmap.bb1dec285dda0eda.webp)
> स्केचनोट द्वारा [Nitya Narasimhan](https://github.com/nitya)। बड़ी छवि के लिए चित्र पर क्लिक करें।
> स्केच नोट [Nitya Narasimhan](https://github.com/nitya) द्वारा। बड़ी प्रति के लिए चित्र पर क्लिक करें।
**हमारे लेखकों [Jen Fox](https://github.com/jenfoxbot), [Jen Looper](https://github.com/jlooper), [Jim Bennett](https://github.com/jimbobbennett), और हमारे स्केचनोट कलाकार [Nitya Narasimhan](https://github.com/nitya) को हार्दिक धन्यवाद।**
**हमारे लेखकों [Jen Fox](https://github.com/jenfoxbot), [Jen Looper](https://github.com/jlooper), [Jim Bennett](https://github.com/jimbobbennett), और हमारे स्केच नोट कलाकार [Nitya Narasimhan](https://github.com/nitya) को हार्दिक धन्यवाद।**
**हमारी टीम के [Microsoft Learn Student Ambassadors](https://studentambassadors.microsoft.com?WT.mc_id=academic-17441-jabenn) को भी धन्यवाद जिन्होंने इस पाठ्यक्रम की समीक्षा और अनुवाद किया है - [Aditya Garg](https://github.com/AdityaGarg00), [Anurag Sharma](https://github.com/Anurag-0-1-A), [Arpita Das](https://github.com/Arpiiitaaa), [Aryan Jain](https://www.linkedin.com/in/aryan-jain-47a4a1145/), [Bhavesh Suneja](https://github.com/EliteWarrior315), [Faith Hunja](https://faithhunja.github.io/), [Lateefah Bello](https://www.linkedin.com/in/lateefah-bello/), [Manvi Jha](https://github.com/Severus-Matthew), [Mireille Tan](https://www.linkedin.com/in/mireille-tan-a4834819a/), [Mohammad Iftekher (Iftu) Ebne Jalal](https://github.com/Iftu119), [Mohammad Zulfikar](https://github.com/mohzulfikar), [Priyanshu Srivastav](https://www.linkedin.com/in/priyanshu-srivastav-b067241ba), [Thanmai Gowducheruvu](https://github.com/innovation-platform), और [Zina Kamel](https://www.linkedin.com/in/zina-kamel/)।**
**साथ ही हमारे [Microsoft Learn Student Ambassadors](https://studentambassadors.microsoft.com?WT.mc_id=academic-17441-jabenn) की टीम को भी धन्यवाद जिन्होंने इस पाठ्यक्रम की समीक्षा एवं अनुवाद किया - [Aditya Garg](https://github.com/AdityaGarg00), [Anurag Sharma](https://github.com/Anurag-0-1-A), [Arpita Das](https://github.com/Arpiiitaaa), [Aryan Jain](https://www.linkedin.com/in/aryan-jain-47a4a1145/), [Bhavesh Suneja](https://github.com/EliteWarrior315), [Faith Hunja](https://faithhunja.github.io/), [Lateefah Bello](https://www.linkedin.com/in/lateefah-bello/), [Manvi Jha](https://github.com/Severus-Matthew), [Mireille Tan](https://www.linkedin.com/in/mireille-tan-a4834819a/), [Mohammad Iftekher (Iftu) Ebne Jalal](https://github.com/Iftu119), [Mohammad Zulfikar](https://github.com/mohzulfikar), [Priyanshu Srivastav](https://www.linkedin.com/in/priyanshu-srivastav-b067241ba), [Thanmai Gowducheruvu](https://github.com/innovation-platform), और [Zina Kamel](https://www.linkedin.com/in/zina-kamel/)।**
टीम से मिलिए!
[![Promo video](../../images/IOT.gif)](https://youtu.be/-wippUJRi5k)
[![प्रमो वीडियो](../../images/IOT.gif)](https://youtu.be/-wippUJRi5k)
**Gif द्वारा** [Mohit Jaisal](https://linkedin.com/in/mohitjaisal)
> 🎥 परियोजना के बारे में वीडियो के लिए ऊपर की छवि पर क्लिक करें!
> 🎥 वीडियो के लिए ऊपर दिए चित्र पर क्लिक करें!
> **शिक्षकों** के लिए, हमने इस पाठ्यक्रम के उपयोग पर कुछ सुझाव [शामिल किए हैं](for-teachers.md)। यदि आप अपने खुद के पाठ बनाना चाहते हैं, तो हमने एक [पाठ टेम्पलेट](lesson-template/README.md) भी शामिल किया है।
> **शिक्षकों**, हमने इस पाठ्यक्रम के लिए [कुछ सुझाव शामिल किए हैं](for-teachers.md). यदि आप अपने स्वयं के पाठ बनाना चाहते हैं, तो हमने एक [पाठ टेम्पलेट](lesson-template/README.md) भी शामिल किया है।
> **[छात्रों](https://aka.ms/student-page)**, इस पाठ्यक्रम का उपयोग अपने आप करने के लिए, पूरी रिपॉजिटरी फ़орк करें और अभ्यास खुद करें, प्रारंभ में पूर्व-व्याख्यान क्विज़ के साथ, फिर व्याख्यान पढ़ें और बाकी गतिविधियों को पूरा करें। परियोजनाओं को समाधान कोड को कॉपी करने के बजाय पाठों को समझकर बनाने का प्रयास करें; हालाँकि वह कोड प्रत्येक परियोजना-आधारित पाठ में /solutions फ़ोल्डर में उपलब्ध है। एक अन्य विचार यह हो सकता है कि दोस्तों के साथ एक अध्ययन समूह बनाएं और सामग्रियों को एक साथ पढ़ें। आगे के अध्ययन के लिए, हम [Microsoft Learn](https://docs.microsoft.com/users/jimbobbennett/collections/ke2ehd351jopwr?WT.mc_id=academic-17441-jabenn) की सिफरिश करते हैं।
> **[छात्रों](https://aka.ms/student-page)**, यदि आप यह पाठ्यक्रम स्वयं उपयोग करना चाहते हैं, तो पूरे रिपॉजिटरी को फोर्क करें और अभ्यास स्वयं पूरा करें, एक पूर्व-लेक्चर क्विज़ से शुरू करें, फिर व्याख्यान पढ़ें और बाकी गतिविधियां पूर्ण करें। प्रयास करें कि समाधान कोड की नकल करने के बजाय पाठ को समझकर परियोजनाएं बनाएं; हालांकि यह कोड प्रत्येक परियोजना-केन्द्रित पाठ में /solutions फ़ोल्डर में उपलब्ध है। एक अन्य विचार यह है कि दोस्तों के साथ अध्ययन समूह बनाएं और सामग्री साथ में पढ़ें। आगे अध्ययन के लिए, हम [Microsoft Learn](https://docs.microsoft.com/users/jimbobbennett/collections/ke2ehd351jopwr?WT.mc_id=academic-17441-jabenn) की अनुशंसा करते हैं।
इस कोर्स का वीडियो अवलोकन देखने के लिए, यह वीडियो देखें:
इस पाठ्यक्रम का वीडियो अवलोकन देखने के लिए यह वीडियो देखें:
[![Promo video](https://img.youtube.com/vi/bccEMm8gRuc/0.jpg)](https://youtube.com/watch?v=bccEMm8gRuc "Promo video")
[![प्रमो वीडियो](https://img.youtube.com/vi/bccEMm8gRuc/0.jpg)](https://youtube.com/watch?v=bccEMm8gRuc "प्रमो वीडियो")
> 🎥 परियोजना के बारे में वीडियो के लिए ऊपर की छवि पर क्लिक करें!
> 🎥 वीडियो के लिए ऊपर दिए चित्र पर क्लिक करें!
## शिक्षाशास्त्र
## शिक्षण पद्धति
इस पाठ्यक्रम को बनाते समय हमने दो शिक्षाशास्त्र के सिद्धांत चुने हैं: यह सुनिश्चित करना कि यह परियोजना-आधारित हो और इसमें बार-बार क्विज़ शामिल हों। इस श्रृंखला के अंत तक, छात्र एक पौधे की निगरानी और पानी देने वाली प्रणाली, एक वाहन ट्रैकर, खाद्य निगरानी और जांच के लिए एक स्मार्ट फैक्ट्री सेटअप, और एक आवाज नियंत्रित खाना पकाने वाला टाइमर बनाएंगे, और इंटरनेट ऑफ़ थिंग्स के मूल सिद्धांत सीखेंगे जिसमें उपकरण कोड लिखना, क्लाउड से कनेक्ट करना, टेलीमेट्री का विश्लेषण करना और एज पर AI चलाना शामिल है
इस पाठ्यक्रम को बनाते समय हमने दो शिक्षण सिद्धांत चुने हैं: इसे परियोजना-आधारित रखना और नियमित क्विज़ शामिल करना। इस श्रृंखला के अंत तक, छात्र एक पौधा निगरानी और पानी देने की प्रणाली, एक वाहन ट्रैकर, खाद्य निगरानी और जाँच के लिए स्मार्ट फैक्ट्री सेटअप, और एक आवाज़-नियंत्रित खाना पकाने वाला टाइमर बनाएंगे, साथ ही IoT की मूल बातें सीखेंगे जैसे कि डिवाइस कोड लिखना, क्लाउड से कनेक्ट करना, टेलीमेट्री विश्लेषण करना और एज पर AI चलाना।
सामग्री को परियोजनाओं के अनुसार संरेखित करके, प्रक्रिया छात्रों के लिए अधिक रोचक बनती है और अवधारणाओं की पकड़ बढ़ती है।
इस बात को सुनिश्चित करके कि सामग्री परियोजनाओं के अनुरूप हो, प्रक्रिया छात्रों के लिए और अधिक आकर्षक बनती है और अवधारणाओं को बेहतर बनाए रखने में मदद मिलती है।
इसके अतिरिक्त, कक्षा से पहले एक हल्का क्विज़ छात्र की सीखने की मंशा तय करता है, जबकि कक्षा के बाद दूसरा क्विज़ अधिक अवधारण सुनिश्चित करता है। यह पाठ्यक्रम लचीला और मजेदार बनाने के लिए डिज़ाइन किया गया है और इसे पूरी तरह या आंशिक रूप से लिया जा सकता है। परियोजनाएं छोटी शुरू होती हैं और 12-सप्ताह की अवधि के अंत तक धीरे-धीरे जटिल होती जाती हैं।
इसके अलावा, कक्षा से पहले एक कम-दबाव वाला क्विज़ छात्र को विषय सीखने की मंशा सेट करता है, जबकि कक्षा के बाद दूसरा क्विज़ और अधिक अवधारणाओं के विरूपण को सुनिश्चित करता है। यह पाठ्यक्रम लचीला और मजेदार बनाया गया है और इसे पूरी तरह या आंशिक रूप में लिया जा सकता है। परियोजनाएं छोटी शुरू होती हैं और 12 सप्ताह के चक्र के अंत तक धीरे-धीरे जटिल होती जाती हैं।
प्रत्येक परियोजना वास्तविक-विश्व हार्डवेयर पर आधारित है जो छात्रों और शौकियों के लिए उपलब्ध है। प्रत्येक परियोजना में संबंधित पृष्ठभूमि ज्ञान प्रदान किया जाता है ताकि वे IoT समाधान और अध्ययन को उस प्रकार की वास्तविक दुनिया की समस्या के संदर्भ में सोच सकें जिसे उन्हें IoT डेवलपर के रूप में हल करने के लिए कहा जा सकता है। छात्र वे समाधान क्यों बना रहे हैं यह सीखते हैं, और अंतिम उपयोगकर्ता की सराहना करते हैं।
प्रत्येक परियोजना वास्तविक दुनिया के हार्डवेयर पर आधारित होती है जो छात्रों और शौकिया लोगों के लिए उपलब्ध है। प्रत्येक परियोजना अपने विशिष्ट डोमेन का अध्ययन करती है, जिससे प्रासंगिक पृष्ठभूमि ज्ञान प्रदान होता है। सफल डेवलपर बनने के लिए अपने समाधान के क्षेत्र को समझना मददगार होता है, और यह पृष्ठभूमि ज्ञान छात्रों को उनके IoT समाधानों और उनके अध्ययन को उस प्रकार की वास्तविक समस्या के संदर्भ में सोचने में मदद करता है, जिसे एक IoT डेवलपर के रूप में हल करने के लिए कहा जा सकता है। छात्र उन समाधानों के 'क्यों' को समझते हैं जो वे बना रहे हैं, और अंतिम उपयोगकर्ता के लिए एक सराहना प्राप्त करते हैं।
## हार्डवेयर
हम परियोजनाओं के लिए व्यक्तिगत पसंद, प्रोग्रामिंग भाषा ज्ञान या प्राथमिकताओं, सीखने के लक्ष्यों और उपलब्धता के आधार पर उपयोग करने के लिए दो प्रकार के IoT हार्डवेयर विकल्प रखते हैं। हमने उन लोगों के लिए एक 'वर्चुअल हार्डवेयर' संस्करण भी प्रदान किया है जिनके पास हार्डवेयर तक पहुंच नहीं है, या जो खरीदारी करने से पहले अधिक सीखना चाहते हैं। आप [hardware page](./hardware.md) पर अधिक पढ़ सकते हैं और एक 'शॉपिंग लिस्ट' पा सकते हैं, जिसमें हमारे मित्र Seeed Studio से पूर्ण किट खरीदने के लिंक भी शामिल हैं।
हमारे पास परियोजनाओं के लिए दो IoT हार्डवेयर विकल्प हैं, जो व्यक्तिगत पसंद, प्रोग्रामिंग भाषा ज्ञान या प्राथमिकताओं, सीखने के उद्देश्यों और उपलब्धता पर निर्भर करते हैं। हम उन लोगों के लिए एक 'वर्चुअल हार्डवेयर' संस्करण भी प्रदान करते हैं जिनके पास हार्डवेयर तक पहुंच नहीं है, या जो खरीदारी से पहले अधिक सीखना चाहते हैं। आप [hardware page](./hardware.md) पर और पढ़ सकते हैं और 'शॉपिंग सूची' पा सकते हैं, जिसमें हमारे दोस्तों Seeed Studio से पूर्ण किट खरीदने के लिंक शामिल हैं।
> 💁 हमारे [आचार संहिता](CODE_OF_CONDUCT.md), [योगदान](CONTRIBUTING.md), और [अनुवाद](TRANSLATIONS.md) दिशानिर्देश देखें। हम आपकी रचनात्मक प्रतिक्रिया का स्वागत करते हैं!
>
> 🔧 समस्या आ रही है? सामान्य समस्याओं के समाधान के लिए हमारी [समस्या निवारण गाइड](TROUBLESHOOTING.md) देखें।
> 💁 हमारे [Code of Conduct](CODE_OF_CONDUCT.md), [Contributing](CONTRIBUTING.md), और [Translation](TRANSLATIONS.md) दिशानिर्देश देखें। हम आपकी रचनात्मक प्रतिक्रिया का स्वागत करते हैं!
>
> 🔧 समस्या आ रही है? आम समस्याओं के समाधान के लिए हमारे [Troubleshooting Guide](TROUBLESHOOTING.md) को देखें।
## प्रत्येक पाठ में शामिल हैं:
- स्केचनोट
- वैकल्पिक पूरक वीडियो
- प्री-लेसन वार्मअप क्विज़
- लिखित पाठ
- प्रोजेक्ट-आधारित पाठों के लिए, प्रोजेक्ट बनाने के चरण-दर-चरण गाइड
- ज्ञान जांच
- एक चुनौती
- पूरक पढ़ाई
- असाइनमेंट
- [ोस्ट-लेसन क्विज़](https://ff-quizzes.netlify.app/en/)
- स्केचनोट
- वैकल्पिक पूरक वीडियो
- पूर्व-पाठ वार्मअप क्विज़
- लिखित पाठ
- परियोजना-आधारित पाठों के लिए, परियोजना बनाने के लिए चरण-दर-चरण मार्गदर्शिका
- ज्ञान जांच
- एक चुनौती
- पूरक पठन
- असाइनमेंट
- [ाठ के बाद क्विज़](https://ff-quizzes.netlify.app/en/)
> **क्विज़ के बारे में एक नोट**: सभी क्विज़ क्विज़-एप फोल्डर में होते हैं, जिसमें 48 कुल क्विज़ हैं, प्रत्येक में तीन प्रश्न होते हैं। वे पाठों के भीतर लिंक किए गए हैं, लेकिन क्विज़ ऐप को लोकली चला सकते हैं या Azure पर डिप्लॉय कर सकते हैं; `quiz-app` फोल्डर में निर्देशों का पालन करें। इन्हें धीरे-धीरे स्थानीयकृत किया जा रहा है।
> **क्विज़ के बारे में एक नोट**: सभी क्विज़ quiz-app फ़ोल्डर में संचित हैं, जिनमें कुल 48 क्विज़ हैं, प्रत्येक में तीन प्रश्न। वे पाठों के भीतर लिंक किए गए हैं लेकिन quiz app को स्थानीय रूप से चलाया जा सकता है या Azure पर डिप्लॉय किया जा सकता है; 'quiz-app' फ़ोल्डर में दिए गए निर्देशों का पालन करें। इन्हें धीरे-धीरे स्थानीयकृत किया जा रहा है।
## पाठ
| | परियोजना नाम | सिखाए गए अवधारणाए | सीखने के उद्देश्य | लिंक्ड पाठ |
| :---: | :------------------------------------: | :---------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------: |
| 01 | [शुरुआत करना](./1-getting-started/README.md) | IoT का परिचय | IoT के मूल सिद्धांत सीखें और IoT समाधानों के मूलभूत घटकों जैसे सेंसर और क्लाउड सेवाओं के बारे में जानें जब आप अपना पहला IoT उपकरण सेट कर रहे हों | [IoT का परिचय](./1-getting-started/lessons/1-introduction-to-iot/README.md) |
| 02 | [शुरुआत करना](./1-getting-started/README.md) | IoT में गहराई से जाना | एक IoT सिस्टम के घटकों के बारे में अधिक जानें, साथ ही माइक्रोकंट्रोलर और सिंगल-बोर्ड कंप्यूटर्स के बारे में | [IoT में गहराई से जाना](./1-getting-started/lessons/2-deeper-dive/README.md) |
| 03 | [शुरुआत करना](./1-getting-started/README.md) | सेंसर और एक्ट्यूएटर्स के साथ भौतिक दुनिया के साथ इंटरैक्ट करें | भौतिक दुनिया से डेटा इकट्ठा करने के लिए सेंसर और प्रतिक्रिया भेजने के लिए एक्ट्यूएटर्स के बारे में जानें, जब आप एक नाइटलाइट बना रहे हों | [सेंसर और एक्ट्यूएटर्स के साथ भौतिक दुनिया के साथ इंटरैक्ट करें](./1-getting-started/lessons/3-sensors-and-actuators/README.md) |
| 04 | [शुरुआत करना](./1-getting-started/README.md) | अपने डिवाइस को इंटरनेट से कनेक्ट करें | अपने नाइटलाइट को एक MQTT ब्रोकर से जोड़कर IoT उपकरण को इंटरनेट से कनेक्ट करने के बारे में जानें ताकि संदेश भेजें और प्राप्त करें | [अपने डिवाइस को इंटरनेट से कनेक्ट करें](./1-getting-started/lessons/4-connect-internet/README.md) |
| 05 | [फार्म](./2-farm/README.md) | पौधों की वृद्धि का पूर्वानुमान | IoT डिवाइस द्वारा कब्जा किए गए तापमान डेटा का उपयोग करके पौधों की वृद्धि का पूर्वानुमान लगाना | [पौधों की वृद्धि का पूर्वानुमान](./2-farm/lessons/1-predict-plant-growth/README.md) |
| 06 | [फार्म](./2-farm/README.md) | मिट्टी की नमी का पता लगाएं | मिट्टी की नमी का पता लगाने और मिट्टी नमी सेंसर को कैलिब्रेट करने के बारे में जानें | [मिट्टी की नमी का पता लगाएं](./2-farm/lessons/2-detect-soil-moisture/README.md) |
| 07 | [फार्म](./2-farm/README.md) | स्वचालित पौधों को पानी देना | रिले और MQTT का उपयोग करके पानी देने को स्वचालित और टाइमिंग करना सीखें | [स्वचालित पौधों को पानी देना](./2-farm/lessons/3-automated-plant-watering/README.md) |
| 08 | [फार्म](./2-farm/README.md) | अपने पौधे को क्लाउड में माइग्रेट करें | क्लाउड और क्लाउड-होस्टेड IoT सेवाओं के बारे में जानें और अपने पौधे को एक सार्वजनिक MQTT ब्रोकर के बजाय इनमें से किसी से कनेक्ट करना | [अपने पौधे को क्लाउड में माइग्रेट करें](./2-farm/lessons/4-migrate-your-plant-to-the-cloud/README.md) |
| 09 | [फार्म](./2-farm/README.md) | अपने एप्लिकेशन लॉजिक को क्लाउड में माइग्रेट करें | क्लाउड में ऐसा एप्लिकेशन लॉजिक लिखने के बारे में जानें जो IoT संदेशों पर प्रतिक्रिया देता हो | [अपने एप्लिकेशन लॉजिक को क्लाउड में माइग्रेट करें](./2-farm/lessons/5-migrate-application-to-the-cloud/README.md) |
| 10 | [फार्म](./2-farm/README.md) | अपने पौधे को सुरक्षित रखें | IoT के साथ सुरक्षा और अपने पौधे को कुंजियों और प्रमाणपत्रों के साथ सुरक्षित रखने के बारे में जानें | [अपने पौधे को सुरक्षित रखें](./2-farm/lessons/6-keep-your-plant-secure/README.md) |
| 11 | [परिवहन](./3-transport/README.md) | स्थान ट्रैकिंग | IoT उपकरणों के लिए GPS स्थान ट्रैकिंग के बारे में जानें | [स्थान ट्रैकिंग](./3-transport/lessons/1-location-tracking/README.md) |
| 12 | [परिवहन](./3-transport/README.md) | स्थान डेटा संग्रहीत करें | बाद में विज़ुअलाइज़ या विश्लेषण के लिए IoT डेटा संग्रहीत करने के बारे में जानें | [स्थान डेटा संग्रहीत करें](./3-transport/lessons/2-store-location-data/README.md) |
| 13 | [परिवहन](./3-transport/README.md) | स्थान डेटा विज़ुअलाइज़ करें | मानचित्र पर स्थान डेटा का विज़ुअलाइज़ेशन और मानचित्र कैसे वास्तविक 3डी दुनिया का 2 आयामी रूप दिखाते हैं, इसके बारे में जानें | [स्थान डेटा विज़ुअलाइज़ करें](./3-transport/lessons/3-visualize-location-data/README.md) |
| 14 | [परिवहन](./3-transport/README.md) | जियोफेन्स | जियोफेन्स के बारे में जानें, और वे कैसे सप्लाई चैन में वाहनों के उनके गंतव्य के करीब आने पर अलर्ट देने के लिए उपयोग किए जा सकते हैं | [जियोफेन्स](./3-transport/lessons/4-geofences/README.md) |
| 15 | [उत्पादन](./4-manufacturing/README.md) | एक फल गुणवत्ता डिटेक्टर प्रशिक्षित करें | क्लाउड में एक इमेज क्लासिफायर को प्रशिक्षित करने के बारे में जानें जो फल की गुणवत्ता का पता लगाता है | [एक फल गुणवत्ता डिटेक्टर प्रशिक्षित करें](./4-manufacturing/lessons/1-train-fruit-detector/README.md) |
| 16 | [उत्पादन](./4-manufacturing/README.md) | IoT डिवाइस से फल गुणवत्ता जांचें | अपने फल गुणवत्ता डिटेक्टर को एक IoT डिवाइस से उपयोग करने के बारे में जानें | [IoT डिवाइस से फल गुणवत्ता जांचें](./4-manufacturing/lessons/2-check-fruit-from-device/README.md) |
| 17 | [उत्पादन](./4-manufacturing/README.md) | एज पर अपना फल डिटेक्टर चलाएं | एज पर IoT डिवाइस पर अपना फल डिटेक्टर चलाने के बारे में जानें | [एज पर अपना फल डिटेक्टर चलाएं](./4-manufacturing/lessons/3-run-fruit-detector-edge/README.md) |
| 18 | [उत्पादन](./4-manufacturing/README.md) | सेंसर से फल गुणवत्ता डिटेक्शन को ट्रिगर करें | सेंसर से फल गुणवत्ता डिटेक्शन को ट्रिगर करने के बारे में जानें | [सेंसर से फल गुणवत्ता डिटेक्शन को ट्रिगर करें](./4-manufacturing/lessons/4-trigger-fruit-detector/README.md) |
| 19 | [रिटेल](./5-retail/README.md) | स्टॉक डिटेक्टर ट्रेन करें | वस्तु पहचान का उपयोग करके एक स्टॉक डिटेक्टर को प्रशिक्षित करना सीखें जो दुकान में स्टॉक की गिनती करता है | [स्टॉक डिटेक्टर ट्रेन करें](./5-retail/lessons/1-train-stock-detector/README.md) |
| 20 | [रिटेल](./5-retail/README.md) | IoT डिवाइस से स्टॉक जांचें | वस्तु पहचान मॉडल का उपयोग करके IoT डिवाइस से स्टॉक जांचने के बारे में जानें | [IoT डिवाइस से स्टॉक जांचें](./5-retail/lessons/2-check-stock-device/README.md) |
| 21 | [उपभोक्ता](./6-consumer/README.md) | IoT डिवाइस से भाषण की पहचान करें | IoT डिवाइस से भाषण की पहचान कैसे करें यह सीखें ताकि एक स्मार्ट टाइमर बनाया जा सके | [IoT डिवाइस से भाषण की पहचान करें](./6-consumer/lessons/1-speech-recognition/README.md) |
| 22 | [उपभोक्ता](./6-consumer/README.md) | भाषा को समझें | IoT डिवाइस को बोले गए वाक्यों को समझने के बारे में जानें | [भाषा को समझें](./6-consumer/lessons/2-language-understanding/README.md) |
| 23 | [उपभोक्ता](./6-consumer/README.md) | टाइमर सेट करें और बोले गए फीडबैक प्रदान करें | IoT डिवाइस पर टाइमर कैसे सेट करें और जब टाइमर सेट होता है और समाप्त होता है तो बोले गए फीडबैक कैसे दें, यह सीखें | [टाइमर सेट करें और बोले गए फीडबैक दें](./6-consumer/lessons/3-spoken-feedback/README.md) |
| 24 | [उपभोक्ता](./6-consumer/README.md) | कई भाषाओं का समर्थन करें | कई भाषाओं का समर्थन कैसे करें, दोनों बोले जाने वाले और आपके स्मार्ट टाइमर से प्रतिक्रियाओं में | [कई भाषाओं का समर्थन करें](./6-consumer/lessons/4-multiple-language-support/README.md) |
## ऑफलाइन पहुँच
आप इस दस्तावेज़ को ऑफलाइन चला सकते हैं [Docsify](https://docsify.js.org/#/) का उपयोग करके। इस रेपो को फ़ोर्क करें, अपने स्थानीय मशीन पर [Docsify इंस्टॉल करें](https://docsify.js.org/#/quickstart), और फिर इस रेपो के रूट फ़ोल्डर में `docsify serve` टाइप करें। वेबसाइट आपके लोकलहोस्ट पर पोर्ट 3000 पर सर्व की जाएगी: `localhost:3000`
| | परियोजना का नाम | सिखाए गए अवधारणाए | सीखने के उद्देश्य | लिंक किया गया पाठ |
| :---: | :------------------------------------: | :---------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------: |
| 01 | [शुरुआत करना](./1-getting-started/README.md) | IoT का परिचय | IoT के मूल सिद्धांतों और IoT समाधानों के बुनियादी घटकों जैसे सेंसर्स और क्लाउड सेवाओं को सीखें, जब आप अपना पहला IoT डिवाइस सेटअप कर रहे हों | [IoT का परिचय](./1-getting-started/lessons/1-introduction-to-iot/README.md) |
| 02 | [शुरुआत करना](./1-getting-started/README.md) | IoT में गहरा गोता | IoT सिस्टम के घटकों के बारे में अधिक जानें, साथ ही माइक्रोकंट्रोलर और सिंगल-बोर्ड कंप्यूटर के बारे में | [IoT में गहरा गोता](./1-getting-started/lessons/2-deeper-dive/README.md) |
| 03 | [शुरुआत करना](./1-getting-started/README.md) | सेंसर्स और एक्ट्यूएटर्स के साथ भौतिक दुनिया के साथ इंटरैक्ट करें | भौतिक दुनिया से डेटा इकट्ठा करने के लिए सेंसर्स और प्रतिक्रिया भेजने के लिए एक्ट्यूएटर्स के बारे में जानें, साथ ही एक नाइटलाइट बनाएं | [सेंसर्स और एक्ट्यूएटर्स के साथ भौतिक दुनिया के साथ इंटरैक्ट करें](./1-getting-started/lessons/3-sensors-and-actuators/README.md) |
| 04 | [शुरुआत करना](./1-getting-started/README.md) | अपने डिवाइस को इंटरनेट से कनेक्ट करें | इंटरनेट से संदेश भेजने और प्राप्त करने के लिए अपने नाइटलाइट को MQTT ब्रोकरेज से कनेक्ट करते हुए IoT डिवाइस को इंटरनेट से कनेक्ट करने के बारे में जानें | [अपने डिवाइस को इंटरनेट से कनेक्ट करें](./1-getting-started/lessons/4-connect-internet/README.md) |
| 05 | [फार्म](./2-farm/README.md) | पौधे की 성장 की भविष्यवाणी | IoT डिवाइस द्वारा कैप्चर किए गए तापमान डेटा का उपयोग करके पौधे की वृद्धि की भविष्यवाणी कैसे करें सीखें | [पौधे की वृद्धि की भविष्यवाणी](./2-farm/lessons/1-predict-plant-growth/README.md) |
| 06 | [फार्म](./2-farm/README.md) | मिट्टी की नमी का पता लगाएं | मिट्टी की नमी को कैसे पता करें और मिट्टी की नमी सेंसर को कैलिब्रेट करें | [मिट्टी की नमी का पता लगाएं](./2-farm/lessons/2-detect-soil-moisture/README.md) |
| 07 | [फार्म](./2-farm/README.md) | पौधों को स्वचालित रूप से पानी देना | रिले और MQTT का उपयोग करके पानी देने को स्वचालित और समयबद्ध कैसे करें | [स्वचालित पौधों को पानी देना](./2-farm/lessons/3-automated-plant-watering/README.md) |
| 08 | [फार्म](./2-farm/README.md) | अपने पौधे को क्लाउड में स्थानांतरित करें | क्लाउड और क्लाउड-होस्टेड IoT सेवाओं के बारे में जानें और जनसाधारण MQTT ब्रोकरेज की बजाय अपने पौधे को इनमें से किसी एक से कैसे जोड़ा जाता है | [अपने पौधे को क्लाउड में स्थानांतरित करें](./2-farm/lessons/4-migrate-your-plant-to-the-cloud/README.md) |
| 09 | [फार्म](./2-farm/README.md) | अपने एप्लिकेशन लॉजिक को क्लाउड में स्थानांतरित करें | क्लाउड में एप्लिकेशन लॉजिक कैसे लिखें जो IoT संदेशों का जवाब देता है | [अपने एप्लिकेशन लॉजिक को क्लाउड में स्थानांतरित करें](./2-farm/lessons/5-migrate-application-to-the-cloud/README.md) |
| 10 | [फार्म](./2-farm/README.md) | अपने पौधे को सुरक्षित रखें | IoT सुरक्षा के बारे में जानें और कुंजियाँ और प्रमाणपत्रों के साथ अपने पौधे को सुरक्षित रखने के तरीके | [अपने पौधे को सुरक्षित रखें](./2-farm/lessons/6-keep-your-plant-secure/README.md) |
| 11 | [ट्रांसपोर्ट](./3-transport/README.md) | स्थान ट्रैकिंग | IoT डिवाइस के लिए GPS स्थान ट्रैकिंग के बारे में जानें | [स्थान ट्रैकिंग](./3-transport/lessons/1-location-tracking/README.md) |
| 12 | [ट्रांसपोर्ट](./3-transport/README.md) | स्थान डेटा संग्रहीत करें | बाद में दिखाने या विश्लेषण के लिए IoT डेटा कैसे संग्रहित करें | [स्थान डेटा संग्रहीत करें](./3-transport/lessons/2-store-location-data/README.md) |
| 13 | [ट्रांसपोर्ट](./3-transport/README.md) | स्थान डेटा का दृश्य बनाएं | एक नक्शे पर स्थान डेटा की दृश्यता के बारे में जानें, और कैसे नक्शे वास्तविक 3D दुनिया को 2 आयामों में दर्शाते हैं | [स्थान डेटा का दृश्य बनाएं](./3-transport/lessons/3-visualize-location-data/README.md) |
| 14 | [ट्रांसपोर्ट](./3-transport/README.md) | जिओफेंसिंग | जिओफेंसिंग के बारे में जानें, और वे आपूर्ति श्रृंखला में वाहनों को उनके गंतव्य के नजदीक होने पर चेतावनी देने के लिए कैसे उपयोग किए जा सकते हैं | [जिओफेंसिंग](./3-transport/lessons/4-geofences/README.md) |
| 15 | [निर्माण](./4-manufacturing/README.md) | फल गुणवत्ता डिटेक्टर का प्रशिक्षण | क्लाउड में छवि वर्गीकर्ता का प्रशिक्षण देकर फल गुणवत्ता का पता लगाने के बारे में जानें | [फल गुणवत्ता डिटेक्टर का प्रशिक्षण](./4-manufacturing/lessons/1-train-fruit-detector/README.md) |
| 16 | [निर्माण](./4-manufacturing/README.md) | IoT डिवाइस से फल गुणवत्ता की जांच | IoT डिवाइस से अपने फल गुणवत्ता डिटेक्टर का उपयोग कैसे करें यह जानें | [IoT डिवाइस से फल गुणवत्ता की जांच](./4-manufacturing/lessons/2-check-fruit-from-device/README.md) |
| 17 | [निर्माण](./4-manufacturing/README.md) | एज पर अपने फल डिटेक्टर को चलाएं | एज पर IoT डिवाइस पर अपने फल डिटेक्टर को चलाने के बारे में जानें | [एज पर अपने फल डिटेक्टर को चलाएं](./4-manufacturing/lessons/3-run-fruit-detector-edge/README.md) |
| 18 | [निर्माण](./4-manufacturing/README.md) | सेंसर से फल गुणवत्ता का पता लगाना चालित करें | सेंसर से फल गुणवत्ता पता लगाने को ट्रिगर करने के बारे में जानें | [सेंसर से फल गुणवत्ता का पता लगाना चालित करें](./4-manufacturing/lessons/4-trigger-fruit-detector/README.md) |
| 19 | [रिटेल](./5-retail/README.md) | स्टॉक डिटेक्टर का प्रशिक्षण | वस्तु पहचान का उपयोग करके दुकान में स्टॉक की गिनती के लिए स्टॉक डिटेक्टर का प्रशिक्षण कैसे करें सीखें | [स्टॉक डिटेक्टर का प्रशिक्षण](./5-retail/lessons/1-train-stock-detector/README.md) |
| 20 | [रिटेल](./5-retail/README.md) | IoT डिवाइस से स्टॉक जांचें | वस्तु पहचान मॉडल का उपयोग करके IoT डिवाइस से स्टॉक कैसे जांचें यह जानें | [IoT डिवाइस से स्टॉक जांचें](./5-retail/lessons/2-check-stock-device/README.md) |
| 21 | [उपभोक्ता](./6-consumer/README.md) | IoT डिवाइस के साथ भाषण पहचान | एक स्मार्ट टाइमर बनाने के लिए IoT डिवाइस से भाषण को पहचानने के बारे में जानें | [IoT डिवाइस के साथ भाषण पहचान](./6-consumer/lessons/1-speech-recognition/README.md) |
| 22 | [उपभोक्ता](./6-consumer/README.md) | भाषा को समझें | IoT डिवाइस से बोले गए वाक्यों को समझने के बारे में जानें | [भाषा को समझें](./6-consumer/lessons/2-language-understanding/README.md) |
| 23 | [उपभोक्ता](./6-consumer/README.md) | टाइमर सेट करें और बोले गए फीडबैक को प्रदान करें | IoT डिवाइस पर टाइमर सेट करना और टाइमर सेट होने और समाप्त होने पर बोले गए फीडबैक को देना सीखें | [टाइमर सेट करें और बोले गए फीडबैक को प्रान करें](./6-consumer/lessons/3-spoken-feedback/README.md) |
| 24 | [उपभोक्ता](./6-consumer/README.md) | कई भाषाओं का समर्थन करें | बोली जाने वाली और आपके स्मार्ट टाइमर से प्रतिक्रियाओं दोनों भाषाओं का सर्थन करना सीखें | [कई भाषाओं का समर्थन करें](./6-consumer/lessons/4-multiple-language-support/README.md) |
## ऑफलाइन एक्सेस
आप इस दस्तावेज़ को ऑफलाइन [Docsify](https://docsify.js.org/#/) का उपयोग करके चला सकते हैं। इस रिपो को फोर्क करें, अपने स्थानीय मशीन पर [Docsify इंस्टॉल करें](https://docsify.js.org/#/quickstart), और फिर इस रिपो के रूट फोल्डर में टाइप करें `docsify serve`। वेबसाइट आपके लोकलहोस्ट पर पोर्ट 3000 पर चलती है: `localhost:3000`
## क्विज़
प्रत्येक अध्याय पर आपकी ज्ञान परीक्षा लेने के लिए इंटरेक्टिव क्विज़ की मेजबानी करने के लिए समुदाय का धन्यवाद। आप अपनी जानकारी [यहाँ](https://ff-quizzes.netlify.app/en/) पर परीक्षा ले सकते हैं।
प्रत्येक अध्याय पर आपके ज्ञान का परीक्षण करने वाले इंटरैक्टिव क्विज़ की मेजबानी करने के लिए समुदाय का धन्यवाद। आप यहाँ पर अपना ज्ञान जाँच सकते हैं [यहाँ](https://ff-quizzes.netlify.app/en/)
### पीडीएफ
### PDF
आप आवश्यक होने पर इस सामग्री का ऑफलाइन उपयोग के लिए पीडीएफ बना सकते हैं। ऐसा करने के लिए, सुनिश्चित करें कि आपके पास [npm इंस्टॉल है](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) और इस रेपो के रूट फ़ोल्डर में निम्न कमांड चलाएं:
आप इस सामग्री का PDF ऑफलाइन एक्सेस के लिए जेनरेट कर सकते हैं यदि आवश्यक हो। ऐसा करने के लिए, सुनिश्चित करें कि आपके पास [npm इंस्टॉल है](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) और इस रिपोजिटरी के रूट फोल्डर में निम्नलिखित कमांड चलाएँ:
```sh
npm i
npm run convert
```
### स्लाइड्स
कुछ पाठों के लिए स्लाइड डेक [slides](../../slides) फ़ोल्डर में उपलब्ध हैं।
### स्लाइड
कुछ पाठों के लिए स्लाइड डेक [slides](../../slides) फ़ोल्डर में हैं।
## अन्य पाठ्यक्रम
हमारी टीम अन्य पाठ्यक्रम भी बनाती है! देखें:
<!-- CO-OP TRANSLATOR OTHER COURSES START -->
### LangChain
[![LangChain4j for Beginners](https://img.shields.io/badge/LangChain4j%20for%20Beginners-22C55E?style=for-the-badge&&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchain4j-for-beginners)
### LangChain
[![LangChain4j for Beginners](https://img.shields.io/badge/LangChain4j%20for%20Beginners-22C55E?style=for-the-badge&&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchain4j-for-beginners)
[![LangChain.js for Beginners](https://img.shields.io/badge/LangChain.js%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchainjs-for-beginners?WT.mc_id=m365-94501-dwahlin)
[![LangChain for Beginners](https://img.shields.io/badge/LangChain%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://github.com/microsoft/langchain-for-beginners?WT.mc_id=m365-94501-dwahlin)
---
### Azure / Edge / MCP / Agents
[![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Edge AI for Beginners](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![MCP for Beginners](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए AI एजेंट](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
### Azure / Edge / MCP / Agents
[![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए एज AI](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए MCP](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए AI एजेंट्स](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### जनरेटिव AI श्रृंखला
[![शुरुआत के लिए जनरेटिव AI](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
### जनरेटिव AI सीरीज
[![शुरुआत के लिए जनरेटिव AI](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![जनरेटिव AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[![जनरेटिव AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
[![जनरेटिव AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst)
---
### मुख्य शिक्षण
[![शुरुआती के लिए ML](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए डेटा साइंस](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआती के लिए AI](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए साइबर सुरक्षा](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[![शुरुआती के लिए वेब विकास](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए IoT](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआती के लिए XR विकास](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
### कोर लर्निंग
[![शुरुआत के लिए एमएल](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए डेटा साइंस](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए एआई](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए साइबर सुरक्षा](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[![शुरुआत के लिए वेब डेवलपमेंट](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए IoT](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[![शुरुआत के लिए XR डेवलपमेंट](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### Copilot श्रृंखला
[![AI जोड़े प्रोग्रामिंग के लिए Copilot](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[![C#/.NET के लिए Copilot](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[![Copilot साहसिक कार्य](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
### कोपायलट सीरीज
[![AI जोड़ी प्रोग्रामिंग के लिए कोपायलट](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[![C#/.NET के लिए कोपायलट](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[![कोपायलट एडवेंचर](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
<!-- CO-OP TRANSLATOR OTHER COURSES END -->
## छवि श्रेय
## छवि संदर्भ
आप इस पाठ्यक्रम में उपयोग की गई छवियों के सभी श्रेय वहाँ पा सकते हैं जहाँ आवश्यकता हो [Attributions](./attributions.md) में।
आप इस पाठ्यक्रम में उपयोग की गई छवियों के सभी संदर्भ [Attributions](./attributions.md) में आवश्यकतानुसार पा सकते हैं।
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**अस्वीकरण**:
इस दस्तावेज़ का अनुवाद AI अनुवाद सेवा [Co-op Translator](https://github.com/Azure/co-op-translator) का उपयोग करके किया गया है। जबकि हम सटीकता के लिए प्रयास करते हैं, कृपया ध्यान दें कि स्वचालित अनुवादों में त्रुटियाँ या अशुद्धियाँ हो सकती हैं। मूल भाषा में दस्तावेज़ को प्राधिकृत स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए, पेशेवर मानव अनुवाद की सिफारिश की जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या गलत व्याख्या के लिए हम उत्तरदायी नहीं हैं।
इस दस्तावेज़ का अनुवाद AI अनुवाद सेवा [Co-op Translator](https://github.com/Azure/co-op-translator) का उपयोग करके किया गया है। जबकि हम सटीकता के लिए प्रयासरत हैं, कृपया इस बात से अवगत रहें कि स्वचालित अनुवादों में त्रुटियाँ या असंगतियाँ हो सकती हैं। मूल भाषा में उपलब्ध दस्तावेज़ को अधिकारिक स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए पेशेवर मानव अनुवाद की सिफारिश की जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या गलत व्याख्या के लिए हम जिम्मेदार नहीं हैं।
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -26,7 +26,7 @@ Seeed Studios ने बहुत ही उदारता से सभी ह
**[Seeed और Microsoft के साथ शुरुआती IoT - Raspberry Pi 4 स्टार्टर किट](https://www.seeedstudio.com/IoT-for-beginners-with-Seeed-and-Microsoft-Raspberry-Pi-Starter-Kit-p-5004.html)**
[![Raspberry Pi टर्मिनल हार्डवेयर किट](../../translated_images/hi/pi-hardware-kit.26dbadaedb7dd44c73b0131d5d68ea29472ed0a9744f90d5866c6d82f2d16380.png)](https://www.seeedstudio.com/IoT-for-beginners-with-Seeed-and-Microsoft-Raspberry-Pi-Starter-Kit-p-5004.html)
[![Raspberry Pi टर्मिनल हार्डवेयर किट](../../translated_images/hi/pi-hardware-kit.26dbadaedb7dd44c.webp)](https://www.seeedstudio.com/IoT-for-beginners-with-Seeed-and-Microsoft-Raspberry-Pi-Starter-Kit-p-5004.html)
## Arduino

@ -738,8 +738,8 @@
"language_code": "ja"
},
"README.md": {
"original_hash": "3fcc056cd3837e33d2bdf79f9c359fcf",
"translation_date": "2026-01-30T01:29:24+00:00",
"original_hash": "accf69391fa4450eadbf492ca024cccf",
"translation_date": "2026-04-06T16:47:57+00:00",
"source_file": "README.md",
"language_code": "ja"
},

@ -1,6 +1,6 @@
# IoT入門
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-1.2606670fa61ee904.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大版が表示されます。

@ -203,7 +203,7 @@ Python仮想環境が準備できたら、'Hello World'アプリケーション
アプリが実行され、ブラウザで開きます:
![ブラウザで実行中のCounterFitアプリ](../../../../../translated_images/ja/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.png)
![ブラウザで実行中のCounterFitアプリ](../../../../../translated_images/ja/counterfit-first-run.433326358b669b31.webp)
アプリは*Disconnected*と表示され、右上のLEDがオフになっています。
@ -224,7 +224,7 @@ Python仮想環境が準備できたら、'Hello World'アプリケーション
1. この新しいターミナルで、先ほどと同じように`app.py`ファイルを実行します。CounterFitのステータスが**Connected**に変わり、LEDが点灯します。
![接続された状態を示すCounterFit](../../../../../translated_images/ja/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.png)
![接続された状態を示すCounterFit](../../../../../translated_images/ja/counterfit-connected.ed30b46d8f79b092.webp)
> 💁 このコードは[code/virtual-device](../../../../../1-getting-started/lessons/1-introduction-to-iot/code/virtual-device)フォルダにあります。

@ -1,6 +1,6 @@
# IoTの深掘り
![このレッスンのスケッチノート概要](../../../../../translated_images/ja/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.jpg)
![このレッスンのスケッチノート概要](../../../../../translated_images/ja/lesson-2.324b0580d620c25e.webp)
> スケッチノート作成者: [Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大版が表示されます。
@ -38,7 +38,7 @@ IoTの**モThing**部分は、物理的な世界とやり取りでき
これらのデバイスは、センサーを使用して周囲のデータを収集したり、出力やアクチュエータを制御して物理的な変化を引き起こしたりすることで、物理的な世界とやり取りします。典型的な例としては、スマートサーモスタットがあります。このデバイスには温度センサー、ダイヤルやタッチスクリーンなどの希望温度を設定する手段、そして希望温度範囲外の場合に暖房や冷房システムをオンにするための接続が備わっています。温度センサーが部屋が寒すぎることを検知すると、アクチュエータが暖房をオンにします。
![IoTデバイスへの入力としての温度とダイヤル、出力としてのヒーター制御を示す図](../../../../../translated_images/ja/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.png)
![IoTデバイスへの入力としての温度とダイヤル、出力としてのヒーター制御を示す図](../../../../../translated_images/ja/basic-thermostat.a923217fd1f37e5a.webp)
IoTデバイスとして機能するものは非常に多岐にわたります。特定の機能に特化したハードウェアから、汎用デバイス、さらにはスマートフォンまで含まれます。スマートフォンは、センサーを使用して周囲の世界を検知し、アクチュエータを使用して世界とやり取りすることができます。例えば、GPSセンサーを使用して位置を検知し、スピーカーを使用して目的地へのナビゲーション指示を提供することができます。
@ -54,7 +54,7 @@ IoTアプリケーションの**インターネット**側は、IoTデバイス
スマートサーモスタットの例では、サーモスタットは家庭のWiFiを使用してクラウド上のクラウドサービスに接続します。このクラウドサービスに温度データを送信し、そこからデータベースに書き込まれ、スマートフォンアプリを使用して現在および過去の温度を確認できるようになります。クラウド内の別のサービスが、ユーザーが希望する温度を把握し、クラウドサービスを介してIoTデバイスにメッセージを送り、暖房システムをオンまたはオフにするよう指示します。
![IoTデバイスへの入力としての温度とダイヤル、クラウドとの双方向通信、クラウドとスマートフォンとの双方向通信、IoTデバイスからの出力としてのヒーター制御を示す図](../../../../../translated_images/ja/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.png)
![IoTデバイスへの入力としての温度とダイヤル、クラウドとの双方向通信、クラウドとスマートフォンとの双方向通信、IoTデバイスからの出力としてのヒーター制御を示す図](../../../../../translated_images/ja/mobile-controlled-thermostat.4a994010473d8d6a.webp)
さらにスマートなバージョンでは、クラウド内のAIが、他のIoTデバイスに接続された占有センサーどの部屋が使用されているかを検知するセンサーなどの他のセンサーからのデータや、天気、さらにはカレンダーのデータを使用して、スマートに温度を設定する意思決定を行うことができます。例えば、カレンダーから休暇中であることを読み取って暖房をオフにしたり、使用する部屋に応じて部屋ごとに暖房をオフにしたりすることができます。このようなデータから学習し、時間とともにますます正確になることができます。
@ -94,7 +94,7 @@ CPUは、毎秒何百万回または何十億回も刻むクロックに依存
> 💁 CPUは[フェッチ-デコード-実行サイクル](https://wikipedia.org/wiki/Instruction_cycle)を使用してプログラムを実行します。クロックの各刻みで、CPUはメモリから次の命令をフェッチし、それをデコードして実行します。例えば、算術論理ユニットALUを使用して2つの数値を加算するなどです。一部の実行は複数の刻みを必要とするため、次のサイクルは命令が完了した後の次の刻みで実行されます。
![RAMに保存されたプログラムから命令をフェッチし、それをデコードしてCPUで実行するフェッチ-デコード-実行サイクル](../../../../../translated_images/ja/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.png)
![RAMに保存されたプログラムから命令をフェッチし、それをデコードしてCPUで実行するフェッチ-デコード-実行サイクル](../../../../../translated_images/ja/fetch-decode-execute.2fd6f150f6280392.webp)
マイクロコントローラーのクロックスピードは、デスクトップやートパソコン、さらにはほとんどのスマートフォンよりもはるかに低いです。例えば、Wio TerminalのCPUは120MHz、つまり1秒間に120,000,000サイクルで動作します。
@ -176,7 +176,7 @@ ArduinoボードはCまたはC++でコード化されます。C/C++を使用す
`setup`関数にはWiFiやクラウドサービスへの接続、入出力ピンの初期化などのセットアップコードを書きます。`loop`関数にはセンサーから値を読み取り、それをクラウドに送信するなどの処理コードを書きます。通常、各ループの最後に遅延を含めます。例えば、センサーのデータを10秒ごとに送信したい場合、ループの最後に10秒の遅延を追加してマイクロコントローラーをスリープ状態にし、10秒後に再びループを実行します。
![Arduinoスケッチが最初にsetupを実行し、その後loopを繰り返し実行する様子](../../../../../translated_images/ja/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.png)
![Arduinoスケッチが最初にsetupを実行し、その後loopを繰り返し実行する様子](../../../../../translated_images/ja/arduino-sketch.79590cb837ff7a7c.webp)
✅ このプログラムアーキテクチャは*イベントループ*または*メッセージループ*として知られています。多くのアプリケーションがこれを内部で使用しており、Windows、macOS、LinuxなどのOSで動作するほとんどのデスクトップアプリケーションの標準です。`loop`はボタンなどのユーザーインターフェースコンポーネントやキーボードなどのデバイスからのメッセージを監視し、それに応答します。この[イベントループに関する記事](https://wikipedia.org/wiki/Event_loop)でさらに詳しく読むことができます。

@ -1,6 +1,6 @@
# センサーとアクチュエーターで物理的な世界と対話する
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-3.cc3b7b4cd646de59.webp)
> スケッチノート作成者: [Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大表示されます。
@ -92,7 +92,7 @@ IoTデバイスはデジタルで動作します。つまり、アナログ値
最も単純なデジタルセンサーはボタンやスイッチです。これはオンまたはオフの2つの状態を持つセンサーです。
![ボタンに5ボルトが送られ、押されていないときは0ボルト、押されたときは5ボルトを返す様子](../../../../../translated_images/ja/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.png)
![ボタンに5ボルトが送られ、押されていないときは0ボルト、押されたときは5ボルトを返す様子](../../../../../translated_images/ja/button.eadb560b77ac45e5.webp)
IoTデバイスのGPIOピンなどは、この信号を0または1として直接測定できます。送信された電圧と返された電圧が同じであれば値は1、異なれば値は0となります。この信号を変換する必要はなく、1または0のいずれかしかありません。
@ -125,7 +125,7 @@ IoTデバイスのGPIOピンなどは、この信号を0または1として直
以下のガイドに従って、センサーで制御されるアクチュエーターをIoTデバイスに追加し、IoTナイトライトを作成してください。このナイトライトは光センサーから光レベルを取得し、光レベルが低すぎる場合にLEDを点灯させます。
![課題のフローチャート。光レベルを読み取り、チェックし、LEDを制御する流れを示す](../../../../../translated_images/ja/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.png)
![課題のフローチャート。光レベルを読み取り、チェックし、LEDを制御する流れを示す](../../../../../translated_images/ja/assignment-1-flow.7552a51acb1a5ec8.webp)
* [Arduino - Wio Terminal](wio-terminal-actuator.md)
* [シングルボードコンピュータ - Raspberry Pi](pi-actuator.md)
@ -140,7 +140,7 @@ IoTデバイスのGPIOピンなどは、この信号を0または1として直
アナログアクチュエーターはアナログ信号を受け取り、それを何らかの物理的な相互作用に変換します。この相互作用は供給される電圧によって変化します。
例として、家庭で使用される調光可能なライトがあります。このライトは供給される電圧によって明るさが変わります。
![低電圧で暗く、高電圧で明るくなるライト](../../../../../translated_images/ja/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.png)
![低電圧で暗く、高電圧で明るくなるライト](../../../../../translated_images/ja/dimmable-light.9ceffeb195dec1a8.webp)
センサーと同様に、実際のIoTデバイスはアナログではなくデジタル信号で動作します。つまり、アナログ信号を送信するには、IoTデバイスにデジタル-アナログ変換器DACが必要です。このDACは、IoTデバイス自体に直接搭載されている場合もあれば、接続ボードに搭載されている場合もあります。これにより、IoTデバイスからの0と1のデジタル信号が、アクチュエータが使用できるアナログ電圧に変換されます。
@ -187,7 +187,7 @@ IoTデバイスからのデジタル信号をアナログ信号に変換する
シンプルなデジタルアクチュエータの一例としてLEDがあります。デバイスがデジタル信号「1」を送信すると、高電圧が送られLEDが点灯します。デジタル信号「0」が送信されると、電圧が0Vに下がりLEDが消灯します。
![0ボルトで消灯し、5Vで点灯するLED](../../../../../translated_images/ja/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.png)
![0ボルトで消灯し、5Vで点灯するLED](../../../../../translated_images/ja/led.ec6d94f66676a174.webp)
✅ 他にどのようなシンプルな2状態のアクチュエータを思いつきますか一例としてソレイドがあります。これは電磁石で、ドアのボルトを動かしてロックやアンロックを行うなどの動作をすることができます。

@ -26,7 +26,7 @@ Grove LEDは複数のLEDがセットになったモジュールとして提供
LEDを接続します。
![Grove LED](../../../../../translated_images/ja/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.png)
![Grove LED](../../../../../translated_images/ja/grove-led.6c853be93f473cf2.webp)
1. 好きな色のLEDを選び、LEDモジュールの2つの穴に足を差し込みます。
@ -40,7 +40,7 @@ LEDを接続します。
1. Raspberry Piの電源を切った状態で、Groveケーブルのもう片方の端をPiに接続されたGrove Base hatのデジタルソケット**D5**に接続します。このソケットはGPIOピンの隣にあるソケット列の左から2番目です。
![D5ソケットに接続されたGrove LED](../../../../../translated_images/ja/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.png)
![D5ソケットに接続されたGrove LED](../../../../../translated_images/ja/pi-led.97f1d474981dc35d.webp)
## ナイトライトをプログラムする

@ -16,13 +16,13 @@
光センサーを接続します。
![Grove光センサー](../../../../../translated_images/ja/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.png)
![Grove光センサー](../../../../../translated_images/ja/grove-light-sensor.b8127b7c434e632d.webp)
1. Groveケーブルの片方の端を光センサーモジュールのソケットに差し込みます。このケーブルは一方向にしか差し込めません。
1. Raspberry Piの電源を切った状態で、Groveケーブルのもう片方の端をPiに取り付けられたGrove Base hatの**A0**と記されたアナログソケットに接続します。このソケットはGPIOピンの隣のソケット列の右から2番目にあります。
![ソケットA0に接続されたGrove光センサー](../../../../../translated_images/ja/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.png)
![ソケットA0に接続されたGrove光センサー](../../../../../translated_images/ja/pi-light-sensor.66cc1e31fa48cd7d.webp)
## 光センサーをプログラムする

@ -36,11 +36,11 @@ CounterFitアプリにLEDを追加します。
1. **Add**ボタンを選択して、Pin 5にLEDを作成します。
![LEDの設定](../../../../../translated_images/ja/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.png)
![LEDの設定](../../../../../translated_images/ja/counterfit-create-led.ba9db1c9b8c622a6.webp)
LEDが作成され、アクチュエータリストに表示されます。
![作成されたLED](../../../../../translated_images/ja/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.png)
![作成されたLED](../../../../../translated_images/ja/counterfit-led.c0ab02de6d256ad8.webp)
LEDが作成されたら、*Color*ピッカーを使用して色を変更できます。色を選択した後、**Set**ボタンを選択して色を変更します。

@ -28,11 +28,11 @@ CounterFitアプリに光センサーを追加します。
1. **Add**ボタンを選択して、Pin 0に光センサーを作成します。
![光センサーの設定](../../../../../translated_images/ja/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.png)
![光センサーの設定](../../../../../translated_images/ja/counterfit-create-light-sensor.9f36a5e0d4458d8d.webp)
光センサーが作成され、センサーリストに表示されます。
![作成された光センサー](../../../../../translated_images/ja/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.png)
![作成された光センサー](../../../../../translated_images/ja/counterfit-light-sensor.5d0f5584df56b90f.webp)
## 光センサーをプログラムする

@ -26,7 +26,7 @@ Grove LEDは複数のLEDがセットになったモジュールとして提供
LEDを接続します。
![Grove LED](../../../../../translated_images/ja/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.png)
![Grove LED](../../../../../translated_images/ja/grove-led.6c853be93f473cf2.webp)
1. 好きな色のLEDを選び、LEDモジュールの2つの穴に足を差し込みます。

@ -1,6 +1,6 @@
# デバイスをインターネットに接続する
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-4.7344e074ea68fa54.webp)
> スケッチノート作成者: [Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大表示されます。
@ -47,7 +47,7 @@ MQTTはIoTデバイスに最も人気のある通信プロトコルであり、
MQTTは単一のブローカーと複数のクライアントを持ちます。すべてのクライアントはブローカーに接続し、ブローカーは関連するクライアントにメッセージをルーティングします。メッセージは個々のクライアントに直接送信されるのではなく、名前付きトピックを使用してルーティングされます。クライアントはトピックに公開パブリッシュし、そのトピックを購読サブスクライブしているクライアントがメッセージを受信します。
![IoTデバイスが/telemetryトピックでテレメトリを公開し、クラウドサービスがそのトピックを購読する](../../../../../translated_images/ja/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.png)
![IoTデバイスが/telemetryトピックでテレメトリを公開し、クラウドサービスがそのトピックを購読する](../../../../../translated_images/ja/mqtt.cbf7f21d9adc3e17.webp)
✅ 調査してみましょう。多くのIoTデバイスがある場合、MQTTブローカーがすべてのメッセージを処理できるようにするにはどうすればよいでしょうか
@ -69,7 +69,7 @@ MQTTは単一のブローカーと複数のクライアントを持ちます。
> 💁 このテストブローカーは公開されており、安全ではありません。公開する内容を誰でも聞くことができるため、プライベートに保持する必要があるデータには使用しないでください。
![光レベルを読み取り、チェックし、LEDを制御する課題のフローチャート](../../../../../translated_images/ja/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.png)
![光レベルを読み取り、チェックし、LEDを制御する課題のフローチャート](../../../../../translated_images/ja/assignment-1-internet-flow.3256feab5f052fd2.webp)
以下の手順に従って、デバイスをMQTTブローカーに接続してください
@ -344,7 +344,7 @@ MQTTで接続喪失を処理するには、デバイスとサーバーコード
コマンドは、クラウドからデバイスに送信されるメッセージで、何かを実行するよう指示するものです。多くの場合、アクチュエータを介して何らかの出力を行いますが、デバイス自体に対する指示(例:再起動や追加のテレメトリ収集など)である場合もあります。
![インターネット接続されたサーモスタットが暖房をオンにするコマンドを受信する様子](../../../../../translated_images/ja/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.png)
![インターネット接続されたサーモスタットが暖房をオンにするコマンドを受信する様子](../../../../../translated_images/ja/commands.d6c06bbbb3a02cce.webp)
例えば、サーモスタットはクラウドから暖房をオンにするコマンドを受信することがあります。すべてのセンサーからのテレメトリデータに基づいて、クラウドサービスが暖房をオンにするべきだと判断した場合、関連するコマンドが送信されます。

@ -1,6 +1,6 @@
# IoTで植物の成長を予測する
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-5.42b234299279d263.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大版が表示されます。
@ -90,7 +90,7 @@ IoTデバイスを使用して温度を監視するための関連ガイドを
GDDの完全な公式は少し複雑ですが、よく使われる簡略化された式があります
![GDD = T max + T min divided by 2, all minus T base](../../../../../translated_images/ja/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.png)
![GDD = T max + T min divided by 2, all minus T base](../../../../../translated_images/ja/gdd-calculation.79b3660f9c5757aa.webp)
* **GDD** - これは成長度日の数です
* **T max** - これは1日の最高気温摂氏です
@ -118,7 +118,7 @@ GDDの完全な公式は少し複雑ですが、よく使われる簡略化さ
計算結果は以下の通りです:
![GDD = 16 + 12 divided by 2, all minus 10, giving an answer of 4](../../../../../translated_images/ja/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.png)
![GDD = 16 + 12 divided by 2, all minus 10, giving an answer of 4](../../../../../translated_images/ja/gdd-calculation-corn.64a58b7a7afcd0df.webp)
この日、トウモロコシは4 GDDを受け取りました。成熟に800 GDDが必要な品種の場合、成熟までにさらに796 GDDが必要です。
@ -239,7 +239,7 @@ CSVファイルには2つの列があります - *date* と *temperature*。*dat
例えば、その日の最高温度が25°C、最低温度が12°Cの場合:
![GDD = 25 + 12を2で割り、その結果から10を引くと8.5になる](../../../../../translated_images/ja/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.png)
![GDD = 25 + 12を2で割り、その結果から10を引くと8.5になる](../../../../../translated_images/ja/gdd-calculation-strawberries.59f57db94b22adb8.webp)
* 25 + 12 = 37
* 37 / 2 = 18.5

@ -33,7 +33,7 @@
Jupyterが起動し、ブラウザでートブックが開きます。ートブック内の指示に従って、測定された温度を可視化し、成長度日GDDを計算してください。
![Jupyter Notebookの画面](../../../../../translated_images/ja/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.png)
![Jupyter Notebookの画面](../../../../../translated_images/ja/gdd-jupyter-notebook.c5b52cf21094f158.webp)
## 評価基準

@ -16,13 +16,13 @@ Grove 温度センサーを Raspberry Pi に接続できます。
温度センサーを接続する
![Grove 温度センサー](../../../../../translated_images/ja/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.png)
![Grove 温度センサー](../../../../../translated_images/ja/grove-dht11.07f8eafceee17004.webp)
1. Grove ケーブルの片方の端を湿度・温度センサーのソケットに差し込みます。ケーブルは一方向にしか差し込めません。
1. Raspberry Pi の電源を切った状態で、Grove ケーブルのもう一方の端を Pi に接続された Grove Base Hat のデジタルソケット **D5** に接続します。このソケットは GPIO ピンの隣のソケット列の左から 2 番目にあります。
![ソケット A0 に接続された Grove 温度センサー](../../../../../translated_images/ja/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.png)
![ソケット A0 に接続された Grove 温度センサー](../../../../../translated_images/ja/pi-temperature-sensor.3ff82fff672c8e56.webp)
## 温度センサーをプログラムする

@ -38,11 +38,11 @@ CounterFitアプリに湿度センサーと温度センサーを追加します
1. **Add**ボタンを選択して、Pin 5に湿度センサーを作成します。
![湿度センサーの設定](../../../../../translated_images/ja/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.png)
![湿度センサーの設定](../../../../../translated_images/ja/counterfit-create-humidity-sensor.2750e27b6f30e09c.webp)
湿度センサーが作成され、センサーリストに表示されます。
![作成された湿度センサー](../../../../../translated_images/ja/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.png)
![作成された湿度センサー](../../../../../translated_images/ja/counterfit-humidity-sensor.7b12f7f339e430cb.webp)
1. 温度センサーを作成します:
@ -54,11 +54,11 @@ CounterFitアプリに湿度センサーと温度センサーを追加します
1. **Add**ボタンを選択して、Pin 6に温度センサーを作成します。
![温度センサーの設定](../../../../../translated_images/ja/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.png)
![温度センサーの設定](../../../../../translated_images/ja/counterfit-create-temperature-sensor.199350ed34f7343d.webp)
温度センサーが作成され、センサーリストに表示されます。
![作成された温度センサー](../../../../../translated_images/ja/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.png)
![作成された温度センサー](../../../../../translated_images/ja/counterfit-temperature-sensor.f0560236c96a9016.webp)
## 温度センサーアプリをプログラムする

@ -18,7 +18,7 @@ Grove温度センサーは、Wio Terminalのデジタルポートに接続でき
温度センサーを接続してください。
![Grove温度センサー](../../../../../translated_images/ja/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.png)
![Grove温度センサー](../../../../../translated_images/ja/grove-dht11.07f8eafceee17004.webp)
1. Groveケーブルの片方の端を湿度・温度センサーのソケットに差し込みます。このケーブルは一方向にしか差し込めません。

@ -13,7 +13,7 @@ I²Cバスは主に2本の通信線と2本の電源線で構成されていま
| VCC | 電圧コモンコレクター | デバイスに電力を供給する線です。プルアップ抵抗を介してSDAとSCL線に電力を供給し、コントローラーが存在しない場合に信号をオフにします。 |
| GND | グラウンド | 電気回路の共通グラウンドを提供します。 |
![I2Cバスに接続された3つのデバイスがSDAとSCL線を共有し、共通のグラウンド線を使用している](../../../../../translated_images/ja/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.png)
![I2Cバスに接続された3つのデバイスがSDAとSCL線を共有し、共通のグラウンド線を使用している](../../../../../translated_images/ja/i2c.83da845dde02256b.webp)
データを送信するには、1つのデバイスが開始条件を発行してデータ送信の準備ができたことを示します。このデバイスがコントローラーになります。コントローラーは通信したいデバイスのアドレスと、データを読み取るか書き込むかを指定して送信します。データ送信が完了すると、コントローラーは終了条件を発行して送信が終了したことを示します。その後、別のデバイスがコントローラーとなり、データを送受信することができます。

@ -20,14 +20,14 @@
重力式土壌水分は以下の式で計算されます:
![土壌水分%は湿った状態の重さから乾いた状態の重さを引き、乾いた状態の重さで割り、100を掛ける](../../../../../translated_images/ja/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.png)
![土壌水分%は湿った状態の重さから乾いた状態の重さを引き、乾いた状態の重さで割り、100を掛ける](../../../../../translated_images/ja/gsm-calculation.6da38c6201eec14e.webp)
* W - 湿った土壌の重さ
* W - 乾いた土壌の重さ
例えば、湿った状態で212g、乾いた状態で197gの土壌サンプルがあるとします。
![計算例](../../../../../translated_images/ja/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.png)
![計算例](../../../../../translated_images/ja/gsm-calculation-example.99f9803b4f29e976.webp)
* W = 212g
* W = 197g

@ -18,13 +18,13 @@ Grove 土壌水分センサーを Raspberry Pi に接続できます。
土壌水分センサーを接続します。
![Grove 土壌水分センサー](../../../../../translated_images/ja/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.png)
![Grove 土壌水分センサー](../../../../../translated_images/ja/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78b.webp)
1. Grove ケーブルの片方の端を土壌水分センサーのソケットに差し込みます。このケーブルは一方向にしか差し込めません。
1. Raspberry Pi の電源を切った状態で、Grove ケーブルのもう一方の端を Pi に取り付けられた Grove Base Hat のアナログソケット **A0** に接続します。このソケットは、GPIO ピンの隣のソケット列の右から2番目にあります。
![A0 ソケットに接続された Grove 土壌水分センサー](../../../../../translated_images/ja/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.png)
![A0 ソケットに接続された Grove 土壌水分センサー](../../../../../translated_images/ja/pi-soil-moisture-sensor.fdd7eb2393792cf6.webp)
1. 土壌水分センサーを土に挿します。センサーには「最高挿入ライン」があり、白い線で示されています。このラインまで(ラインを超えないように)センサーを挿入します。

@ -34,11 +34,11 @@ CounterFitアプリに土壌水分センサーを追加します。
1. **Add**ボタンを選択して、Pin 0に*Soil Moisture*センサーを作成します。
![土壌水分センサーの設定](../../../../../translated_images/ja/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.png)
![土壌水分センサーの設定](../../../../../translated_images/ja/counterfit-create-soil-moisture-sensor.35266135a5e0ae68.webp)
土壌水分センサーが作成され、センサーリストに表示されます。
![作成された土壌水分センサー](../../../../../translated_images/ja/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.png)
![作成された土壌水分センサー](../../../../../translated_images/ja/counterfit-soil-moisture-sensor.81742b2de0e9de60.webp)
## 土壌水分センサーアプリをプログラムする

@ -18,7 +18,7 @@ Grove土壌水分センサーは、Wio Terminalのアナログ/デジタルポ
土壌水分センサーを接続します。
![Grove土壌水分センサー](../../../../../translated_images/ja/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.png)
![Grove土壌水分センサー](../../../../../translated_images/ja/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78b.webp)
1. Groveケーブルの片方の端を土壌水分センサーのソケットに差し込みます。このケーブルは一方向にしか差し込めません。

@ -1,6 +1,6 @@
# 自動植物灌水
![このレッスンの概要をスケッチノートで表した画像](../../../../../translated_images/ja/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.jpg)
![このレッスンの概要をスケッチノートで表した画像](../../../../../translated_images/ja/lesson-7.30b5f577d3cb8e03.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大表示されます。
@ -32,7 +32,7 @@ IoTデバイスは低電圧を使用します。この電圧はセンサーやLE
この問題を解決するには、ポンプを外部電源に接続し、アクチュエーターを使用してポンプをオンにする必要があります。これは、指でスイッチを押してライトをオンにするのと似ています。指を動かすのに必要なエネルギーはわずかですが、これにより110V/240Vの電力が流れるライトが接続されます。
![ライトスイッチがライトに電力を供給する様子](../../../../../translated_images/ja/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.png)
![ライトスイッチがライトに電力を供給する様子](../../../../../translated_images/ja/light-switch.760317ad6ab8bd6d.webp)
> 🎓 [家庭用電力](https://wikipedia.org/wiki/Mains_electricity)は、世界の多くの地域で国のインフラを通じて家庭や事業所に供給される電力を指します。
@ -72,7 +72,7 @@ IoTデバイスは低電圧を使用します。この電圧はセンサーやLE
電磁石がレバーを引くために必要な電力は少なく、IoT開発キットの3.3Vまたは5V出力で制御できます。出力回路はリレーによってはるかに多くの電力を供給でき、家庭用電圧や産業用のさらに高い電力レベルを含む場合もあります。このようにして、IoT開発キットは小型の植物用ポンプから商業農場全体の大規模な産業システムまで灌水システムを制御できます。
![制御回路、出力回路、リレーがラベル付けされたGroveリレー](../../../../../translated_images/ja/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.png)
![制御回路、出力回路、リレーがラベル付けされたGroveリレー](../../../../../translated_images/ja/grove-relay-labelled.293e068f5c3c2a19.webp)
上の画像はGroveリレーを示しています。制御回路はIoTデバイスに接続され、3.3Vまたは5Vを使用してリレーをオンまたはオフにします。出力回路には2つの端子があり、どちらも電源またはグランドとして使用できます。出力回路は最大250Vで10Aまで対応可能で、さまざまな家庭用電力デバイスに十分です。さらに高い電力レベルに対応するリレーも入手可能です。

@ -18,13 +18,13 @@ GroveリレーをRaspberry Piに接続します。
リレーを接続します。
![Groveリレー](../../../../../translated_images/ja/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.png)
![Groveリレー](../../../../../translated_images/ja/grove-relay.d426958ca210fbd0.webp)
1. Groveケーブルの片方の端をリレーのソケットに差し込みます。ケーブルは一方向にしか差し込めません。
1. Raspberry Piの電源を切った状態で、Groveケーブルのもう一方の端をPiに接続されたGrove Base Hatのデジタルソケット**D5**に接続します。このソケットは、GPIOピンの隣のソケット列の左から2番目にあります。土壌湿度センサーは**A0**ソケットに接続したままにしておきます。
![D5ソケットに接続されたGroveリレーと、A0ソケットに接続された土壌湿度センサー](../../../../../translated_images/ja/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.png)
![D5ソケットに接続されたGroveリレーと、A0ソケットに接続された土壌湿度センサー](../../../../../translated_images/ja/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e.webp)
1. 前のレッスンで既に土壌湿度センサーを土に挿していない場合は、土壌湿度センサーを土に挿します。

@ -28,11 +28,11 @@ CounterFitアプリにリレーを追加します。
1. **Add**ボタンを選択して、Pin 5にリレーを作成します。
![リレーの設定](../../../../../translated_images/ja/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.png)
![リレーの設定](../../../../../translated_images/ja/counterfit-create-relay.fa7c40fd0f2f6afc.webp)
リレーが作成され、アクチュエータリストに表示されます。
![作成されたリレー](../../../../../translated_images/ja/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.png)
![作成されたリレー](../../../../../translated_images/ja/counterfit-relay.bbf74c1dbdc8b9ac.webp)
## リレーをプログラムする

@ -18,7 +18,7 @@ GroveリレーはWio Terminalのデジタルポートに接続できます。
リレーを接続してください。
![Groveリレー](../../../../../translated_images/ja/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.png)
![Groveリレー](../../../../../translated_images/ja/grove-relay.d426958ca210fbd0.webp)
1. Groveケーブルの一端をリレーのソケットに差し込みます。ケーブルは一方向にしか差し込めません。

@ -1,6 +1,6 @@
# 植物をクラウドに移行する
![このレッスンのスケッチノート概要](../../../../../translated_images/ja/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.jpg)
![このレッスンのスケッチノート概要](../../../../../translated_images/ja/lesson-8.3f21f3c11159e6a0.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大版が表示されます。
@ -46,8 +46,8 @@ IoTデバイスは、原則を示すためにパブリックMQTTブローカー
クラウドはしばしば「他人のコンピュータ」と冗談めかして呼ばれます。最初のアイデアはシンプルでした。コンピュータを購入する代わりに、他人のコンピュータを借りるのです。クラウドコンピューティングプロバイダーが巨大なデータセンターを管理します。彼らはハードウェアの購入とインストール、電力と冷却の管理、ネットワーキング、建物のセキュリティ、ハードウェアとソフトウェアの更新など、すべてを担当します。顧客としては、必要なコンピュータをレンタルし、需要が急増したときにレンタルを増やし、需要が減少したときにレンタルを減らすことができます。これらのクラウドデータセンターは世界中に存在します。
![Microsoftクラウドデータセンター](../../../../../translated_images/ja/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.png)
![Microsoftクラウドデータセンターの計画中の拡張](../../../../../translated_images/ja/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.png)
![Microsoftクラウドデータセンター](../../../../../translated_images/ja/azure-region-existing.73f704604f2aa6cb.webp)
![Microsoftクラウドデータセンターの計画中の拡張](../../../../../translated_images/ja/azure-region-planned-expansion.a5074a1e8af74f15.webp)
これらのデータセンターは数平方キロメートルの広さになることがあります。上記の画像は数年前にMicrosoftクラウドデータセンターで撮影されたもので、初期の規模と計画中の拡張を示しています。拡張のためにクリアされたエリアは5平方キロメートル以上です。
@ -108,11 +108,11 @@ AzureはMicrosoftの開発者向けクラウドであり、このレッスンで
IoTデバイスは、デバイスSDKサービスの機能を操作するためのコードを提供するライブラリを使用して、またはMQTTやHTTPなどの通信プロトコルを介して直接クラウドサービスに接続します。デバイスSDKは通常、最も簡単なルートであり、公開するトピックや購読するトピック、セキュリティの処理方法などをすべて自動的に処理します。
![デバイスはデバイスSDKを使用してサービスに接続します。サーバーコードもSDKを介してサービスに接続します](../../../../../translated_images/ja/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.png)
![デバイスはデバイスSDKを使用してサービスに接続します。サーバーコードもSDKを介してサービスに接続します](../../../../../translated_images/ja/iot-service-connectivity.7e873847921a5d6f.webp)
デバイスはその後、他のアプリケーションコンポーネントとこのサービスを介して通信します。これは、以前にMQTTを介してテレメトリを送信し、コマンドを受信した方法に似ています。通常、サービスSDKや類似のライブラリを使用します。メッセージはデバイスからサービスに送信され、アプリケーションの他のコンポーネントがそれを読み取ることができ、メッセージをデバイスに送り返すこともできます。
![有効な秘密鍵を持たないデバイスはIoTサービスに接続できません](../../../../../translated_images/ja/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.png)
![有効な秘密鍵を持たないデバイスはIoTサービスに接続できません](../../../../../translated_images/ja/iot-service-allowed-denied-connection.818b0063ac213fb8.webp)
これらのサービスは、接続してデータを送信できるすべてのデバイスを知ることでセキュリティを実現します。これは、デバイスを事前にサービスに登録するか、デバイスに秘密鍵や証明書を与えて、初回接続時にサービスに自分自身を登録できるようにすることで行われます。未知のデバイスは接続できず、接続を試みてもサービスは接続を拒否し、送信されたメッセージを無視します。
@ -124,7 +124,7 @@ IoTデバイスは、デバイスSDKサービスの機能を操作するた
Azureサブスクリプションを取得したら、IoTサービスに登録できます。MicrosoftのIoTサービスはAzure IoT Hubと呼ばれています。
![Azure IoT Hubのロゴ](../../../../../translated_images/ja/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.png)
![Azure IoT Hubのロゴ](../../../../../translated_images/ja/azure-iot-hub-logo.28a19de76d0a1932.webp)
以下の動画では、Azure IoT Hubの概要を簡単に説明しています

@ -1,6 +1,6 @@
# アプリケーションロジックをクラウドに移行する
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-9.dfe99c8e891f48e1.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大版が表示されます。
@ -28,7 +28,7 @@
サーバーレス、またはサーバーレスコンピューティングとは、さまざまな種類のイベントに応じてクラウドで実行される小さなコードブロックを作成することを指します。イベントが発生するとコードが実行され、そのイベントに関するデータが渡されます。これらのイベントは、Webリクエスト、キューに置かれたメッセージ、データベース内のデータの変更、またはIoTデバイスからIoTサービスに送信されたメッセージなど、さまざまなものから発生します。
![IoTサービスからサーバーレスサービスに送信されるイベントが、複数の関数によって同時に処理される様子](../../../../../translated_images/ja/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.png)
![IoTサービスからサーバーレスサービスに送信されるイベントが、複数の関数によって同時に処理される様子](../../../../../translated_images/ja/iot-messages-to-serverless.0194da1cc0732bb7.webp)
> 💁 以前にデータベーストリガーを使用したことがある場合、これは同じようなものと考えられます。例えば、行を挿入するなどのイベントによってコードがトリガーされます。
@ -54,7 +54,7 @@ IoT開発者にとって、サーバーレスモデルは理想的です。ク
MicrosoftのサーバーレスコンピューティングサービスはAzure Functionsと呼ばれます。
![Azure Functionsのロゴ](../../../../../translated_images/ja/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.png)
![Azure Functionsのロゴ](../../../../../translated_images/ja/azure-functions-logo.1cfc8e3204c9c44a.webp)
以下の短いビデオでは、Azure Functionsの概要を説明しています。

@ -1,6 +1,6 @@
# 植物を安全に保つ方法
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-10.829c86b80b9403bb.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大表示されます。
@ -52,11 +52,11 @@ IoTアプリケーションが安全でない場合、以下のようなリス
デバイスがIoTサービスに接続する際、IDを使用して自分自身を識別します。しかし、このIDは複製される可能性があります。ハッカーが悪意のあるデバイスを設定し、実際のデバイスと同じIDを使用して偽のデータを送信することができます。
![有効なデバイスと悪意のあるデバイスが同じIDを使用してテレメトリを送信する可能性があります](../../../../../translated_images/ja/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.png)
![有効なデバイスと悪意のあるデバイスが同じIDを使用してテレメトリを送信する可能性があります](../../../../../translated_images/ja/iot-device-and-hacked-device-connecting.e0671675df74d6d9.webp)
これを防ぐ方法は、送信されるデータをデバイスとクラウドだけが知っている値を使用して暗号化することです。このプロセスは「暗号化」と呼ばれ、データを暗号化するために使用される値は「暗号鍵」と呼ばれます。
![暗号化が使用される場合、暗号化されたメッセージのみが受け入れられ、その他は拒否されます](../../../../../translated_images/ja/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.png)
![暗号化が使用される場合、暗号化されたメッセージのみが受け入れられ、その他は拒否されます](../../../../../translated_images/ja/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f.webp)
クラウドサービスは、暗号化されたデータを読み取り可能な形式に変換するために「復号化」と呼ばれるプロセスを使用します。この際、暗号化鍵または復号化鍵を使用します。暗号化されたメッセージが鍵によって復号化できない場合、デバイスがハッキングされていると判断され、メッセージは拒否されます。

@ -1,6 +1,6 @@
# 位置追跡
![このレッスンの概要をスケッチノートで表した画像](../../../../../translated_images/ja/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.jpg)
![このレッスンの概要をスケッチノートで表した画像](../../../../../translated_images/ja/lesson-11.9fddbac4b664c6d5.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大表示されます。
@ -63,13 +63,13 @@ IoTは、*接続された車両*の車両群を作り出すことで、物資の
> 💁 円が360度に分割される理由は正確には分かっていません。[Wikipediaの「角度 (度)」のページ](https://wikipedia.org/wiki/Degree_(angle))では、いくつかの可能性について説明されています。
![北極で90°、北極と赤道の中間で45°、赤道で0°、赤道と南極の中間で-45°、南極で-90°の緯度線](../../../../../translated_images/ja/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.png)
![北極で90°、北極と赤道の中間で45°、赤道で0°、赤道と南極の中間で-45°、南極で-90°の緯度線](../../../../../translated_images/ja/latitude-lines.11d8d91dfb2014a5.webp)
緯度は、地球を赤道に平行に走る線で分割し、北半球と南半球をそれぞれ90°に分割して測定します。赤道は0°、北極は90°90°北とも呼ばれる、南極は-90°90°南とも呼ばれるです。
経度は、東西の度数を測定します。経度の0°の起点は*本初子午線*と呼ばれ、1884年にイギリス・グリニッジの[王立天文台](https://wikipedia.org/wiki/Royal_Observatory,_Greenwich)を通る北極から南極への線として定義されました。
![本初子午線の西側で-180°から0°、本初子午線で0°、本初子午線の東側で180°までの経度線](../../../../../translated_images/ja/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.png)
![本初子午線の西側で-180°から0°、本初子午線で0°、本初子午線の東側で180°までの経度線](../../../../../translated_images/ja/longitude-meridians.ab4ef1c91c064586.webp)
> 🎓 子午線とは、北極から南極までの直線で、半円を形成する仮想の線です。
@ -100,7 +100,7 @@ IoTは、*接続された車両*の車両群を作り出すことで、物資の
* 緯度は47.6423109赤道から北に47.6423109度)
* 経度は-122.1390293本初子午線から西に122.1390293度)
![マイクロソフトキャンパスの位置47.6423109,-122.117198](../../../../../translated_images/ja/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.png)
![マイクロソフトキャンパスの位置47.6423109,-122.117198](../../../../../translated_images/ja/microsoft-gps-location-world.a321d481b010f6ad.webp)
## 全地球測位システム (GPS)
@ -112,7 +112,7 @@ GPSシステムは、複数の衛星が現在の位置と正確なタイムス
> 💁 GPSセンサーは電波を検出するためにアンテナが必要です。車両やトラックに搭載されたオンボードGPSのアンテナは、通常、フロントガラスや屋根に設置され、良好な信号を受信できるようになっています。スマートフォンやIoTデバイスなどの外部GPSシステムを使用する場合は、GPSシステムやスマートフォンに内蔵されたアンテナが空を見渡せる位置にあることを確認する必要があります。例えば、フロントガラスに取り付けるなどです。
![センサーから複数の衛星までの距離を知ることで位置を計算する](../../../../../translated_images/ja/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.png)
![センサーから複数の衛星までの距離を知ることで位置を計算する](../../../../../translated_images/ja/gps-satellites.04acf1148fe25fbf.webp)
GPS衛星は地球を周回しており、センサーの真上に固定されているわけではないため、位置データには緯度と経度だけでなく海抜高度も含まれます。

@ -18,13 +18,13 @@ Grove GPSセンサーはRaspberry Piに接続できます。
GPSセンサーを接続します。
![Grove GPSセンサー](../../../../../translated_images/ja/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.png)
![Grove GPSセンサー](../../../../../translated_images/ja/grove-gps-sensor.247943bf69b03f0d.webp)
1. Groveケーブルの片方の端をGPSセンサーのソケットに差し込みます。ケーブルは一方向にしか差し込めません。
1. Raspberry Piの電源を切った状態で、Groveケーブルのもう片方の端を、Piに取り付けられたGrove Base Hatの**UART**と記されたUARTソケットに接続します。このソケットはSDカードスロットに近い側の中央列にあり、USBポートやイーサネットソケットの反対側に位置しています。
![UARTソケットに接続されたGrove GPSセンサー](../../../../../translated_images/ja/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.png)
![UARTソケットに接続されたGrove GPSセンサー](../../../../../translated_images/ja/pi-gps-sensor.1f99ee2b2f652891.webp)
1. GPSセンサーを配置し、接続されたアンテナが空を見渡せる位置に置きます。理想的には窓の近くや屋外に置くと良いです。アンテナに障害物がない方が信号を受信しやすくなります。

@ -38,11 +38,11 @@ CounterFitアプリにGPSセンサーを追加します。
1. **Add**ボタンを選択して、ポート`/dev/ttyAMA0`にGPSセンサーを作成します。
![GPSセンサーの設定](../../../../../translated_images/ja/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.png)
![GPSセンサーの設定](../../../../../translated_images/ja/counterfit-create-gps-sensor.6385dc9357d85ad1.webp)
GPSセンサーが作成され、センサーリストに表示されます。
![作成されたGPSセンサー](../../../../../translated_images/ja/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.png)
![作成されたGPSセンサー](../../../../../translated_images/ja/counterfit-gps-sensor.3fbb15af0a536756.webp)
## GPSセンサーをプログラムする
@ -102,17 +102,17 @@ GPSセンサーアプリをプログラムします。
* **Source**を`Lat/Lon`に設定し、明示的な緯度、経度、およびGPS固定に使用される衛星の数を設定します。この値は一度だけ送信されるため、データを毎秒繰り返すには**Repeat**ボックスをチェックします。
![緯度経度が選択されたGPSセンサー](../../../../../translated_images/ja/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.png)
![緯度経度が選択されたGPSセンサー](../../../../../translated_images/ja/counterfit-gps-sensor-latlon.008c867d75464fbe.webp)
* **Source**を`NMEA`に設定し、NMEA文をテキストボックスに追加します。これらの値はすべて送信され、各新しいGGA位置固定文が読み取られる前に1秒の遅延があります。
![NMEA文が設定されたGPSセンサー](../../../../../translated_images/ja/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.png)
![NMEA文が設定されたGPSセンサー](../../../../../translated_images/ja/counterfit-gps-sensor-nmea.c62eea442171e17e.webp)
[nmeagen.org](https://www.nmeagen.org)のようなツールを使用して、地図上で描画してこれらの文を生成できます。これらの値は一度だけ送信されるため、すべて送信された後に1秒間隔でデータを繰り返すには**Repeat**ボックスをチェックします。
* **Source**をGPXファイルに設定し、トラック位置を含むGPXファイルをアップロードします。[AllTrails](https://www.alltrails.com/)のような人気のある地図やハイキングサイトからGPXファイルをダウンロードできます。これらのファイルにはトレイルとして複数のGPS位置が含まれており、GPSセンサーは1秒間隔で各新しい位置を返します。
![GPXファイルが設定されたGPSセンサー](../../../../../translated_images/ja/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.png)
![GPXファイルが設定されたGPSセンサー](../../../../../translated_images/ja/counterfit-gps-sensor-gpxfile.8310b063ce8a425c.webp)
これらの値は一度だけ送信されるため、すべて送信された後に1秒間隔でデータを繰り返すには**Repeat**ボックスをチェックします。

@ -18,7 +18,7 @@ Grove GPSセンサーはWio Terminalに接続できます。
GPSセンサーを接続します。
![Grove GPSセンサー](../../../../../translated_images/ja/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.png)
![Grove GPSセンサー](../../../../../translated_images/ja/grove-gps-sensor.247943bf69b03f0d.webp)
1. Groveケーブルの片方の端をGPSセンサーのソケットに差し込みます。ケーブルは一方向にしか差し込めません。

@ -1,6 +1,6 @@
# 店舗位置データ
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-12.ca7f53039712a3ec.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大表示されます。
@ -75,7 +75,7 @@ NoSQLデータベースは、SQLデータベースのような固定された構
> 💁 名前に反して、一部のNoSQLデータベースではSQLを使用してデータをクエリすることができます。
![NoSQLデータベース内のフォルダに格納された文書](../../../../../translated_images/ja/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.png)
![NoSQLデータベース内のフォルダに格納された文書](../../../../../translated_images/ja/noqsl-database.62d24ccf5b73f60d.webp)
NoSQLデータベースには事前定義されたスキーマがなく、データの保存方法に制限がありません。通常、JSON文書を使用して非構造化データを挿入します。これらの文書はコンピューター上のファイルのようにフォルダに整理することができます。各文書は他の文書と異なるフィールドを持つことができます。例えば、農場車両のIoTデータを保存する場合、加速度計や速度データのフィールドを持つものもあれば、トレーラー内の温度データのフィールドを持つものもあります。新しいトラックタイプを追加する場合、例えば内蔵スケールで運搬する荷物の重量を追跡する場合、IoTデバイスはこの新しいフィールドを追加し、データベースに変更を加えることなく保存することができます。
@ -89,7 +89,7 @@ NoSQLデータベースには事前定義されたスキーマがなく、デー
前回のレッスンでは、IoTデバイスに接続されたGPSセンサーからGPSデータを取得しました。このIoTデータをクラウドに保存するには、IoTサービスに送信する必要があります。今回も前回のプロジェクトで使用したAzure IoT Hubを使用します。
![IoTデバイスからIoT HubにGPSテレメトリを送信する](../../../../../translated_images/ja/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.png)
![IoTデバイスからIoT HubにGPSテレメトリを送信する](../../../../../translated_images/ja/gps-telemetry-iot-hub.8115335d51cd2c12.webp)
### タスク - GPSデータをIoT Hubに送信する
@ -171,7 +171,7 @@ IoTデバイスからクラウドに流れるデータは、必ずしもリア
データがIoT Hubに流れ込んだら、イベントハブ互換エンドポイントに公開されたイベントをリッスンするサーバーレスコードを記述できます。これはウォームパスに該当します。このデータは保存され、次のレッスンで旅程の報告に使用されます。
![IoTデバイスからIoT HubにGPSテレメトリを送信し、イベントハブトリガーを介してAzure Functionsに送信する](../../../../../translated_images/ja/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.png)
![IoTデバイスからIoT HubにGPSテレメトリを送信し、イベントハブトリガーを介してAzure Functionsに送信する](../../../../../translated_images/ja/gps-telemetry-iot-hub-functions.24d3fa5592455e9f.webp)
### タスク - サーバーレスコードでGPSイベントを処理する
@ -193,7 +193,7 @@ IoTデバイスからクラウドに流れるデータは、必ずしもリア
## Azure Storageアカウント
![Azure Storageのロゴ](../../../../../translated_images/ja/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.png)
![Azure Storageのロゴ](../../../../../translated_images/ja/azure-storage-logo.605c0f602c640d48.webp)
Azure Storageアカウントは、さまざまな方法でデータを保存できる汎用ストレージサービスです。データをBlob、キュー、テーブル、またはファイルとして保存でき、同時にすべてを利用することが可能です。

@ -1,6 +1,6 @@
# 位置データの可視化
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-13.a259db1485021be7.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大表示されます。
@ -64,11 +64,11 @@
人間にとって、このデータを理解するのは難しいです。数字の壁でしかありません。このデータを視覚化する最初のステップとして、折れ線グラフにプロットすることができます:
![上記データの折れ線グラフ](../../../../../translated_images/ja/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.png)
![上記データの折れ線グラフ](../../../../../translated_images/ja/chart-soil-moisture.fd6d9d0cdc0b5f75.webp)
さらに、土壌湿度が450に達した時点で自動給水システムが作動したことを示す線を追加することで、グラフを改善できます
![土壌湿度の折れ線グラフと450のライン](../../../../../translated_images/ja/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.png)
![土壌湿度の折れ線グラフと450のライン](../../../../../translated_images/ja/chart-soil-moisture-relay.fbb391236d34a64d.webp)
このグラフは、土壌湿度レベルだけでなく、給水システムが作動したポイントも迅速に示しています。
@ -84,7 +84,7 @@ GPSデータを扱う場合、最も明確な視覚化方法はデータを地
地図を扱うことは興味深い課題であり、Bing Maps、Leaflet、Open Street Maps、Google Mapsなど、多くの選択肢があります。このレッスンでは、[Azure Maps](https://azure.microsoft.com/services/azure-maps/?WT.mc_id=academic-17441-jabenn)について学び、GPSデータを表示する方法を学びます。
![Azure Mapsのロゴ](../../../../../translated_images/ja/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.png)
![Azure Mapsのロゴ](../../../../../translated_images/ja/azure-maps-logo.35d01dcfbd81fe61.webp)
Azure Mapsは「最新の地図データを使用して、ウェブおよびモバイルアプリケーションに地理的コンテキストを提供する地理空間サービスとSDKのコレクション」です。開発者は、美しいインタラクティブな地図を作成するためのツールを提供され、推奨される交通ルート、交通事故情報、屋内ナビゲーション、検索機能、標高情報、天気サービスなどを提供することができます。
@ -185,7 +185,7 @@ Azure Maps APIには、[REST API](https://docs.microsoft.com/javascript/api/azur
`index.html`ページをウェブブラウザで開くと、シアトル地域にフォーカスしたマップが表示されるはずです。
![アメリカ合衆国ワシントン州の都市シアトルを示す地図](../../../../../translated_images/ja/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.png)
![アメリカ合衆国ワシントン州の都市シアトルを示す地図](../../../../../translated_images/ja/map-image.8fb2c53eb23ef39c.webp)
✅ ズームや中心座標のパラメータを変更してマップ表示を試してみてください。データの緯度と経度に対応する異なる座標を追加してマップを再中心化することができます。
@ -319,7 +319,7 @@ Azure Maps APIには、[REST API](https://docs.microsoft.com/javascript/api/azur
1. HTMLページをブラウザで読み込んでください。地図が読み込まれ、ストレージからすべてのGPSデータが読み込まれ、地図上にプロットされます。
![シアトル近郊のセントエドワード州立公園の地図。公園の端を囲む経路に沿って円が表示されている](../../../../../translated_images/ja/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.png)
![シアトル近郊のセントエドワード州立公園の地図。公園の端を囲む経路に沿って円が表示されている](../../../../../translated_images/ja/map-path.896832e72dc696ff.webp)
> 💁 このコードは[code](../../../../../3-transport/lessons/3-visualize-location-data/code)フォルダーにあります。

@ -1,6 +1,6 @@
# ジオフェンス
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-14.63980c5150ae3c15.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大表示されます。
@ -35,7 +35,7 @@
ジオフェンスは、現実世界の地理的領域に対する仮想的な境界線です。ジオフェンスは、建物周辺100mの円のように点と半径で定義される円形や、学校区域、市境界、大学やオフィスキャンパスのようなポリゴンで構成されることがあります。
![Microsoftの会社ストア周辺の円形ジオフェンスと、Microsoft西キャンパス周辺のポリゴンジオフェンスの例](../../../../../translated_images/ja/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.png)
![Microsoftの会社ストア周辺の円形ジオフェンスと、Microsoft西キャンパス周辺のポリゴンジオフェンスの例](../../../../../translated_images/ja/geofence-examples.172fbc534665769f.webp)
> 💁 すでにジオフェンスを知らずに使用しているかもしれません。iOSのリマインダーアプリやGoogle Keepで位置情報に基づいてリマインダーを設定したことがある場合、それはジオフェンスを使用しています。これらのアプリは指定された位置情報に基づいてジオフェンスを設定し、スマートフォンがジオフェンス内に入ると通知を送ります。
@ -212,7 +212,7 @@ API呼び出しから返される結果の一部には、ジオフェンスの
例えば、車両がジオフェンスの隣を走る道路を走行していることを示すGPS測定値があるとします。単一のGPS値が不正確で、車両がジオフェンス内にあると示されても、車両がアクセスできない場合は無視することができます。
![Microsoftキャンパスを通過する520号線沿いの車両のGPSトレイル。道路沿いのGPS測定値の中に、ジオフェンス内にある1つの不正確な測定値が含まれている](../../../../../translated_images/ja/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.png)
![Microsoftキャンパスを通過する520号線沿いの車両のGPSトレイル。道路沿いのGPS測定値の中に、ジオフェンス内にある1つの不正確な測定値が含まれている](../../../../../translated_images/ja/geofence-crossing-inaccurate-gps.6a3ed911202ad9ca.webp)
上記の画像では、Microsoftキャンパスの一部にジオフェンスが設定されています。赤い線は520号線を走るトラックを示しており、GPSの読み取り値を示す円が描かれています。ほとんどの読み取り値は正確で520号線上にありますが、1つの不正確な読み取り値がジオフェンス内にあります。この読み取り値が正しいはずがありません。トラックが突然520号線からキャンパス内に入り、再び520号線に戻るような道路は存在しません。このジオフェンスをチェックするコードは、ジオフェンステストの結果を処理する前に、以前の読み取り値を考慮する必要があります。
✅ GPS読み取り値が正しいと判断するために、どのような追加データが必要ですか
@ -284,7 +284,7 @@ API呼び出しから返される結果の一部には、ジオフェンスの
その解決策として、複数の独立した接続を定義してイベントを読み取り、それぞれが未読メッセージの再生を管理することができます。これらは*コンシューマーグループ*と呼ばれます。エンドポイントに接続する際に、接続したいコンシューマーグループを指定できます。アプリケーションの各コンポーネントは異なるコンシューマーグループに接続します。
![1つのIoT Hubが3つのコンシューマーグループを使用して同じメッセージを3つの異なるFunctionsアプリに配信する](../../../../../translated_images/ja/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.png)
![1つのIoT Hubが3つのコンシューマーグループを使用して同じメッセージを3つの異なるFunctionsアプリに配信する](../../../../../translated_images/ja/consumer-groups.a3262e26fc27ba20.webp)
理論的には、各コンシューマーグループに最大5つのアプリケーションが接続でき、メッセージが到着するとすべてのアプリケーションがメッセージを受信します。ただし、メッセージの重複処理を避け、再起動時にすべてのキューに入ったメッセージが正しく処理されるようにするため、各コンシューマーグループには1つのアプリケーションのみがアクセスするのがベストプラクティスです。例えば、Functionsアプリをローカルで起動し、クラウドでも実行している場合、両方がメッセージを処理し、ストレージアカウントに重複したBlobが保存される可能性があります。

@ -1,6 +1,6 @@
# 果物の品質検出器を訓練する
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-15.843d21afdc6fb2bb.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大版が表示されます。
@ -38,7 +38,7 @@
自動収穫の普及により、農産物の仕分けは収穫から工場へと移行しました。食品は長いコンベアベルトで運ばれ、チームが品質基準を満たさないものを取り除く作業を行います。機械による収穫でコストは削減されましたが、食品を手作業で仕分けるコストは依然として存在しました。
![赤いトマトが検出されるとそのまま進み、緑のトマトが検出されるとレバーで廃棄箱に弾かれる](../../../../../translated_images/ja/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.png)
![赤いトマトが検出されるとそのまま進み、緑のトマトが検出されるとレバーで廃棄箱に弾かれる](../../../../../translated_images/ja/optical-tomato-sorting.61aa134bdda4e5b1.webp)
次の進化は、収穫機や加工工場に組み込まれた機械を使用して仕分けを行うことでした。これらの機械の第一世代は、光学センサーを使用して色を検出し、アクチュエーターを制御して緑のトマトをレバーや空気の噴射で廃棄箱に押し込み、赤いトマトをコンベアベルトのネットワークにそのまま流す仕組みでした。
@ -62,7 +62,7 @@
> 🎓 MLモデルの結果は*予測*と呼ばれます。
![2本のバナナ。熟したバナナは99.7%熟している、0.3%未熟という予測。未熟なバナナは1.4%熟している、98.6%未熟という予測](../../../../../translated_images/ja/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.png)
![2本のバナナ。熟したバナナは99.7%熟している、0.3%未熟という予測。未熟なバナナは1.4%熟している、98.6%未熟という予測](../../../../../translated_images/ja/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50e.webp)
MLモデルは二択の答えを出すのではなく、確率を提供します。例えば、モデルがバナナの写真を与えられた場合、`熟している`が99.7%、`未熟`が0.3%と予測するかもしれません。コードは最も高い予測を選び、そのバナナが熟していると判断します。
@ -90,7 +90,7 @@ MLモデルは二択の答えを出すのではなく、確率を提供します
Custom Visionは、画像分類器を訓練するためのクラウドベースのツールです。少量の画像を使用して分類器を訓練することができます。画像をWebポータル、Web API、またはSDKを通じてアップロードし、各画像にその分類を示す*タグ*を付けます。その後、モデルを訓練し、どれだけうまく機能するかをテストします。モデルに満足したら、Web APIやSDKを通じてアクセス可能なバージョンを公開できます。
![Azure Custom Visionのロゴ](../../../../../translated_images/ja/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.png)
![Azure Custom Visionのロゴ](../../../../../translated_images/ja/custom-vision-logo.d3d4e7c8a87ec9da.webp)
> 💁 Custom Visionモデルは、分類ごとに最低5枚の画像で訓練できますが、多い方が良いです。少なくとも30枚の画像があると、より良い結果が得られます。
@ -146,7 +146,7 @@ Custom Visionを使用するには、Azure CLIを使用してAzureに2つのCogn
プロジェクトを作成する際、先ほど作成した`fruit-quality-detector-training`リソースを使用してください。*分類*プロジェクトタイプ、*マルチクラス*分類タイプ、*食品*ドメインを選択します。
![Custom Visionプロジェクトの設定。名前はfruit-quality-detector、説明なし、リソースはfruit-quality-detector-training、プロジェクトタイプは分類、分類タイプはマルチクラス、ドメインは食品](../../../../../translated_images/ja/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.png)
![Custom Visionプロジェクトの設定。名前はfruit-quality-detector、説明なし、リソースはfruit-quality-detector-training、プロジェクトタイプは分類、分類タイプはマルチクラス、ドメインは食品](../../../../../translated_images/ja/custom-vision-create-project.cf46325b92d8b131.webp)
✅ 画像分類器のCustom Vision UIを探索する時間を取ってみてください。
@ -164,7 +164,7 @@ Custom Visionを使用するには、Azure CLIを使用してAzureに2つのCogn
* 熟したバナナ2本を使用し、それぞれを異なる角度から撮影して少なくとも7枚の写真を撮ります5枚はトレーニング用、2枚はテスト用。理想的にはもっと多く撮影してください。
![異なるバナナ2本の写真](../../../../../translated_images/ja/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.png)
![異なるバナナ2本の写真](../../../../../translated_images/ja/banana-training-images.530eb203346d73bc.webp)
* 同じプロセスを未熟なバナナ2本でも繰り返します。
@ -174,7 +174,7 @@ Custom Visionを使用するには、Azure CLIを使用してAzureに2つのCogn
1. [Microsoft Docsの分類器クイックスタートの画像アップロードとタグ付けセクション](https://docs.microsoft.com/azure/cognitive-services/custom-vision-service/getting-started-build-a-classifier?WT.mc_id=academic-17441-jabenn#upload-and-tag-images)に従い、トレーニング画像をアップロードします。熟した果物には`ripe`、未熟な果物には`unripe`というタグを付けます。
![熟したバナナと未熟なバナナの写真をアップロードするダイアログ](../../../../../translated_images/ja/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.png)
![熟したバナナと未熟なバナナの写真をアップロードするダイアログ](../../../../../translated_images/ja/image-upload-bananas.0751639f3815e0ec.webp)
1. [Microsoft Docsの分類器クイックスタートの分類器をトレーニングするセクション](https://docs.microsoft.com/azure/cognitive-services/custom-vision-service/getting-started-build-a-classifier?WT.mc_id=academic-17441-jabenn#train-the-classifier)に従い、アップロードした画像で画像分類器をトレーニングします。
@ -192,7 +192,7 @@ Custom Visionを使用するには、Azure CLIを使用してAzureに2つのCogn
1. [Microsoft Docsのモデルをテストするドキュメント](https://docs.microsoft.com/azure/cognitive-services/custom-vision-service/test-your-model?WT.mc_id=academic-17441-jabenn#test-your-model)に従い、画像分類器をテストします。以前に作成したテスト画像を使用し、トレーニングに使用した画像は使用しないでください。
![未熟なバナナが98.9%の確率で未熟、1.1%の確率で熟していると予測された結果](../../../../../translated_images/ja/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.png)
![未熟なバナナが98.9%の確率で未熟、1.1%の確率で熟していると予測された結果](../../../../../translated_images/ja/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64.webp)
1. 利用可能なすべてのテスト画像を試し、確率を観察してください。

@ -1,6 +1,6 @@
# IoTデバイスで果物の品質をチェックする
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.jpg)
![このレッスンの概要を示すスケッチノート](../../../../../translated_images/ja/lesson-16.215daf18b00631fb.webp)
> スケッチノート作成者:[Nitya Narasimhan](https://github.com/nitya)。画像をクリックすると拡大版が表示されます。
@ -26,7 +26,7 @@
カメラセンサーは、その名の通り、IoTデバイスに接続できるカメラです。静止画を撮影したり、ストリーミングビデオをキャプチャしたりすることができます。一部のカメラは生の画像データを返し、他のカメラはJPEGやPNGなどの画像ファイル形式に圧縮されたデータを返します。通常、IoTデバイスで使用されるカメラは、一般的なカメラよりも小型で解像度が低いですが、高解像度のカメラもあり、ハイエンドのスマートフォンに匹敵するものもあります。交換可能なレンズ、複数のカメラセットアップ、赤外線サーマルカメラ、UVカメラなど、さまざまな種類のカメラが利用可能です。
![シーンからの光がレンズを通り、CMOSセンサーに焦点を合わせる様子](../../../../../translated_images/ja/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.png)
![シーンからの光がレンズを通り、CMOSセンサーに焦点を合わせる様子](../../../../../translated_images/ja/cmos-sensor.75f9cd74decb1371.webp)
ほとんどのカメラセンサーは、各ピクセルがフォトダイオードで構成されたイメージセンサーを使用しています。レンズが画像をイメージセンサーに焦点を合わせ、数千または数百万のフォトダイオードがそれぞれに当たる光を検出し、ピクセルデータとして記録します。
@ -74,7 +74,7 @@ IoTデバイスを使用して、分類するための画像をキャプチャ
1. イテレーションの**公開**ボタンを選択します。
![公開ボタン](../../../../../translated_images/ja/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.png)
![公開ボタン](../../../../../translated_images/ja/custom-vision-publish-button.b7174e1977b0c33b.webp)
1. *Publish Model*ダイアログで、*Prediction resource*を前回のレッスンで作成した`fruit-quality-detector-prediction`リソースに設定します。名前は`Iteration2`のままにして、**Publish**ボタンを選択します。
@ -88,7 +88,7 @@ IoTデバイスを使用して、分類するための画像をキャプチャ
また、*Prediction-Key*の値もコピーしてください。これはモデルを呼び出す際に渡す必要があるセキュアキーです。このキーを渡すアプリケーションのみがモデルを使用でき、それ以外のアプリケーションは拒否されます。
![予測APIダイアログに表示されるURLとキー](../../../../../translated_images/ja/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.png)
![予測APIダイアログに表示されるURLとキー](../../../../../translated_images/ja/custom-vision-prediction-key-endpoint.30c569ffd0338864.webp)
✅ 新しいイテレーションが公開されると、異なる名前が付けられます。IoTデバイスが使用するイテレーションをどのように変更すると思いますか
@ -109,7 +109,7 @@ IoTデバイスに接続されたカメラを使用した場合、得られる
画像分類器で最良の結果を得るには、予測に使用される画像とできるだけ似た画像でモデルをトレーニングする必要があります。たとえば、スマートフォンのカメラを使用してトレーニング用の画像をキャプチャした場合、画像の品質、鮮明さ、色がIoTデバイスに接続されたカメラとは異なります。
![2つのバナナの画像。左はIoTデバイスで撮影された低解像度で照明が悪い画像、右はスマートフォンで撮影された高解像度で照明が良い画像](../../../../../translated_images/ja/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.png)
![2つのバナナの画像。左はIoTデバイスで撮影された低解像度で照明が悪い画像、右はスマートフォンで撮影された高解像度で照明が良い画像](../../../../../translated_images/ja/banana-picture-compare.174df164dc326a42.webp)
上の画像では、左のバナナの画像はRaspberry Piカメラを使用して撮影され、右の画像は同じバナナを同じ場所でiPhoneを使用して撮影されました。品質には顕著な違いがあり、iPhoneの画像はより鮮明で、色が明るく、コントラストが高いです。

@ -16,7 +16,7 @@ Raspberry Piにはカメラが必要です。
### タスク - カメラを接続する
![Raspberry Pi Camera](../../../../../translated_images/ja/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.png)
![Raspberry Pi Camera](../../../../../translated_images/ja/pi-camera-module.4278753c31bd6e75.webp)
1. Piの電源を切ります。
@ -24,17 +24,17 @@ Raspberry Piにはカメラが必要です。
クリップを開けてケーブルを挿入する方法を示すアニメーションは[Raspberry Pi Getting Started with the Camera module documentation](https://projects.raspberrypi.org/en/projects/getting-started-with-picamera/2)で確認できます。
![リボンケーブルがカメラモジュールに挿入された状態](../../../../../translated_images/ja/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.png)
![リボンケーブルがカメラモジュールに挿入された状態](../../../../../translated_images/ja/pi-camera-ribbon-cable.0bf82acd251611c2.webp)
1. Grove Base HatをPiから取り外します。
1. Grove Base Hatのカメラスロットを通してリボンケーブルを通します。ケーブルの青い面が**A0**、**A1**などとラベル付けされたアナログポートの方向を向くようにしてください。
![Grove Base Hatを通過するリボンケーブル](../../../../../translated_images/ja/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.png)
![Grove Base Hatを通過するリボンケーブル](../../../../../translated_images/ja/grove-base-hat-ribbon-cable.501fed202fcf73b1.webp)
1. リボンケーブルをPiのカメラポートに挿入します。再び黒いプラスチッククリップを引き上げ、ケーブルを挿入してクリップを元に戻します。ケーブルの青い面がUSBとイーサネットポートの方向を向くようにしてください。
![Piのカメラソケットに接続されたリボンケーブル](../../../../../translated_images/ja/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.png)
![Piのカメラソケットに接続されたリボンケーブル](../../../../../translated_images/ja/pi-camera-socket-ribbon-cable.a18309920b118009.webp)
1. Grove Base Hatを再装着します。
@ -101,7 +101,7 @@ Raspberry Piは[PiCamera](https://pypi.org/project/picamera/) Pythonライブラ
`camera.rotation = 0`行は画像の回転を設定します。リボンケーブルはカメラの下部に接続されますが、分類したいアイテムに向けやすくするためにカメラを回転させた場合、この行を回転角度に応じて変更できます。
![飲料缶の上に吊り下げられたカメラ](../../../../../translated_images/ja/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.png)
![飲料缶の上に吊り下げられたカメラ](../../../../../translated_images/ja/pi-camera-upside-down.5376961ba3145988.webp)
例えば、リボンケーブルをカメラの上部に吊り下げた場合、回転を180に設定します

@ -84,7 +84,7 @@ Custom Visionサービスには、画像を分類するために使用できるP
撮影された画像と、**Predictions**タブでこれらの値をCustom Visionで確認できます。
![Custom Visionでバナナが予測され、熟している確率が56.8%、未熟な確率が43.1%と表示されている](../../../../../translated_images/ja/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.png)
![Custom Visionでバナナが予測され、熟している確率が56.8%、未熟な確率が43.1%と表示されている](../../../../../translated_images/ja/custom-vision-banana-prediction.30cdff4e1d72db5d.webp)
> 💁 このコードは[code-classify/pi](../../../../../4-manufacturing/lessons/2-check-fruit-from-device/code-classify/pi)または[code-classify/virtual-iot-device](../../../../../4-manufacturing/lessons/2-check-fruit-from-device/code-classify/virtual-iot-device)フォルダーで確認できます。

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save