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

pull/577/head
localizeflow[bot] 6 months ago
parent 247b539862
commit e32e73661c

@ -738,8 +738,8 @@
"language_code": "fa"
},
"README.md": {
"original_hash": "3fcc056cd3837e33d2bdf79f9c359fcf",
"translation_date": "2026-01-30T01:13:04+00:00",
"original_hash": "accf69391fa4450eadbf492ca024cccf",
"translation_date": "2026-04-06T15:58:34+00:00",
"source_file": "README.md",
"language_code": "fa"
},

@ -1,6 +1,6 @@
# مقدمه‌ای بر اینترنت اشیا
![تصویری از خلاصه درس](../../../../../translated_images/fa/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.jpg)
![تصویری از خلاصه درس](../../../../../translated_images/fa/lesson-1.2606670fa61ee904.webp)
> طراحی توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.

@ -203,7 +203,7 @@
اپلیکیشن شروع به اجرا می‌کند و در مرورگر وب شما باز می‌شود:
![The Counter Fit app running in a browser](../../../../../translated_images/fa/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.png)
![The Counter Fit app running in a browser](../../../../../translated_images/fa/counterfit-first-run.433326358b669b31.webp)
این اپلیکیشن به عنوان *Disconnected* علامت‌گذاری شده است و LED در گوشه بالا-راست خاموش است.
@ -224,7 +224,7 @@
1. در این ترمینال جدید، فایل `app.py` را همانند قبل اجرا کنید. وضعیت CounterFit به **Connected** تغییر خواهد کرد و LED روشن خواهد شد.
![Counter Fit showing as connected](../../../../../translated_images/fa/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.png)
![Counter Fit showing as connected](../../../../../translated_images/fa/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/fa/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-2.324b0580d620c25e.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -38,7 +38,7 @@
این دستگاه‌ها با دنیای فیزیکی تعامل دارند، یا با استفاده از حسگرها برای جمع‌آوری داده از محیط اطراف خود، یا با کنترل خروجی‌ها یا عملگرها برای ایجاد تغییرات فیزیکی. مثال معمول این موضوع یک ترموستات هوشمند است - دستگاهی که دارای حسگر دما، وسیله‌ای برای تنظیم دمای مطلوب مانند یک صفحه لمسی یا دکمه، و یک اتصال به سیستم گرمایش یا سرمایش است که می‌تواند زمانی که دمای تشخیص داده شده خارج از محدوده مطلوب است، روشن شود. حسگر دما تشخیص می‌دهد که اتاق خیلی سرد است و یک عملگر گرمایش را روشن می‌کند.
![یک نمودار که دما و یک دکمه را به عنوان ورودی‌های یک دستگاه اینترنت اشیا و کنترل یک بخاری را به عنوان خروجی نشان می‌دهد](../../../../../translated_images/fa/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.png)
![یک نمودار که دما و یک دکمه را به عنوان ورودی‌های یک دستگاه اینترنت اشیا و کنترل یک بخاری را به عنوان خروجی نشان می‌دهد](../../../../../translated_images/fa/basic-thermostat.a923217fd1f37e5a.webp)
انواع بسیار متنوعی از دستگاه‌ها می‌توانند به عنوان دستگاه‌های اینترنت اشیا عمل کنند، از سخت‌افزارهای اختصاصی که یک چیز خاص را حس می‌کنند، تا دستگاه‌های چندمنظوره، حتی گوشی هوشمند شما! یک گوشی هوشمند می‌تواند از حسگرها برای تشخیص دنیای اطراف خود استفاده کند و از عملگرها برای تعامل با دنیا - برای مثال، استفاده از حسگر GPS برای تشخیص موقعیت مکانی شما و یک بلندگو برای ارائه دستورالعمل‌های مسیریابی به مقصد.
@ -54,7 +54,7 @@
در مثال یک ترموستات هوشمند، ترموستات از طریق WiFi خانگی به یک سرویس ابری متصل می‌شود. این دستگاه داده‌های دما را به این سرویس ابری ارسال می‌کند و از آنجا به یک پایگاه داده نوشته می‌شود که به صاحب خانه اجازه می‌دهد دماهای فعلی و گذشته را با استفاده از یک اپلیکیشن تلفن همراه بررسی کند. یک سرویس دیگر در ابر می‌داند که صاحب خانه چه دمایی را می‌خواهد و پیام‌هایی را از طریق سرویس ابری به دستگاه اینترنت اشیا ارسال می‌کند تا سیستم گرمایش را روشن یا خاموش کند.
![یک نمودار که دما و یک دکمه را به عنوان ورودی‌های یک دستگاه اینترنت اشیا، دستگاه اینترنت اشیا با ارتباط دوطرفه با ابر، که به نوبه خود ارتباط دوطرفه با یک تلفن دارد، و کنترل یک بخاری را به عنوان خروجی از دستگاه اینترنت اشیا نشان می‌دهد](../../../../../translated_images/fa/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.png)
![یک نمودار که دما و یک دکمه را به عنوان ورودی‌های یک دستگاه اینترنت اشیا، دستگاه اینترنت اشیا با ارتباط دوطرفه با ابر، که به نوبه خود ارتباط دوطرفه با یک تلفن دارد، و کنترل یک بخاری را به عنوان خروجی از دستگاه اینترنت اشیا نشان می‌دهد](../../../../../translated_images/fa/mobile-controlled-thermostat.4a994010473d8d6a.webp)
نسخه‌ای حتی هوشمندتر می‌تواند از هوش مصنوعی در ابر با داده‌های حسگرهای دیگر متصل به دستگاه‌های اینترنت اشیا مانند حسگرهای اشغال که تشخیص می‌دهند کدام اتاق‌ها استفاده می‌شوند، و همچنین داده‌هایی مانند وضعیت آب و هوا و حتی تقویم شما استفاده کند تا تصمیماتی در مورد تنظیم دما به صورت هوشمندانه بگیرد. برای مثال، می‌تواند گرمایش شما را خاموش کند اگر از تقویم شما بخواند که در تعطیلات هستید، یا گرمایش را به صورت اتاق به اتاق خاموش کند بسته به اینکه از کدام اتاق‌ها استفاده می‌کنید، و با یادگیری از داده‌ها به مرور زمان دقیق‌تر شود.
@ -94,7 +94,7 @@
> 💁 پردازنده‌ها برنامه‌ها را با استفاده از [چرخه واکشی-رمزگشایی-اجرا](https://wikipedia.org/wiki/Instruction_cycle) اجرا می‌کنند. برای هر تیک ساعت، پردازنده دستورالعمل بعدی را از حافظه واکشی می‌کند، آن را رمزگشایی می‌کند و سپس اجرا می‌کند، مانند استفاده از واحد منطق حسابی (ALU) برای جمع دو عدد. برخی اجراها ممکن است چندین تیک طول بکشند، بنابراین چرخه بعدی در تیک بعدی پس از تکمیل دستورالعمل اجرا می‌شود.
![چرخه واکشی-رمزگشایی-اجرا که واکشی دستورالعمل از برنامه ذخیره‌شده در RAM، سپس رمزگشایی و اجرای آن روی پردازنده را نشان می‌دهد](../../../../../translated_images/fa/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.png)
![چرخه واکشی-رمزگشایی-اجرا که واکشی دستورالعمل از برنامه ذخیره‌شده در RAM، سپس رمزگشایی و اجرای آن روی پردازنده را نشان می‌دهد](../../../../../translated_images/fa/fetch-decode-execute.2fd6f150f6280392.webp)
میکروکنترلرها سرعت ساعت بسیار کمتری نسبت به کامپیوترهای رومیزی یا لپ‌تاپ‌ها، یا حتی اکثر گوشی‌های هوشمند دارند. برای مثال، Wio Terminal دارای پردازنده‌ای است که با سرعت ۱۲۰ مگاهرتز یا ۱۲۰,۰۰۰,۰۰۰ چرخه در ثانیه کار می‌کند.
@ -182,7 +182,7 @@ RAM حافظه‌ای است که برنامه برای اجرا از آن اس
شما کد تنظیمات خود را در تابع `setup` می‌نویسید، مانند اتصال به WiFi و خدمات ابری یا مقداردهی اولیه پین‌ها برای ورودی و خروجی. کد حلقه شما سپس شامل کد پردازش می‌شود، مانند خواندن از یک حسگر و ارسال مقدار به ابر. معمولاً در هر حلقه یک تأخیر اضافه می‌کنید، برای مثال، اگر فقط می‌خواهید داده‌های حسگر هر ۱۰ ثانیه ارسال شود، در انتهای حلقه یک تأخیر ۱۰ ثانیه‌ای اضافه می‌کنید تا میکروکنترلر بخوابد، انرژی ذخیره کند، و سپس حلقه را دوباره اجرا کند.
![یک اسکچ آردوینو که ابتدا setup را اجرا می‌کند و سپس loop را به‌طور مکرر اجرا می‌کند](../../../../../translated_images/fa/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.png)
![یک اسکچ آردوینو که ابتدا setup را اجرا می‌کند و سپس loop را به‌طور مکرر اجرا می‌کند](../../../../../translated_images/fa/arduino-sketch.79590cb837ff7a7c.webp)
✅ این معماری برنامه به‌عنوان یک *حلقه رویداد* یا *حلقه پیام* شناخته می‌شود. بسیاری از برنامه‌ها در پشت صحنه از این معماری استفاده می‌کنند و این استاندارد برای اکثر برنامه‌های دسکتاپی است که روی سیستم‌عامل‌هایی مانند ویندوز، macOS یا لینوکس اجرا می‌شوند. حلقه `loop` پیام‌ها را از اجزای رابط کاربری مانند دکمه‌ها یا دستگاه‌هایی مانند صفحه‌کلید گوش می‌دهد و به آن‌ها پاسخ می‌دهد. می‌توانید در این [مقاله درباره حلقه رویداد](https://wikipedia.org/wiki/Event_loop) بیشتر بخوانید.

@ -1,6 +1,6 @@
# تعامل با دنیای فیزیکی با حسگرها و عملگرها
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-3.cc3b7b4cd646de59.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -92,7 +92,7 @@
ساده‌ترین حسگر دیجیتال یک دکمه یا سوئیچ است. این یک حسگر با دو حالت است، روشن یا خاموش.
![یک دکمه ۵ ولت ارسال می‌کند. وقتی فشار داده نمی‌شود ۰ ولت بازمی‌گرداند، وقتی فشار داده می‌شود ۵ ولت بازمی‌گرداند](../../../../../translated_images/fa/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.png)
![یک دکمه ۵ ولت ارسال می‌کند. وقتی فشار داده نمی‌شود ۰ ولت بازمی‌گرداند، وقتی فشار داده می‌شود ۵ ولت بازمی‌گرداند](../../../../../translated_images/fa/button.eadb560b77ac45e5.webp)
پین‌های دستگاه‌های IoT مانند پین‌های GPIO می‌توانند این سیگنال را مستقیماً به عنوان ۰ یا ۱ اندازه‌گیری کنند. اگر ولتاژ ارسال شده همان ولتاژ بازگشتی باشد، مقدار خوانده شده ۱ است، در غیر این صورت مقدار خوانده شده ۰ است. نیازی به تبدیل سیگنال نیست، فقط می‌تواند ۱ یا ۰ باشد.
@ -125,7 +125,7 @@
راهنمای مربوطه را دنبال کنید تا یک عملگر به دستگاه IoT خود اضافه کنید که توسط حسگر کنترل شود تا یک چراغ شب IoT بسازید. این چراغ سطح نور را از حسگر نور جمع‌آوری کرده و از یک عملگر به شکل LED برای انتشار نور زمانی که سطح نور تشخیص داده شده خیلی کم است استفاده می‌کند.
![یک نمودار جریان از تکلیف که نشان می‌دهد سطح نور خوانده و بررسی می‌شود و LED کنترل می‌شود](../../../../../translated_images/fa/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.png)
![یک نمودار جریان از تکلیف که نشان می‌دهد سطح نور خوانده و بررسی می‌شود و LED کنترل می‌شود](../../../../../translated_images/fa/assignment-1-flow.7552a51acb1a5ec8.webp)
* [Arduino - Wio Terminal](wio-terminal-actuator.md)
* [کامپیوتر تک‌برد - Raspberry Pi](pi-actuator.md)
@ -140,7 +140,7 @@
عملگرهای آنالوگ یک سیگنال آنالوگ را گرفته و آن را به نوعی تعامل تبدیل می‌کنند، جایی که تعامل بر اساس ولتاژ ارائه شده تغییر می‌کند.
یک مثال چراغ قابل تنظیم است، مانند چراغ‌هایی که ممکن است در خانه خود داشته باشید. مقدار ولتاژ ارائه شده به چراغ تعیین می‌کند که چقدر روشن باشد.
![یک چراغ که با ولتاژ پایین کم‌نور و با ولتاژ بالا روشن‌تر است](../../../../../translated_images/fa/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.png)
![یک چراغ که با ولتاژ پایین کم‌نور و با ولتاژ بالا روشن‌تر است](../../../../../translated_images/fa/dimmable-light.9ceffeb195dec1a8.webp)
مانند حسگرها، دستگاه‌های واقعی اینترنت اشیا (IoT) با سیگنال‌های دیجیتال کار می‌کنند، نه آنالوگ. این بدان معناست که برای ارسال یک سیگنال آنالوگ، دستگاه اینترنت اشیا نیاز به یک مبدل دیجیتال به آنالوگ (DAC) دارد، یا به‌صورت مستقیم روی دستگاه اینترنت اشیا یا روی یک برد اتصال. این مبدل، 0 و 1‌های دستگاه اینترنت اشیا را به ولتاژ آنالوگ تبدیل می‌کند که عملگر بتواند از آن استفاده کند.
@ -187,7 +187,7 @@
یک عملگر دیجیتال ساده، LED است. وقتی یک دستگاه سیگنال دیجیتال 1 ارسال می‌کند، یک ولتاژ بالا ارسال می‌شود که LED را روشن می‌کند. وقتی یک سیگنال دیجیتال 0 ارسال می‌شود، ولتاژ به 0 ولت کاهش می‌یابد و LED خاموش می‌شود.
![یک LED در 0 ولت خاموش و در 5 ولت روشن است](../../../../../translated_images/fa/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.png)
![یک LED در 0 ولت خاموش و در 5 ولت روشن است](../../../../../translated_images/fa/led.ec6d94f66676a174.webp)
✅ چه عملگرهای ساده دو حالته دیگری می‌توانید تصور کنید؟ یک مثال، سلونوئید است که یک آهنربای الکتریکی است که می‌تواند فعال شود تا کارهایی مانند حرکت دادن یک قفل درب برای قفل کردن یا باز کردن درب انجام دهد.

@ -26,7 +26,7 @@ LED Grove به صورت یک ماژول با مجموعه‌ای از LED‌ها
LED را وصل کنید.
![یک LED Grove](../../../../../translated_images/fa/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.png)
![یک LED Grove](../../../../../translated_images/fa/grove-led.6c853be93f473cf2.webp)
1. LED مورد علاقه خود را انتخاب کنید و پایه‌های آن را در دو سوراخ روی ماژول LED قرار دهید.
@ -40,7 +40,7 @@ LED را وصل کنید.
1. با خاموش بودن رزبری پای، سر دیگر کابل Grove را به سوکت دیجیتال علامت‌گذاری شده **D5** روی Grove Base hat متصل به پای وصل کنید. این سوکت دومین سوکت از سمت چپ در ردیف سوکت‌های کنار پین‌های GPIO است.
![LED Grove متصل به سوکت D5](../../../../../translated_images/fa/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.png)
![LED Grove متصل به سوکت D5](../../../../../translated_images/fa/pi-led.97f1d474981dc35d.webp)
## برنامه‌نویسی چراغ خواب

@ -16,13 +16,13 @@
حسگر نور را متصل کنید.
![یک حسگر نور Grove](../../../../../translated_images/fa/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.png)
![یک حسگر نور Grove](../../../../../translated_images/fa/grove-light-sensor.b8127b7c434e632d.webp)
1. یک سر کابل Grove را به سوکت روی ماژول حسگر نور وارد کنید. این کابل فقط از یک جهت وارد می‌شود.
1. با خاموش بودن رزبری پای، سر دیگر کابل Grove را به سوکت آنالوگ با علامت **A0** روی کلاهک پایه Grove که به رزبری پای متصل است، وصل کنید. این سوکت دومین سوکت از سمت راست در ردیف سوکت‌های کنار پین‌های GPIO است.
![حسگر نور Grove متصل به سوکت A0](../../../../../translated_images/fa/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.png)
![حسگر نور Grove متصل به سوکت A0](../../../../../translated_images/fa/pi-light-sensor.66cc1e31fa48cd7d.webp)
## برنامه‌نویسی حسگر نور

@ -36,11 +36,11 @@ LED را به برنامه CounterFit اضافه کنید.
1. دکمه **Add** را انتخاب کنید تا LED روی پین 5 ایجاد شود.
![تنظیمات LED](../../../../../translated_images/fa/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.png)
![تنظیمات LED](../../../../../translated_images/fa/counterfit-create-led.ba9db1c9b8c622a6.webp)
LED ایجاد شده و در لیست عملگرها ظاهر می‌شود.
![LED ایجاد شده](../../../../../translated_images/fa/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.png)
![LED ایجاد شده](../../../../../translated_images/fa/counterfit-led.c0ab02de6d256ad8.webp)
پس از ایجاد LED، می‌توانید رنگ آن را با استفاده از انتخابگر *Color* تغییر دهید. دکمه **Set** را انتخاب کنید تا پس از انتخاب رنگ، آن را تغییر دهید.

@ -28,11 +28,11 @@
1. دکمه **Add** را انتخاب کنید تا حسگر نور روی پین 0 ایجاد شود.
![تنظیمات حسگر نور](../../../../../translated_images/fa/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.png)
![تنظیمات حسگر نور](../../../../../translated_images/fa/counterfit-create-light-sensor.9f36a5e0d4458d8d.webp)
حسگر نور ایجاد خواهد شد و در لیست حسگرها ظاهر می‌شود.
![حسگر نور ایجاد شده](../../../../../translated_images/fa/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.png)
![حسگر نور ایجاد شده](../../../../../translated_images/fa/counterfit-light-sensor.5d0f5584df56b90f.webp)
## برنامه‌نویسی حسگر نور

@ -26,7 +26,7 @@ LED Grove به صورت یک ماژول با مجموعه‌ای از LEDها ا
LED را متصل کنید.
![یک LED Grove](../../../../../translated_images/fa/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.png)
![یک LED Grove](../../../../../translated_images/fa/grove-led.6c853be93f473cf2.webp)
1. LED مورد علاقه خود را انتخاب کرده و پایه‌های آن را در دو سوراخ روی ماژول LED قرار دهید.

@ -1,6 +1,6 @@
# اتصال دستگاه شما به اینترنت
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-4.7344e074ea68fa54.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -47,7 +47,7 @@ MQTT محبوب‌ترین پروتکل ارتباطی برای دستگاه‌
MQTT دارای یک بروکر و چندین کلاینت است. تمام کلاینت‌ها به بروکر متصل می‌شوند و بروکر پیام‌ها را به کلاینت‌های مربوطه هدایت می‌کند. پیام‌ها با استفاده از موضوعات نام‌گذاری شده هدایت می‌شوند، نه اینکه مستقیماً به یک کلاینت خاص ارسال شوند. یک کلاینت می‌تواند به یک موضوع پیام ارسال کند و هر کلاینتی که به آن موضوع اشتراک کرده باشد پیام را دریافت خواهد کرد.
![دستگاه IoT تله‌متری را در موضوع /telemetry منتشر می‌کند و سرویس ابری به آن موضوع اشتراک می‌کند](../../../../../translated_images/fa/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.png)
![دستگاه IoT تله‌متری را در موضوع /telemetry منتشر می‌کند و سرویس ابری به آن موضوع اشتراک می‌کند](../../../../../translated_images/fa/mqtt.cbf7f21d9adc3e17.webp)
✅ تحقیق کنید. اگر تعداد زیادی دستگاه IoT داشته باشید، چگونه می‌توانید اطمینان حاصل کنید که بروکر MQTT شما قادر به مدیریت تمام پیام‌ها است؟
@ -69,7 +69,7 @@ MQTT دارای یک بروکر و چندین کلاینت است. تمام کل
> 💁 این بروکر آزمایشی عمومی و غیرامن است. هر کسی می‌تواند به آنچه شما منتشر می‌کنید گوش دهد، بنابراین نباید با داده‌هایی که نیاز به حفظ حریم خصوصی دارند استفاده شود.
![یک نمودار جریان از تکلیف که نشان‌دهنده خواندن و بررسی سطح نور و کنترل LED است](../../../../../translated_images/fa/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.png)
![یک نمودار جریان از تکلیف که نشان‌دهنده خواندن و بررسی سطح نور و کنترل LED است](../../../../../translated_images/fa/assignment-1-internet-flow.3256feab5f052fd2.webp)
مراحل مربوطه زیر را دنبال کنید تا دستگاه خود را به بروکر MQTT متصل کنید:
@ -350,7 +350,7 @@ MQTT همچنین از یک عملکرد نگهداری اتصال پشتیبا
طراحان دستگاه‌های IoT همچنین باید در نظر بگیرند که آیا دستگاه IoT می‌تواند در طول قطعی اینترنت یا از دست دادن سیگنال ناشی از مکان استفاده شود یا خیر. یک ترموستات هوشمند باید بتواند برخی تصمیمات محدود برای کنترل گرمایش بگیرد اگر نتواند تله‌متری را به ابر ارسال کند به دلیل قطعی.
[![این فراری خراب شد چون کسی سعی کرد آن را زیر زمین که هیچ سیگنال موبایلی وجود ندارد ارتقا دهد](../../../../../translated_images/fa/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.png)](https://twitter.com/internetofshit/status/1315736960082808832)
[![این فراری خراب شد چون کسی سعی کرد آن را زیر زمین که هیچ سیگنال موبایلی وجود ندارد ارتقا دهد](../../../../../translated_images/fa/bricked-car.dc38f8efadc6c59d.webp)](https://twitter.com/internetofshit/status/1315736960082808832)
برای اینکه MQTT بتواند از دست دادن اتصال را مدیریت کند، کد دستگاه و سرور باید مسئول اطمینان از تحویل پیام‌ها در صورت نیاز باشند، به عنوان مثال با الزام اینکه تمام پیام‌های ارسال شده توسط پیام‌های اضافی در یک موضوع پاسخ پاسخ داده شوند، و اگر نه، آن‌ها به صورت دستی صف‌بندی شوند تا بعداً بازپخش شوند.
@ -358,7 +358,7 @@ MQTT همچنین از یک عملکرد نگهداری اتصال پشتیبا
دستورات پیام‌هایی هستند که از ابر به یک دستگاه ارسال می‌شوند و به آن دستور می‌دهند کاری انجام دهد. بیشتر اوقات این شامل دادن نوعی خروجی از طریق یک عملگر است، اما می‌تواند یک دستور برای خود دستگاه باشد، مانند راه‌اندازی مجدد یا جمع‌آوری تله‌متری اضافی و بازگرداندن آن به عنوان پاسخ به دستور.
![یک ترموستات متصل به اینترنت که دستوری برای روشن کردن گرمایش دریافت می‌کند](../../../../../translated_images/fa/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.png)
![یک ترموستات متصل به اینترنت که دستوری برای روشن کردن گرمایش دریافت می‌کند](../../../../../translated_images/fa/commands.d6c06bbbb3a02cce.webp)
یک ترموستات می‌تواند دستوری از ابر دریافت کند تا گرمایش را روشن کند. بر اساس داده‌های تله‌متری از تمام حسگرها، اگر سرویس ابری تصمیم گرفته باشد که گرمایش باید روشن شود، دستور مربوطه را ارسال می‌کند.

@ -1,6 +1,6 @@
# پیش‌بینی رشد گیاه با IoT
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-5.42b234299279d263.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -90,7 +90,7 @@
فرمول کامل برای GDD کمی پیچیده است، اما یک معادله ساده‌تر وجود دارد که اغلب به عنوان یک تقریب خوب استفاده می‌شود:
![GDD = T max + T min تقسیم بر 2، همه منهای T base](../../../../../translated_images/fa/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.png)
![GDD = T max + T min تقسیم بر 2، همه منهای T base](../../../../../translated_images/fa/gdd-calculation.79b3660f9c5757aa.webp)
* **GDD** - این تعداد روزهای درجه رشد است
* **T max** - این دمای حداکثر روزانه به درجه سانتی‌گراد است
@ -118,7 +118,7 @@
این محاسبه به صورت زیر است:
![GDD = 16 + 12 تقسیم بر 2، همه منهای 10، نتیجه 4](../../../../../translated_images/fa/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.png)
![GDD = 16 + 12 تقسیم بر 2، همه منهای 10، نتیجه 4](../../../../../translated_images/fa/gdd-calculation-corn.64a58b7a7afcd0df.webp)
ذرت در آن روز 4 GDD دریافت کرد. با فرض اینکه نوعی از ذرت به 800 GDD برای بلوغ نیاز دارد، هنوز به 796 GDD دیگر نیاز دارد تا به بلوغ برسد.
@ -239,7 +239,7 @@
برای مثال، اگر بالاترین دمای روز ۲۵ درجه سانتی‌گراد و پایین‌ترین دما ۱۲ درجه سانتی‌گراد باشد:
![GDD = 25 + 12 تقسیم بر 2، سپس 10 را از نتیجه کم کنید که برابر با 8.5 می‌شود](../../../../../translated_images/fa/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.png)
![GDD = 25 + 12 تقسیم بر 2، سپس 10 را از نتیجه کم کنید که برابر با 8.5 می‌شود](../../../../../translated_images/fa/gdd-calculation-strawberries.59f57db94b22adb8.webp)
* ۲۵ + ۱۲ = ۳۷
* ۳۷ / ۲ = ۱۸.۵

@ -33,7 +33,7 @@
Jupyter شروع به کار می‌کند و دفترچه را در مرورگر شما باز می‌کند. دستورالعمل‌های موجود در دفترچه را دنبال کنید تا دماهای اندازه‌گیری شده را نمایش دهید و روزهای درجه رشد را محاسبه کنید.
![دفترچه Jupyter](../../../../../translated_images/fa/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.png)
![دفترچه Jupyter](../../../../../translated_images/fa/gdd-jupyter-notebook.c5b52cf21094f158.webp)
## معیارها

@ -16,13 +16,13 @@
حسگر دما را وصل کنید.
![یک حسگر دمای Grove](../../../../../translated_images/fa/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.png)
![یک حسگر دمای Grove](../../../../../translated_images/fa/grove-dht11.07f8eafceee17004.webp)
1. یک سر کابل Grove را به سوکت روی حسگر رطوبت و دما وارد کنید. این کابل فقط به یک جهت وارد می‌شود.
1. با خاموش بودن رزبری پای، سر دیگر کابل Grove را به سوکت دیجیتال با علامت **D5** روی کلاهک پایه Grove که به پای متصل است، وصل کنید. این سوکت دومین سوکت از سمت چپ در ردیف سوکت‌های کنار پین‌های GPIO است.
![حسگر دمای Grove متصل به سوکت A0](../../../../../translated_images/fa/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.png)
![حسگر دمای Grove متصل به سوکت A0](../../../../../translated_images/fa/pi-temperature-sensor.3ff82fff672c8e56.webp)
## برنامه‌نویسی حسگر دما

@ -38,11 +38,11 @@
1. دکمه **Add** را انتخاب کنید تا حسگر رطوبت روی پین 5 ایجاد شود.
![تنظیمات حسگر رطوبت](../../../../../translated_images/fa/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.png)
![تنظیمات حسگر رطوبت](../../../../../translated_images/fa/counterfit-create-humidity-sensor.2750e27b6f30e09c.webp)
حسگر رطوبت ایجاد شده و در لیست حسگرها ظاهر خواهد شد.
![حسگر رطوبت ایجاد شده](../../../../../translated_images/fa/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.png)
![حسگر رطوبت ایجاد شده](../../../../../translated_images/fa/counterfit-humidity-sensor.7b12f7f339e430cb.webp)
1. یک حسگر دما ایجاد کنید:
@ -54,11 +54,11 @@
1. دکمه **Add** را انتخاب کنید تا حسگر دما روی پین 6 ایجاد شود.
![تنظیمات حسگر دما](../../../../../translated_images/fa/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.png)
![تنظیمات حسگر دما](../../../../../translated_images/fa/counterfit-create-temperature-sensor.199350ed34f7343d.webp)
حسگر دما ایجاد شده و در لیست حسگرها ظاهر خواهد شد.
![حسگر دما ایجاد شده](../../../../../translated_images/fa/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.png)
![حسگر دما ایجاد شده](../../../../../translated_images/fa/counterfit-temperature-sensor.f0560236c96a9016.webp)
## برنامه‌نویسی برنامه حسگر دما

@ -18,7 +18,7 @@ Wio Terminal به یک حسگر دما نیاز دارد.
حسگر دما را متصل کنید.
![یک حسگر دمای Grove](../../../../../translated_images/fa/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.png)
![یک حسگر دمای Grove](../../../../../translated_images/fa/grove-dht11.07f8eafceee17004.webp)
1. یک سر کابل Grove را به سوکت روی حسگر رطوبت و دما وارد کنید. این کابل فقط از یک جهت وارد می‌شود.

@ -13,7 +13,7 @@ I²C دارای گذرگاهی است که از 2 سیم اصلی، همراه
| VCC | جمع‌کننده ولتاژ مشترک | منبع تغذیه برای دستگاه‌ها. این سیم به سیم‌های SDA و SCL متصل است تا از طریق مقاومت کششی، توان آن‌ها را تأمین کند و سیگنال را زمانی که هیچ دستگاهی کنترل‌کننده نیست خاموش کند. |
| GND | زمین | این سیم زمین مشترک برای مدار الکتریکی فراهم می‌کند. |
![گذرگاه I2C با 3 دستگاه متصل به سیم‌های SDA و SCL که یک سیم زمین مشترک را به اشتراک می‌گذارند](../../../../../translated_images/fa/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.png)
![گذرگاه I2C با 3 دستگاه متصل به سیم‌های SDA و SCL که یک سیم زمین مشترک را به اشتراک می‌گذارند](../../../../../translated_images/fa/i2c.83da845dde02256b.webp)
برای ارسال داده، یک دستگاه شرایط شروع را صادر می‌کند تا نشان دهد آماده ارسال داده است. سپس به کنترل‌کننده تبدیل می‌شود. کنترل‌کننده سپس آدرس دستگاهی را که می‌خواهد با آن ارتباط برقرار کند، همراه با اینکه آیا می‌خواهد داده بخواند یا بنویسد، ارسال می‌کند. پس از انتقال داده‌ها، کنترل‌کننده شرایط توقف را ارسال می‌کند تا نشان دهد که کارش تمام شده است. پس از این، دستگاه دیگری می‌تواند به کنترل‌کننده تبدیل شود و داده‌ها را ارسال یا دریافت کند.
<sup>

@ -20,7 +20,7 @@
رطوبت خاک به روش وزنی به صورت زیر محاسبه می‌شود:
![درصد رطوبت خاک برابر است با وزن خاک مرطوب منهای وزن خاک خشک، تقسیم بر وزن خاک خشک، ضربدر 100](../../../../../translated_images/fa/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.png)
![درصد رطوبت خاک برابر است با وزن خاک مرطوب منهای وزن خاک خشک، تقسیم بر وزن خاک خشک، ضربدر 100](../../../../../translated_images/fa/gsm-calculation.6da38c6201eec14e.webp)
* W
- وزن خاک مرطوب
@ -29,7 +29,7 @@
برای مثال، فرض کنید یک نمونه خاک دارید که وزن آن در حالت مرطوب 212 گرم و در حالت خشک 197 گرم است.
![محاسبه تکمیل شده](../../../../../translated_images/fa/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.png)
![محاسبه تکمیل شده](../../../../../translated_images/fa/gsm-calculation-example.99f9803b4f29e976.webp)
* W = 212g
* W = 197g

@ -18,13 +18,13 @@
حسگر رطوبت خاک را وصل کنید.
![یک حسگر رطوبت خاک Grove](../../../../../translated_images/fa/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.png)
![یک حسگر رطوبت خاک Grove](../../../../../translated_images/fa/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78b.webp)
1. یک سر کابل Grove را به سوکت روی حسگر رطوبت خاک وارد کنید. این کابل فقط به یک شکل وارد می‌شود.
1. با خاموش بودن رزبری پای، سر دیگر کابل Grove را به سوکت آنالوگ با علامت **A0** روی Grove Base Hat متصل به رزبری پای وصل کنید. این سوکت دومین سوکت از سمت راست در ردیف سوکت‌های کنار پین‌های GPIO است.
![حسگر رطوبت خاک Grove متصل به سوکت A0](../../../../../translated_images/fa/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.png)
![حسگر رطوبت خاک Grove متصل به سوکت A0](../../../../../translated_images/fa/pi-soil-moisture-sensor.fdd7eb2393792cf6.webp)
1. حسگر رطوبت خاک را در خاک قرار دهید. این حسگر دارای یک "خط بالاترین موقعیت" است - یک خط سفید روی حسگر. حسگر را تا این خط وارد کنید اما از آن عبور نکنید.

@ -34,11 +34,11 @@
1. دکمه **Add** را انتخاب کنید تا حسگر *Soil Moisture* روی پین ۰ ایجاد شود.
![تنظیمات حسگر رطوبت خاک](../../../../../translated_images/fa/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.png)
![تنظیمات حسگر رطوبت خاک](../../../../../translated_images/fa/counterfit-create-soil-moisture-sensor.35266135a5e0ae68.webp)
حسگر رطوبت خاک ایجاد شده و در لیست حسگرها ظاهر می‌شود.
![حسگر رطوبت خاک ایجاد شده](../../../../../translated_images/fa/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.png)
![حسگر رطوبت خاک ایجاد شده](../../../../../translated_images/fa/counterfit-soil-moisture-sensor.81742b2de0e9de60.webp)
## برنامه‌نویسی برنامه حسگر رطوبت خاک

@ -18,7 +18,7 @@
حسگر رطوبت خاک را متصل کنید.
![یک حسگر رطوبت خاک Grove](../../../../../translated_images/fa/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.png)
![یک حسگر رطوبت خاک Grove](../../../../../translated_images/fa/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78b.webp)
1. یک سر کابل Grove را به سوکت روی حسگر رطوبت خاک وارد کنید. کابل فقط از یک جهت وارد می‌شود.

@ -1,6 +1,6 @@
# آبیاری خودکار گیاهان
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-7.30b5f577d3cb8e03.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -32,7 +32,7 @@
راه‌حل این است که پمپ به یک منبع تغذیه خارجی متصل شود و از یک عملگر برای روشن کردن پمپ استفاده شود، مشابه اینکه چگونه یک چراغ را روشن می‌کنید. مقدار کمی انرژی (به شکل انرژی در بدن شما) برای انگشت شما کافی است تا یک کلید را فشار دهد، و این کلید چراغ را به برق اصلی متصل می‌کند که با ولتاژ 110v/240v کار می‌کند.
![یک کلید چراغ برق را به چراغ وصل می‌کند](../../../../../translated_images/fa/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.png)
![یک کلید چراغ برق را به چراغ وصل می‌کند](../../../../../translated_images/fa/light-switch.760317ad6ab8bd6d.webp)
> 🎓 [برق اصلی](https://wikipedia.org/wiki/Mains_electricity) به برق تحویلی به خانه‌ها و کسب‌وکارها از طریق زیرساخت ملی در بسیاری از نقاط جهان اشاره دارد.
@ -72,7 +72,7 @@
الکترومغناطیس برای فعال شدن و کشیدن اهرم به مقدار زیادی برق نیاز ندارد، می‌توان آن را با خروجی 3.3V یا 5V از یک کیت توسعه IoT کنترل کرد. مدار خروجی می‌تواند برق بیشتری حمل کند، بسته به رله، از جمله ولتاژ اصلی یا حتی سطوح توان بالاتر برای استفاده صنعتی. به این ترتیب یک کیت توسعه IoT می‌تواند یک سیستم آبیاری را کنترل کند، از یک پمپ کوچک برای یک گیاه واحد تا یک سیستم صنعتی عظیم برای یک مزرعه تجاری کامل.
![یک رله Grove با مدار کنترل، مدار خروجی و رله برچسب‌گذاری شده](../../../../../translated_images/fa/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.png)
![یک رله Grove با مدار کنترل، مدار خروجی و رله برچسب‌گذاری شده](../../../../../translated_images/fa/grove-relay-labelled.293e068f5c3c2a19.webp)
تصویر بالا یک رله Grove را نشان می‌دهد. مدار کنترل به یک دستگاه IoT متصل می‌شود و رله را با استفاده از 3.3V یا 5V روشن یا خاموش می‌کند. مدار خروجی دارای دو ترمینال است، هر کدام می‌توانند برق یا زمین باشند. مدار خروجی می‌تواند تا 250V با 10A را تحمل کند، که برای طیف وسیعی از دستگاه‌های تغذیه‌شده با برق اصلی کافی است. شما می‌توانید رله‌هایی تهیه کنید که حتی سطوح توان بالاتری را تحمل کنند.

@ -18,13 +18,13 @@
رله را وصل کنید.
![یک رله Grove](../../../../../translated_images/fa/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.png)
![یک رله Grove](../../../../../translated_images/fa/grove-relay.d426958ca210fbd0.webp)
1. یک سر کابل Grove را به سوکت روی رله وارد کنید. کابل فقط از یک جهت وارد می‌شود.
1. با خاموش بودن رزبری پای، سر دیگر کابل Grove را به سوکت دیجیتال با علامت **D5** روی Grove Base Hat که به پای متصل است وصل کنید. این سوکت دومین سوکت از سمت چپ در ردیف سوکت‌های کنار پین‌های GPIO است. سنسور رطوبت خاک را به سوکت **A0** متصل نگه دارید.
![رله Grove متصل به سوکت D5 و سنسور رطوبت خاک متصل به سوکت A0](../../../../../translated_images/fa/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.png)
![رله Grove متصل به سوکت D5 و سنسور رطوبت خاک متصل به سوکت A0](../../../../../translated_images/fa/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e.webp)
1. سنسور رطوبت خاک را در خاک قرار دهید، اگر قبلاً از درس قبلی در خاک قرار داده نشده است.

@ -28,11 +28,11 @@
1. دکمه **Add** را انتخاب کنید تا رله روی پین 5 ایجاد شود.
![تنظیمات رله](../../../../../translated_images/fa/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.png)
![تنظیمات رله](../../../../../translated_images/fa/counterfit-create-relay.fa7c40fd0f2f6afc.webp)
رله ایجاد خواهد شد و در لیست محرک‌ها ظاهر می‌شود.
![رله ایجاد شده](../../../../../translated_images/fa/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.png)
![رله ایجاد شده](../../../../../translated_images/fa/counterfit-relay.bbf74c1dbdc8b9ac.webp)
## برنامه‌نویسی رله

@ -18,7 +18,7 @@ Wio Terminal به یک رله نیاز دارد.
رله را متصل کنید.
![یک رله Grove](../../../../../translated_images/fa/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.png)
![یک رله Grove](../../../../../translated_images/fa/grove-relay.d426958ca210fbd0.webp)
1. یک سر کابل Grove را به سوکت روی رله وارد کنید. این کابل فقط از یک جهت وارد می‌شود.

@ -1,6 +1,6 @@
# انتقال گیاه شما به فضای ابری
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-8.3f21f3c11159e6a0.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -46,8 +46,8 @@
فضای ابری اغلب به شوخی به عنوان "کامپیوتر شخص دیگری" نامیده می‌شود. ایده اولیه ساده بود - به جای خرید کامپیوتر، شما کامپیوتر شخص دیگری را اجاره می‌کنید. شخص دیگری، یک ارائه‌دهنده خدمات فضای ابری، مراکز داده عظیمی را مدیریت می‌کند. آن‌ها مسئول خرید و نصب سخت‌افزار، مدیریت برق و خنک‌کننده، شبکه‌سازی، امنیت ساختمان، به‌روزرسانی سخت‌افزار و نرم‌افزار و همه چیز هستند. به عنوان مشتری، شما کامپیوترهایی را که نیاز دارید اجاره می‌کنید، در زمان افزایش تقاضا بیشتر اجاره می‌کنید و در زمان کاهش تقاضا تعداد اجاره‌ها را کاهش می‌دهید. این مراکز داده ابری در سراسر جهان قرار دارند.
![یک مرکز داده ابری مایکروسافت](../../../../../translated_images/fa/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.png)
![برنامه توسعه یک مرکز داده ابری مایکروسافت](../../../../../translated_images/fa/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.png)
![یک مرکز داده ابری مایکروسافت](../../../../../translated_images/fa/azure-region-existing.73f704604f2aa6cb.webp)
![برنامه توسعه یک مرکز داده ابری مایکروسافت](../../../../../translated_images/fa/azure-region-planned-expansion.a5074a1e8af74f15.webp)
این مراکز داده می‌توانند چندین کیلومتر مربع وسعت داشته باشند. تصاویر بالا چند سال پیش در یک مرکز داده ابری مایکروسافت گرفته شده‌اند و اندازه اولیه و برنامه توسعه را نشان می‌دهند. منطقه‌ای که برای توسعه پاکسازی شده است بیش از ۵ کیلومتر مربع وسعت دارد.
@ -108,11 +108,11 @@ Azure ابر توسعه‌دهندگان مایکروسافت است و این
دستگاه‌های IoT به یک سرویس ابری یا از طریق یک SDK دستگاه (کتابخانه‌ای که کدی برای کار با ویژگی‌های سرویس ارائه می‌دهد) یا مستقیماً از طریق یک پروتکل ارتباطی مانند MQTT یا HTTP متصل می‌شوند. SDK دستگاه معمولاً ساده‌ترین مسیر است زیرا همه چیز را برای شما مدیریت می‌کند، مانند دانستن اینکه چه موضوعاتی باید منتشر یا مشترک شوند و چگونه امنیت را مدیریت کند.
![دستگاه‌ها با استفاده از SDK دستگاه به سرویس متصل می‌شوند. کد سرور نیز از طریق SDK به سرویس متصل می‌شود](../../../../../translated_images/fa/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.png)
![دستگاه‌ها با استفاده از SDK دستگاه به سرویس متصل می‌شوند. کد سرور نیز از طریق SDK به سرویس متصل می‌شود](../../../../../translated_images/fa/iot-service-connectivity.7e873847921a5d6f.webp)
دستگاه شما سپس از طریق این سرویس با سایر بخش‌های برنامه شما ارتباط برقرار می‌کند - مشابه نحوه ارسال داده‌های تله‌متری و دریافت دستورات از طریق MQTT. این معمولاً با استفاده از یک SDK سرویس یا کتابخانه مشابه انجام می‌شود. پیام‌ها از دستگاه شما به سرویس ارسال می‌شوند، جایی که سایر اجزای برنامه شما می‌توانند آن‌ها را بخوانند، و پیام‌ها می‌توانند به دستگاه شما ارسال شوند.
![دستگاه‌هایی که کلید مخفی معتبر ندارند نمی‌توانند به سرویس IoT متصل شوند](../../../../../translated_images/fa/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.png)
![دستگاه‌هایی که کلید مخفی معتبر ندارند نمی‌توانند به سرویس IoT متصل شوند](../../../../../translated_images/fa/iot-service-allowed-denied-connection.818b0063ac213fb8.webp)
این خدمات امنیت را با دانستن همه دستگاه‌هایی که می‌توانند متصل شوند و داده ارسال کنند، اجرا می‌کنند، یا با ثبت‌نام قبلی دستگاه‌ها در سرویس یا با دادن کلیدهای مخفی یا گواهی‌نامه‌هایی به دستگاه‌ها که می‌توانند هنگام اولین اتصال خود را در سرویس ثبت کنند. دستگاه‌های ناشناخته نمی‌توانند متصل شوند، اگر تلاش کنند سرویس اتصال را رد می‌کند و پیام‌های ارسال‌شده توسط آن‌ها را نادیده می‌گیرد.
@ -124,7 +124,7 @@ Azure ابر توسعه‌دهندگان مایکروسافت است و این
حالا که اشتراک Azure دارید، می‌توانید برای یک سرویس IoT ثبت‌نام کنید. سرویس IoT مایکروسافت به نام Azure IoT Hub شناخته می‌شود.
![لوگوی Azure IoT Hub](../../../../../translated_images/fa/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.png)
![لوگوی Azure IoT Hub](../../../../../translated_images/fa/azure-iot-hub-logo.28a19de76d0a1932.webp)
ویدئوی زیر یک مرور کوتاه از Azure IoT Hub ارائه می‌دهد:

@ -1,6 +1,6 @@
# انتقال منطق برنامه به فضای ابری
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-9.dfe99c8e891f48e1.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -28,7 +28,7 @@
بدون سرور، یا محاسبات بدون سرور، شامل ایجاد بلوک‌های کوچک کدی است که در پاسخ به انواع مختلف رویدادها در فضای ابری اجرا می‌شوند. وقتی رویدادی رخ می‌دهد، کد شما اجرا شده و داده‌های مربوط به رویداد به آن ارسال می‌شود. این رویدادها می‌توانند از منابع مختلفی باشند، از جمله درخواست‌های وب، پیام‌های قرار داده شده در صف، تغییرات داده در یک پایگاه داده، یا پیام‌های ارسال شده به یک سرویس IoT توسط دستگاه‌های IoT.
![رویدادهایی که از یک سرویس IoT به یک سرویس بدون سرور ارسال می‌شوند و همگی به طور همزمان توسط چندین تابع پردازش می‌شوند](../../../../../translated_images/fa/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.png)
![رویدادهایی که از یک سرویس IoT به یک سرویس بدون سرور ارسال می‌شوند و همگی به طور همزمان توسط چندین تابع پردازش می‌شوند](../../../../../translated_images/fa/iot-messages-to-serverless.0194da1cc0732bb7.webp)
> 💁 اگر قبلاً از تریگرهای پایگاه داده استفاده کرده‌اید، می‌توانید این را مشابه همان بدانید، کدی که با یک رویداد مانند درج یک ردیف فعال می‌شود.
@ -54,7 +54,7 @@
سرویس محاسبات بدون سرور مایکروسافت به نام Azure Functions شناخته می‌شود.
![لوگوی Azure Functions](../../../../../translated_images/fa/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.png)
![لوگوی Azure Functions](../../../../../translated_images/fa/azure-functions-logo.1cfc8e3204c9c44a.webp)
ویدئوی کوتاه زیر نمای کلی از Azure Functions ارائه می‌دهد:

@ -1,6 +1,6 @@
# گیاه خود را ایمن نگه دارید
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-10.829c86b80b9403bb.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -52,11 +52,11 @@
وقتی یک دستگاه به یک سرویس اینترنت اشیا متصل می‌شود، از یک شناسه برای شناسایی خود استفاده می‌کند. مشکل این است که این شناسه می‌تواند کپی شود - یک هکر می‌تواند یک دستگاه مخرب راه‌اندازی کند که از همان شناسه یک دستگاه واقعی استفاده می‌کند اما داده‌های جعلی ارسال می‌کند.
![هم دستگاه معتبر و هم دستگاه مخرب می‌توانند از یک شناسه برای ارسال تله‌متری استفاده کنند](../../../../../translated_images/fa/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.png)
![هم دستگاه معتبر و هم دستگاه مخرب می‌توانند از یک شناسه برای ارسال تله‌متری استفاده کنند](../../../../../translated_images/fa/iot-device-and-hacked-device-connecting.e0671675df74d6d9.webp)
راه‌حل این مشکل تبدیل داده‌های ارسالی به یک فرمت رمزگذاری‌شده است، با استفاده از مقداری که فقط دستگاه و ابر آن را می‌دانند. این فرآیند *رمزگذاری* نامیده می‌شود و مقداری که برای رمزگذاری داده‌ها استفاده می‌شود *کلید رمزگذاری* نام دارد.
![اگر از رمزگذاری استفاده شود، فقط پیام‌های رمزگذاری‌شده پذیرفته می‌شوند و سایر پیام‌ها رد می‌شوند](../../../../../translated_images/fa/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.png)
![اگر از رمزگذاری استفاده شود، فقط پیام‌های رمزگذاری‌شده پذیرفته می‌شوند و سایر پیام‌ها رد می‌شوند](../../../../../translated_images/fa/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f.webp)
سرویس ابری سپس می‌تواند داده‌ها را به یک فرمت قابل خواندن تبدیل کند، با استفاده از فرآیندی به نام *رمزگشایی*، با استفاده از همان کلید رمزگذاری یا یک *کلید رمزگشایی*. اگر پیام رمزگذاری‌شده توسط کلید رمزگشایی نشود، دستگاه هک شده و پیام رد می‌شود.

@ -1,6 +1,6 @@
# ردیابی موقعیت
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-11.9fddbac4b664c6d5.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -63,13 +63,13 @@ IoT در حال تغییر نحوه حمل‌ونقل کالاها با ایجا
> 💁 هیچ‌کس واقعاً دلیل اصلی تقسیم دایره‌ها به 360 درجه را نمی‌داند. صفحه [درجه (زاویه) در ویکی‌پدیا](https://wikipedia.org/wiki/Degree_(angle)) برخی از دلایل احتمالی را پوشش می‌دهد.
![خطوط عرض جغرافیایی از 90° در قطب شمال، 45° در نیمه‌راه بین قطب شمال و استوا، 0° در استوا، -45° در نیمه‌راه بین استوا و قطب جنوب، و -90° در قطب جنوب](../../../../../translated_images/fa/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.png)
![خطوط عرض جغرافیایی از 90° در قطب شمال، 45° در نیمه‌راه بین قطب شمال و استوا، 0° در استوا، -45° در نیمه‌راه بین استوا و قطب جنوب، و -90° در قطب جنوب](../../../../../translated_images/fa/latitude-lines.11d8d91dfb2014a5.webp)
عرض جغرافیایی با خطوطی اندازه‌گیری می‌شود که زمین را دور می‌زنند و موازی با استوا هستند، نیمکره‌های شمالی و جنوبی را به 90° تقسیم می‌کنند. استوا در 0° قرار دارد، قطب شمال در 90°، که به عنوان 90° شمال نیز شناخته می‌شود، و قطب جنوب در -90°، یا 90° جنوب قرار دارد.
طول جغرافیایی به عنوان تعداد درجه‌های اندازه‌گیری شده شرق و غرب اندازه‌گیری می‌شود. مبدأ 0° طول جغرافیایی *نصف‌النهار مبدأ* نامیده می‌شود و در سال 1884 به عنوان خطی از قطب شمال به قطب جنوب که از [رصدخانه سلطنتی بریتانیا در گرینویچ، انگلستان](https://wikipedia.org/wiki/Royal_Observatory,_Greenwich) عبور می‌کند، تعریف شد.
![خطوط طول جغرافیایی که از -180° به غرب نصف‌النهار مبدأ، تا 0° روی نصف‌النهار مبدأ، تا 180° شرق نصف‌النهار مبدأ می‌روند](../../../../../translated_images/fa/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.png)
![خطوط طول جغرافیایی که از -180° به غرب نصف‌النهار مبدأ، تا 0° روی نصف‌النهار مبدأ، تا 180° شرق نصف‌النهار مبدأ می‌روند](../../../../../translated_images/fa/longitude-meridians.ab4ef1c91c064586.webp)
> 🎓 نصف‌النهار یک خط مستقیم خیالی است که از قطب شمال به قطب جنوب می‌رود و یک نیم‌دایره تشکیل می‌دهد.
@ -100,7 +100,7 @@ IoT در حال تغییر نحوه حمل‌ونقل کالاها با ایجا
* عرض جغرافیایی 47.6423109 (47.6423109 درجه شمال استوا)
* طول جغرافیایی -122.1390293 (122.1390293 درجه غرب نصف‌النهار مبدأ).
![پردیس مایکروسافت در 47.6423109,-122.117198](../../../../../translated_images/fa/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.png)
![پردیس مایکروسافت در 47.6423109,-122.117198](../../../../../translated_images/fa/microsoft-gps-location-world.a321d481b010f6ad.webp)
## سیستم‌های موقعیت‌یابی جهانی (GPS)
@ -112,7 +112,7 @@ IoT در حال تغییر نحوه حمل‌ونقل کالاها با ایجا
> 💁 حسگرهای GPS به آنتن‌هایی برای شناسایی امواج رادیویی نیاز دارند. آنتن‌های تعبیه شده در کامیون‌ها و ماشین‌ها با GPS داخلی به گونه‌ای قرار داده شده‌اند که سیگنال خوبی دریافت کنند، معمولاً روی شیشه جلو یا سقف. اگر از یک سیستم GPS جداگانه، مانند گوشی هوشمند یا دستگاه IoT استفاده می‌کنید، باید اطمینان حاصل کنید که آنتن تعبیه شده در سیستم GPS یا گوشی دید واضحی از آسمان دارد، مانند نصب شدن روی شیشه جلو.
![با دانستن فاصله از حسگر تا چندین ماهواره، موقعیت قابل محاسبه است](../../../../../translated_images/fa/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.png)
![با دانستن فاصله از حسگر تا چندین ماهواره، موقعیت قابل محاسبه است](../../../../../translated_images/fa/gps-satellites.04acf1148fe25fbf.webp)
ماهواره‌های GPS در حال چرخش به دور زمین هستند، نه در یک نقطه ثابت بالای حسگر، بنابراین داده‌های موقعیت شامل ارتفاع از سطح دریا علاوه بر عرض جغرافیایی و طول جغرافیایی است.

@ -18,13 +18,13 @@
حسگر GPS را متصل کنید.
![حسگر Grove GPS](../../../../../translated_images/fa/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.png)
![حسگر Grove GPS](../../../../../translated_images/fa/grove-gps-sensor.247943bf69b03f0d.webp)
1. یک سر کابل Grove را به سوکت حسگر GPS وارد کنید. کابل فقط از یک جهت وارد می‌شود.
1. با خاموش بودن رزبری پای، سر دیگر کابل Grove را به سوکت UART که با **UART** روی Grove Base hat متصل به رزبری پای مشخص شده است، وصل کنید. این سوکت در ردیف وسط، در سمت نزدیک به شیار کارت SD قرار دارد، در طرف مقابل پورت‌های USB و سوکت اترنت.
![حسگر Grove GPS متصل به سوکت UART](../../../../../translated_images/fa/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.png)
![حسگر Grove GPS متصل به سوکت UART](../../../../../translated_images/fa/pi-gps-sensor.1f99ee2b2f652891.webp)
1. حسگر GPS را در موقعیتی قرار دهید که آنتن متصل به آن دید به آسمان داشته باشد - ترجیحاً کنار یک پنجره باز یا در فضای باز. دریافت سیگنال واضح‌تر زمانی آسان‌تر است که چیزی جلوی آنتن نباشد.

@ -38,11 +38,11 @@
1. دکمه **Add** را انتخاب کنید تا حسگر GPS در پورت `/dev/ttyAMA0` ایجاد شود.
![تنظیمات حسگر GPS](../../../../../translated_images/fa/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.png)
![تنظیمات حسگر GPS](../../../../../translated_images/fa/counterfit-create-gps-sensor.6385dc9357d85ad1.webp)
حسگر GPS ایجاد شده و در لیست حسگرها ظاهر می‌شود.
![حسگر GPS ایجاد شده](../../../../../translated_images/fa/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.png)
![حسگر GPS ایجاد شده](../../../../../translated_images/fa/counterfit-gps-sensor.3fbb15af0a536756.webp)
## برنامه‌نویسی حسگر GPS
@ -102,17 +102,17 @@
* مقدار **Source** را روی `Lat/Lon` تنظیم کنید و یک عرض جغرافیایی، طول جغرافیایی و تعداد ماهواره‌های استفاده‌شده برای دریافت موقعیت GPS مشخص کنید. این مقدار فقط یک بار ارسال می‌شود، بنابراین گزینه **Repeat** را علامت بزنید تا داده‌ها هر ثانیه تکرار شوند.
![حسگر GPS با Lat/Lon تنظیم شده](../../../../../translated_images/fa/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.png)
![حسگر GPS با Lat/Lon تنظیم شده](../../../../../translated_images/fa/counterfit-gps-sensor-latlon.008c867d75464fbe.webp)
* مقدار **Source** را روی `NMEA` تنظیم کنید و چند جمله NMEA در کادر متن وارد کنید. تمام این مقادیر ارسال می‌شوند، با تأخیری ۱ ثانیه‌ای قبل از هر جمله GGA (موقعیت‌یابی).
![حسگر GPS با جملات NMEA تنظیم شده](../../../../../translated_images/fa/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.png)
![حسگر GPS با جملات NMEA تنظیم شده](../../../../../translated_images/fa/counterfit-gps-sensor-nmea.c62eea442171e17e.webp)
می‌توانید از ابزاری مانند [nmeagen.org](https://www.nmeagen.org) برای تولید این جملات با کشیدن روی نقشه استفاده کنید. این مقادیر فقط یک بار ارسال می‌شوند، بنابراین گزینه **Repeat** را علامت بزنید تا داده‌ها یک ثانیه پس از ارسال کامل تکرار شوند.
* مقدار **Source** را روی فایل GPX تنظیم کنید و یک فایل GPX با موقعیت‌های مسیر بارگذاری کنید. می‌توانید فایل‌های GPX را از سایت‌های محبوب نقشه‌برداری و کوهنوردی مانند [AllTrails](https://www.alltrails.com/) دانلود کنید. این فایل‌ها شامل چندین موقعیت GPS به صورت یک مسیر هستند و حسگر GPS هر موقعیت جدید را با فاصله ۱ ثانیه بازمی‌گرداند.
![حسگر GPS با فایل GPX تنظیم شده](../../../../../translated_images/fa/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.png)
![حسگر GPS با فایل GPX تنظیم شده](../../../../../translated_images/fa/counterfit-gps-sensor-gpxfile.8310b063ce8a425c.webp)
این مقادیر فقط یک بار ارسال می‌شوند، بنابراین گزینه **Repeat** را علامت بزنید تا داده‌ها یک ثانیه پس از ارسال کامل تکرار شوند.

@ -18,7 +18,7 @@ Wio Terminal به یک حسگر GPS نیاز دارد.
حسگر GPS را متصل کنید.
![یک حسگر Grove GPS](../../../../../translated_images/fa/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.png)
![یک حسگر Grove GPS](../../../../../translated_images/fa/grove-gps-sensor.247943bf69b03f0d.webp)
1. یک سر کابل Grove را به سوکت روی حسگر GPS وارد کنید. کابل فقط از یک جهت وارد سوکت می‌شود.

@ -1,6 +1,6 @@
# ذخیره داده‌های موقعیت مکانی
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-12.ca7f53039712a3ec.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -75,7 +75,7 @@
> 💁 با وجود نامشان، برخی از پایگاه‌های داده NoSQL به شما اجازه می‌دهند از SQL برای جستجوی داده‌ها استفاده کنید.
![اسناد در پوشه‌ها در یک پایگاه داده NoSQL](../../../../../translated_images/fa/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.png)
![اسناد در پوشه‌ها در یک پایگاه داده NoSQL](../../../../../translated_images/fa/noqsl-database.62d24ccf5b73f60d.webp)
پایگاه‌های داده NoSQL طرح‌واره از پیش تعریف‌شده‌ای ندارند که نحوه ذخیره داده‌ها را محدود کند، بلکه می‌توانید هر داده غیرساختاریافته‌ای را وارد کنید، معمولاً با استفاده از اسناد JSON. این اسناد می‌توانند در پوشه‌ها سازماندهی شوند، مشابه فایل‌ها در رایانه شما. هر سند می‌تواند فیلدهای متفاوتی از سایر اسناد داشته باشد - برای مثال، اگر داده‌های IoT از وسایل نقلیه مزرعه خود را ذخیره کنید، برخی ممکن است فیلدهایی برای داده‌های شتاب‌سنج و سرعت داشته باشند، در حالی که برخی دیگر ممکن است فیلدهایی برای دمای داخل تریلر داشته باشند. اگر بخواهید نوع جدیدی از کامیون، مانند کامیونی با ترازوهای داخلی برای ردیابی وزن محصولات حمل‌شده، اضافه کنید، دستگاه IoT شما می‌تواند این فیلد جدید را اضافه کند و بدون هیچ تغییری در پایگاه داده ذخیره شود.
@ -89,7 +89,7 @@
در درس قبلی، داده‌های GPS را از یک حسگر GPS متصل به دستگاه IoT خود ثبت کردید. برای ذخیره این داده‌های IoT در فضای ابری، باید آن‌ها را به یک سرویس IoT ارسال کنید. بار دیگر از Azure IoT Hub، همان سرویس IoT ابری که در پروژه قبلی استفاده کردید، استفاده خواهید کرد.
![ارسال داده‌های تله‌متری GPS از یک دستگاه IoT به IoT Hub](../../../../../translated_images/fa/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.png)
![ارسال داده‌های تله‌متری GPS از یک دستگاه IoT به IoT Hub](../../../../../translated_images/fa/gps-telemetry-iot-hub.8115335d51cd2c12.webp)
### وظیفه - ارسال داده‌های GPS به یک IoT Hub
@ -171,7 +171,7 @@ message = Message(json.dumps(message_json))
پس از جریان یافتن داده‌ها به IoT Hub، می‌توانید کدی بدون سرور بنویسید تا به رویدادهایی که به نقطه پایانی سازگار با Event Hub منتشر می‌شوند گوش دهد. این مسیر گرم است - این داده‌ها ذخیره می‌شوند و در درس بعدی برای گزارش‌گیری از مسیر استفاده خواهند شد.
![ارسال داده‌های تله‌متری GPS از یک دستگاه IoT به IoT Hub، سپس به Azure Functions از طریق یک تریگر Event Hub](../../../../../translated_images/fa/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.png)
![ارسال داده‌های تله‌متری GPS از یک دستگاه IoT به IoT Hub، سپس به Azure Functions از طریق یک تریگر Event Hub](../../../../../translated_images/fa/gps-telemetry-iot-hub-functions.24d3fa5592455e9f.webp)
### وظیفه - مدیریت رویدادهای GPS با استفاده از کد بدون سرور
@ -193,7 +193,7 @@ message = Message(json.dumps(message_json))
## حساب‌های ذخیره‌سازی Azure
![لوگوی Azure Storage](../../../../../translated_images/fa/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.png)
![لوگوی Azure Storage](../../../../../translated_images/fa/azure-storage-logo.605c0f602c640d48.webp)
حساب‌های ذخیره‌سازی Azure یک سرویس ذخیره‌سازی چندمنظوره است که می‌تواند داده‌ها را به روش‌های مختلف ذخیره کند. شما می‌توانید داده‌ها را به صورت blob، در صف‌ها، در جداول یا به صورت فایل ذخیره کنید و همه این‌ها به طور همزمان امکان‌پذیر است.

@ -1,6 +1,6 @@
# نمایش داده‌های مکانی
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-13.a259db1485021be7.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -64,11 +64,11 @@
درک این داده‌ها به عنوان یک انسان می‌تواند دشوار باشد. این فقط یک دیوار از اعداد است که معنای خاصی ندارد. به عنوان اولین قدم برای بصری‌سازی این داده‌ها، می‌توان آن را روی یک نمودار خطی رسم کرد:
![یک نمودار خطی از داده‌های بالا](../../../../../translated_images/fa/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.png)
![یک نمودار خطی از داده‌های بالا](../../../../../translated_images/fa/chart-soil-moisture.fd6d9d0cdc0b5f75.webp)
این نمودار می‌تواند با اضافه کردن یک خط برای نشان دادن زمانی که سیستم آبیاری خودکار در خوانش رطوبت خاک ۴۵۰ روشن شده است، بهبود یابد:
![یک نمودار خطی از رطوبت خاک با یک خط در ۴۵۰](../../../../../translated_images/fa/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.png)
![یک نمودار خطی از رطوبت خاک با یک خط در ۴۵۰](../../../../../translated_images/fa/chart-soil-moisture-relay.fbb391236d34a64d.webp)
این نمودار به سرعت نشان می‌دهد که سطح رطوبت خاک چه بوده و نقاطی که سیستم آبیاری روشن شده است.
@ -84,7 +84,7 @@
کار با نقشه‌ها یک تمرین جالب است و گزینه‌های زیادی برای انتخاب وجود دارد، مانند 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/fa/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.png)
![لوگوی Azure Maps](../../../../../translated_images/fa/azure-maps-logo.35d01dcfbd81fe61.webp)
Azure Maps مجموعه‌ای از خدمات جغرافیایی و SDKهایی است که از داده‌های نقشه‌برداری تازه برای ارائه زمینه جغرافیایی به برنامه‌های وب و موبایل استفاده می‌کند. توسعه‌دهندگان ابزارهایی برای ایجاد نقشه‌های زیبا و تعاملی دریافت می‌کنند که می‌توانند کارهایی مانند ارائه مسیرهای ترافیکی پیشنهادی، اطلاعات درباره حوادث ترافیکی، ناوبری داخلی، قابلیت‌های جستجو، اطلاعات ارتفاع، خدمات آب و هوا و موارد دیگر انجام دهند.
@ -185,7 +185,7 @@ Azure Maps مجموعه‌ای از خدمات جغرافیایی و SDKهایی
اگر صفحه `index.html` خود را در یک مرورگر وب باز کنید، باید یک نقشه بارگذاری شده و متمرکز بر منطقه سیاتل را ببینید.
![یک نقشه که سیاتل، شهری در ایالت واشنگتن، ایالات متحده را نشان می‌دهد](../../../../../translated_images/fa/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.png)
![یک نقشه که سیاتل، شهری در ایالت واشنگتن، ایالات متحده را نشان می‌دهد](../../../../../translated_images/fa/map-image.8fb2c53eb23ef39c.webp)
✅ با پارامترهای زوم و مرکز آزمایش کنید تا نمایش نقشه خود را تغییر دهید. می‌توانید مختصات مختلف مربوط به عرض و طول جغرافیایی داده‌های خود را اضافه کنید تا نقشه را دوباره متمرکز کنید.
@ -319,7 +319,7 @@ Azure Maps مجموعه‌ای از خدمات جغرافیایی و SDKهایی
1. صفحه HTML را در مرورگر خود بارگذاری کنید. نقشه بارگذاری می‌شود، سپس تمام داده‌های GPS از ذخیره‌سازی بارگذاری شده و روی نقشه نمایش داده می‌شود.
![نقشه‌ای از پارک ایالتی Saint Edward در نزدیکی سیاتل، با دایره‌هایی که مسیری در اطراف لبه پارک را نشان می‌دهند](../../../../../translated_images/fa/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.png)
![نقشه‌ای از پارک ایالتی Saint Edward در نزدیکی سیاتل، با دایره‌هایی که مسیری در اطراف لبه پارک را نشان می‌دهند](../../../../../translated_images/fa/map-path.896832e72dc696ff.webp)
> 💁 شما می‌توانید این کد را در [پوشه کد](../../../../../3-transport/lessons/3-visualize-location-data/code) پیدا کنید.

@ -1,6 +1,6 @@
# حصارهای جغرافیایی
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-14.63980c5150ae3c15.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -35,7 +35,7 @@
حصار جغرافیایی یک محیط مجازی برای یک منطقه جغرافیایی واقعی است. حصارهای جغرافیایی می‌توانند دایره‌هایی باشند که به عنوان یک نقطه و شعاع تعریف شده‌اند (برای مثال یک دایره به عرض ۱۰۰ متر اطراف یک ساختمان)، یا یک چندضلعی که منطقه‌ای مانند محدوده مدرسه، مرزهای شهری، یا پردیس دانشگاه یا دفتر را پوشش می‌دهد.
![نمونه‌هایی از حصارهای جغرافیایی که یک حصار دایره‌ای اطراف فروشگاه شرکت مایکروسافت و یک حصار چندضلعی اطراف پردیس غربی مایکروسافت را نشان می‌دهند](../../../../../translated_images/fa/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.png)
![نمونه‌هایی از حصارهای جغرافیایی که یک حصار دایره‌ای اطراف فروشگاه شرکت مایکروسافت و یک حصار چندضلعی اطراف پردیس غربی مایکروسافت را نشان می‌دهند](../../../../../translated_images/fa/geofence-examples.172fbc534665769f.webp)
> 💁 ممکن است قبلاً بدون اینکه بدانید از حصارهای جغرافیایی استفاده کرده باشید. اگر با استفاده از اپلیکیشن یادآوری iOS یا Google Keep بر اساس یک مکان یادآوری تنظیم کرده‌اید، از حصار جغرافیایی استفاده کرده‌اید. این اپلیکیشن‌ها بر اساس مکان داده‌شده یک حصار جغرافیایی تنظیم می‌کنند و هنگامی که تلفن شما وارد حصار جغرافیایی می‌شود، به شما هشدار می‌دهند.
@ -212,7 +212,7 @@ Azure Maps، سرویسی که در درس قبلی برای نمایش داده
برای مثال، تصور کنید قرائت‌های GPS نشان می‌دهند که یک وسیله نقلیه در حال رانندگی در امتداد جاده‌ای است که در نهایت در کنار یک حصار جغرافیایی قرار دارد. اگر یک مقدار GPS منفرد نادرست باشد و وسیله نقلیه را داخل حصار جغرافیایی قرار دهد، با وجود اینکه دسترسی وسایل نقلیه وجود ندارد، می‌توان آن را نادیده گرفت.
![یک مسیر GPS که نشان می‌دهد وسیله نقلیه از کنار پردیس مایکروسافت در جاده ۵۲۰ عبور می‌کند، با قرائت‌های GPS در امتداد جاده به جز یکی در پردیس، داخل یک حصار جغرافیایی](../../../../../translated_images/fa/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.png)
![یک مسیر GPS که نشان می‌دهد وسیله نقلیه از کنار پردیس مایکروسافت در جاده ۵۲۰ عبور می‌کند، با قرائت‌های GPS در امتداد جاده به جز یکی در پردیس، داخل یک حصار جغرافیایی](../../../../../translated_images/fa/geofence-crossing-inaccurate-gps.6a3ed911202ad9ca.webp)
در تصویر بالا، یک محدوده جغرافیایی (Geofence) بر روی بخشی از پردیس مایکروسافت قرار دارد. خط قرمز نشان‌دهنده حرکت یک کامیون در امتداد بزرگراه 520 است، و دایره‌ها نشان‌دهنده داده‌های GPS هستند. بیشتر این داده‌ها دقیق بوده و در امتداد بزرگراه 520 قرار دارند، اما یک داده نادرست در داخل محدوده جغرافیایی ثبت شده است. این داده نمی‌تواند درست باشد - هیچ جاده‌ای وجود ندارد که کامیون بتواند ناگهان از بزرگراه 520 به داخل پردیس منحرف شود و سپس دوباره به بزرگراه 520 بازگردد. کدی که این محدوده جغرافیایی را بررسی می‌کند، باید داده‌های قبلی را در نظر بگیرد قبل از اینکه بر اساس نتایج آزمایش محدوده جغرافیایی عمل کند.
✅ چه داده‌های اضافی نیاز دارید تا بررسی کنید که آیا یک داده GPS می‌تواند صحیح در نظر گرفته شود؟
@ -284,7 +284,7 @@ Azure Maps، سرویسی که در درس قبلی برای نمایش داده
پاسخ این است که نمی‌تواند! در عوض، می‌توانید چندین اتصال جداگانه برای خواندن رویدادها تعریف کنید و هر کدام می‌توانند مدیریت بازپخش پیام‌های خوانده‌نشده را انجام دهند. این‌ها به عنوان *گروه‌های مصرف‌کننده* شناخته می‌شوند. وقتی به نقطه پایانی متصل می‌شوید، می‌توانید مشخص کنید که به کدام گروه مصرف‌کننده می‌خواهید متصل شوید. هر جزء از برنامه شما به یک گروه مصرف‌کننده متفاوت متصل خواهد شد.
![یک IoT Hub با 3 گروه مصرف‌کننده که همان پیام‌ها را به 3 برنامه مختلف Functions توزیع می‌کنند](../../../../../translated_images/fa/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.png)
![یک IoT Hub با 3 گروه مصرف‌کننده که همان پیام‌ها را به 3 برنامه مختلف Functions توزیع می‌کنند](../../../../../translated_images/fa/consumer-groups.a3262e26fc27ba20.webp)
در تئوری، حداکثر 5 برنامه می‌توانند به هر گروه مصرف‌کننده متصل شوند و همه آن‌ها پیام‌ها را هنگام رسیدن دریافت خواهند کرد. بهترین روش این است که فقط یک برنامه به هر گروه مصرف‌کننده دسترسی داشته باشد تا از پردازش تکراری پیام‌ها جلوگیری شود و اطمینان حاصل شود که هنگام راه‌اندازی مجدد، همه پیام‌های صف‌شده به درستی پردازش می‌شوند. برای مثال، اگر برنامه Functions خود را به صورت محلی اجرا کنید و همچنین آن را در فضای ابری اجرا کنید، هر دو پیام‌ها را پردازش می‌کنند که منجر به ذخیره‌سازی تکراری در حساب ذخیره‌سازی می‌شود.

@ -1,6 +1,6 @@
# آموزش ساخت یک تشخیص‌دهنده کیفیت میوه
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-15.843d21afdc6fb2bb.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -38,7 +38,7 @@
افزایش برداشت خودکار، دسته‌بندی محصولات را از زمان برداشت به کارخانه منتقل کرد. مواد غذایی روی نوارهای نقاله طولانی حرکت می‌کردند و تیم‌هایی از افراد محصولات را بررسی کرده و هر چیزی که کیفیت لازم را نداشت حذف می‌کردند. برداشت به لطف ماشین‌آلات ارزان‌تر شد، اما هنوز هزینه‌ای برای دسته‌بندی دستی مواد غذایی وجود داشت.
![اگر یک گوجه‌فرنگی قرمز شناسایی شود، بدون وقفه به مسیر خود ادامه می‌دهد. اگر یک گوجه‌فرنگی سبز شناسایی شود، با یک اهرم به داخل سطل زباله پرتاب می‌شود](../../../../../translated_images/fa/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.png)
![اگر یک گوجه‌فرنگی قرمز شناسایی شود، بدون وقفه به مسیر خود ادامه می‌دهد. اگر یک گوجه‌فرنگی سبز شناسایی شود، با یک اهرم به داخل سطل زباله پرتاب می‌شود](../../../../../translated_images/fa/optical-tomato-sorting.61aa134bdda4e5b1.webp)
تکامل بعدی استفاده از ماشین‌ها برای دسته‌بندی بود، چه در داخل دستگاه برداشت یا در کارخانه‌های فرآوری. نسل اول این ماشین‌ها از حسگرهای نوری برای تشخیص رنگ‌ها استفاده می‌کردند و با کنترل عملگرها، گوجه‌فرنگی‌های سبز را با اهرم‌ها یا پف‌های هوا به داخل سطل زباله پرتاب می‌کردند و گوجه‌فرنگی‌های قرمز را به مسیر نوار نقاله ادامه می‌دادند.
@ -62,7 +62,7 @@
> 🎓 نتایج مدل‌های یادگیری ماشین *پیش‌بینی* نامیده می‌شوند.
![2 موز، یکی رسیده با پیش‌بینی 99.7% رسیده، 0.3% نارس، و دیگری نارس با پیش‌بینی 1.4% رسیده، 98.6% نارس](../../../../../translated_images/fa/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.png)
![2 موز، یکی رسیده با پیش‌بینی 99.7% رسیده، 0.3% نارس، و دیگری نارس با پیش‌بینی 1.4% رسیده، 98.6% نارس](../../../../../translated_images/fa/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50e.webp)
مدل‌های یادگیری ماشین پاسخ‌های دودویی نمی‌دهند، بلکه احتمال‌ها را ارائه می‌دهند. به عنوان مثال، یک مدل ممکن است یک تصویر از موز دریافت کند و پیش‌بینی کند `رسیده` با 99.7% و `نارس` با 0.3%. کد شما سپس بهترین پیش‌بینی را انتخاب کرده و تصمیم می‌گیرد که موز رسیده است.
@ -90,7 +90,7 @@
Custom Vision یک ابزار مبتنی بر ابر برای آموزش طبقه‌بندهای تصویر است. این ابزار به شما امکان می‌دهد با استفاده از تعداد کمی تصویر یک طبقه‌بند را آموزش دهید. شما می‌توانید تصاویر را از طریق یک پورتال وب، API وب یا SDK آپلود کنید و به هر تصویر یک *برچسب* بدهید که طبقه‌بندی آن تصویر را مشخص می‌کند. سپس مدل را آموزش می‌دهید و آن را آزمایش می‌کنید تا ببینید چقدر خوب عمل می‌کند. وقتی از مدل راضی شدید، می‌توانید نسخه‌هایی از آن را منتشر کنید که از طریق API وب یا SDK قابل دسترسی باشند.
![لوگوی Azure Custom Vision](../../../../../translated_images/fa/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.png)
![لوگوی Azure Custom Vision](../../../../../translated_images/fa/custom-vision-logo.d3d4e7c8a87ec9da.webp)
> 💁 شما می‌توانید یک مدل Custom Vision را با حداقل 5 تصویر برای هر طبقه‌بندی آموزش دهید، اما تعداد بیشتر بهتر است. با حداقل 30 تصویر می‌توانید نتایج بهتری بگیرید.
@ -146,7 +146,7 @@ Custom Vision بخشی از مجموعه ابزارهای AI مایکروساف
هنگام ایجاد پروژه، مطمئن شوید که از منبع `fruit-quality-detector-training` که قبلاً ایجاد کرده‌اید استفاده می‌کنید. از نوع پروژه *Classification*، نوع طبقه‌بندی *Multiclass* و دامنه *Food* استفاده کنید.
![تنظیمات پروژه Custom Vision با نام تنظیم‌شده به fruit-quality-detector، بدون توضیحات، منبع تنظیم‌شده به fruit-quality-detector-training، نوع پروژه تنظیم‌شده به classification، نوع طبقه‌بندی تنظیم‌شده به multi class و دامنه تنظیم‌شده به food](../../../../../translated_images/fa/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.png)
![تنظیمات پروژه Custom Vision با نام تنظیم‌شده به fruit-quality-detector، بدون توضیحات، منبع تنظیم‌شده به fruit-quality-detector-training، نوع پروژه تنظیم‌شده به classification، نوع طبقه‌بندی تنظیم‌شده به multi class و دامنه تنظیم‌شده به food](../../../../../translated_images/fa/custom-vision-create-project.cf46325b92d8b131.webp)
✅ زمانی را برای بررسی رابط کاربری Custom Vision برای طبقه‌بند تصویر خود اختصاص دهید.
@ -164,7 +164,7 @@ Custom Vision بخشی از مجموعه ابزارهای AI مایکروساف
* با استفاده از ۲ موز رسیده، از هر کدام چند عکس از زوایای مختلف بگیرید، حداقل ۷ عکس (۵ برای آموزش، ۲ برای آزمایش)، اما ترجیحاً بیشتر.
![تصاویر ۲ موز مختلف](../../../../../translated_images/fa/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.png)
![تصاویر ۲ موز مختلف](../../../../../translated_images/fa/banana-training-images.530eb203346d73bc.webp)
* همین فرآیند را برای ۲ موز نارس تکرار کنید.
@ -174,7 +174,7 @@ Custom Vision بخشی از مجموعه ابزارهای AI مایکروساف
1. بخش [آپلود و برچسب‌گذاری تصاویر در سریع‌العمل ساخت دسته‌بند در مستندات مایکروسافت](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/fa/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.png)
![دیالوگ‌های آپلود تصاویر موزهای رسیده و نارس](../../../../../translated_images/fa/image-upload-bananas.0751639f3815e0ec.webp)
1. بخش [آموزش دسته‌بند در سریع‌العمل ساخت دسته‌بند در مستندات مایکروسافت](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 بخشی از مجموعه ابزارهای AI مایکروساف
1. بخش [آزمایش مدل خود در مستندات مایکروسافت](https://docs.microsoft.com/azure/cognitive-services/custom-vision-service/test-your-model?WT.mc_id=academic-17441-jabenn#test-your-model) را دنبال کنید تا دسته‌بند تصویر خود را آزمایش کنید. از تصاویر آزمایشی که قبلاً ایجاد کرده‌اید استفاده کنید، نه هیچ‌یک از تصاویر مورد استفاده برای آموزش.
![یک موز نارس که با احتمال ۹۸.۹٪ به عنوان نارس و با احتمال ۱.۱٪ به عنوان رسیده پیش‌بینی شده است](../../../../../translated_images/fa/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.png)
![یک موز نارس که با احتمال ۹۸.۹٪ به عنوان نارس و با احتمال ۱.۱٪ به عنوان رسیده پیش‌بینی شده است](../../../../../translated_images/fa/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64.webp)
1. تمام تصاویر آزمایشی که در دسترس دارید را امتحان کنید و احتمالات را مشاهده کنید.

@ -1,6 +1,6 @@
# بررسی کیفیت میوه با استفاده از دستگاه IoT
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-16.215daf18b00631fb.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -26,7 +26,7 @@
حسگرهای دوربین، همان‌طور که از نامشان پیداست، دوربین‌هایی هستند که می‌توانید به دستگاه IoT خود متصل کنید. این دوربین‌ها می‌توانند تصاویر ثابت بگیرند یا ویدئوهای استریم ضبط کنند. برخی از آن‌ها داده‌های خام تصویر را ارائه می‌دهند، در حالی که برخی دیگر داده‌های تصویر را به فایل‌هایی مانند JPEG یا PNG فشرده می‌کنند. معمولاً دوربین‌هایی که با دستگاه‌های IoT کار می‌کنند، بسیار کوچک‌تر و با وضوح پایین‌تر از آنچه که ممکن است به آن عادت داشته باشید هستند، اما می‌توانید دوربین‌های با وضوح بالا تهیه کنید که با گوشی‌های پیشرفته رقابت می‌کنند. همچنین می‌توانید لنزهای قابل تعویض، تنظیمات چند دوربینه، دوربین‌های حرارتی مادون قرمز یا دوربین‌های UV تهیه کنید.
![نور از یک صحنه از لنز عبور کرده و روی حسگر CMOS متمرکز می‌شود](../../../../../translated_images/fa/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.png)
![نور از یک صحنه از لنز عبور کرده و روی حسگر CMOS متمرکز می‌شود](../../../../../translated_images/fa/cmos-sensor.75f9cd74decb1371.webp)
بیشتر حسگرهای دوربین از حسگرهای تصویری استفاده می‌کنند که در آن هر پیکسل یک فوتودیود است. لنز تصویر را روی حسگر تصویر متمرکز می‌کند و هزاران یا میلیون‌ها فوتودیود نور را که به هر یک می‌تابد تشخیص داده و آن را به عنوان داده پیکسل ثبت می‌کنند.
@ -74,7 +74,7 @@
1. دکمه **Publish** را برای تکرار انتخاب کنید.
![دکمه انتشار](../../../../../translated_images/fa/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.png)
![دکمه انتشار](../../../../../translated_images/fa/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/fa/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.png)
![دیالوگ API پیش‌بینی که URL و کلید را نشان می‌دهد](../../../../../translated_images/fa/custom-vision-prediction-key-endpoint.30c569ffd0338864.webp)
✅ وقتی یک تکرار جدید منتشر می‌شود، نام متفاوتی خواهد داشت. چگونه فکر می‌کنید می‌توانید تکرار مورد استفاده دستگاه IoT را تغییر دهید؟
@ -109,7 +109,7 @@
برای دریافت بهترین نتایج از یک دسته‌بندی‌کننده تصویر، باید مدل را با تصاویری که تا حد ممکن مشابه تصاویر مورد استفاده برای پیش‌بینی هستند آموزش دهید. اگر از دوربین گوشی خود برای ثبت تصاویر برای آموزش استفاده کرده‌اید، به عنوان مثال، کیفیت تصویر، وضوح و رنگ با دوربین متصل به دستگاه IoT متفاوت خواهد بود.
![دو تصویر موز، یکی با وضوح پایین و نور ضعیف از دستگاه IoT و دیگری با وضوح بالا و نور خوب از گوشی](../../../../../translated_images/fa/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.png)
![دو تصویر موز، یکی با وضوح پایین و نور ضعیف از دستگاه IoT و دیگری با وضوح بالا و نور خوب از گوشی](../../../../../translated_images/fa/banana-picture-compare.174df164dc326a42.webp)
در تصویر بالا، تصویر موز سمت چپ با استفاده از دوربین Raspberry Pi گرفته شده است، و تصویر سمت راست از همان موز در همان مکان با استفاده از آیفون گرفته شده است. تفاوت کیفیت قابل توجه است - تصویر آیفون واضح‌تر، با رنگ‌های روشن‌تر و کنتراست بیشتر است.

@ -16,7 +16,7 @@
### وظیفه - اتصال دوربین
![یک دوربین رزبری پای](../../../../../translated_images/fa/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.png)
![یک دوربین رزبری پای](../../../../../translated_images/fa/pi-camera-module.4278753c31bd6e75.webp)
1. رزبری پای را خاموش کنید.
@ -24,17 +24,17 @@
می‌توانید یک انیمیشن که نحوه باز کردن گیره و قرار دادن کابل را نشان می‌دهد در [مستندات شروع کار با ماژول دوربین رزبری پای](https://projects.raspberrypi.org/en/projects/getting-started-with-picamera/2) پیدا کنید.
![کابل نواری وارد شده به ماژول دوربین](../../../../../translated_images/fa/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.png)
![کابل نواری وارد شده به ماژول دوربین](../../../../../translated_images/fa/pi-camera-ribbon-cable.0bf82acd251611c2.webp)
1. کلاهک Grove Base را از رزبری پای جدا کنید.
1. کابل نواری را از شکاف دوربین در کلاهک Grove Base عبور دهید. مطمئن شوید که سمت آبی کابل به سمت پورت‌های آنالوگ با برچسب **A0**، **A1** و غیره باشد.
![کابل نواری عبور کرده از کلاهک Grove Base](../../../../../translated_images/fa/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.png)
![کابل نواری عبور کرده از کلاهک Grove Base](../../../../../translated_images/fa/grove-base-hat-ribbon-cable.501fed202fcf73b1.webp)
1. کابل نواری را در پورت دوربین روی رزبری پای قرار دهید. دوباره، گیره پلاستیکی مشکی را بالا بکشید، کابل را وارد کنید، سپس گیره را به جای خود فشار دهید. سمت آبی کابل باید به سمت پورت‌های USB و اترنت باشد.
![کابل نواری متصل به سوکت دوربین روی رزبری پای](../../../../../translated_images/fa/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.png)
![کابل نواری متصل به سوکت دوربین روی رزبری پای](../../../../../translated_images/fa/pi-camera-socket-ribbon-cable.a18309920b118009.webp)
1. کلاهک Grove Base را دوباره نصب کنید.
@ -101,7 +101,7 @@
خط `camera.rotation = 0` چرخش تصویر را تنظیم می‌کند. کابل نواری از پایین دوربین وارد می‌شود، اما اگر دوربین شما برای راحت‌تر نشانه‌گیری به سمت شیء مورد نظر چرخانده شده باشد، می‌توانید این خط را به تعداد درجه‌های چرخش تغییر دهید.
![دوربین آویزان شده بر روی یک قوطی نوشیدنی](../../../../../translated_images/fa/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.png)
![دوربین آویزان شده بر روی یک قوطی نوشیدنی](../../../../../translated_images/fa/pi-camera-upside-down.5376961ba3145988.webp)
برای مثال، اگر کابل نواری را از بالای چیزی آویزان کنید تا در بالای دوربین قرار گیرد، چرخش را به 180 تنظیم کنید:

@ -84,7 +84,7 @@
شما می‌توانید تصویری که گرفته شده است را ببینید و این مقادیر را در تب **Predictions** در Custom Vision مشاهده کنید.
![یک موز در Custom Vision که با احتمال 56.8% رسیده و با احتمال 43.1% نارس پیش‌بینی شده است](../../../../../translated_images/fa/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.png)
![یک موز در Custom Vision که با احتمال 56.8% رسیده و با احتمال 43.1% نارس پیش‌بینی شده است](../../../../../translated_images/fa/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 @@
1. دکمه **Add** را برای ایجاد دوربین انتخاب کنید.
![تنظیمات دوربین](../../../../../translated_images/fa/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.png)
![تنظیمات دوربین](../../../../../translated_images/fa/counterfit-create-camera.a5de97f59c0bd3cb.webp)
دوربین ایجاد شده و در لیست حسگرها ظاهر می‌شود.
![دوربین ایجاد شده](../../../../../translated_images/fa/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.png)
![دوربین ایجاد شده](../../../../../translated_images/fa/counterfit-camera.001ec52194c8ee5d.webp)
## برنامه‌نویسی دوربین
@ -103,7 +103,7 @@
1. تصویری که دوربین در CounterFit می‌گیرد را پیکربندی کنید. می‌توانید *Source* را به *File* تنظیم کنید، سپس یک فایل تصویر آپلود کنید، یا *Source* را به *WebCam* تنظیم کنید و تصاویر از وب‌کم شما گرفته شوند. مطمئن شوید که پس از انتخاب تصویر یا وب‌کم، دکمه **Set** را انتخاب کنید.
![CounterFit با یک فایل به‌عنوان منبع تصویر تنظیم شده و یک وب‌کم که شخصی را در حال نگه داشتن یک موز نشان می‌دهد](../../../../../translated_images/fa/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.png)
![CounterFit با یک فایل به‌عنوان منبع تصویر تنظیم شده و یک وب‌کم که شخصی را در حال نگه داشتن یک موز نشان می‌دهد](../../../../../translated_images/fa/counterfit-camera-options.eb3bd5150a8e7dff.webp)
1. یک تصویر گرفته شده و به‌عنوان `image.jpg` در پوشه فعلی ذخیره می‌شود. این فایل را در کاوشگر VS Code خواهید دید. فایل را انتخاب کنید تا تصویر را مشاهده کنید. اگر نیاز به چرخش دارد، خط `camera.rotation = 0` را به‌طور مناسب به‌روزرسانی کنید و دوباره عکس بگیرید.

@ -16,7 +16,7 @@ ArduCam سوکت Grove ندارد و به جای آن از طریق پین‌ه
دوربین را متصل کنید.
![یک حسگر ArduCam](../../../../../translated_images/fa/arducam.20e4e4cbb268296570b5914e20d6c349fc42ddac9ed4e1b9deba2188204eebae.png)
![یک حسگر ArduCam](../../../../../translated_images/fa/arducam.20e4e4cbb2682965.webp)
1. پین‌های پایه ArduCam باید به پین‌های GPIO روی Wio Terminal متصل شوند. برای راحت‌تر پیدا کردن پین‌های درست، برچسب پین GPIO که همراه Wio Terminal است را دور پین‌ها بچسبانید:
@ -35,7 +35,7 @@ ArduCam سوکت Grove ندارد و به جای آن از طریق پین‌ه
| SDA | 3 (I2C1_SDA) | داده سریال I2C |
| SCL | 5 (I2C1_SCL) | ساعت سریال I2C |
![Wio Terminal متصل به ArduCam با سیم‌های جامپر](../../../../../translated_images/fa/arducam-wio-terminal-connections.a4d5a4049bdb5ab800a2877389fc6ecf5e4ff307e6451ff56c517e6786467d0a.png)
![Wio Terminal متصل به ArduCam با سیم‌های جامپر](../../../../../translated_images/fa/arducam-wio-terminal-connections.a4d5a4049bdb5ab8.webp)
اتصالات GND و VCC منبع تغذیه ۵ ولت را به ArduCam ارائه می‌دهند. این دوربین با ۵ ولت کار می‌کند، برخلاف حسگرهای Grove که با ۳ ولت کار می‌کنند. این توان مستقیماً از اتصال USB-C که دستگاه را تغذیه می‌کند تأمین می‌شود.
@ -456,7 +456,7 @@ Wio Terminal فقط از کارت‌های microSD با حداکثر ظرفیت
1. کارت microSD را خاموش کرده و با فشار دادن کمی و رها کردن آن را خارج کنید، و کارت بیرون می‌آید. ممکن است نیاز باشد از یک ابزار نازک برای این کار استفاده کنید. کارت microSD را به کامپیوتر خود متصل کنید تا تصاویر را مشاهده کنید.
![تصویری از یک موز که با استفاده از ArduCam ثبت شده است](../../../../../translated_images/fa/banana-arducam.be1b32d4267a8194b0fd042362e56faa431da9cd4af172051b37243ea9be0256.jpg)
![تصویری از یک موز که با استفاده از ArduCam ثبت شده است](../../../../../translated_images/fa/banana-arducam.be1b32d4267a8194.webp)
💁 ممکن است چند تصویر طول بکشد تا تراز سفیدی دوربین تنظیم شود. شما این را بر اساس رنگ تصاویر گرفته شده متوجه خواهید شد، چند تصویر اول ممکن است رنگ غیرعادی داشته باشند. شما همیشه می‌توانید با تغییر کد برای گرفتن چند تصویر که در تابع `setup` نادیده گرفته می‌شوند، این مشکل را حل کنید.

@ -208,7 +208,7 @@
شما می‌توانید تصویری که گرفته شده و این مقادیر را در تب **Predictions** در Custom Vision مشاهده کنید.
![یک موز در Custom Vision پیش‌بینی شده به‌عنوان رسیده با 56.8% و نارس با 43.1%](../../../../../translated_images/fa/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.png)
![یک موز در Custom Vision پیش‌بینی شده به‌عنوان رسیده با 56.8% و نارس با 43.1%](../../../../../translated_images/fa/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/fa/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-17.bc333c3c35ba8e42.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -33,11 +33,11 @@
محاسبات لبه شامل داشتن کامپیوترهایی است که داده‌های IoT را تا حد ممکن نزدیک به جایی که داده‌ها تولید می‌شوند پردازش می‌کنند. به جای اینکه این پردازش در فضای ابری انجام شود، به لبه فضای ابری - شبکه داخلی شما - منتقل می‌شود.
![یک نمودار معماری که خدمات اینترنتی در فضای ابری و دستگاه‌های IoT در یک شبکه محلی را نشان می‌دهد](../../../../../translated_images/fa/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.png)
![یک نمودار معماری که خدمات اینترنتی در فضای ابری و دستگاه‌های IoT در یک شبکه محلی را نشان می‌دهد](../../../../../translated_images/fa/cloud-without-edge.b4da641f6022c95e.webp)
در درس‌های قبلی، شما دستگاه‌هایی داشتید که داده‌ها را جمع‌آوری کرده و برای تجزیه و تحلیل به فضای ابری ارسال می‌کردند، و در آنجا توابع بدون سرور یا مدل‌های هوش مصنوعی اجرا می‌شدند.
![یک نمودار معماری که دستگاه‌های IoT در یک شبکه محلی را نشان می‌دهد که به دستگاه‌های لبه متصل می‌شوند، و این دستگاه‌های لبه به فضای ابری متصل می‌شوند](../../../../../translated_images/fa/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.png)
![یک نمودار معماری که دستگاه‌های IoT در یک شبکه محلی را نشان می‌دهد که به دستگاه‌های لبه متصل می‌شوند، و این دستگاه‌های لبه به فضای ابری متصل می‌شوند](../../../../../translated_images/fa/cloud-with-edge.1e26462c62c126fe.webp)
محاسبات لبه شامل انتقال برخی از خدمات ابری به کامپیوترهایی است که در همان شبکه دستگاه‌های IoT اجرا می‌شوند و فقط در صورت نیاز با فضای ابری ارتباط برقرار می‌کنند. به عنوان مثال، می‌توانید مدل‌های هوش مصنوعی را بر روی دستگاه‌های لبه اجرا کنید تا میوه‌ها را از نظر رسیده بودن تحلیل کنید و فقط تحلیل‌ها را به فضای ابری ارسال کنید، مانند تعداد میوه‌های رسیده در مقابل نارس.
@ -85,7 +85,7 @@
## Azure IoT Edge
![لوگوی Azure IoT Edge](../../../../../translated_images/fa/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.png)
![لوگوی Azure IoT Edge](../../../../../translated_images/fa/azure-iot-edge-logo.c1c076749b5cba2e.webp)
Azure IoT Edge یک سرویس است که می‌تواند به شما کمک کند تا بارهای کاری را از فضای ابری به لبه منتقل کنید. شما یک دستگاه را به عنوان دستگاه لبه تنظیم می‌کنید و از فضای ابری می‌توانید کد را به آن دستگاه لبه مستقر کنید. این امکان را به شما می‌دهد تا قابلیت‌های فضای ابری و لبه را ترکیب کنید.
@ -99,7 +99,7 @@ IoT Edge در IoT Hub ساخته شده است، بنابراین می‌توا
IoT Edge کد را از *کانتینرها* اجرا می‌کند - برنامه‌های خودکفایی که به صورت جداگانه از سایر برنامه‌های کامپیوتر شما اجرا می‌شوند. هنگامی که یک کانتینر اجرا می‌شود، مانند یک کامپیوتر جداگانه است که در داخل کامپیوتر شما اجرا می‌شود، با نرم‌افزار، خدمات و برنامه‌های خاص خود. بیشتر اوقات کانتینرها نمی‌توانند به چیزی در کامپیوتر شما دسترسی داشته باشند مگر اینکه انتخاب کنید چیزی مانند یک پوشه را با کانتینر به اشتراک بگذارید. کانتینر سپس خدمات را از طریق یک پورت باز ارائه می‌دهد که می‌توانید به آن متصل شوید یا آن را به شبکه خود ارائه دهید.
![یک درخواست وب که به یک کانتینر هدایت شده است](../../../../../translated_images/fa/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.png)
![یک درخواست وب که به یک کانتینر هدایت شده است](../../../../../translated_images/fa/container-web-browser.4ee81dd4f0d8838c.webp)
به عنوان مثال، می‌توانید یک کانتینر با یک وب‌سایت که بر روی پورت 80 اجرا می‌شود، پورت پیش‌فرض HTTP، داشته باشید و سپس آن را از کامپیوتر خود نیز بر روی پورت 80 ارائه دهید.
@ -195,11 +195,11 @@ IoT Edge کد را از *کانتینرها* اجرا می‌کند - برنام
## آماده‌سازی کانتینر برای استقرار
![کانتینرها ساخته شده و سپس به یک رجیستری کانتینر ارسال می‌شوند و از رجیستری کانتینر به دستگاه edge با استفاده از IoT Edge مستقر می‌شوند](../../../../../translated_images/fa/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.png)
![کانتینرها ساخته شده و سپس به یک رجیستری کانتینر ارسال می‌شوند و از رجیستری کانتینر به دستگاه edge با استفاده از IoT Edge مستقر می‌شوند](../../../../../translated_images/fa/container-edge-flow.c246050dd60ceefd.webp)
پس از دانلود مدل، باید آن را به یک کانتینر تبدیل کنید و سپس به یک رجیستری کانتینر ارسال کنید - مکانی آنلاین که می‌توانید کانتینرها را ذخیره کنید. IoT Edge سپس کانتینر را از رجیستری دانلود کرده و به دستگاه شما ارسال می‌کند.
![لوگوی Azure Container Registry](../../../../../translated_images/fa/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.png)
![لوگوی Azure Container Registry](../../../../../translated_images/fa/azure-container-registry-logo.09494206991d4b29.webp)
رجیستری کانتینری که در این درس استفاده خواهید کرد Azure Container Registry است. این سرویس رایگان نیست، بنابراین برای صرفه‌جویی در هزینه مطمئن شوید که پس از اتمام کار [پروژه خود را پاک کنید](../../../clean-up.md).

@ -1,6 +1,6 @@
# تشخیص کیفیت میوه با استفاده از حسگر
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-18.92c32ed1d354caa5.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -39,7 +39,7 @@
### معماری مرجع IoT
![یک معماری مرجع IoT](../../../../../translated_images/fa/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.png)
![یک معماری مرجع IoT](../../../../../translated_images/fa/iot-reference-architecture.2278b98b55c6d4e8.webp)
نمودار بالا یک معماری مرجع IoT را نشان می‌دهد.
@ -49,7 +49,7 @@
* **بینش‌ها** از برنامه‌های بدون سرور یا تحلیل‌هایی که روی داده‌های ذخیره‌شده اجرا می‌شوند به دست می‌آیند.
* **اقدامات** می‌توانند دستورات ارسال‌شده به دستگاه‌ها یا نمایش داده‌ها برای تصمیم‌گیری انسان باشند.
![یک معماری مرجع IoT](../../../../../translated_images/fa/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.png)
![یک معماری مرجع IoT](../../../../../translated_images/fa/iot-reference-architecture-azure.0b8d2161af924cb1.webp)
نمودار بالا برخی از اجزا و خدماتی که تاکنون در این درس‌ها پوشش داده شده‌اند و نحوه ارتباط آن‌ها در یک معماری مرجع IoT را نشان می‌دهد.
@ -89,7 +89,7 @@
### نمونه‌سازی برنامه شما
![یک معماری مرجع IoT برای بررسی کیفیت میوه](../../../../../translated_images/fa/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.png)
![یک معماری مرجع IoT برای بررسی کیفیت میوه](../../../../../translated_images/fa/iot-reference-architecture-fruit-quality.cc705f121c3b6fa7.webp)
نمودار بالا یک معماری مرجع برای این برنامه نمونه اولیه را نشان می‌دهد.
@ -124,7 +124,7 @@
نمونه اولیه تشخیص میوه شامل چندین مؤلفه است که با یکدیگر ارتباط برقرار می‌کنند.
![مؤلفه‌هایی که با یکدیگر ارتباط برقرار می‌کنند](../../../../../translated_images/fa/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.png)
![مؤلفه‌هایی که با یکدیگر ارتباط برقرار می‌کنند](../../../../../translated_images/fa/fruit-quality-detector-message-flow.adf2a65da8fd8741.webp)
* یک حسگر مجاورت که فاصله تا یک میوه را اندازه‌گیری کرده و آن را به IoT Hub ارسال می‌کند
* فرمان کنترل دوربین که از IoT Hub به دستگاه دوربین ارسال می‌شود

@ -20,7 +20,7 @@
حسگر Time of Flight را متصل کنید.
![یک حسگر Time of Flight Grove](../../../../../translated_images/fa/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.png)
![یک حسگر Time of Flight Grove](../../../../../translated_images/fa/grove-time-of-flight-sensor.d82ff2165bfded9f.webp)
1. یک سر کابل Grove را به سوکت روی حسگر Time of Flight وارد کنید. این کابل فقط به یک جهت وارد می‌شود.

@ -36,11 +36,11 @@
1. دکمه **Add** را انتخاب کنید تا حسگر فاصله ایجاد شود.
![تنظیمات حسگر فاصله](../../../../../translated_images/fa/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.png)
![تنظیمات حسگر فاصله](../../../../../translated_images/fa/counterfit-create-distance-sensor.967c9fb98f27888d.webp)
حسگر فاصله ایجاد خواهد شد و در لیست حسگرها ظاهر می‌شود.
![حسگر فاصله ایجاد شده](../../../../../translated_images/fa/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.png)
![حسگر فاصله ایجاد شده](../../../../../translated_images/fa/counterfit-distance-sensor.079eefeeea0b68af.webp)
## برنامه‌نویسی حسگر فاصله

@ -21,7 +21,7 @@ C است.
حسگر Time of Flight را متصل کنید.
![یک حسگر Grove Time of Flight](../../../../../translated_images/fa/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.png)
![یک حسگر Grove Time of Flight](../../../../../translated_images/fa/grove-time-of-flight-sensor.d82ff2165bfded9f.webp)
1. یک سر کابل Grove را به سوکت روی حسگر Time of Flight وارد کنید. این کابل فقط از یک جهت وارد می‌شود.

@ -1,6 +1,6 @@
# آموزش ساخت یک تشخیص‌دهنده موجودی
![نمای کلی از این درس](../../../../../translated_images/fa/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.jpg)
![نمای کلی از این درس](../../../../../translated_images/fa/lesson-19.cf6973cecadf080c.webp)
> طراحی توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -36,7 +36,7 @@
طبقه‌بندی تصویر به معنای طبقه‌بندی کل تصویر است - اینکه احتمال تطابق کل تصویر با هر برچسب چقدر است. شما احتمال‌ها را برای هر برچسبی که مدل با آن آموزش دیده است دریافت می‌کنید.
![طبقه‌بندی تصویر برای بادام هندی و رب گوجه‌فرنگی](../../../../../translated_images/fa/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.png)
![طبقه‌بندی تصویر برای بادام هندی و رب گوجه‌فرنگی](../../../../../translated_images/fa/image-classifier-cashews-tomato.bc2e16ab8f05cf9a.webp)
در مثال بالا، دو تصویر با استفاده از مدلی که برای طبقه‌بندی قوطی‌های بادام هندی یا رب گوجه‌فرنگی آموزش دیده است، طبقه‌بندی شده‌اند. تصویر اول یک قوطی بادام هندی است و نتایج زیر را از طبقه‌بندی تصویر دارد:
@ -60,7 +60,7 @@
> 🎓 *جعبه‌های محدودکننده* جعبه‌هایی هستند که دور یک شیء کشیده می‌شوند.
![تشخیص اشیا برای بادام هندی و رب گوجه‌فرنگی](../../../../../translated_images/fa/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.png)
![تشخیص اشیا برای بادام هندی و رب گوجه‌فرنگی](../../../../../translated_images/fa/object-detector-cashews-tomato.1af7c26686b4db0e.webp)
تصویر بالا شامل یک قوطی بادام هندی و سه قوطی رب گوجه‌فرنگی است. تشخیص‌دهنده اشیا بادام هندی را شناسایی کرده و جعبه محدودکننده‌ای که شامل بادام هندی است را با احتمال 97.6% ارائه داده است. همچنین سه قوطی رب گوجه‌فرنگی شناسایی شده‌اند و سه جعبه محدودکننده جداگانه برای هر قوطی ارائه شده است، هر کدام با احتمال تطابق با قوطی رب گوجه‌فرنگی.
@ -111,7 +111,7 @@
هنگام ایجاد پروژه، مطمئن شوید که از منبع `stock-detector-training` که قبلاً ایجاد کرده‌اید استفاده می‌کنید. نوع پروژه را *تشخیص اشیا* و دامنه را *محصولات روی قفسه‌ها* انتخاب کنید.
![تنظیمات پروژه Custom Vision با نام fruit-quality-detector، بدون توضیحات، منبع تنظیم‌شده به fruit-quality-detector-training، نوع پروژه تنظیم‌شده به طبقه‌بندی، نوع طبقه‌بندی تنظیم‌شده به چندکلاسه و دامنه‌ها تنظیم‌شده به غذا](../../../../../translated_images/fa/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.png)
![تنظیمات پروژه Custom Vision با نام fruit-quality-detector، بدون توضیحات، منبع تنظیم‌شده به fruit-quality-detector-training، نوع پروژه تنظیم‌شده به طبقه‌بندی، نوع طبقه‌بندی تنظیم‌شده به چندکلاسه و دامنه‌ها تنظیم‌شده به غذا](../../../../../translated_images/fa/custom-vision-create-object-detector-project.32d4fb9aa8e7e737.webp)
✅ دامنه محصولات روی قفسه‌ها به‌طور خاص برای شناسایی موجودی روی قفسه‌های فروشگاه طراحی شده است. درباره دامنه‌های مختلف در [مستندات انتخاب دامنه در Microsoft Docs](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](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/fa/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.png)
![دیالوگ‌های آپلود که آپلود تصاویر موز رسیده و نارس را نشان می‌دهند](../../../../../translated_images/fa/image-upload-object-detector.77c7892c3093cb59.webp)
هنگام کشیدن جعبه‌های محدودکننده برای اشیا، آن‌ها را دقیقاً دور شیء بکشید. ممکن است کشیدن جعبه‌ها برای همه تصاویر زمان‌بر باشد، اما ابزار تشخیص می‌دهد که جعبه‌های محدودکننده کجا باید باشند، که این کار را سریع‌تر می‌کند.
![برچسب‌گذاری رب گوجه‌فرنگی](../../../../../translated_images/fa/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.png)
![برچسب‌گذاری رب گوجه‌فرنگی](../../../../../translated_images/fa/object-detector-tag-tomato-paste.f47c362fb0f0eb58.webp)
> 💁 اگر بیش از 15 تصویر برای هر شیء دارید، می‌توانید پس از 15 تصویر آموزش دهید و از ویژگی **برچسب‌های پیشنهادی** استفاده کنید. این ویژگی از مدل آموزش‌دیده برای شناسایی اشیا در تصاویر بدون برچسب استفاده می‌کند. سپس می‌توانید اشیای شناسایی‌شده را تأیید یا رد کنید و جعبه‌های محدودکننده را دوباره بکشید. این کار می‌تواند زمان زیادی را صرفه‌جویی کند.
@ -155,7 +155,7 @@
1. از دکمه **آزمایش سریع** برای آپلود تصاویر آزمایشی و تأیید شناسایی اشیا استفاده کنید. از تصاویری که قبلاً برای آموزش استفاده کرده‌اید استفاده نکنید.
![3 قوطی رب گوجه‌فرنگی شناسایی‌شده با احتمال‌های 38%، 35.5% و 34.6%](../../../../../translated_images/fa/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.png)
![3 قوطی رب گوجه‌فرنگی شناسایی‌شده با احتمال‌های 38%، 35.5% و 34.6%](../../../../../translated_images/fa/object-detector-detected-tomato-paste.52656fe87af4c37b.webp)
1. همه تصاویر آزمایشی که در دسترس دارید را امتحان کنید و احتمال‌ها را مشاهده کنید.

@ -1,6 +1,6 @@
# بررسی موجودی کالا با استفاده از دستگاه IoT
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-20.0211df9551a8abb3.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -62,7 +62,7 @@
1. دکمه **Publish** را برای نسخه انتخاب کنید.
![دکمه انتشار](../../../../../translated_images/fa/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.png)
![دکمه انتشار](../../../../../translated_images/fa/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/fa/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.png)
![دیالوگ API پیش‌بینی که URL و کلید را نشان می‌دهد](../../../../../translated_images/fa/custom-vision-prediction-key-endpoint.30c569ffd0338864.webp)
✅ وقتی یک نسخه جدید منتشر می‌شود، نام متفاوتی خواهد داشت. فکر می‌کنید چگونه می‌توانید نسخه‌ای که دستگاه IoT استفاده می‌کند را تغییر دهید؟
@ -95,7 +95,7 @@
نتایج پیش‌بینی در تب **Predictions** در Custom Vision دارای جعبه‌های محدودکننده‌ای هستند که روی تصویر ارسال شده برای پیش‌بینی ترسیم شده‌اند.
![۴ قوطی رب گوجه‌فرنگی روی قفسه با پیش‌بینی‌های ۳۵.۸٪، ۳۳.۵٪، ۲۵.۷٪ و ۱۶.۶٪](../../../../../translated_images/fa/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.png)
![۴ قوطی رب گوجه‌فرنگی روی قفسه با پیش‌بینی‌های ۳۵.۸٪، ۳۳.۵٪، ۲۵.۷٪ و ۱۶.۶٪](../../../../../translated_images/fa/custom-vision-stock-prediction.942266ab1bcca341.webp)
در تصویر بالا، ۴ قوطی رب گوجه‌فرنگی شناسایی شده‌اند. در نتایج، یک مربع قرمز برای هر شیء شناسایی شده در تصویر ترسیم شده است که جعبه محدودکننده برای تصویر را نشان می‌دهد.
@ -103,7 +103,7 @@
جعبه‌های محدودکننده با ۴ مقدار تعریف می‌شوند - بالا، چپ، ارتفاع و عرض. این مقادیر در مقیاس ۰-۱ هستند و موقعیت‌ها را به عنوان درصدی از اندازه تصویر نشان می‌دهند. مبدا (موقعیت ۰,۰) گوشه بالا سمت چپ تصویر است، بنابراین مقدار بالا فاصله از بالا است و پایین جعبه محدودکننده برابر با بالا به علاوه ارتفاع است.
![یک جعبه محدودکننده دور یک قوطی رب گوجه‌فرنگی](../../../../../translated_images/fa/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.png)
![یک جعبه محدودکننده دور یک قوطی رب گوجه‌فرنگی](../../../../../translated_images/fa/bounding-box.1420a7ea0d3d15f7.webp)
تصویر بالا ۶۰۰ پیکسل عرض و ۸۰۰ پیکسل ارتفاع دارد. جعبه محدودکننده از ۳۲۰ پیکسل پایین شروع می‌شود، که مقدار بالا برابر با ۰.۴ است (۸۰۰ x 0.4 = 320). از سمت چپ، جعبه محدودکننده از ۲۴۰ پیکسل عرض شروع می‌شود، که مقدار چپ برابر با ۰.۴ است (۶۰۰ x 0.4 = 240). ارتفاع جعبه محدودکننده ۲۴۰ پیکسل است، که مقدار ارتفاع برابر با ۰.۳ است (۸۰۰ x 0.3 = 240). عرض جعبه محدودکننده ۱۲۰ پیکسل است، که مقدار عرض برابر با ۰.۲ است (۶۰۰ x 0.2 = 120).
@ -118,7 +118,7 @@
می‌توانید از جعبه‌های محدودکننده همراه با احتمالات برای ارزیابی دقت شناسایی استفاده کنید. برای مثال، یک مدل تشخیص اشیا می‌تواند چندین شیء را که با هم همپوشانی دارند شناسایی کند، مانند شناسایی یک قوطی داخل دیگری. کد شما می‌تواند جعبه‌های محدودکننده را بررسی کند، بفهمد که این غیرممکن است و هر شیء که همپوشانی قابل توجهی با سایر اشیا دارد را نادیده بگیرد.
![دو جعبه محدودکننده که یک قوطی رب گوجه‌فرنگی را همپوشانی کرده‌اند](../../../../../translated_images/fa/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.png)
![دو جعبه محدودکننده که یک قوطی رب گوجه‌فرنگی را همپوشانی کرده‌اند](../../../../../translated_images/fa/overlap-object-detection.d431e03cae75072a.webp)
در مثال بالا، یک جعبه محدودکننده یک قوطی رب گوجه‌فرنگی را با احتمال ۷۸.۳٪ شناسایی کرده است. یک جعبه محدودکننده دوم کمی کوچک‌تر است و داخل جعبه اول با احتمال ۶۴.۳٪ قرار دارد. کد شما می‌تواند جعبه‌های محدودکننده را بررسی کند، ببیند که کاملاً همپوشانی دارند و احتمال پایین‌تر را نادیده بگیرد زیرا امکان ندارد یک قوطی داخل دیگری باشد.

@ -67,7 +67,7 @@
شما می‌توانید تصویری که گرفته شده و این مقادیر را در تب **Predictions** در Custom Vision مشاهده کنید.
![چهار قوطی رب گوجه‌فرنگی روی یک قفسه با پیش‌بینی‌هایی برای چهار شناسایی با مقادیر ۳۵.۸٪، ۳۳.۵٪، ۲۵.۷٪ و ۱۶.۶٪](../../../../../translated_images/fa/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.png)
![چهار قوطی رب گوجه‌فرنگی روی یک قفسه با پیش‌بینی‌هایی برای چهار شناسایی با مقادیر ۳۵.۸٪، ۳۳.۵٪، ۲۵.۷٪ و ۱۶.۶٪](../../../../../translated_images/fa/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 @@
شما قادر خواهید بود تصویری که گرفته شده و این مقادیر را در تب **Predictions** در Custom Vision مشاهده کنید.
![4 قوطی رب گوجه‌فرنگی روی یک قفسه با پیش‌بینی‌هایی برای 4 آشکارسازی با درصدهای 35.8%، 33.5%، 25.7% و 16.6%](../../../../../translated_images/fa/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.png)
![4 قوطی رب گوجه‌فرنگی روی یک قفسه با پیش‌بینی‌هایی برای 4 آشکارسازی با درصدهای 35.8%، 33.5%، 25.7% و 16.6%](../../../../../translated_images/fa/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/fa/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-21.e34de51354d6606f.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -51,7 +51,7 @@
میکروفون‌های داینامیک برای کار کردن به برق نیاز ندارند، سیگنال الکتریکی کاملاً توسط میکروفون ایجاد می‌شود.
![پتی اسمیت در حال خواندن به یک میکروفون نوع داینامیک کاردیوید Shure SM58](../../../../../translated_images/fa/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.jpg)
![پتی اسمیت در حال خواندن به یک میکروفون نوع داینامیک کاردیوید Shure SM58](../../../../../translated_images/fa/dynamic-mic.8babac890a2d80df.webp)
* ریبون - میکروفون‌های ریبون مشابه میکروفون‌های داینامیک هستند، با این تفاوت که به جای دیافراگم یک نوار فلزی دارند. این نوار در یک میدان مغناطیسی حرکت می‌کند و جریان الکتریکی ایجاد می‌کند. مانند میکروفون‌های داینامیک، میکروفون‌های ریبون برای کار کردن به برق نیاز ندارند.
@ -59,11 +59,11 @@
* کندانسور - میکروفون‌های کندانسور دارای یک دیافراگم فلزی نازک و یک صفحه پشتی فلزی ثابت هستند. برق به هر دوی این‌ها اعمال می‌شود و با ارتعاش دیافراگم، بار استاتیک بین صفحات تغییر می‌کند و سیگنال تولید می‌شود. میکروفون‌های کندانسور برای کار کردن به برق نیاز دارند - که به آن *Phantom power* گفته می‌شود.
![میکروفون کندانسور کوچک دیافراگم C451B توسط AKG Acoustics](../../../../../translated_images/fa/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.jpg)
![میکروفون کندانسور کوچک دیافراگم C451B توسط AKG Acoustics](../../../../../translated_images/fa/condenser-mic.6f6ed5b76ca19e0e.webp)
* MEMS - میکروفون‌های سیستم‌های میکروالکترومکانیکی، یا MEMS، میکروفون‌هایی روی یک تراشه هستند. آن‌ها دارای یک دیافراگم حساس به فشار هستند که روی یک تراشه سیلیکونی حک شده و مشابه یک میکروفون کندانسور کار می‌کنند. این میکروفون‌ها می‌توانند بسیار کوچک باشند و در مدارها ادغام شوند.
![یک میکروفون MEMS روی یک برد مدار](../../../../../translated_images/fa/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.png)
![یک میکروفون MEMS روی یک برد مدار](../../../../../translated_images/fa/mems-microphone.80574019e1f5e4d9.webp)
در تصویر بالا، تراشه‌ای که با **LEFT** برچسب‌گذاری شده است یک میکروفون MEMS است، با یک دیافراگم کوچک که کمتر از یک میلی‌متر عرض دارد.
@ -159,7 +159,7 @@
## تبدیل گفتار به متن
![لوگوی خدمات گفتار](../../../../../translated_images/fa/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.png)
![لوگوی خدمات گفتار](../../../../../translated_images/fa/azure-speech-logo.a1f08c4befb0159f.webp)
مانند طبقه‌بندی تصویر در پروژه قبلی، خدمات هوش مصنوعی از پیش ساخته‌ای وجود دارند که می‌توانند گفتار را به عنوان یک فایل صوتی دریافت کرده و به متن تبدیل کنند. یکی از این خدمات، سرویس گفتار است که بخشی از خدمات شناختی، خدمات هوش مصنوعی از پیش ساخته‌ای است که می‌توانید در برنامه‌های خود استفاده کنید.

@ -16,13 +16,13 @@
#### وظیفه - اتصال دکمه
![یک دکمه Grove](../../../../../translated_images/fa/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.png)
![یک دکمه Grove](../../../../../translated_images/fa/grove-button.a70cfbb809a85636.webp)
1. یک سر کابل Grove را به سوکت روی ماژول دکمه وارد کنید. کابل فقط به یک جهت وارد می‌شود.
1. با خاموش بودن رزبری پای، سر دیگر کابل Grove را به سوکت دیجیتال با علامت **D5** روی هت پایه Grove که به پای متصل است وصل کنید. این سوکت دومین سوکت از سمت چپ در ردیف سوکت‌های کنار پین‌های GPIO است.
![دکمه Grove متصل به سوکت D5](../../../../../translated_images/fa/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.png)
![دکمه Grove متصل به سوکت D5](../../../../../translated_images/fa/pi-button.c7a1a4f55943341c.webp)
## ضبط صدا

@ -34,7 +34,7 @@
1. اگر از ReSpeaker 2-Mics Pi HAT استفاده می‌کنید، می‌توانید پایه Grove را بردارید و سپس HAT ReSpeaker را جایگزین کنید.
![یک رزبری پای با HAT ReSpeaker](../../../../../translated_images/fa/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.png)
![یک رزبری پای با HAT ReSpeaker](../../../../../translated_images/fa/pi-respeaker-hat.f00fabe7dd039a93.webp)
شما در ادامه این درس به یک دکمه Grove نیاز خواهید داشت، اما یکی از این دکمه‌ها در این HAT تعبیه شده است، بنابراین پایه Grove لازم نیست.

@ -10,7 +10,7 @@
✅ اطلاعات بیشتر درباره DMA را در [صفحه دسترسی مستقیم به حافظه در ویکی‌پدیا](https://wikipedia.org/wiki/Direct_memory_access) بخوانید.
![صدا از میکروفون به ADC می‌رود و سپس به DMAC. این داده‌ها را به یک بافر می‌نویسد. وقتی این بافر پر شد، پردازش می‌شود و DMAC به بافر دوم می‌نویسد](../../../../../translated_images/fa/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.png)
![صدا از میکروفون به ADC می‌رود و سپس به DMAC. این داده‌ها را به یک بافر می‌نویسد. وقتی این بافر پر شد، پردازش می‌شود و DMAC به بافر دوم می‌نویسد](../../../../../translated_images/fa/dmac-adc-buffers.4509aee49145c90b.webp)
DMAC می‌تواند صدا را از ADC در فواصل ثابت ضبط کند، مانند 16,000 بار در ثانیه برای صدای 16KHz. این داده‌های ضبط‌شده را می‌تواند به یک بافر حافظه از پیش تخصیص‌یافته بنویسد، و وقتی این بافر پر شد، آن را برای پردازش در اختیار کد شما قرار دهد. استفاده از این حافظه ممکن است ضبط صدا را به تأخیر بیندازد، اما می‌توانید چندین بافر تنظیم کنید. DMAC به بافر 1 می‌نویسد، سپس وقتی پر شد، کد شما را برای پردازش بافر 1 مطلع می‌کند، در حالی که DMAC به بافر 2 می‌نویسد. وقتی بافر 2 پر شد، کد شما را مطلع می‌کند و دوباره به نوشتن در بافر 1 بازمی‌گردد. به این ترتیب، تا زمانی که هر بافر را در زمانی کمتر از زمان پر شدن آن پردازش کنید، هیچ داده‌ای از دست نخواهد رفت.

@ -1,6 +1,6 @@
# درک زبان
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-22.6148ea28500d9e00.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -46,7 +46,7 @@
## ایجاد یک مدل درک زبان
![لوگوی LUIS](../../../../../translated_images/fa/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.png)
![لوگوی LUIS](../../../../../translated_images/fa/luis-logo.5cb4f3e88c020ee6.webp)
شما می‌توانید مدل‌های درک زبان را با استفاده از LUIS، یک سرویس درک زبان از مایکروسافت که بخشی از خدمات شناختی است، ایجاد کنید.
@ -169,7 +169,7 @@
1. همانطور که هر مثال را وارد می‌کنید، LUIS شروع به شناسایی موجودیت‌ها می‌کند و هر موجودیتی که پیدا کند را زیرخط و برچسب‌گذاری می‌کند.
![مثال‌ها با اعداد و واحدهای زمانی که توسط LUIS زیرخط شده‌اند](../../../../../translated_images/fa/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.png)
![مثال‌ها با اعداد و واحدهای زمانی که توسط LUIS زیرخط شده‌اند](../../../../../translated_images/fa/luis-intent-examples.25716580b2d2723c.webp)
### وظیفه - آموزش و آزمایش مدل

@ -1,6 +1,6 @@
# تنظیم تایمر و ارائه بازخورد صوتی
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-23.f38483e1d4df4828.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.

@ -1,6 +1,6 @@
# پشتیبانی از چند زبان
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.jpg)
![نمای کلی درس به صورت اسکچ‌نوت](../../../../../translated_images/fa/lesson-24.4246968ed058510a.webp)
> اسکچ‌نوت توسط [نیتیا ناراسیمهان](https://github.com/nitya). برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.
@ -74,7 +74,7 @@
### خدمات شناختی سرویس گفتار
![لوگوی سرویس گفتار](../../../../../translated_images/fa/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.png)
![لوگوی سرویس گفتار](../../../../../translated_images/fa/azure-speech-logo.a1f08c4befb0159f.webp)
سرویس گفتاری که در درس‌های گذشته استفاده کرده‌اید، قابلیت‌های ترجمه برای تشخیص گفتار دارد. هنگامی که گفتار را تشخیص می‌دهید، می‌توانید نه تنها متن گفتار را به همان زبان درخواست کنید، بلکه به زبان‌های دیگر نیز.
@ -82,7 +82,7 @@
### خدمات شناختی سرویس مترجم
![لوگوی سرویس مترجم](../../../../../translated_images/fa/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.png)
![لوگوی سرویس مترجم](../../../../../translated_images/fa/azure-translator-logo.c6ed3a4a433edfd2.webp)
سرویس مترجم یک سرویس ترجمه اختصاصی است که می‌تواند متن را از یک زبان به یک یا چند زبان هدف ترجمه کند. علاوه بر ترجمه، از طیف گسترده‌ای از ویژگی‌های اضافی مانند ماسک کردن کلمات نامناسب پشتیبانی می‌کند. همچنین به شما اجازه می‌دهد ترجمه خاصی برای یک کلمه یا جمله خاص ارائه دهید، برای کار با اصطلاحاتی که نمی‌خواهید ترجمه شوند یا ترجمه شناخته‌شده خاصی دارند.

@ -25,7 +25,7 @@
>
> برای مثال، اگر LUIS را به زبان انگلیسی آموزش داده‌اید اما می‌خواهید از زبان فرانسوی به‌عنوان زبان کاربر استفاده کنید، می‌توانید جملاتی مانند "set a 2 minute and 27 second timer" را از انگلیسی به فرانسوی با استفاده از Bing Translate ترجمه کنید، سپس از دکمه **Listen translation** برای گفتن ترجمه به میکروفون خود استفاده کنید.
>
> ![دکمه Listen translation در Bing Translate](../../../../../translated_images/fa/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.png)
> ![دکمه Listen translation در Bing Translate](../../../../../translated_images/fa/bing-translate.348aa796d6efe2a9.webp)
1. کلید API مترجم را زیر `speech_api_key` اضافه کنید:

@ -37,7 +37,7 @@
>
> برای مثال، اگر LUIS را به زبان انگلیسی آموزش داده‌اید اما می‌خواهید از زبان فرانسوی به‌عنوان زبان کاربر استفاده کنید، می‌توانید جملاتی مانند "set a 2 minute and 27 second timer" را از انگلیسی به فرانسوی با استفاده از Bing Translate ترجمه کنید، سپس از دکمه **Listen translation** برای گفتن ترجمه به میکروفون خود استفاده کنید.
>
> ![دکمه Listen translation در Bing Translate](../../../../../translated_images/fa/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.png)
> ![دکمه Listen translation در Bing Translate](../../../../../translated_images/fa/bing-translate.348aa796d6efe2a9.webp)
1. اعلان‌های `recognizer_config` و `recognizer` را با موارد زیر جایگزین کنید:

@ -105,7 +105,7 @@
>
> برای مثال، اگر LUIS را به زبان انگلیسی آموزش داده‌اید اما می‌خواهید از زبان فرانسوی به‌عنوان زبان کاربر استفاده کنید، می‌توانید جملاتی مانند "set a 2 minute and 27 second timer" را از انگلیسی به فرانسوی با استفاده از Bing Translate ترجمه کنید، سپس از دکمه **Listen translation** برای گفتن ترجمه به میکروفون خود استفاده کنید.
>
> ![دکمه Listen translation در Bing Translate](../../../../../translated_images/fa/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.png)
> ![دکمه Listen translation در Bing Translate](../../../../../translated_images/fa/bing-translate.348aa796d6efe2a9.webp)
1. کلید API مترجم و مکان آن را زیر `SPEECH_LOCATION` اضافه کنید:

@ -1,27 +1,27 @@
[![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](https://img.shields.io/github/license/microsoft/IoT-For-Beginners.svg)](https://github.com/microsoft/IoT-For-Beginners/blob/master/LICENSE)
[![مشارکت‌کنندگان GitHub](https://img.shields.io/github/contributors/microsoft/IoT-For-Beginners.svg)](https://GitHub.com/microsoft/IoT-For-Beginners/graphs/contributors/)
[![مشکلات GitHub](https://img.shields.io/github/issues/microsoft/IoT-For-Beginners.svg)](https://GitHub.com/microsoft/IoT-For-Beginners/issues/)
[![درخواست‌های کشش GitHub](https://img.shields.io/github/issues-pr/microsoft/IoT-For-Beginners.svg)](https://GitHub.com/microsoft/IoT-For-Beginners/pulls/)
[![خوش‌آمدگویی درخواست‌های کشش](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/)
[![ناظرین GitHub](https://img.shields.io/github/watchers/microsoft/IoT-For-Beginners.svg?style=social&label=Watch)](https://GitHub.com/microsoft/IoT-For-Beginners/watchers/)
[![شاخه‌های GitHub](https://img.shields.io/github/forks/microsoft/IoT-For-Beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/IoT-For-Beginners/network/)
[![ستاره‌های GitHub](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 بپیوندید
اگر در ساخت برنامه‌های هوش مصنوعی گیر کرده‌اید یا سوالی دارید، به جمع یادگیرندگان و توسعه‌دهندگان با تجربه در بحث‌های مربوط به MCP بپیوندید. این یک جامعه حمایتی است که در آن سوالات پذیرفته می‌شوند و دانش به صورت آزادانه به اشتراک گذاشته می‌شود.
اگر گیر کرده‌اید یا سوالی درباره ساخت برنامه‌های هوش مصنوعی دارید، به همراه یادگیرندگان و توسعه‌دهندگان باتجربه در بحث‌های پیرامون MCP بپیوندید. این یک جامعه حمایتی است که در آن پرسش‌ها استقبال می‌شوند و دانش به صورت آزادانه به اشتراک گذاشته می‌شود.
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
اگر بازخورد محصول دارید یا در هنگام ساخت با اشکال مواجه شدید، به آدرس زیر مراجعه کنید:
اگر بازخورد محصول دارید یا هنگام ساخت با خطا مواجه شدید، به اینجا مراجعه کنید:
[![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. [**به Discord Microsoft Foundry بپیوندید و با کارشناسان و توسعه‌دهندگان همفکر ملاقات کنید**](https://discord.com/invite/ByRwuEEgH4)
برای شروع استفاده از این منابع مراحل زیر را دنبال کنید:
1. **شاخه‌ای از مخزن بسازید**: کلیک کنید [![شاخه‌های GitHub](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. [**به Discord مایکروسافت فاندری بپیوندید و با کارشناسان و توسعه‌دهندگان هم‌سطح خود ملاقات کنید**](https://discord.com/invite/ByRwuEEgH4)
### 🌐 پشتیبانی چندزبانه
@ -29,123 +29,133 @@
#### پشتیبانی شده از طریق 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](../hi/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)](./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)
[عربی](../ar/README.md) | [بنگالی](../bn/README.md) | [بلغاری](../bg/README.md) | [برمه‌ای (میانمار)](../my/README.md) | [چینی (ساده شده)](../zh-CN/README.md) | [چینی (سنتی، هنگ‌کنگ)](../zh-HK/README.md) | [چینی (سنتی، ماکائو)](../zh-MO/README.md) | [چینی (سنتی، تایوان)](../zh-TW/README.md) | [کرواسی](../hr/README.md) | [چک](../cs/README.md) | [دانمارکی](../da/README.md) | [هلندی](../nl/README.md) | [استونیایی](../et/README.md) | [فنلاندی](../fi/README.md) | [فرانسوی](../fr/README.md) | [آلمانی](../de/README.md) | [یونانی](../el/README.md) | [عبری](../he/README.md) | [هندی](../hi/README.md) | [مجارستانی](../hu/README.md) | [اندونزیایی](../id/README.md) | [ایتالیایی](../it/README.md) | [ژاپنی](../ja/README.md) | [کانادا](../kn/README.md) | [خمری](../km/README.md) | [کره‌ای](../ko/README.md) | [لیتوانیایی](../lt/README.md) | [مالایایی](../ms/README.md) | [مالایالام](../ml/README.md) | [مراتی](../mr/README.md) | [نپالی](../ne/README.md) | [پیدگین نیجریه‌ای](../pcm/README.md) | [نروژی](../no/README.md) | [فارسی (Farsi)](./README.md) | [لهستانی](../pl/README.md) | [پرتغالی (برزیل)](../pt-BR/README.md) | [پرتغالی (پرتغال)](../pt-PT/README.md) | [پنجابی (گورموقی)](../pa/README.md) | [رومانیایی](../ro/README.md) | [روسی](../ru/README.md) | [صربی (سیریلیک)](../sr/README.md) | [اسلواکی](../sk/README.md) | [اسلوونیایی](../sl/README.md) | [اسپانیایی](../es/README.md) | [سواحلی](../sw/README.md) | [سوئدی](../sv/README.md) | [تاگالوگ (فیلیپینی)](../tl/README.md) | [تامیلی](../ta/README.md) | [تلگو](../te/README.md) | [تایلندی](../th/README.md) | [ترکی](../tr/README.md) | [اوکراینی](../uk/README.md) | [اردو](../ur/README.md) | [ویتنامی](../vi/README.md)
> **ترجیح می‌دهید به صورت محلی کلون کنید؟**
> این مخزن شامل بیش از ۵۰ ترجمه زبان است که اندازه دانلود را به طور قابل توجهی افزایش می‌دهد. برای کلون کردن بدون ترجمه‌ها، از sparse checkout استفاده کنید:
> **ترجیح می‌دهید محلی کلون کنید؟**
>
> این مخزن شامل بیش از ۵۰ ترجمه زبان است که حجم دانلود را به‌شدت افزایش می‌دهد. برای کلون کردن بدون ترجمه‌ها، از sparse checkout استفاده کنید:
>
> **Bash / macOS / لینوکس:**
> ```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'
> ```
> این به شما همه چیز لازم برای تکمیل دوره با دانلودی بسیار سریع‌تر را می‌دهد.
>
> **CMD (ویندوز):**
> ```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"
> ```
>
> این به شما همه چیز مورد نیاز برای انجام دوره را با دانلودی بسیار سریع‌تر می‌دهد.
<!-- CO-OP TRANSLATOR LANGUAGES TABLE END -->
# اینترنت اشیاء برای مبتدیان - یک برنامه درسی
# IoT برای مبتدیان - یک برنامه آموزشی
مدافعان ابر Azure در مایکروسافت خوشحالند که یک برنامه درسی 12 هفته‌ای و 24 درس را درباره اصول اینترنت اشیاء ارائه دهند. هر درس شامل کوییزهای قبل و بعد از درس، دستورالعمل‌های مکتوب برای تکمیل درس، یک راه‌حل، یک تکلیف و موارد بیشتر است. روش آموزشی مبتنی بر پروژه ما به شما اجازه می‌دهد همزمان با ساختن یاد بگیرید، که روشی اثبات شده برای تثبیت مهارت‌های جدید است.
مدافعان ابری آزور در مایکروسافت خوشحالند یک دوره آموزشی ۱۲ هفته‌ای شامل ۲۴ درس درباره مبانی اینترنت اشیاء ارائه دهند. هر درس شامل آزمون‌های قبل و بعد از درس، دستورالعمل‌های نوشتاری برای تکمیل درس، یک راه‌حل، یک تمرین و موارد دیگر است. روش آموزش مبتنی بر پروژه ما به شما امکان می‌دهد در حین ساخت یاد بگیرید، روشی اثبات شده برای «پایدار شدن» مهارت‌های جدید.
پروژه‌ها سفر غذا را از مزرعه تا میز پوشش می‌دهند. این شامل کشاورزی، لجستیک، تولید، خرده‌فروشی و مصرف‌کننده - همه حوزه‌های محبوب صنعت برای دستگاه‌های اینترنت اشیاء است.
پروژه‌ها جریان غذا را از مزرعه تا میز بررسی می‌کنند. این شامل کشاورزی، لجستیک، تولید، فروش و مصرف‌کننده است - همه حوزه‌های محبوب صنعتی برای دستگاه‌های IoT.
![نقشه راه دوره شامل 24 درس که معرفی، کشاورزی، حمل و نقل، پردازش، خرده‌فروشی و آشپزی را پوشش می‌دهد](../../translated_images/fa/Roadmap.bb1dec285dda0eda.webp)
![نقشه راه دوره که ۲۴ درس را پوشش می‌دهد شامل معرفی، کشاورزی، حمل و نقل، پردازش، فروش و آشپزی](../../translated_images/fa/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) صمیمانه تشکر می‌کنیم.**
**همچنین از تیم ما از [دانشجویان سفیر مایکروسافت](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/).**
**همچنین از تیم ما از [سفیران دانشجویی مایکروسافت](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/).**
با تیم آشنا شوید!
[![ویدئوی تبلیغاتی](../../images/IOT.gif)](https://youtu.be/-wippUJRi5k)
[![ویدئوی معرفی](../../images/IOT.gif)](https://youtu.be/-wippUJRi5k)
**گیف توسط** [Mohit Jaisal](https://linkedin.com/in/mohitjaisal)
> 🎥 روی تصویر بالا برای دیدن یک ویدئو درباره پروژه کلیک کنید!
> 🎥 برای دیدن ویدئو درباره پروژه روی تصویر بالا کلیک کنید!
> **معلمان**، ما [پیشنهاداتی ارائه داده‌ایم](for-teachers.md) در مورد نحوه استفاده از این برنامه درسی. اگر می‌خواهید درس‌های خود را ایجاد کنید، قالب درسی نیز اضافه کرده‌ایم [lesson template](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) را توصیه می‌کنیم.
برای دریافت نمای کلی ویدیویی این دوره، این ویدئو را ببینید:
برای مرور ویدیویی این دوره، این ویدئو را ببینید:
[![ویدئوی تبلیغاتی](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 "ویدئوی معرفی")
> 🎥 روی تصویر بالا برای دیدن یک ویدئو درباره پروژه کلیک کنید!
> 🎥 برای دیدن ویدئو درباره پروژه روی تصویر بالا کلیک کنید!
## روش آموزشی
## روش آموزش
ما دو اصل آموزشی را در ساخت این برنامه درسی انتخاب کرده‌ایم: اطمینان از مبتنی بودن آن بر پروژه و اینکه شامل کوییزهای مکرر باشد. تا پایان این سری، دانش‌آموزان یک سیستم مانیتورینگ و آبیاری گیاه، ردیاب وسیله نقلیه، یک سیستم کارخانه هوشمند برای پیگیری و بررسی غذا، و تایمر آشپزی کنترل‌شده با صدا ساخته‌اند و اصول اولیه اینترنت اشیاء از جمله نحوه نوشتن کد دستگاه، اتصال به ابر، تحلیل تلمتری و اجرای هوش مصنوعی در لبه را یاد گرفته‌اند.
در ساخت این دوره، دو اصل آموزشی را انتخاب کرده‌ایم: اطمینان از اینکه مبتنی بر پروژه است و شامل آزمون‌های مکرر می‌باشد. در پایان این سری، دانش‌آموزان سیستمی برای مانیتورینگ و آبیاری گیاه، ردیاب وسیله نقلیه، تنظیم هوشمند کارخانه برای بررسی و ردگیری غذا، و تایمر آشپزی با کنترل صوتی ساخته‌اند و اصول اولیه اینترنت اشیاء از جمله نحوه نوشتن کد دستگاه، اتصال به ابر، تحلیل تلماتری و اجرای هوش مصنوعی در لبه را یاد گرفته‌اند.
با اطمینان از هماهنگی محتوا با پروژه‌ها، فرایند یادگیری برای دانش‌آموزان جذاب‌تر شده و حفظ مفاهیم افزایش می‌یابد.
اطمینان از هماهنگی محتوا با پروژه‌ها، فرآیند یادگیری را برای دانش‌آموزان جذاب‌تر می‌کند و حفظ مفاهیم را افزایش می‌دهد.
علاوه بر این، یک کوییز کم‌فشار قبل از کلاس نیت دانش‌آموز برای یادگیری موضوع را تنظیم می‌کند، در حالی که کوییز دوم بعد از کلاس به حفظ بیشتر کمک می‌کند. این برنامه درسی طوری طراحی شده که انعطاف‌پذیر و سرگرم‌کننده باشد و می‌توان آن را کامل یا بخش به بخش طی کرد. پروژه‌ها کوچک شروع شده و تا پایان دوره ۱۲ هفته‌ای به طور فزاینده‌ای پیچیده می‌شوند.
علاوه بر این، یک آزمون کم‌استرس پیش از کلاس نیت دانش‌آموز را برای یادگیری موضوع تنظیم می‌کند، در حالی که آزمون دوم پس از کلاس موجب حفظ بیشتر می‌شود. این دوره به گونه‌ای طراحی شده که منعطف و سرگرم‌کننده باشد و بتوان آن را به‌طور کامل یا بخشی از آن را گذراند. پروژه‌ها از کوچک شروع شده و تا پایان چرخه ۱۲ هفته‌ای به تدریج پیچیده‌تر می‌شوند.
هر پروژه مبتنی بر سخت‌افزار واقعی در دسترس دانش‌آموزان و علاقمندان است. هر پروژه به حوزه مخصوص خودش نگاه می‌کند و دانش زمینه‌ای مرتبط ارائه می‌دهد. برای موفقیت به عنوان توسعه‌دهنده، درک حوزه‌ای که در آن مشکل حل می‌کنید مفید است، ارائه این دانش زمینه‌ای به دانش‌آموزان اجازه می‌دهد درباره راه‌حل‌ها و یادگیری‌های اینترنت اشیاء خود در زمینه نوع واقعی از مشکلی که ممکن است به عنوان توسعه‌دهنده اینترنت اشیاء از آنها خواسته شود فکر کنند. دانش‌آموزان دلیل «چرا»ی راه‌حل‌هایی را که می‌سازند می‌آموزند و به کاربر نهایی نیز احترام می‌گذارند.
هر پروژه بر اساس سخت‌افزار واقعی در دسترس دانش‌آموزان و علاقه‌مندان استوار است. هر پروژه به حوزه خاص پروژه می‌پردازد و دانش پس‌زمینه مرتبط را فراهم می‌کند. برای موفقیت در توسعه، درک حوزه‌ای که در آن مشکلات حل می‌کنید کمک‌کننده است؛ فراهم کردن این دانش پس‌زمینه به دانش‌آموزان اجازه می‌دهد تا درباره راه‌حل‌های IoT و یادگیری خود در زمینه نوع مشکلات واقعی که ممکن است از آن‌ها خواسته شود به عنوان توسعه‌دهنده IoT حل کنند، فکر کنند. دانش‌آموزان «چرایی» راه‌حل‌هایی که می‌سازند را می‌آموزند و قدرشناسی نسبت به کاربر نهایی پیدا می‌کنند.
## سخت‌افزار
ما دو انتخاب سخت‌افزاری اینترنت اشیا برای استفاده در پروژه‌ها داریم که بسته به ترجیح شخصی، دانش زبان برنامه‌نویسی یا علایق، اهداف یادگیری و دسترسی متفاوت هستند. همچنین نسخه‌ای به نام «سخت‌افزار مجازی» را برای کسانی که به سخت‌افزار دسترسی ندارند یا می‌خواهند قبل از خرید، بیشتر یاد بگیرند ارائه داده‌ایم. شما می‌توانید اطلاعات بیشتر را در صفحه [hardware](./hardware.md) بخوانید، که شامل فهرست خرید و لینک‌هایی برای خرید کیت‌های کامل از دوستان ما در Seeed Studio است.
ما دو انتخاب سخت‌افزاری اینترنت اشیاء برای استفاده در پروژه‌ها داریم که بستگی به ترجیحات شخصی، دانش زبان برنامه‌نویسی، اهداف یادگیری و دسترسی دارد. نسخه‌ای از سخت‌افزار «مجازی» نیز برای کسانی که به سخت‌افزار دسترسی ندارند یا می‌خواهند قبل از خرید بیشتر یاد بگیرند ارائه شده است. شما می‌توانید بیشتر بخوانید و فهرست خرید را در [صفحه سخت‌افزار](./hardware.md) پیدا کنید، شامل لینک‌هایی برای خرید کیت‌های کامل از دوستان ما در Seeed Studio.
> 💁 راهنمای [رفتار](CODE_OF_CONDUCT.md)، [مشارکت](CONTRIBUTING.md)، و [ترجمه](TRANSLATIONS.md) ما را بیابید. ما از بازخورد سازنده شما استقبال می‌کنیم!
> 💁 دستورالعمل‌های [قوانین رفتاری](CODE_OF_CONDUCT.md)، [مشارکت](CONTRIBUTING.md) و [ترجمه](TRANSLATIONS.md) ما را بیابید. ما از بازخورد سازنده شما استقبال می‌کنیم!
>
> 🔧 مشکلی دارید؟ راهنمای [عیب‌یابی](TROUBLESHOOTING.md) ما را برای راه‌حل‌های مشکلات رایج بررسی کنید.
> 🔧 مشکلی دارید؟ راهنمای [عیب‌یابی](TROUBLESHOOTING.md) ما را برای حل مشکلات رایج بررسی کنید.
## هر درس شامل:
## هر درس شامل موارد زیر است:
- اسکچ‌نوت
- ویدئوی تکمیلی اختیاری
- آزمون گرم‌کردن پیش از درس
- درس کتبی
- برای درس‌های مبتنی بر پروژه، راهنمای گام به گام ساخت پروژه
- بررسی دانش
- نکات کلیدی بصورت طرح یادداشت
- ویدیوی تکمیلی اختیاری
- آزمون گرم‌کننده قبل از درس
- درس مکتوب
- برای درس‌های پروژه‌محور، راهنمای گام‌به‌گام ساخت پروژه
- ارزیابی‌های دانش
- یک چالش
- مطالعه تکمیلی
- مطالعات تکمیلی
- تمرین
- [آزمون پس از درس](https://ff-quizzes.netlify.app/en/)
> **نکته‌ای درباره آزمون‌ها**: تمامی آزمون‌ها در پوشه quiz-app قرار دارند، با مجموع ۴۸ آزمون که هر کدام شامل سه سؤال است. این آزمون‌ها از درس‌ها پیوند داده شده‌اند اما می‌توان اپلیکیشن آزمون را به صورت محلی اجرا کرد یا در Azure مستقر نمود؛ دستورالعمل‌ها در پوشه `quiz-app` آمده است. این آزمون‌ها به تدریج بومی‌سازی می‌شوند.
> **تذکری درباره آزمون‌ها**: تمام آزمون‌ها در پوشه quiz-app قرار دارند، که شامل ۴۸ آزمون هر کدام با سه سوال هستند. آنها از داخل درس‌ها لینک شده‌اند، اما اپلیکیشن آزمون می‌تواند به صورت محلی اجرا یا روی Azure مستقر شود؛ دستورالعمل را در پوشه `quiz-app` دنبال کنید. این آزمون‌ها به تدریج محلی‌سازی می‌شوند.
## دروس
| | نام پروژه | مفاهیم تدریس شده | اهداف یادگیری | درس مرتبط |
| :---: | :------------------------------------: | :---------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------: |
| ۰۱ | [شروع به کار](./1-getting-started/README.md) | مقدمه‌ای بر اینترنت اشیا | اصول پایه اینترنت اشیا و اجزای اصلی راه‌حل‌های اینترنت اشیا مانند حسگرها و خدمات ابری را بیاموزید در حالی که دستگاه اینترنت اشیای خود را راه‌اندازی می‌کنید | [مقدمه‌ای بر اینترنت اشیا](./1-getting-started/lessons/1-introduction-to-iot/README.md) |
| ۰۲ | [شروع به کار](./1-getting-started/README.md) | بررسی عمیق‌تر اینترنت اشیا | درباره اجزای یک سیستم اینترنت اشیا، میکروکنترلرها و کامپیوترهای تک برد بیشتر بیاموزید | [بررسی عمیق‌تر اینترنت اشیا](./1-getting-started/lessons/2-deeper-dive/README.md) |
| ۰۳ | [شروع به کار](./1-getting-started/README.md) | تعامل با دنیای فیزیکی با حسگرها و عملگرها | درباره حسگرها برای جمع‌آوری داده‌ها از دنیای فیزیکی و عملگرها برای ارسال بازخورد بیاموزید، در حالی که یک چراغ شب‌تاب می‌سازید | [تعامل با دنیای فیزیکی با حسگرها و عملگرها](./1-getting-started/lessons/3-sensors-and-actuators/README.md) |
| ۰۴ | [شروع به کار](./1-getting-started/README.md) | اتصال دستگاه به اینترنت | درباره نحوه اتصال دستگاه اینترنت اشیا به اینترنت برای ارسال و دریافت پیام‌ها با اتصال چراغ شب‌تاب خود به یک کارگزار MQTT بیاموزید | [اتصال دستگاه به اینترنت](./1-getting-started/lessons/4-connect-internet/README.md) |
| ۰۵ | [مزرعه](./2-farm/README.md) | پیش‌بینی رشد گیاه | یاد بگیرید چگونه رشد گیاه را با استفاده از داده‌های دمایی که توسط دستگاه اینترنت اشیا ثبت شده پیش‌بینی کنید | [پیش‌بینی رشد گیاه](./2-farm/lessons/1-predict-plant-growth/README.md) |
| ۰۶ | [مزرعه](./2-farm/README.md) | تشخیص رطوبت خاک | یاد بگیرید چگونه رطوبت خاک را تشخیص دهید و حسگر رطوبت خاک را کالیبره کنید | [تشخیص رطوبت خاک](./2-farm/lessons/2-detect-soil-moisture/README.md) |
| ۰۷ | [مزرعه](./2-farm/README.md) | آبیاری خودکار گیاه | یاد بگیرید چگونه آبیاری را با استفاده از رله و MQTT زمان‌بندی و خودکار کنید | [آبیاری خودکار گیاه](./2-farm/lessons/3-automated-plant-watering/README.md) |
| ۰۸ | [مزرعه](./2-farm/README.md) | مهاجرت گیاه خود به ابر | درباره ابر و خدمات اینترنت اشیا میزبانی شده در ابر و نحوه اتصال گیاه خود به یکی از این خدمات به جای کارگزار عمومی MQTT بیاموزید | [مهاجرت گیاه خود به ابر](./2-farm/lessons/4-migrate-your-plant-to-the-cloud/README.md) |
| ۰۹ | [مزرعه](./2-farm/README.md) | مهاجرت منطق برنامه‌نویسی خود به ابر | یاد بگیرید چگونه می‌توانید منطق برنامه‌نویسی در ابر بنویسید که به پیام‌های اینترنت اشیا پاسخ می‌دهد | [مهاجرت منطق برنامه‌نویسی به ابر](./2-farm/lessons/5-migrate-application-to-the-cloud/README.md) |
| ۱۰ | [مزرعه](./2-farm/README.md) | محافظت از گیاه خود | درباره امنیت در اینترنت اشیا و نحوه محافظت از گیاه خود با کلیدها و گواهینامه‌ها بیاموزید | [محافظت از گیاه خود](./2-farm/lessons/6-keep-your-plant-secure/README.md) |
| ۱۱ | [حمل و نقل](./3-transport/README.md) | ردیابی موقعیت مکانی | درباره ردیابی موقعیت GPS برای دستگاه‌های اینترنت اشیا بیاموزید | [ردیابی موقعیت مکانی](./3-transport/lessons/1-location-tracking/README.md) |
| ۱۲ | [حمل و نقل](./3-transport/README.md) | ذخیره داده‌های موقعیت | یاد بگیرید چگونه داده‌های اینترنت اشیا را ذخیره کنید تا بعداً قابل مشاهده یا تحلیل باشند | [ذخیره داده‌های موقعیت](./3-transport/lessons/2-store-location-data/README.md) |
| ۱۳ | [حمل و نقل](./3-transport/README.md) | تجسم داده‌های موقعیت | درباره تجسم داده‌های موقعیت روی نقشه و چگونگی نمایش نقشه‌ها از دنیای واقعی سه‌بعدی به صورت دو بعدی بیاموزید | [تجسم داده‌های موقعیت](./3-transport/lessons/3-visualize-location-data/README.md) |
| ۱۴ | [حمل و نقل](./3-transport/README.md) | حصارهای جغرافیایی | درباره حصارهای جغرافیایی و اینکه چگونه می‌توانند برای هشدار هنگام نزدیک شدن خودروها در زنجیره تامین به مقصدشان استفاده شوند بیاموزید | [حصارهای جغرافیایی](./3-transport/lessons/4-geofences/README.md) |
| ۱۵ | [تولید](./4-manufacturing/README.md) | آموزش تشخیص کیفیت میوه | درباره آموزش یک طبقه‌بند تصویر در ابر برای تشخیص کیفیت میوه بیاموزید | [آموزش تشخیص کیفیت میوه](./4-manufacturing/lessons/1-train-fruit-detector/README.md) |
| ۱۶ | [تولید](./4-manufacturing/README.md) | بررسی کیفیت میوه از دستگاه اینترنت اشیا | درباره استفاده از دستگاه تشخیص کیفیت میوه خود از دستگاه اینترنت اشیا بیاموزید | [بررسی کیفیت میوه از دستگاه اینترنت اشیا](./4-manufacturing/lessons/2-check-fruit-from-device/README.md) |
| ۱۷ | [تولید](./4-manufacturing/README.md) | اجرای دستگاه تشخیص میوه روی لبه شبکه | درباره اجرای دستگاه تشخیص میوه روی یک دستگاه اینترنت اشیا در لبه شبکه بیاموزید | [اجرای دستگاه تشخیص میوه روی لبه شبکه](./4-manufacturing/lessons/3-run-fruit-detector-edge/README.md) |
| ۱۸ | [تولید](./4-manufacturing/README.md) | فعال‌سازی تشخیص کیفیت میوه از حسگر | درباره فعال‌سازی تشخیص کیفیت میوه از طریق حسگر بیاموزید | [فعال‌سازی تشخیص کیفیت میوه از حسگر](./4-manufacturing/lessons/4-trigger-fruit-detector/README.md) |
| ۱۹ | [خرده‌فروشی](./5-retail/README.md) | آموزش تشخیص موجودی | یاد بگیرید چگونه از تشخیص شیء برای آموزش یک تشخیص‌دهنده موجودی برای شمارش موجودی در فروشگاه استفاده کنید | [آموزش تشخیص موجودی](./5-retail/lessons/1-train-stock-detector/README.md) |
| ۲۰ | [خرده‌فروشی](./5-retail/README.md) | بررسی موجودی از دستگاه اینترنت اشیا | یاد بگیرید چگونه با استفاده از یک مدل تشخیص شیء، موجودی را از دستگاه اینترنت اشیا بررسی کنید | [بررسی موجودی از دستگاه اینترنت اشیا](./5-retail/lessons/2-check-stock-device/README.md) |
| ۲۱ | [مصرف‌کننده](./6-consumer/README.md) | تشخیص گفتار با یک دستگاه اینترنت اشیا | یاد بگیرید چگونه از دستگاه اینترنت اشیا برای تشخیص گفتار به منظور ساخت یک تایمر هوشمند استفاده کنید | [تشخیص گفتار با دستگاه اینترنت اشیا](./6-consumer/lessons/1-speech-recognition/README.md) |
| ۲۲ | [مصرف‌کننده](./6-consumer/README.md) | درک زبان | یاد بگیرید چگونه جملاتی که به دستگاه اینترنت اشیا گفته می‌شود را درک کنید | [درک زبان](./6-consumer/lessons/2-language-understanding/README.md) |
| ۲۳ | [مصرف‌کننده](./6-consumer/README.md) | تنظیم تایمر و ارائه بازخورد گفتاری | یاد بگیرید چگونه تایمر را روی دستگاه اینترنت اشیا تنظیم کنید و بازخورد گفتاری درباره زمان تنظیم و پایان تایمر ارائه دهید | [تنظیم تایمر و ارائه بازخورد گفتاری](./6-consumer/lessons/3-spoken-feedback/README.md) |
| ۲۴ | [مصرف‌کننده](./6-consumer/README.md) | پشتیبانی از چند زبان | یاد بگیرید چگونه از چند زبان پشتیبانی کنید، هم در هنگام صحبت شدن به تایمر هوشمند و هم پاسخ‌هایی که ارائه می‌دهد | [پشتیبانی از چند زبان](./6-consumer/lessons/4-multiple-language-support/README.md) |
| | نام پروژه | مفاهیم تدریس شده | اهداف یادگیری | درس مرتبط |
| :---: | :---------------------------------: | :----------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | :-------------------------------------------------------------------------------------------------------------------------: |
| ۰۱ | [شروع کار](./1-getting-started/README.md) | مقدمه‌ای بر اینترنت اشیا | اصول پایه اینترنت اشیا و اجزای اصلی راهکارهای اینترنت اشیا مانند حسگرها و سرویس‌های ابری را یاد بگیرید در حالی که دستگاه اینترنت اشیا اول خود را راه‌اندازی می‌کنید | [مقدمه‌ای بر اینترنت اشیا](./1-getting-started/lessons/1-introduction-to-iot/README.md) |
| ۰۲ | [شروع کار](./1-getting-started/README.md) | بررسی عمیق‌تر اینترنت اشیا | با اجزای یک سیستم اینترنت اشیا و همچنین میکروکنترلرها و کامپیوترهای تک‌بردی بیشتر آشنا شوید | [بررسی عمیق‌تر اینترنت اشیا](./1-getting-started/lessons/2-deeper-dive/README.md) |
| ۰۳ | [شروع کار](./1-getting-started/README.md) | تعامل با دنیای فیزیکی با حسگرها و عملگرها | با حسگرها برای جمع‌آوری داده از دنیای فیزیکی و عملگرها برای ارسال بازخورد آشنا شوید، ضمن ساخت یک چراغ خواب | [تعامل با دنیای فیزیکی با حسگرها و عملگرها](./1-getting-started/lessons/3-sensors-and-actuators/README.md) |
| ۰۴ | [شروع کار](./1-getting-started/README.md) | اتصال دستگاهتان به اینترنت | نحوه اتصال دستگاه اینترنت اشیا به اینترنت برای ارسال و دریافت پیام‌ها را یاد بگیرید؛ در حالی که چراغ خواب خود را به یک کارگزار MQTT متصل می‌کنید | [اتصال دستگاه به اینترنت](./1-getting-started/lessons/4-connect-internet/README.md) |
| ۰۵ | [کشاورزی](./2-farm/README.md) | پیش‌بینی رشد گیاه | نحوه پیش‌بینی رشد گیاه با استفاده از داده دما که توسط دستگاه اینترنت اشیا ضبط شده است را یاد بگیرید | [پیش‌بینی رشد گیاه](./2-farm/lessons/1-predict-plant-growth/README.md) |
| ۰۶ | [کشاورزی](./2-farm/README.md) | تشخیص رطوبت خاک | نحوه تشخیص رطوبت خاک و کالیبراسیون حسگر رطوبت خاک را یاد بگیرید | [تشخیص رطوبت خاک](./2-farm/lessons/2-detect-soil-moisture/README.md) |
| ۰۷ | [کشاورزی](./2-farm/README.md) | آبیاری خودکار گیاه | نحوه خودکارسازی و زمان‌بندی آبیاری با استفاده از رله و MQTT را یاد بگیرید | [آبیاری خودکار گیاه](./2-farm/lessons/3-automated-plant-watering/README.md) |
| ۰۸ | [کشاورزی](./2-farm/README.md) | مهاجرت گیاه خود به فضای ابری | با خدمات ابری و سرویس‌های میزبانی شده اینترنت اشیا در ابر آشنا شوید و یاد بگیرید چگونه به جای کارگزار MQTT عمومی، گیاهتان را به یکی از این سرویس‌ها متصل کنید | [مهاجرت گیاه به فضای ابری](./2-farm/lessons/4-migrate-your-plant-to-the-cloud/README.md) |
| ۰۹ | [کشاورزی](./2-farm/README.md) | انتقال منطق برنامه به فضای ابری | یاد بگیرید چگونه می‌توانید منطق برنامه را در فضای ابری بنویسید که به پیام‌های اینترنت اشیا پاسخ دهد | [انتقال منطق برنامه به فضای ابری](./2-farm/lessons/5-migrate-application-to-the-cloud/README.md) |
| ۱۰ | [کشاورزی](./2-farm/README.md) | ایمن نگه داشتن گیاه | با امنیت در اینترنت اشیا آشنا شوید و یاد بگیرید چگونه با کلیدها و گواهی‌ها گیاه خود را ایمن نگه دارید | [ایمن نگه داشتن گیاه](./2-farm/lessons/6-keep-your-plant-secure/README.md) |
| ۱۱ | [حمل‌ونقل](./3-transport/README.md) | ردیابی موقعیت مکانی | درباره ردیابی موقعیت مکانی GPS برای دستگاه‌های اینترنت اشیا بیاموزید | [ردیابی موقعیت مکانی](./3-transport/lessons/1-location-tracking/README.md) |
| ۱۲ | [حمل‌ونقل](./3-transport/README.md) | ذخیره اطلاعات موقعیت | نحوه ذخیره داده‌های اینترنت اشیا برای مشاهده یا تحلیل بعدی را یاد بگیرید | [ذخیره اطلاعات موقعیت](./3-transport/lessons/2-store-location-data/README.md) |
| ۱۳ | [حمل‌ونقل](./3-transport/README.md) | تجسم داده‌های موقعیت | درباره تجسم داده‌های موقعیت روی نقشه و نحوه نمایش دنیای سه‌بعدی واقعی روی نقشه‌های دو بعدی بیاموزید | [تجسم داده‌های موقعیت](./3-transport/lessons/3-visualize-location-data/README.md) |
| ۱۴ | [حمل‌ونقل](./3-transport/README.md) | حصارهای جغرافیایی | درباره حصارهای جغرافیایی و نحوه استفاده از آنها برای هشدار هنگام نزدیک شدن خودروهای زنجیره تأمین به مقصد آشنا شوید | [حصارهای جغرافیایی](./3-transport/lessons/4-geofences/README.md) |
| ۱۵ | [تولید](./4-manufacturing/README.md) | آموزش یک تشخیص‌دهنده کیفیت میوه | درباره آموزش یک طبقه‌بند تصویر در فضای ابری برای تشخیص کیفیت میوه بیاموزید | [آموزش تشخیص‌دهنده کیفیت میوه](./4-manufacturing/lessons/1-train-fruit-detector/README.md) |
| ۱۶ | [تولید](./4-manufacturing/README.md) | بررسی کیفیت میوه از دستگاه اینترنت اشیا | درباره استفاده از دستگاه تشخیص کیفیت میوه تان از یک دستگاه اینترنت اشیا یاد بگیرید | [بررسی کیفیت میوه از دستگاه اینترنت اشیا](./4-manufacturing/lessons/2-check-fruit-from-device/README.md) |
| ۱۷ | [تولید](./4-manufacturing/README.md) | اجرای تشخیص‌دهنده میوه روی لبه | درباره اجرای دستگاه تشخیص میوه روی دستگاه اینترنت اشیا روی لبه بیاموزید | [اجرای تشخیص‌دهنده میوه روی لبه](./4-manufacturing/lessons/3-run-fruit-detector-edge/README.md) |
| ۱۸ | [تولید](./4-manufacturing/README.md) | تحریک تشخیص کیفیت میوه از حسگر | درباره تحریک تشخیص کیفیت میوه از یک حسگر آشنا شوید | [تحریک تشخیص کیفیت میوه از حسگر](./4-manufacturing/lessons/4-trigger-fruit-detector/README.md) |
| ۱۹ | [خرده‌فروشی](./5-retail/README.md) | آموزش تشخیص موجودی | نحوه استفاده از تشخیص اشیاء برای آموزش تشخیص‌دهنده موجودی برای شمارش موجودی در یک فروشگاه یاد بگیرید | [آموزش تشخیص‌دهنده موجودی](./5-retail/lessons/1-train-stock-detector/README.md) |
| ۲۰ | [خرده‌فروشی](./5-retail/README.md) | بررسی موجودی از دستگاه اینترنت اشیا | نحوه بررسی موجودی از دستگاه اینترنت اشیا با استفاده از مدل تشخیص اشیاء را یاد بگیرید | [بررسی موجودی از دستگاه اینترنت اشیا](./5-retail/lessons/2-check-stock-device/README.md) |
| ۲۱ | [مصرف‌کننده](./6-consumer/README.md) | شناخت گفتار با دستگاه اینترنت اشیا | نحوه شناخت گفتار از دستگاه اینترنت اشیا برای ساخت یک تایمر هوشمند را یاد بگیرید | [شناخت گفتار با دستگاه اینترنت اشیا](./6-consumer/lessons/1-speech-recognition/README.md) |
| ۲۲ | [مصرف‌کننده](./6-consumer/README.md) | درک زبان | نحوه درک جملات گفتاری به یک دستگاه اینترنت اشیا را بیاموزید | [درک زبان](./6-consumer/lessons/2-language-understanding/README.md) |
| ۲۳ | [مصرف‌کننده](./6-consumer/README.md) | تنظیم تایمر و ارائه بازخورد گفتاری | نحوه تنظیم تایمر روی دستگاه اینترنت اشیا و ارائه بازخورد گفتاری درباره زمان شروع و پایان تایمر را یاد بگیرید | [تنظیم تایمر و ارائه بازخورد گفتاری](./6-consumer/lessons/3-spoken-feedback/README.md) |
| ۲۴ | [مصرف‌کننده](./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` را اجرا کنید. وب‌سایت روی پورت ۳۰۰۰ روی لوکال‌هاست شما سرو می‌شود: `localhost:3000`.
می‌توانید این مستندات را به صورت آفلاین با استفاده از [Docsify](https://docsify.js.org/#/) اجرا کنید. این مخزن را فورک کرده، [Docsify را نصب کنید](https://docsify.js.org/#/quickstart) روی سیستم محلی خود و سپس در پوشه ریشه این مخزن دستور `docsify serve` را اجرا کنید. سایت روی پورت ۳۰۰۰ روی لوکال‌هاست شما در دسترس خواهد بود: `localhost:3000`.
## آزمون
از جامعه ممنونیم که آزمون تعاملی را میزبانی می‌کند که دانش شما را در هر فصل می‌سنجد. شما می‌توانید دانش خود را [اینجا](https://ff-quizzes.netlify.app/en/) بسنجید
از جامعه بخاطر میزبانی آزمون تعاملی که دانش شما را در هر فصل می‌سنجد تشکر می‌کنیم. دانش خود را [در اینجا](https://ff-quizzes.netlify.app/en/) امتحان کنید.
### PDF
اگر نیاز دارید، می‌توانید یک فایل 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
@ -154,60 +164,59 @@ npm run convert
### اسلایدها
برای برخی از دروس، مجموعه اسلاید در پوشه [slides](../../slides) موجود است.
برای برخی از دروس مجموعه اسلایدهایی در پوشه [slides](../../slides) وجود دارد.
## دروس دیگر
## برنامه‌های درسی دیگر
تیم ما برنامه‌های درسی دیگری نیز تولید می‌کند! ببینید:
تیم ما دروس دیگری نیز تولید می‌کند! نگاهی بیندازید به:
<!-- CO-OP TRANSLATOR OTHER COURSES START -->
### LangChain
[![LangChain4j برای مبتدیان](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 برای مبتدیان](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)
[![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 برای مبتدیان](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 برای مبتدیان](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)
[![عامل‌های هوش مصنوعی برای مبتدیان](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)
[![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)
[![هوش مصنوعی لبه برای مبتدی‌ها](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)
[![عامل‌های هوش مصنوعی برای مبتدی‌ها](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)
---
### سری هوش مصنوعی مولد
[![هوش مصنوعی مولد برای مبتدیان](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)
[![هوش مصنوعی مولد برای مبتدی‌ها](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)
[![هوش مصنوعی مولد (.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)
[![هوش مصنوعی مولد (جاوا)](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)
[![هوش مصنوعی مولد (جاوااسکریپت)](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)
[![هوش مصنوعی مولد (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)
[![هوش مصنوعی مولد (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)
---
### یادگیری پایه
[![یادگیری ماشین برای مبتدیان](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)
[![اینترنت اشیاء برای مبتدیان](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)
[![اینترنت اشیاء برای مبتدی‌ها](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/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)
### سری کمک‌برنامه (کاپیلت)
[![کاپیلت برای برنامه‌نویسی جفتی هوش مصنوعی](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.md) بیابید.
شما می‌توانید تمام نسبت‌ها برای تصاویر استفاده شده در این برنامه آموزشی را در صورت نیاز در [نسبت‌ها](./attributions.md) پیدا کنید.
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**سلب مسئولیت**:
این سند با استفاده از خدمات ترجمه ماشینی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است حاوی خطاها یا نادرستی‌هایی باشند. سند اصلی در زبان بومی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، توصیه می‌شود از ترجمه حرفه‌ای انسانی استفاده شود. ما مسئول هیچ گونه سوءتفاهم یا برداشت نادرستی که ناشی از استفاده از این ترجمه باشد، نمی‌باشیم.
این سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل اشتباهات یا نادقیق‌گی‌هایی باشند. سند اصلی به زبان بومی خود باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما مسئول هیچ گونه سو تفاهم یا سوء تعبیر ناشی از استفاده از این ترجمه نیستیم.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -26,7 +26,7 @@ Seeed Studios به‌طور سخاوتمندانه‌ای تمام سخت‌اف
**[IoT برای مبتدیان با Seeed و Microsoft - کیت شروع Raspberry Pi 4](https://www.seeedstudio.com/IoT-for-beginners-with-Seeed-and-Microsoft-Raspberry-Pi-Starter-Kit-p-5004.html)**
[![کیت سخت‌افزاری Raspberry Pi Terminal](../../translated_images/fa/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 Terminal](../../translated_images/fa/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": "ur"
},
"README.md": {
"original_hash": "3fcc056cd3837e33d2bdf79f9c359fcf",
"translation_date": "2026-01-30T01:15:33+00:00",
"original_hash": "accf69391fa4450eadbf492ca024cccf",
"translation_date": "2026-04-06T16:01:25+00:00",
"source_file": "README.md",
"language_code": "ur"
},

@ -1,6 +1,6 @@
# انٹرنیٹ آف تھنگز کا تعارف
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-1.2606670fa61ee904.webp)
> خاکہ [نیتیا نرسمہن](https://github.com/nitya) کی جانب سے۔ تصویر پر کلک کریں تاکہ بڑا ورژن دیکھ سکیں۔

@ -203,7 +203,7 @@ Python ورچوئل ماحول کو کنفیگر کریں اور CounterFit کے
ایپ چلنا شروع ہو جائے گی اور آپ کے ویب براؤزر میں کھل جائے گی:
![Counter Fit ایپ براؤزر میں چل رہی ہے](../../../../../translated_images/ur/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.png)
![Counter Fit ایپ براؤزر میں چل رہی ہے](../../../../../translated_images/ur/counterfit-first-run.433326358b669b31.webp)
یہ *Disconnected* کے طور پر نشان زد ہوگی، اور اوپر دائیں کونے میں ایل ای ڈی بند ہوگی۔
@ -224,7 +224,7 @@ Python ورچوئل ماحول کو کنفیگر کریں اور CounterFit کے
1. اس نئے ٹرمینل میں، پہلے کی طرح `app.py` فائل چلائیں۔ CounterFit کی اسٹیٹس **Connected** میں تبدیل ہو جائے گی اور ایل ای ڈی روشن ہو جائے گی۔
![Counter Fit کنیکٹڈ دکھا رہا ہے](../../../../../translated_images/ur/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.png)
![Counter Fit کنیکٹڈ دکھا رہا ہے](../../../../../translated_images/ur/counterfit-connected.ed30b46d8f79b092.webp)
> 💁 آپ اس کوڈ کو [code/virtual-device](../../../../../1-getting-started/lessons/1-introduction-to-iot/code/virtual-device) فولڈر میں تلاش کر سکتے ہیں۔

@ -1,6 +1,6 @@
# آئی او ٹی پر گہری نظر
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-2.324b0580d620c25e.webp)
> خاکہ از [نیتیا نرسمہن](https://github.com/nitya)۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -38,7 +38,7 @@
یہ ڈیوائسز فزیکل دنیا کے ساتھ تعامل کرتی ہیں، یا تو سینسرز کے ذریعے اپنے ارد گرد کے ماحول سے ڈیٹا اکٹھا کر کے یا آؤٹ پٹس یا ایکچیویٹرز کو کنٹرول کر کے فزیکل تبدیلیاں کر کے۔ اس کی ایک عام مثال ایک اسمارٹ تھرموسٹیٹ ہے - ایک ڈیوائس جس میں ایک درجہ حرارت سینسر، ایک ڈائل یا ٹچ اسکرین کے ذریعے مطلوبہ درجہ حرارت سیٹ کرنے کا ذریعہ، اور ایک ہیٹنگ یا کولنگ سسٹم سے کنکشن ہوتا ہے جو اس وقت آن ہو سکتا ہے جب سینسر کا پتہ لگایا گیا درجہ حرارت مطلوبہ حد سے باہر ہو۔
![ایک ڈایاگرام جو درجہ حرارت اور ڈائل کو آئی او ٹی ڈیوائس کے ان پٹس کے طور پر دکھاتا ہے، اور ہیٹر کے کنٹرول کو آؤٹ پٹ کے طور پر](../../../../../translated_images/ur/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.png)
![ایک ڈایاگرام جو درجہ حرارت اور ڈائل کو آئی او ٹی ڈیوائس کے ان پٹس کے طور پر دکھاتا ہے، اور ہیٹر کے کنٹرول کو آؤٹ پٹ کے طور پر](../../../../../translated_images/ur/basic-thermostat.a923217fd1f37e5a.webp)
آئی او ٹی ڈیوائسز کے طور پر کام کرنے والی چیزوں کی ایک وسیع رینج موجود ہے، جو مخصوص ہارڈویئر سے لے کر جو صرف ایک چیز کو سینس کرتا ہے، عام مقصد کے ڈیوائسز تک، حتیٰ کہ آپ کا اسمارٹ فون بھی! ایک اسمارٹ فون سینسرز کا استعمال کرتے ہوئے اپنے ارد گرد کی دنیا کا پتہ لگا سکتا ہے، اور ایکچیویٹرز کا استعمال کرتے ہوئے دنیا کے ساتھ تعامل کر سکتا ہے - مثال کے طور پر، جی پی ایس سینسر کا استعمال کرتے ہوئے آپ کی لوکیشن کا پتہ لگانا اور اسپیکر کا استعمال کرتے ہوئے آپ کو منزل تک نیویگیشن ہدایات دینا۔
@ -54,7 +54,7 @@
اسمارٹ تھرموسٹیٹ کی مثال میں، تھرموسٹیٹ گھر کے وائی فائی کا استعمال کرتے ہوئے کلاؤڈ میں چلنے والی کلاؤڈ سروس سے جڑے گا۔ یہ درجہ حرارت کا ڈیٹا اس کلاؤڈ سروس کو بھیجے گا، اور وہاں سے یہ کسی قسم کے ڈیٹا بیس میں لکھا جائے گا تاکہ گھر کا مالک فون ایپ کے ذریعے موجودہ اور پچھلے درجہ حرارت کو چیک کر سکے۔ کلاؤڈ میں موجود ایک اور سروس یہ جانتی ہو گی کہ گھر کے مالک کو کیا درجہ حرارت چاہیے، اور کلاؤڈ سروس کے ذریعے آئی او ٹی ڈیوائس کو پیغامات بھیجے گی تاکہ ہیٹنگ سسٹم کو آن یا آف کرنے کو کہا جا سکے۔
![ایک ڈایاگرام جو درجہ حرارت اور ڈائل کو آئی او ٹی ڈیوائس کے ان پٹس کے طور پر دکھاتا ہے، آئی او ٹی ڈیوائس کو کلاؤڈ کے ساتھ دو طرفہ کمیونیکیشن کے ساتھ، جو بدلے میں فون کے ساتھ دو طرفہ کمیونیکیشن رکھتا ہے، اور ہیٹر کے کنٹرول کو آؤٹ پٹ کے طور پر](../../../../../translated_images/ur/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.png)
![ایک ڈایاگرام جو درجہ حرارت اور ڈائل کو آئی او ٹی ڈیوائس کے ان پٹس کے طور پر دکھاتا ہے، آئی او ٹی ڈیوائس کو کلاؤڈ کے ساتھ دو طرفہ کمیونیکیشن کے ساتھ، جو بدلے میں فون کے ساتھ دو طرفہ کمیونیکیشن رکھتا ہے، اور ہیٹر کے کنٹرول کو آؤٹ پٹ کے طور پر](../../../../../translated_images/ur/mobile-controlled-thermostat.4a994010473d8d6a.webp)
ایک اور زیادہ اسمارٹ ورژن کلاؤڈ میں موجود اے آئی کا استعمال کر سکتا ہے جو دیگر سینسرز سے جڑے دیگر آئی او ٹی ڈیوائسز جیسے کہ قبضے کے سینسرز سے ڈیٹا استعمال کرتا ہے جو یہ پتہ لگاتے ہیں کہ کون سے کمرے استعمال ہو رہے ہیں، نیز موسم اور یہاں تک کہ آپ کے کیلنڈر جیسے ڈیٹا کا استعمال کرتے ہوئے اسمارٹ طریقے سے درجہ حرارت سیٹ کرنے کے فیصلے کرتا ہے۔ مثال کے طور پر، یہ آپ کی کیلنڈر سے پڑھ کر آپ کی غیر موجودگی میں ہیٹنگ بند کر سکتا ہے، یا کمرے کے استعمال کے مطابق کمرے بہ کمرے ہیٹنگ بند کر سکتا ہے، اور وقت کے ساتھ ڈیٹا سے سیکھ کر مزید درست ہوتا جاتا ہے۔
@ -94,7 +94,7 @@
> 💁 سی پی یوز پروگرامز پر عمل درآمد [فیچ-ڈیکوڈ-ایگزیکیوٹ سائیکل](https://wikipedia.org/wiki/Instruction_cycle) کا استعمال کرتے ہوئے کرتے ہیں۔ ہر گھڑی کے ٹِک کے لیے، سی پی یو میموری سے اگلی ہدایت کو حاصل کرے گا، اسے ڈیکوڈ کرے گا، پھر اس پر عمل کرے گا جیسے کہ دو نمبروں کو شامل کرنے کے لیے ایک ارتھمیٹک لاجک یونٹ (ALU) کا استعمال۔ کچھ عمل درآمد کو چلانے کے لیے متعدد ٹِکس کی ضرورت ہوگی، اس لیے اگلا سائیکل اس ہدایت کے مکمل ہونے کے بعد اگلے ٹِک پر چلے گا۔
![فیچ-ڈیکوڈ-ایگزیکیوٹ سائیکل دکھاتا ہے کہ فیچ پروگرام کو ریم میں محفوظ ہدایت سے لیتا ہے، پھر اسے سی پی یو پر ڈیکوڈ اور ایگزیکیوٹ کرتا ہے](../../../../../translated_images/ur/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.png)
![فیچ-ڈیکوڈ-ایگزیکیوٹ سائیکل دکھاتا ہے کہ فیچ پروگرام کو ریم میں محفوظ ہدایت سے لیتا ہے، پھر اسے سی پی یو پر ڈیکوڈ اور ایگزیکیوٹ کرتا ہے](../../../../../translated_images/ur/fetch-decode-execute.2fd6f150f6280392.webp)
مائیکرو کنٹرولرز کی گھڑی کی رفتار ڈیسک ٹاپ یا لیپ ٹاپ کمپیوٹرز، یا یہاں تک کہ زیادہ تر اسمارٹ فونز سے بھی کم ہوتی ہے۔ مثال کے طور پر، وائیو ٹرمینل میں ایک سی پی یو ہے جو 120MHz یا 120,000,000 سائیکلز فی سیکنڈ پر چلتا ہے۔
@ -166,7 +166,7 @@ Arduino بورڈز کو C یا C++ میں کوڈ کیا جاتا ہے۔ C/C++ ک
آپ اپنے `setup` کوڈ کو `setup` فنکشن میں لکھیں گے، جیسے WiFi اور کلاؤڈ سروسز سے کنیکٹ کرنا یا ان پٹ اور آؤٹ پٹ کے لیے پنز کو انیشیلائز کرنا۔ آپ کا `loop` کوڈ پھر پروسیسنگ کوڈ پر مشتمل ہوگا، جیسے سینسر سے پڑھنا اور ویلیو کو کلاؤڈ پر بھیجنا۔ آپ عام طور پر ہر لوپ میں ایک ڈیلے شامل کریں گے، مثال کے طور پر، اگر آپ چاہتے ہیں کہ سینسر ڈیٹا ہر 10 سیکنڈ میں بھیجا جائے تو آپ لوپ کے آخر میں 10 سیکنڈ کا ڈیلے شامل کریں گے تاکہ مائیکرو کنٹرولر پاور بچا سکے، پھر 10 سیکنڈ بعد دوبارہ لوپ چلائے۔
![Arduino اسکیچ پہلے `setup` چلاتا ہے، پھر `loop` کو بار بار چلاتا ہے](../../../../../translated_images/ur/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.png)
![Arduino اسکیچ پہلے `setup` چلاتا ہے، پھر `loop` کو بار بار چلاتا ہے](../../../../../translated_images/ur/arduino-sketch.79590cb837ff7a7c.webp)
✅ اس پروگرام آرکیٹیکچر کو *ایونٹ لوپ* یا *میسج لوپ* کہا جاتا ہے۔ بہت سی ایپلیکیشنز اس کو اندرونی طور پر استعمال کرتی ہیں اور یہ زیادہ تر ڈیسک ٹاپ ایپلیکیشنز کے لیے معیاری ہے جو OS جیسے Windows، macOS یا Linux پر چلتی ہیں۔ `loop` یوزر انٹرفیس کے اجزاء جیسے بٹن یا ڈیوائسز جیسے کی بورڈ سے میسجز سنتا ہے اور ان کا جواب دیتا ہے۔ آپ اس کے بارے میں مزید [ایونٹ لوپ پر ویکیپیڈیا کے آرٹیکل](https://wikipedia.org/wiki/Event_loop) میں پڑھ سکتے ہیں۔

@ -1,6 +1,6 @@
# سینسرز اور ایکچوایٹرز کے ذریعے جسمانی دنیا کے ساتھ تعامل کریں
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-3.cc3b7b4cd646de59.webp)
> خاکہ [نیتیا نرسمہن](https://github.com/nitya) کی طرف سے۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -92,7 +92,7 @@ IoT ڈیوائسز ڈیجیٹل ہوتی ہیں - وہ اینالاگ قدروں
سب سے آسان ڈیجیٹل سینسر ایک بٹن یا سوئچ ہے۔ یہ ایک سینسر ہے جس کی دو حالتیں ہیں، آن یا آف۔
![ایک بٹن کو 5 وولٹ بھیجے جا رہے ہیں۔ جب دبایا نہیں جاتا تو 0 وولٹ واپس آتے ہیں، جب دبایا جاتا ہے تو 5 وولٹ واپس آتے ہیں](../../../../../translated_images/ur/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.png)
![ایک بٹن کو 5 وولٹ بھیجے جا رہے ہیں۔ جب دبایا نہیں جاتا تو 0 وولٹ واپس آتے ہیں، جب دبایا جاتا ہے تو 5 وولٹ واپس آتے ہیں](../../../../../translated_images/ur/button.eadb560b77ac45e5.webp)
IoT ڈیوائسز کے پنز جیسے GPIO پنز اس سگنل کو براہ راست 0 یا 1 کے طور پر ماپ سکتے ہیں۔ اگر بھیجا گیا وولٹیج واپس آنے والے وولٹیج کے برابر ہے، تو پڑھی گئی قدر 1 ہے، ورنہ پڑھی گئی قدر 0 ہے۔ سگنل کو تبدیل کرنے کی ضرورت نہیں ہے، یہ صرف 1 یا 0 ہو سکتا ہے۔
@ -125,12 +125,12 @@ IoT ڈیوائسز کے پنز جیسے GPIO پنز اس سگنل کو براہ
اپنے IoT ڈیوائس میں ایکچوایٹر شامل کرنے کے لیے نیچے دی گئی متعلقہ گائیڈ پر عمل کریں، جو سینسر کے ذریعے کنٹرول کیا جائے گا، تاکہ IoT نائٹ لائٹ بنائی جا سکے۔ یہ لائٹ سینسر سے روشنی کی سطحوں کو جمع کرے گا، اور ایکچوایٹر کے طور پر LED کا استعمال کرے گا تاکہ جب پتہ لگائی گئی روشنی کی سطح بہت کم ہو تو روشنی خارج کرے۔
![اسائنمنٹ کا فلو چارٹ، روشنی کی سطحوں کو پڑھنے اور چیک کرنے، اور LED کو کنٹرول کرنے کو دکھا رہا ہے](../../../../../translated_images/ur/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.png)
![اسائنمنٹ کا فلو چارٹ، روشنی کی سطحوں کو پڑھنے اور چیک کرنے، اور LED کو کنٹرول کرنے کو دکھا رہا ہے](../../../../../translated_images/ur/assignment-1-flow.7552a51acb1a5ec8.webp)
* [Arduino - Wio Terminal](wio-terminal-actuator.md)
* [سنگل بورڈ کمپیوٹر - Raspberry Pi](pi-actuator.md)
* [سنگل بورڈ کمپیوٹر - ورچوئل
![کم وولٹیج پر مدھم روشنی اور زیادہ وولٹیج پر روشن روشنی](../../../../../translated_images/ur/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.png)
![کم وولٹیج پر مدھم روشنی اور زیادہ وولٹیج پر روشن روشنی](../../../../../translated_images/ur/dimmable-light.9ceffeb195dec1a8.webp)
جیسے سینسرز کے ساتھ ہوتا ہے، اصل IoT ڈیوائس ڈیجیٹل سگنلز پر کام کرتی ہے، نہ کہ اینالاگ پر۔ اس کا مطلب ہے کہ اینالاگ سگنل بھیجنے کے لیے، IoT ڈیوائس کو ڈیجیٹل سے اینالاگ کنورٹر (DAC) کی ضرورت ہوتی ہے، یا تو براہ راست IoT ڈیوائس پر یا کنیکٹر بورڈ پر۔ یہ IoT ڈیوائس کے 0s اور 1s کو اینالاگ وولٹیج میں تبدیل کرے گا جسے ایکچوایٹر استعمال کر سکتا ہے۔
@ -177,7 +177,7 @@ IoT ڈیوائس سے ڈیجیٹل سگنلز کو اینالاگ سگنل می
ایک سادہ ڈیجیٹل ایکچوایٹر LED ہے۔ جب ایک ڈیوائس 1 کا ڈیجیٹل سگنل بھیجتی ہے، تو ایک ہائی وولٹیج بھیجا جاتا ہے جو LED کو روشن کرتا ہے۔ جب 0 کا ڈیجیٹل سگنل بھیجا جاتا ہے، تو وولٹیج 0V پر گر جاتا ہے اور LED بند ہو جاتا ہے۔
![ایک LED 0 وولٹ پر بند اور 5V پر روشن ہوتا ہے](../../../../../translated_images/ur/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.png)
![ایک LED 0 وولٹ پر بند اور 5V پر روشن ہوتا ہے](../../../../../translated_images/ur/led.ec6d94f66676a174.webp)
✅ آپ کون سے دوسرے سادہ 2-اسٹیٹ ایکچوایٹرز کے بارے میں سوچ سکتے ہیں؟ ایک مثال سولینائیڈ ہے، جو ایک الیکٹرو میگنیٹ ہے جو دروازے کی چٹخنی کو حرکت دے کر دروازے کو لاک/انلاک کرنے جیسے کام انجام دے سکتا ہے۔

@ -26,7 +26,7 @@ Otherwise
ایل ای ڈی کو جوڑیں۔
![ایک گروو ایل ای ڈی](../../../../../translated_images/ur/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.png)
![ایک گروو ایل ای ڈی](../../../../../translated_images/ur/grove-led.6c853be93f473cf2.webp)
1. اپنی پسندیدہ ایل ای ڈی منتخب کریں اور اس کے پاؤں ایل ای ڈی ماڈیول کے دو سوراخوں میں ڈالیں۔
@ -40,7 +40,7 @@ Otherwise
1. راسپبیری پائی کو بند حالت میں رکھتے ہوئے، گروو کیبل کے دوسرے سرے کو گروو بیس ہیٹ پر **D5** نشان والے ڈیجیٹل ساکٹ سے جوڑیں۔ یہ ساکٹ جی پی آئی او پنز کے ساتھ والی قطار میں بائیں سے دوسرا ہے۔
![گروو ایل ای ڈی D5 ساکٹ سے جڑی ہوئی](../../../../../translated_images/ur/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.png)
![گروو ایل ای ڈی D5 ساکٹ سے جڑی ہوئی](../../../../../translated_images/ur/pi-led.97f1d474981dc35d.webp)
## رات کی روشنی کو پروگرام کریں

@ -16,13 +16,13 @@ Grove روشنی سینسر، جو روشنی کی سطح کا پتہ لگانے
روشنی سینسر کو جوڑیں۔
![ایک Grove روشنی سینسر](../../../../../translated_images/ur/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.png)
![ایک Grove روشنی سینسر](../../../../../translated_images/ur/grove-light-sensor.b8127b7c434e632d.webp)
1. Grove کیبل کے ایک سرے کو روشنی سینسر ماڈیول کے ساکٹ میں ڈالیں۔ یہ صرف ایک ہی سمت میں جائے گا۔
1. راسپبیری پائی کو بند حالت میں رکھتے ہوئے، Grove کیبل کے دوسرے سرے کو Grove Base hat پر موجود اینالاگ ساکٹ **A0** میں جوڑیں۔ یہ ساکٹ GPIO پنز کے ساتھ والی قطار میں دائیں سے دوسرا ہے۔
![Grove روشنی سینسر ساکٹ A0 سے منسلک](../../../../../translated_images/ur/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.png)
![Grove روشنی سینسر ساکٹ A0 سے منسلک](../../../../../translated_images/ur/pi-light-sensor.66cc1e31fa48cd7d.webp)
## روشنی سینسر کو پروگرام کریں

@ -36,11 +36,11 @@ CounterFit ایپ میں LED شامل کریں۔
1. **Add** بٹن کو منتخب کریں تاکہ Pin 5 پر LED بنایا جا سکے۔
![LED کی سیٹنگز](../../../../../translated_images/ur/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.png)
![LED کی سیٹنگز](../../../../../translated_images/ur/counterfit-create-led.ba9db1c9b8c622a6.webp)
LED بن جائے گا اور ایکچیویٹرز کی فہرست میں ظاہر ہوگا۔
![بنایا گیا LED](../../../../../translated_images/ur/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.png)
![بنایا گیا LED](../../../../../translated_images/ur/counterfit-led.c0ab02de6d256ad8.webp)
ایک بار جب LED بن جائے، تو آپ *Color* پکّر کا استعمال کرتے ہوئے اس کا رنگ تبدیل کر سکتے ہیں۔ رنگ منتخب کرنے کے بعد **Set** بٹن کو منتخب کریں تاکہ رنگ تبدیل ہو جائے۔

@ -28,11 +28,11 @@ CounterFit ایپ میں لائٹ سینسر شامل کریں۔
1. **Add** بٹن منتخب کریں تاکہ Pin 0 پر لائٹ سینسر بنایا جا سکے۔
![لائٹ سینسر کی سیٹنگز](../../../../../translated_images/ur/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.png)
![لائٹ سینسر کی سیٹنگز](../../../../../translated_images/ur/counterfit-create-light-sensor.9f36a5e0d4458d8d.webp)
لائٹ سینسر بنایا جائے گا اور سینسرز کی فہرست میں ظاہر ہوگا۔
![لائٹ سینسر بنایا گیا](../../../../../translated_images/ur/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.png)
![لائٹ سینسر بنایا گیا](../../../../../translated_images/ur/counterfit-light-sensor.5d0f5584df56b90f.webp)
## لائٹ سینسر پروگرام کریں

@ -26,7 +26,7 @@ Grove LED ایک ماڈیول کے طور پر آتا ہے جس میں مختل
LED کو جوڑیں۔
![ایک Grove LED](../../../../../translated_images/ur/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.png)
![ایک Grove LED](../../../../../translated_images/ur/grove-led.6c853be93f473cf2.webp)
1. اپنی پسندیدہ LED منتخب کریں اور اس کے ٹانگوں کو LED ماڈیول کے دو سوراخوں میں ڈالیں۔

@ -1,6 +1,6 @@
# اپنے ڈیوائس کو انٹرنیٹ سے کنیکٹ کریں
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-4.7344e074ea68fa54.webp)
> خاکہ [نیتیا نرسمہن](https://github.com/nitya) کی طرف سے۔ تصویر پر کلک کریں تاکہ بڑا ورژن دیکھ سکیں۔
@ -47,7 +47,7 @@ MQTT IoT ڈیوائسز کے لیے سب سے زیادہ مقبول کمیونی
MQTT میں ایک بروکر اور متعدد کلائنٹس ہوتے ہیں۔ تمام کلائنٹس بروکر سے جڑتے ہیں، اور بروکر پیغامات کو متعلقہ کلائنٹس تک پہنچاتا ہے۔ پیغامات کو نامزد موضوعات کے ذریعے پہنچایا جاتا ہے، بجائے اس کے کہ انہیں براہ راست کسی کلائنٹ کو بھیجا جائے۔ ایک کلائنٹ کسی موضوع پر پبلش کر سکتا ہے، اور جو کلائنٹس اس موضوع کو سبسکرائب کرتے ہیں وہ پیغام وصول کریں گے۔
![IoT ڈیوائس /telemetry موضوع پر ٹیلیمیٹری پبلش کر رہا ہے، اور کلاؤڈ سروس اس موضوع کو سبسکرائب کر رہی ہے](../../../../../translated_images/ur/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.png)
![IoT ڈیوائس /telemetry موضوع پر ٹیلیمیٹری پبلش کر رہا ہے، اور کلاؤڈ سروس اس موضوع کو سبسکرائب کر رہی ہے](../../../../../translated_images/ur/mqtt.cbf7f21d9adc3e17.webp)
✅ تحقیق کریں۔ اگر آپ کے پاس بہت زیادہ IoT ڈیوائسز ہوں، تو آپ کیسے یقینی بنائیں گے کہ آپ کا MQTT بروکر تمام پیغامات کو سنبھال سکتا ہے؟
@ -69,7 +69,7 @@ MQTT میں ایک بروکر اور متعدد کلائنٹس ہوتے ہیں۔
> 💁 یہ ٹیسٹ بروکر عوامی اور غیر محفوظ ہے۔ جو کچھ آپ پبلش کرتے ہیں اسے کوئی بھی سن سکتا ہے، لہذا اسے کسی ایسے ڈیٹا کے ساتھ استعمال نہیں کیا جانا چاہیے جسے نجی رکھنا ضروری ہو۔
![اسائنمنٹ کا فلو چارٹ، روشنی کی سطح کو پڑھنے اور چیک کرنے، اور LED کو کنٹرول کرنے کو دکھا رہا ہے](../../../../../translated_images/ur/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.png)
![اسائنمنٹ کا فلو چارٹ، روشنی کی سطح کو پڑھنے اور چیک کرنے، اور LED کو کنٹرول کرنے کو دکھا رہا ہے](../../../../../translated_images/ur/assignment-1-internet-flow.3256feab5f052fd2.webp)
اپنے ڈیوائس کو MQTT بروکر سے کنیکٹ کرنے کے لیے نیچے دیے گئے متعلقہ مرحلے پر عمل کریں:
@ -342,7 +342,7 @@ Python ورچوئل ماحول کو ترتیب دیں اور MQTT pip پیکجز
IoT ڈیوائس ڈیزائنرز کو یہ بھی غور کرنا چاہیے کہ آیا IoT ڈیوائس انٹرنیٹ آؤٹج یا مقام کی وجہ سے سگنل کے نقصان کے دوران استعمال کیا جا سکتا ہے۔ ایک سمارٹ تھرموسٹیٹ کو کچھ محدود فیصلے کرنے کے قابل ہونا چاہیے تاکہ اگر یہ کلاؤڈ کو ٹیلیمیٹری بھیجنے کے قابل نہ ہو تو ہیٹنگ کو کنٹرول کر سکے۔
[![یہ فراری خراب ہو گئی کیونکہ کسی نے اسے زیر زمین اپ گریڈ کرنے کی کوشش کی جہاں کوئی سیل ریسیپشن نہیں تھا](../../../../../translated_images/ur/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.png)](https://twitter.com/internetofshit/status/1315736960082808832)
[![یہ فراری خراب ہو گئی کیونکہ کسی نے اسے زیر زمین اپ گریڈ کرنے کی کوشش کی جہاں کوئی سیل ریسیپشن نہیں تھا](../../../../../translated_images/ur/bricked-car.dc38f8efadc6c59d.webp)](https://twitter.com/internetofshit/status/1315736960082808832)
MQTT کے لیے کنیکٹیویٹی کے نقصان کو ہینڈل کرنے کے لیے، ڈیوائس اور سرور کوڈ کو یہ یقینی بنانے کے لیے ذمہ دار ہونا پڑے گا کہ اگر پیغام کی ترسیل ضروری ہو تو وہ یقینی بنائی جائے، مثال کے طور پر تمام بھیجے گئے پیغامات کے لیے جواب میں اضافی پیغامات کی ضرورت ہو تاکہ اگر جواب نہ ملے تو وہ دستی طور پر قطار میں رکھے جائیں اور بعد میں دوبارہ بھیجے جائیں۔
@ -350,7 +350,7 @@ MQTT کے لیے کنیکٹیویٹی کے نقصان کو ہینڈل کرنے
کمانڈز وہ پیغامات ہیں جو کلاؤڈ سے ڈیوائس کو بھیجے جاتے ہیں تاکہ اسے کچھ کرنے کی ہدایت دی جا سکے۔ زیادہ تر وقت یہ کسی ایکچوئیٹر کے ذریعے کچھ آؤٹپٹ دینے سے متعلق ہوتا ہے، لیکن یہ خود ڈیوائس کے لیے بھی ہدایت ہو سکتی ہے، جیسے کہ ریبوٹ کرنا، یا اضافی ٹیلیمیٹری اکٹھا کرنا اور اسے کمانڈ کے جواب کے طور پر واپس بھیجنا۔
![ایک انٹرنیٹ سے جڑا ہوا تھرموسٹیٹ جو ہیٹنگ آن کرنے کے لیے کمانڈ وصول کر رہا ہے](../../../../../translated_images/ur/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.png)
![ایک انٹرنیٹ سے جڑا ہوا تھرموسٹیٹ جو ہیٹنگ آن کرنے کے لیے کمانڈ وصول کر رہا ہے](../../../../../translated_images/ur/commands.d6c06bbbb3a02cce.webp)
ایک تھرموسٹیٹ کلاؤڈ سے کمانڈ وصول کر سکتا ہے تاکہ ہیٹنگ کو آن کرے۔ تمام سینسرز سے ٹیلیمیٹری ڈیٹا کی بنیاد پر، اگر کلاؤڈ سروس نے فیصلہ کیا ہے کہ ہیٹنگ آن ہونی چاہیے، تو یہ متعلقہ کمانڈ بھیجتا ہے۔

@ -1,6 +1,6 @@
# پودوں کی افزائش کی پیشن گوئی IoT کے ذریعے
![اس سبق کا ایک خاکہ](../../../../../translated_images/ur/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.jpg)
![اس سبق کا ایک خاکہ](../../../../../translated_images/ur/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/ur/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.png)
![GDD = 25 + 12 تقسیم 2، پھر نتیجے سے 10 کو منفی کریں، نتیجہ 8.5 ہوگا](../../../../../translated_images/ur/gdd-calculation-strawberries.59f57db94b22adb8.webp)
* 25 + 12 = 37
* 37 / 2 = 18.5

@ -33,7 +33,7 @@
جے یوپیٹر شروع ہوگا اور نوٹ بک کو آپ کے براؤزر میں کھولے گا۔ نوٹ بک میں موجود ہدایات پر عمل کریں تاکہ ماپے گئے درجہ حرارت کو بصری بنایا جا سکے اور بڑھتے ہوئے ڈگری دنوں کا حساب لگایا جا سکے۔
![جے یوپیٹر نوٹ بک](../../../../../translated_images/ur/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.png)
![جے یوپیٹر نوٹ بک](../../../../../translated_images/ur/gdd-jupyter-notebook.c5b52cf21094f158.webp)
## معیار

@ -16,7 +16,7 @@
درجہ حرارت سینسر کو جوڑیں
![گروو درجہ حرارت سینسر](../../../../../translated_images/ur/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.png)
![گروو درجہ حرارت سینسر](../../../../../translated_images/ur/grove-dht11.07f8eafceee17004.webp)
1. گروو کیبل کے ایک سرے کو نمی اور درجہ حرارت سینسر کے ساکٹ میں ڈالیں۔ یہ صرف ایک ہی سمت میں جائے گا۔

@ -38,11 +38,11 @@ CounterFit ایپ میں نمی اور درجہ حرارت سینسرز شامل
1. **Add** بٹن منتخب کریں تاکہ Pin 5 پر نمی سینسر بنایا جا سکے۔
![نمی سینسر کی ترتیبات](../../../../../translated_images/ur/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.png)
![نمی سینسر کی ترتیبات](../../../../../translated_images/ur/counterfit-create-humidity-sensor.2750e27b6f30e09c.webp)
نمی سینسر بنایا جائے گا اور سینسرز کی فہرست میں ظاہر ہوگا۔
![نمی سینسر بنایا گیا](../../../../../translated_images/ur/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.png)
![نمی سینسر بنایا گیا](../../../../../translated_images/ur/counterfit-humidity-sensor.7b12f7f339e430cb.webp)
1. درجہ حرارت سینسر بنائیں:
@ -54,11 +54,11 @@ CounterFit ایپ میں نمی اور درجہ حرارت سینسرز شامل
1. **Add** بٹن منتخب کریں تاکہ Pin 6 پر درجہ حرارت سینسر بنایا جا سکے۔
![درجہ حرارت سینسر کی ترتیبات](../../../../../translated_images/ur/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.png)
![درجہ حرارت سینسر کی ترتیبات](../../../../../translated_images/ur/counterfit-create-temperature-sensor.199350ed34f7343d.webp)
درجہ حرارت سینسر بنایا جائے گا اور سینسرز کی فہرست میں ظاہر ہوگا۔
![درجہ حرارت سینسر بنایا گیا](../../../../../translated_images/ur/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.png)
![درجہ حرارت سینسر بنایا گیا](../../../../../translated_images/ur/counterfit-temperature-sensor.f0560236c96a9016.webp)
## درجہ حرارت سینسر ایپ پروگرام کریں

@ -18,7 +18,7 @@
درجہ حرارت سینسر کو جوڑیں۔
![گروو درجہ حرارت سینسر](../../../../../translated_images/ur/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.png)
![گروو درجہ حرارت سینسر](../../../../../translated_images/ur/grove-dht11.07f8eafceee17004.webp)
1. گروو کیبل کے ایک سرے کو نمی اور درجہ حرارت سینسر کے ساکٹ میں ڈالیں۔ یہ صرف ایک ہی سمت میں جائے گا۔

@ -13,7 +13,7 @@ I²C بس میں 2 اہم وائرز کے ساتھ 2 پاور وائرز شام
| VCC | وولٹیج کامن کلیکٹر | ڈیوائسز کے لیے پاور سپلائی۔ یہ SDA اور SCL وائرز سے جڑی ہوتی ہے تاکہ پل-اپ ریزسٹر کے ذریعے ان کو پاور فراہم کرے، جو سگنل کو اس وقت بند کر دیتا ہے جب کوئی ڈیوائس کنٹرولر نہ ہو۔ |
| GND | گراؤنڈ | یہ الیکٹریکل سرکٹ کے لیے ایک کامن گراؤنڈ فراہم کرتی ہے۔ |
![I2C بس جس میں 3 ڈیوائسز SDA اور SCL وائرز سے جڑی ہوئی ہیں، اور ایک کامن گراؤنڈ وائر شیئر کر رہی ہیں](../../../../../translated_images/ur/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.png)
![I2C بس جس میں 3 ڈیوائسز SDA اور SCL وائرز سے جڑی ہوئی ہیں، اور ایک کامن گراؤنڈ وائر شیئر کر رہی ہیں](../../../../../translated_images/ur/i2c.83da845dde02256b.webp)
ڈیٹا بھیجنے کے لیے، ایک ڈیوائس اسٹارٹ کنڈیشن جاری کرے گی تاکہ ظاہر ہو کہ یہ ڈیٹا بھیجنے کے لیے تیار ہے۔ یہ پھر کنٹرولر بن جائے گی۔ کنٹرولر اس ڈیوائس کا ایڈریس بھیجے گی جس کے ساتھ یہ بات چیت کرنا چاہتی ہے، اور یہ بھی بتائے گی کہ یہ ڈیٹا پڑھنا چاہتی ہے یا لکھنا۔ ڈیٹا منتقل ہونے کے بعد، کنٹرولر اسٹاپ کنڈیشن جاری کرے گی تاکہ ظاہر ہو کہ یہ ختم ہو چکا ہے۔ اس کے بعد کوئی اور ڈیوائس کنٹرولر بن سکتی ہے اور ڈیٹا بھیج یا وصول کر سکتی ہے۔
<سپ>

@ -20,7 +20,7 @@
وزنی مٹی کی نمی کا حساب درج ذیل فارمولے سے لگایا جاتا ہے:
![مٹی کی نمی % = گیلی مٹی کا وزن - خشک مٹی کا وزن، تقسیم بر خشک مٹی کا وزن، ضرب 100](../../../../../translated_images/ur/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.png)
![مٹی کی نمی % = گیلی مٹی کا وزن - خشک مٹی کا وزن، تقسیم بر خشک مٹی کا وزن، ضرب 100](../../../../../translated_images/ur/gsm-calculation.6da38c6201eec14e.webp)
* W
- گیلی مٹی کا وزن
@ -29,7 +29,7 @@
مثال کے طور پر، فرض کریں کہ آپ کے پاس ایک مٹی کا نمونہ ہے جس کا وزن 212g گیلا اور 197g خشک ہے۔
![فارمولے میں بھرا ہوا حساب](../../../../../translated_images/ur/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.png)
![فارمولے میں بھرا ہوا حساب](../../../../../translated_images/ur/gsm-calculation-example.99f9803b4f29e976.webp)
* W = 212g
* W = 197g

@ -34,11 +34,11 @@ CounterFit ایپ میں مٹی نمی سینسر شامل کریں۔
1. **Add** بٹن کو منتخب کریں تاکہ Pin 0 پر *Soil Moisture* سینسر بنایا جا سکے۔
![مٹی نمی سینسر کی سیٹنگز](../../../../../translated_images/ur/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.png)
![مٹی نمی سینسر کی سیٹنگز](../../../../../translated_images/ur/counterfit-create-soil-moisture-sensor.35266135a5e0ae68.webp)
مٹی نمی سینسر بنایا جائے گا اور سینسرز کی فہرست میں ظاہر ہوگا۔
![مٹی نمی سینسر بنایا گیا](../../../../../translated_images/ur/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.png)
![مٹی نمی سینسر بنایا گیا](../../../../../translated_images/ur/counterfit-soil-moisture-sensor.81742b2de0e9de60.webp)
## مٹی نمی سینسر ایپ پروگرام کریں

@ -18,7 +18,7 @@ Grove soil moisture sensor کو Wio Terminal کے قابل ترتیب اینال
مٹی کی نمی کے سینسر کو جوڑیں۔
![ایک grove soil moisture sensor](../../../../../translated_images/ur/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.png)
![ایک grove soil moisture sensor](../../../../../translated_images/ur/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78b.webp)
1. Grove کیبل کے ایک سرے کو مٹی کی نمی کے سینسر کے ساکٹ میں ڈالیں۔ یہ صرف ایک ہی سمت میں جائے گا۔

@ -1,6 +1,6 @@
# خودکار پودوں کو پانی دینا
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-7.30b5f577d3cb8e03.webp)
> خاکہ نگاری: [نیتیا نرسمہن](https://github.com/nitya)۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -32,7 +32,7 @@ IoT ڈیوائسز کم وولٹیج استعمال کرتی ہیں۔ یہ سی
اس مسئلے کا حل یہ ہے کہ پمپ کو ایک بیرونی پاور سپلائی سے جوڑا جائے، اور ایک ایکچوئیٹر کے ذریعے پمپ کو آن کیا جائے، بالکل اسی طرح جیسے آپ ایک لائٹ کو آن کرتے ہیں۔ آپ کی انگلی کے ذریعے سوئچ کو پلٹنے کے لیے تھوڑی سی توانائی درکار ہوتی ہے، اور یہ لائٹ کو مین بجلی سے جوڑ دیتا ہے جو 110v/240v پر چلتی ہے۔
![ایک لائٹ سوئچ لائٹ کو آن کرنے کے لیے پاور فراہم کرتا ہے](../../../../../translated_images/ur/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.png)
![ایک لائٹ سوئچ لائٹ کو آن کرنے کے لیے پاور فراہم کرتا ہے](../../../../../translated_images/ur/light-switch.760317ad6ab8bd6d.webp)
> 🎓 [مینز بجلی](https://wikipedia.org/wiki/Mains_electricity) وہ بجلی ہے جو گھروں اور کاروباروں کو قومی انفراسٹرکچر کے ذریعے فراہم کی جاتی ہے۔
@ -72,7 +72,7 @@ IoT ڈیوائسز کم وولٹیج استعمال کرتی ہیں۔ یہ سی
الیکٹرو میگنیٹ کو لیور کو کھینچنے اور فعال کرنے کے لیے زیادہ پاور کی ضرورت نہیں ہوتی، اسے 3.3V یا 5V آؤٹ پٹ کے ذریعے IoT ڈیوائس سے کنٹرول کیا جا سکتا ہے۔ آؤٹ پٹ سرکٹ زیادہ پاور لے جا سکتا ہے، ریلے پر منحصر ہے، بشمول مینز وولٹیج یا صنعتی استعمال کے لیے اس سے بھی زیادہ پاور لیولز۔ اس طرح ایک IoT ڈیوائس ایک آبپاشی کے نظام کو کنٹرول کر سکتی ہے، چاہے وہ ایک پودے کے لیے چھوٹا پمپ ہو یا ایک بڑے تجارتی فارم کے لیے ایک وسیع صنعتی نظام۔
![ایک گروو ریلے جس میں کنٹرول سرکٹ، آؤٹ پٹ سرکٹ اور ریلے لیبل کیے گئے ہیں](../../../../../translated_images/ur/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.png)
![ایک گروو ریلے جس میں کنٹرول سرکٹ، آؤٹ پٹ سرکٹ اور ریلے لیبل کیے گئے ہیں](../../../../../translated_images/ur/grove-relay-labelled.293e068f5c3c2a19.webp)
اوپر دی گئی تصویر میں ایک گروو ریلے دکھایا گیا ہے۔ کنٹرول سرکٹ IoT ڈیوائس سے جڑتا ہے اور 3.3V یا 5V کا استعمال کرتے ہوئے ریلے کو آن یا آف کرتا ہے۔ آؤٹ پٹ سرکٹ میں دو ٹرمینلز ہیں، جن میں سے کوئی بھی پاور یا گراؤنڈ ہو سکتا ہے۔ آؤٹ پٹ سرکٹ 250V تک 10A کو ہینڈل کر سکتا ہے، جو مختلف مینز پاورڈ ڈیوائسز کے لیے کافی ہے۔ آپ ایسے ریلے بھی حاصل کر سکتے ہیں جو اس سے بھی زیادہ پاور لیولز کو ہینڈل کر سکتے ہیں۔

@ -18,13 +18,13 @@ Grove ریلے کو راسپبیری پائی سے جوڑا جا سکتا ہے۔
ریلے کو جوڑیں۔
![ایک Grove ریلے](../../../../../translated_images/ur/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.png)
![ایک Grove ریلے](../../../../../translated_images/ur/grove-relay.d426958ca210fbd0.webp)
1. Grove کیبل کے ایک سرے کو ریلے کے ساکٹ میں ڈالیں۔ یہ صرف ایک ہی سمت میں جائے گا۔
1. راسپبیری پائی کو بند حالت میں رکھتے ہوئے، Grove کیبل کے دوسرے سرے کو Grove Base Hat پر **D5** کے نشان والے ڈیجیٹل ساکٹ سے جوڑیں جو پائی سے منسلک ہے۔ یہ ساکٹ GPIO پنز کے ساتھ والی ساکٹوں کی قطار میں بائیں طرف سے دوسرا ہے۔ مٹی کی نمی کے سینسر کو **A0** ساکٹ سے جڑا رہنے دیں۔
![Grove ریلے D5 ساکٹ سے جڑا ہوا، اور مٹی کی نمی کا سینسر A0 ساکٹ سے جڑا ہوا](../../../../../translated_images/ur/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.png)
![Grove ریلے D5 ساکٹ سے جڑا ہوا، اور مٹی کی نمی کا سینسر A0 ساکٹ سے جڑا ہوا](../../../../../translated_images/ur/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e.webp)
1. مٹی کی نمی کے سینسر کو مٹی میں ڈالیں، اگر یہ پچھلے سبق سے پہلے ہی نہیں ڈالا گیا ہے۔

@ -28,11 +28,11 @@ CounterFit ایپ میں ریلے شامل کریں۔
1. **Add** بٹن کو منتخب کریں تاکہ Pin 5 پر ریلے بنایا جا سکے۔
![ریلے کی سیٹنگز](../../../../../translated_images/ur/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.png)
![ریلے کی سیٹنگز](../../../../../translated_images/ur/counterfit-create-relay.fa7c40fd0f2f6afc.webp)
ریلے بنایا جائے گا اور ایکچوئیٹرز کی فہرست میں ظاہر ہوگا۔
![ریلے بنایا گیا](../../../../../translated_images/ur/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.png)
![ریلے بنایا گیا](../../../../../translated_images/ur/counterfit-relay.bbf74c1dbdc8b9ac.webp)
## ریلے کو پروگرام کریں

@ -1,6 +1,6 @@
# اپنے پودے کو کلاؤڈ پر منتقل کریں
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-8.3f21f3c11159e6a0.webp)
> خاکہ از [نیتیا نرسمہن](https://github.com/nitya)۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -46,8 +46,8 @@
کلاؤڈ کو اکثر مذاق میں 'کسی اور کا کمپیوٹر' کہا جاتا ہے۔ بنیادی خیال سادہ تھا - کمپیوٹر خریدنے کے بجائے، آپ کسی اور کا کمپیوٹر کرائے پر لیں۔ کوئی اور، یعنی کلاؤڈ کمپیوٹنگ فراہم کنندہ، بڑے ڈیٹا سینٹرز کا انتظام کرے گا۔ وہ ہارڈویئر خریدنے اور انسٹال کرنے، بجلی اور کولنگ کا انتظام کرنے، نیٹ ورکنگ، عمارت کی حفاظت، ہارڈویئر اور سافٹ ویئر اپ ڈیٹس، سب کچھ سنبھالیں گے۔ بطور صارف، آپ کو صرف ضرورت کے مطابق کمپیوٹر کرائے پر لینے ہوں گے، جب مانگ بڑھے تو زیادہ کرائے پر لیں، اور جب مانگ کم ہو تو کم کرائے پر لیں۔ یہ کلاؤڈ ڈیٹا سینٹرز دنیا بھر میں موجود ہیں۔
![ایک مائیکروسافٹ کلاؤڈ ڈیٹا سینٹر](../../../../../translated_images/ur/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.png)
![ایک مائیکروسافٹ کلاؤڈ ڈیٹا سینٹر کی منصوبہ بندی](../../../../../translated_images/ur/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.png)
![ایک مائیکروسافٹ کلاؤڈ ڈیٹا سینٹر](../../../../../translated_images/ur/azure-region-existing.73f704604f2aa6cb.webp)
![ایک مائیکروسافٹ کلاؤڈ ڈیٹا سینٹر کی منصوبہ بندی](../../../../../translated_images/ur/azure-region-planned-expansion.a5074a1e8af74f15.webp)
یہ ڈیٹا سینٹرز کئی مربع کلومیٹر کے رقبے پر محیط ہو سکتے ہیں۔ اوپر دی گئی تصاویر چند سال پہلے ایک مائیکروسافٹ کلاؤڈ ڈیٹا سینٹر میں لی گئی تھیں، اور ابتدائی سائز کے ساتھ ساتھ منصوبہ بند توسیع کو دکھاتی ہیں۔ توسیع کے لیے صاف کیا گیا علاقہ 5 مربع کلومیٹر سے زیادہ ہے۔
@ -108,11 +108,11 @@ Azure سبسکرپشن کے دو مختلف مفت اقسام ہیں جن کے
IoT ڈیوائسز کلاؤڈ سروس سے یا تو ڈیوائس SDK (ایک لائبریری جو سروس کی خصوصیات کے ساتھ کام کرنے کے لیے کوڈ فراہم کرتی ہے) یا براہ راست کسی مواصلاتی پروٹوکول جیسے MQTT یا HTTP کے ذریعے جڑتی ہیں۔ ڈیوائس SDK عام طور پر سب سے آسان راستہ ہوتا ہے کیونکہ یہ سب کچھ آپ کے لیے سنبھالتا ہے، جیسے کہ کون سے موضوعات پر شائع کرنا یا سبسکرائب کرنا، اور سیکیورٹی کو کیسے سنبھالنا۔
![ڈیوائسز سروس سے ڈیوائس SDK کے ذریعے جڑتی ہیں۔ سرور کوڈ بھی SDK کے ذریعے سروس سے جڑتا ہے](../../../../../translated_images/ur/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.png)
![ڈیوائسز سروس سے ڈیوائس SDK کے ذریعے جڑتی ہیں۔ سرور کوڈ بھی SDK کے ذریعے سروس سے جڑتا ہے](../../../../../translated_images/ur/iot-service-connectivity.7e873847921a5d6f.webp)
آپ کا ڈیوائس پھر آپ کی ایپلیکیشن کے دوسرے حصوں کے ساتھ اس سروس کے ذریعے بات چیت کرتا ہے - بالکل اسی طرح جیسے آپ نے MQTT کے ذریعے ٹیلیمیٹری بھیجی اور کمانڈز وصول کیں۔ یہ عام طور پر سروس SDK یا اسی طرح کی لائبریری کا استعمال کرتے ہوئے کیا جاتا ہے۔ پیغامات آپ کے ڈیوائس سے سروس تک آتے ہیں جہاں آپ کی ایپلیکیشن کے دوسرے اجزاء انہیں پڑھ سکتے ہیں، اور پیغامات آپ کے ڈیوائس کو واپس بھیجے جا سکتے ہیں۔
![جس ڈیوائس کے پاس درست خفیہ کلید نہیں ہوتی وہ IoT سروس سے نہیں جڑ سکتی](../../../../../translated_images/ur/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.png)
![جس ڈیوائس کے پاس درست خفیہ کلید نہیں ہوتی وہ IoT سروس سے نہیں جڑ سکتی](../../../../../translated_images/ur/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/ur/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.png)
![Azure IoT Hub کا لوگو](../../../../../translated_images/ur/azure-iot-hub-logo.28a19de76d0a1932.webp)
نیچے دی گئی ویڈیو Azure IoT Hub کا مختصر جائزہ پیش کرتی ہے:

@ -1,6 +1,6 @@
# اپنی ایپلیکیشن لاجک کو کلاؤڈ میں منتقل کریں
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-9.dfe99c8e891f48e1.webp)
> خاکہ [نیتیا نرسمہن](https://github.com/nitya) کی طرف سے۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -28,7 +28,7 @@
سرور لیس، یا سرور لیس کمپیوٹنگ، چھوٹے کوڈ بلاکس بنانے کا عمل ہے جو مختلف قسم کے ایونٹس کے جواب میں کلاؤڈ میں چلتے ہیں۔ جب ایونٹ ہوتا ہے تو آپ کا کوڈ چلتا ہے اور ایونٹ کے بارے میں ڈیٹا اسے فراہم کیا جاتا ہے۔ یہ ایونٹس مختلف چیزوں سے ہو سکتے ہیں، جیسے ویب ریکویسٹ، قطار میں رکھے گئے پیغامات، ڈیٹا بیس میں ڈیٹا میں تبدیلیاں، یا IoT ڈیوائسز کے ذریعے IoT سروس کو بھیجے گئے پیغامات۔
![IoT سروس سے سرور لیس سروس کو بھیجے گئے ایونٹس، جو ایک ساتھ کئی فنکشنز کے ذریعے پروسیس کیے جا رہے ہیں](../../../../../translated_images/ur/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.png)
![IoT سروس سے سرور لیس سروس کو بھیجے گئے ایونٹس، جو ایک ساتھ کئی فنکشنز کے ذریعے پروسیس کیے جا رہے ہیں](../../../../../translated_images/ur/iot-messages-to-serverless.0194da1cc0732bb7.webp)
> 💁 اگر آپ نے پہلے ڈیٹا بیس ٹرگرز استعمال کیے ہیں، تو آپ اسے اسی طرح سمجھ سکتے ہیں، کوڈ ایونٹ جیسے کہ ایک قطار شامل کرنے پر ٹرگر ہوتا ہے۔
@ -54,7 +54,7 @@
Microsoft کی سرور لیس کمپیوٹنگ سروس کو Azure Functions کہا جاتا ہے۔
![Azure Functions کا لوگو](../../../../../translated_images/ur/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.png)
![Azure Functions کا لوگو](../../../../../translated_images/ur/azure-functions-logo.1cfc8e3204c9c44a.webp)
نیچے دی گئی مختصر ویڈیو میں Azure Functions کا جائزہ دیا گیا ہے۔

@ -1,6 +1,6 @@
# اپنے پودے کو محفوظ رکھیں
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-10.829c86b80b9403bb.webp)
> خاکہ [نیتیا نرسمہن](https://github.com/nitya) کی طرف سے۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -52,11 +52,11 @@ IoT سیکیورٹی کا مطلب یہ ہے کہ صرف متوقع آلات آ
جب کوئی آلہ IoT سروس سے جڑتا ہے، تو یہ اپنی شناخت کے لیے ایک ID استعمال کرتا ہے۔ مسئلہ یہ ہے کہ اس ID کو کلون کیا جا سکتا ہے - ایک ہیکر ایک بدنیتی پر مبنی آلہ سیٹ کر سکتا ہے جو ایک حقیقی آلے کی طرح ID استعمال کرتا ہے لیکن جعلی ڈیٹا بھیجتا ہے۔
![ایک حقیقی اور بدنیتی پر مبنی آلہ ایک ہی ID استعمال کر کے ٹیلی میٹری بھیج سکتے ہیں](../../../../../translated_images/ur/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.png)
![ایک حقیقی اور بدنیتی پر مبنی آلہ ایک ہی ID استعمال کر کے ٹیلی میٹری بھیج سکتے ہیں](../../../../../translated_images/ur/iot-device-and-hacked-device-connecting.e0671675df74d6d9.webp)
اس کا حل یہ ہے کہ بھیجے جانے والے ڈیٹا کو ایک خفیہ شکل میں تبدیل کیا جائے، جس کے لیے ایک ایسی ویلیو استعمال کی جائے جو صرف آلے اور کلاؤڈ کو معلوم ہو۔ اس عمل کو *انکرپشن* کہا جاتا ہے، اور ڈیٹا کو انکرپٹ کرنے کے لیے استعمال ہونے والی ویلیو کو *انکرپشن کی* کہا جاتا ہے۔
![اگر انکرپشن استعمال کی جائے، تو صرف انکرپٹڈ پیغامات قبول کیے جائیں گے، دیگر مسترد کر دیے جائیں گے](../../../../../translated_images/ur/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.png)
![اگر انکرپشن استعمال کی جائے، تو صرف انکرپٹڈ پیغامات قبول کیے جائیں گے، دیگر مسترد کر دیے جائیں گے](../../../../../translated_images/ur/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f.webp)
کلاؤڈ سروس پھر ڈیٹا کو ایک قابلِ پڑھائی شکل میں تبدیل کر سکتی ہے، جسے *ڈی کرپشن* کہا جاتا ہے، اور یہ یا تو وہی انکرپشن کی استعمال کر کے یا ایک *ڈی کرپشن کی* کے ذریعے کیا جاتا ہے۔ اگر انکرپٹڈ پیغام کو کی کے ذریعے ڈی کرپٹ نہ کیا جا سکے، تو آلہ ہیک ہو چکا ہے اور پیغام مسترد کر دیا جاتا ہے۔

@ -1,6 +1,6 @@
# مقام کی نگرانی
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-11.9fddbac4b664c6d5.webp)
> خاکہ نگاری: [نیتیا نرسمہن](https://github.com/nitya)۔ تصویر پر کلک کریں تاکہ بڑا ورژن دیکھ سکیں۔
@ -63,13 +63,13 @@ IoT سامان کی نقل و حمل کے طریقے کو تبدیل کر رہا
> 💁 کوئی بھی اصل وجہ نہیں جانتا کہ دائرے کو 360 ڈگری میں کیوں تقسیم کیا گیا۔ [ویکیپیڈیا پر ڈگری (زاویہ) کا صفحہ](https://wikipedia.org/wiki/Degree_(angle)) ممکنہ وجوہات کا احاطہ کرتا ہے۔
![عرض البلد کی لکیریں: شمالی قطب پر 90°، شمالی قطب اور خط استوا کے درمیان آدھے راستے پر 45°، خط استوا پر 0°، خط استوا اور جنوبی قطب کے درمیان آدھے راستے پر -45°، اور جنوبی قطب پر -90°](../../../../../translated_images/ur/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.png)
![عرض البلد کی لکیریں: شمالی قطب پر 90°، شمالی قطب اور خط استوا کے درمیان آدھے راستے پر 45°، خط استوا پر 0°، خط استوا اور جنوبی قطب کے درمیان آدھے راستے پر -45°، اور جنوبی قطب پر -90°](../../../../../translated_images/ur/latitude-lines.11d8d91dfb2014a5.webp)
عرض البلد ان لکیروں کا استعمال کرتے ہوئے ماپا جاتا ہے جو زمین کو گھیرتی ہیں اور خط استوا کے متوازی چلتی ہیں، شمالی اور جنوبی نصف کرہ کو 90° میں تقسیم کرتی ہیں۔ خط استوا 0° پر ہے، شمالی قطب 90° پر ہے، جسے 90° شمال بھی کہا جاتا ہے، اور جنوبی قطب -90° پر ہے، یا 90° جنوب۔
طول البلد مشرق اور مغرب میں ماپی جانے والی ڈگریوں کی تعداد کے طور پر ماپا جاتا ہے۔ طول البلد کا 0° نقطہ آغاز *پرائم میریڈین* کہلاتا ہے، اور اسے 1884 میں شمالی قطب سے جنوبی قطب تک ایک لکیر کے طور پر بیان کیا گیا تھا جو [گرین وچ، انگلینڈ میں برٹش رائل آبزرویٹری](https://wikipedia.org/wiki/Royal_Observatory,_Greenwich) سے گزرتی ہے۔
![طول البلد کی لکیریں جو پرائم میریڈین کے مغرب میں -180° سے، پرائم میریڈین پر 0° تک، اور پرائم میریڈین کے مشرق میں 180° تک جاتی ہیں](../../../../../translated_images/ur/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.png)
![طول البلد کی لکیریں جو پرائم میریڈین کے مغرب میں -180° سے، پرائم میریڈین پر 0° تک، اور پرائم میریڈین کے مشرق میں 180° تک جاتی ہیں](../../../../../translated_images/ur/longitude-meridians.ab4ef1c91c064586.webp)
> 🎓 میریڈین ایک خیالی سیدھی لکیر ہے جو شمالی قطب سے جنوبی قطب تک جاتی ہے، ایک نیم دائرہ بناتی ہے۔
@ -100,7 +100,7 @@ IoT سامان کی نقل و حمل کے طریقے کو تبدیل کر رہا
* عرض البلد 47.6423109 (خط استوا کے شمال میں 47.6423109 ڈگری)
* طول البلد -122.1390293 (پرائم میریڈین کے مغرب میں 122.1390293 ڈگری)۔
![مائیکروسافٹ کیمپس 47.6423109,-122.117198 پر](../../../../../translated_images/ur/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.png)
![مائیکروسافٹ کیمپس 47.6423109,-122.117198 پر](../../../../../translated_images/ur/microsoft-gps-location-world.a321d481b010f6ad.webp)
## عالمی مقامیت کے نظام (GPS)
@ -112,7 +112,7 @@ GPS نظام اس طرح کام کرتے ہیں کہ متعدد سیٹلائٹس
> 💁 GPS سینسرز کو ریڈیو لہروں کا پتہ لگانے کے لیے اینٹینا کی ضرورت ہوتی ہے۔ ٹرکوں اور گاڑیوں میں موجود GPS کے ساتھ نصب اینٹینا کو اچھا سگنل حاصل کرنے کے لیے پوزیشن میں رکھا جاتا ہے، عام طور پر ونڈشیلڈ یا چھت پر۔ اگر آپ ایک علیحدہ GPS نظام استعمال کر رہے ہیں، جیسے کہ اسمارٹ فون یا IoT ڈیوائس، تو آپ کو یہ یقینی بنانا ہوگا کہ GPS نظام یا فون میں موجود اینٹینا آسمان کا واضح نظارہ رکھتا ہو، جیسے کہ ونڈشیلڈ پر نصب ہو۔
![سینسر سے متعدد سیٹلائٹس کے فاصلے کو جان کر مقام کا حساب لگایا جا سکتا ہے](../../../../../translated_images/ur/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.png)
![سینسر سے متعدد سیٹلائٹس کے فاصلے کو جان کر مقام کا حساب لگایا جا سکتا ہے](../../../../../translated_images/ur/gps-satellites.04acf1148fe25fbf.webp)
GPS سیٹلائٹس زمین کے گرد چکر لگا رہے ہیں، سینسر کے اوپر کسی مقررہ مقام پر نہیں ہیں، اس لیے مقام کے ڈیٹا میں سمندر کی سطح سے بلندی کے ساتھ ساتھ عرض البلد اور طول البلد بھی شامل ہوتا ہے۔

@ -18,13 +18,13 @@ Grove GPS سینسر کو راسپبیری پائی کے ساتھ جوڑا جا
جی پی ایس سینسر کو جوڑیں۔
![ایک Grove GPS سینسر](../../../../../translated_images/ur/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.png)
![ایک Grove GPS سینسر](../../../../../translated_images/ur/grove-gps-sensor.247943bf69b03f0d.webp)
1. Grove کیبل کے ایک سرے کو جی پی ایس سینسر کے ساکٹ میں ڈالیں۔ یہ صرف ایک ہی سمت میں داخل ہوگا۔
1. راسپبیری پائی کو بند کر کے، Grove کیبل کے دوسرے سرے کو Grove Base Hat پر موجود **UART** کے نشان والے ساکٹ میں جوڑیں۔ یہ ساکٹ درمیانی قطار میں ہے، ایس ڈی کارڈ سلاٹ کے قریب، یو ایس بی پورٹس اور ایتھرنیٹ ساکٹ کے مخالف سمت۔
![Grove GPS سینسر UART ساکٹ سے جڑا ہوا](../../../../../translated_images/ur/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.png)
![Grove GPS سینسر UART ساکٹ سے جڑا ہوا](../../../../../translated_images/ur/pi-gps-sensor.1f99ee2b2f652891.webp)
1. جی پی ایس سینسر کو اس طرح رکھیں کہ جڑا ہوا اینٹینا آسمان کو دیکھ سکے - مثالی طور پر کھڑکی کے قریب یا باہر۔ اینٹینا کے راستے میں کسی چیز کے نہ ہونے سے سگنل زیادہ واضح طور پر ملتا ہے۔

@ -38,11 +38,11 @@
1. **Add** بٹن کو منتخب کریں تاکہ پورٹ `/dev/ttyAMA0` پر جی پی ایس سینسر بنایا جا سکے۔
![جی پی ایس سینسر کی سیٹنگز](../../../../../translated_images/ur/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.png)
![جی پی ایس سینسر کی سیٹنگز](../../../../../translated_images/ur/counterfit-create-gps-sensor.6385dc9357d85ad1.webp)
جی پی ایس سینسر بنایا جائے گا اور سینسرز کی فہرست میں ظاہر ہوگا۔
![جی پی ایس سینسر بنایا گیا](../../../../../translated_images/ur/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.png)
![جی پی ایس سینسر بنایا گیا](../../../../../translated_images/ur/counterfit-gps-sensor.3fbb15af0a536756.webp)
## جی پی ایس سینسر کو پروگرام کریں
@ -102,17 +102,17 @@
* **Source** کو `Lat/Lon` پر سیٹ کریں، اور ایک واضح لاٹیٹیوڈ، لانگیٹیوڈ اور سیٹلائٹس کی تعداد سیٹ کریں جو جی پی ایس فکس حاصل کرنے کے لیے استعمال ہو۔ یہ ویلیو صرف ایک بار بھیجی جائے گی، لہذا **Repeat** باکس کو چیک کریں تاکہ ڈیٹا ہر سیکنڈ دہرایا جائے۔
![جی پی ایس سینسر کے ساتھ لاٹ لان منتخب](../../../../../translated_images/ur/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.png)
![جی پی ایس سینسر کے ساتھ لاٹ لان منتخب](../../../../../translated_images/ur/counterfit-gps-sensor-latlon.008c867d75464fbe.webp)
* **Source** کو `NMEA` پر سیٹ کریں اور این ایم ای اے جملے ٹیکسٹ باکس میں شامل کریں۔ یہ تمام ویلیوز بھیجی جائیں گی، ہر نئے جی جی اے (پوزیشن فکس) جملے کو پڑھنے سے پہلے 1 سیکنڈ کی تاخیر کے ساتھ۔
![جی پی ایس سینسر کے ساتھ این ایم ای اے جملے سیٹ](../../../../../translated_images/ur/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.png)
![جی پی ایس سینسر کے ساتھ این ایم ای اے جملے سیٹ](../../../../../translated_images/ur/counterfit-gps-sensor-nmea.c62eea442171e17e.webp)
آپ [nmeagen.org](https://www.nmeagen.org) جیسے ٹول کا استعمال کر سکتے ہیں تاکہ نقشے پر ڈرائنگ کر کے یہ جملے تیار کیے جا سکیں۔ یہ ویلیوز صرف ایک بار بھیجی جائیں گی، لہذا **Repeat** باکس کو چیک کریں تاکہ ڈیٹا ایک سیکنڈ بعد دہرایا جائے۔
* **Source** کو GPX فائل پر سیٹ کریں، اور ایک جی پی ایکس فائل اپلوڈ کریں جس میں ٹریک کے مقامات ہوں۔ آپ جی پی ایکس فائلز کو کئی مشہور میپنگ اور ہائکنگ سائٹس جیسے [AllTrails](https://www.alltrails.com/) سے ڈاؤنلوڈ کر سکتے ہیں۔ ان فائلز میں متعدد جی پی ایس مقامات بطور ٹریل شامل ہوتے ہیں، اور جی پی ایس سینسر ہر نئے مقام کو 1 سیکنڈ کے وقفے پر واپس کرے گا۔
![جی پی ایس سینسر کے ساتھ جی پی ایکس فائل سیٹ](../../../../../translated_images/ur/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.png)
![جی پی ایس سینسر کے ساتھ جی پی ایکس فائل سیٹ](../../../../../translated_images/ur/counterfit-gps-sensor-gpxfile.8310b063ce8a425c.webp)
یہ ویلیوز صرف ایک بار بھیجی جائیں گی، لہذا **Repeat** باکس کو چیک کریں تاکہ ڈیٹا ایک سیکنڈ بعد دہرایا جائے۔

@ -18,7 +18,7 @@ Grove GPS سینسر کو وائیو ٹرمینل سے جوڑا جا سکتا ہ
جی پی ایس سینسر کو جوڑیں۔
![ایک Grove GPS سینسر](../../../../../translated_images/ur/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.png)
![ایک Grove GPS سینسر](../../../../../translated_images/ur/grove-gps-sensor.247943bf69b03f0d.webp)
1. Grove کیبل کے ایک سرے کو جی پی ایس سینسر کے ساکٹ میں ڈالیں۔ یہ صرف ایک ہی سمت میں جائے گا۔

@ -1,6 +1,6 @@
# اسٹور لوکیشن ڈیٹا
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-12.ca7f53039712a3ec.webp)
> خاکہ نگاری: [نیتیا نرسمہن](https://github.com/nitya)۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -75,7 +75,7 @@ NoSQL ڈیٹا بیس کو NoSQL کہا جاتا ہے کیونکہ ان میں S
> 💁 ان کے نام کے باوجود، کچھ NoSQL ڈیٹا بیس آپ کو ڈیٹا پر سوالات کرنے کے لیے SQL استعمال کرنے کی اجازت دیتے ہیں۔
![NoSQL ڈیٹا بیس میں فولڈرز میں دستاویزات](../../../../../translated_images/ur/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.png)
![NoSQL ڈیٹا بیس میں فولڈرز میں دستاویزات](../../../../../translated_images/ur/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/ur/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.png)
![IoT ڈیوائس سے IoT ہب تک GPS ٹیلیمیٹری بھیجنا](../../../../../translated_images/ur/gps-telemetry-iot-hub.8115335d51cd2c12.webp)
### کام - GPS ڈیٹا کو IoT ہب پر بھیجیں
@ -171,7 +171,7 @@ IoT ڈیوائس سے کلاؤڈ تک ڈیٹا ہمیشہ حقیقی وقت می
ایک بار جب ڈیٹا آپ کے IoT ہب میں آنا شروع ہو جائے، تو آپ کچھ سرور لیس کوڈ لکھ سکتے ہیں جو ایونٹس کو سننے کے لیے Event-Hub کے ہم آہنگ اینڈ پوائنٹ پر شائع کرے۔ یہ وارم راستہ ہے - یہ ڈیٹا محفوظ کیا جائے گا اور اگلے سبق میں سفر کی رپورٹنگ کے لیے استعمال ہوگا۔
![IoT ڈیوائس سے IoT ہب، پھر ایونٹ ہب ٹرگر کے ذریعے Azure فنکشنز تک GPS ٹیلیمیٹری بھیجنا](../../../../../translated_images/ur/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.png)
![IoT ڈیوائس سے IoT ہب، پھر ایونٹ ہب ٹرگر کے ذریعے Azure فنکشنز تک GPS ٹیلیمیٹری بھیجنا](../../../../../translated_images/ur/gps-telemetry-iot-hub-functions.24d3fa5592455e9f.webp)
### کام - GPS ایونٹس کو سرور لیس کوڈ کے ذریعے ہینڈل کریں
@ -193,7 +193,7 @@ IoT ڈیوائس سے کلاؤڈ تک ڈیٹا ہمیشہ حقیقی وقت می
## Azure اسٹوریج اکاؤنٹس
![Azure Storage کا لوگو](../../../../../translated_images/ur/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.png)
![Azure Storage کا لوگو](../../../../../translated_images/ur/azure-storage-logo.605c0f602c640d48.webp)
Azure اسٹوریج اکاؤنٹس ایک عمومی مقصد کا اسٹوریج سروس ہے جو مختلف طریقوں سے ڈیٹا کو محفوظ کر سکتا ہے۔ آپ ڈیٹا کو blobs، queues، tables، یا files کی صورت میں محفوظ کر سکتے ہیں، اور یہ سب ایک ساتھ ممکن ہے۔

@ -1,6 +1,6 @@
# مقام کے ڈیٹا کو بصری بنائیں
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-13.a259db1485021be7.webp)
> خاکہ [نیتیا نرسمہن](https://github.com/nitya) کی تخلیق کردہ۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -64,11 +64,11 @@
ایک انسان کے لیے اس ڈیٹا کو سمجھنا مشکل ہو سکتا ہے۔ یہ صرف نمبروں کی ایک دیوار ہے جس کا کوئی مطلب نہیں۔ اس ڈیٹا کو بصری بنانے کے پہلے قدم کے طور پر، اسے لائن چارٹ پر پلاٹ کیا جا سکتا ہے:
![اوپر دیے گئے ڈیٹا کا ایک لائن چارٹ](../../../../../translated_images/ur/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.png)
![اوپر دیے گئے ڈیٹا کا ایک لائن چارٹ](../../../../../translated_images/ur/chart-soil-moisture.fd6d9d0cdc0b5f75.webp)
اسے مزید بہتر بنایا جا سکتا ہے، جیسے کہ ایک لائن شامل کر کے یہ دکھایا جائے کہ مٹی کی نمی کی ریڈنگ 450 پر پہنچنے پر خودکار پانی دینے کا نظام کب آن ہوا:
![مٹی کی نمی کا چارٹ جس میں 450 پر ایک لائن دکھائی گئی ہے](../../../../../translated_images/ur/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.png)
![مٹی کی نمی کا چارٹ جس میں 450 پر ایک لائن دکھائی گئی ہے](../../../../../translated_images/ur/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/ur/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.png)
![Azure Maps کا لوگو](../../../../../translated_images/ur/azure-maps-logo.35d01dcfbd81fe61.webp)
Azure Maps "جغرافیائی خدمات اور SDKs کا ایک مجموعہ ہے جو تازہ نقشہ سازی کے ڈیٹا کا استعمال کرتے ہوئے ویب اور موبائل ایپلیکیشنز کو جغرافیائی سیاق و سباق فراہم کرتا ہے۔" ڈویلپرز کو خوبصورت، انٹرایکٹو نقشے بنانے کے لیے ٹولز فراہم کیے جاتے ہیں جو ٹریفک کے تجویز کردہ راستے فراہم کر سکتے ہیں، ٹریفک کے واقعات کے بارے میں معلومات دے سکتے ہیں، اندرونی نیویگیشن، تلاش کی صلاحیتیں، بلندی کی معلومات، موسم کی خدمات اور بہت کچھ کر سکتے ہیں۔
@ -185,7 +185,7 @@ Azure Maps "جغرافیائی خدمات اور SDKs کا ایک مجموعہ
اگر آپ اپنے `index.html` صفحے کو ویب براؤزر میں کھولیں، تو آپ کو ایک نقشہ لوڈ ہوتا ہوا نظر آنا چاہیے، جو سیئٹل کے علاقے پر مرکوز ہے۔
![سیئٹل، واشنگٹن اسٹیٹ، USA کا نقشہ](../../../../../translated_images/ur/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.png)
![سیئٹل، واشنگٹن اسٹیٹ، USA کا نقشہ](../../../../../translated_images/ur/map-image.8fb2c53eb23ef39c.webp)
✅ زوم اور سینٹر پیرامیٹرز کے ساتھ تجربہ کریں تاکہ اپنے نقشے کی ظاہری شکل کو تبدیل کریں۔ آپ اپنے ڈیٹا کے طول البلد اور عرض البلد کے مطابق مختلف کوآرڈینیٹس شامل کر کے نقشے کو دوبارہ مرکز کر سکتے ہیں۔
@ -317,7 +317,7 @@ Azure Maps "جغرافیائی خدمات اور SDKs کا ایک مجموعہ
1. HTML صفحہ اپنے براؤزر میں لوڈ کریں۔ یہ نقشہ لوڈ کرے گا، پھر اسٹوریج سے تمام GPS ڈیٹا لوڈ کرے گا اور نقشے پر پلاٹ کرے گا۔
![سیئٹل کے قریب سینٹ ایڈورڈ اسٹیٹ پارک کا نقشہ، جس میں پارک کے کنارے کے ارد گرد ایک راستہ دکھانے والے دائرے ہیں](../../../../../translated_images/ur/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.png)
![سیئٹل کے قریب سینٹ ایڈورڈ اسٹیٹ پارک کا نقشہ، جس میں پارک کے کنارے کے ارد گرد ایک راستہ دکھانے والے دائرے ہیں](../../../../../translated_images/ur/map-path.896832e72dc696ff.webp)
> 💁 آپ اس کوڈ کو [code](../../../../../3-transport/lessons/3-visualize-location-data/code) فولڈر میں تلاش کر سکتے ہیں۔

@ -1,6 +1,6 @@
# جیو فینسز
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-14.63980c5150ae3c15.webp)
> خاکہ [نیتیا نرسمہن](https://github.com/nitya) کی طرف سے۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -35,7 +35,7 @@
جیو فینس ایک حقیقی دنیا کے جغرافیائی علاقے کے لیے ایک ورچوئل حد ہے۔ جیو فینسز دائرے کی شکل میں ہو سکتے ہیں، جو ایک نقطہ اور رداس سے متعین کیے جاتے ہیں (مثال کے طور پر کسی عمارت کے ارد گرد 100 میٹر چوڑا دائرہ)، یا ایک پولیگون کی شکل میں، جیسے اسکول زون، شہر کی حدود، یا یونیورسٹی یا دفتر کیمپس۔
![جیو فینس کی کچھ مثالیں، Microsoft کمپنی اسٹور کے ارد گرد ایک دائرہ اور Microsoft ویسٹ کیمپس کے ارد گرد ایک پولیگون](../../../../../translated_images/ur/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.png)
![جیو فینس کی کچھ مثالیں، Microsoft کمپنی اسٹور کے ارد گرد ایک دائرہ اور Microsoft ویسٹ کیمپس کے ارد گرد ایک پولیگون](../../../../../translated_images/ur/geofence-examples.172fbc534665769f.webp)
> 💁 آپ نے شاید پہلے ہی جیو فینسز کا استعمال کیا ہو، بغیر جانے۔ اگر آپ نے iOS ریمائنڈرز ایپ یا Google Keep میں کسی مقام کی بنیاد پر یاد دہانی سیٹ کی ہے، تو آپ نے جیو فینس کا استعمال کیا ہے۔ یہ ایپس دیے گئے مقام کی بنیاد پر جیو فینس سیٹ کرتی ہیں اور جب آپ کا فون جیو فینس میں داخل ہوتا ہے تو آپ کو الرٹ کرتی ہیں۔
@ -212,7 +212,7 @@ Azure Maps میں جیو فینس استعمال کرنے کے لیے، پہلے
مثال کے طور پر، تصور کریں کہ GPS ریڈنگز ایک گاڑی کو دکھاتی ہیں جو ایک سڑک پر چل رہی ہے جو جیو فینس کے ساتھ چلتی ہے۔ اگر ایک GPS قدر غلط ہے اور گاڑی کو جیو فینس کے اندر رکھتی ہے، حالانکہ وہاں گاڑیوں کی رسائی نہیں ہے، تو اسے نظر انداز کیا جا سکتا ہے۔
![GPS ٹریل جو Microsoft کیمپس کے ساتھ 520 پر گاڑی کو دکھاتا ہے، سڑک کے ساتھ GPS ریڈنگز کے ساتھ، سوائے ایک کے جو کیمپس پر ہے، جیو فینس کے اندر](../../../../../translated_images/ur/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.png)
![GPS ٹریل جو Microsoft کیمپس کے ساتھ 520 پر گاڑی کو دکھاتا ہے، سڑک کے ساتھ GPS ریڈنگز کے ساتھ، سوائے ایک کے جو کیمپس پر ہے، جیو فینس کے اندر](../../../../../translated_images/ur/geofence-crossing-inaccurate-gps.6a3ed911202ad9ca.webp)
مندرجہ بالا تصویر میں، مائیکروسافٹ کیمپس کے ایک حصے پر ایک جیو فینس دکھایا گیا ہے۔ سرخ لائن ایک ٹرک کو 520 کے ساتھ چلتے ہوئے دکھاتی ہے، اور دائرے GPS ریڈنگز کو ظاہر کرتے ہیں۔ ان میں سے زیادہ تر درست ہیں اور 520 کے ساتھ ہیں، لیکن ایک غلط ریڈنگ جیو فینس کے اندر ہے۔ یہ ریڈنگ درست نہیں ہو سکتی - 520 سے کیمپس پر اچانک مڑنے اور پھر واپس 520 پر جانے کے لیے کوئی سڑکیں نہیں ہیں۔ جیو فینس کو چیک کرنے والا کوڈ نتائج پر عمل کرنے سے پہلے پچھلی ریڈنگز کو مدنظر رکھنا ہوگا۔
✅ آپ کو کون سے اضافی ڈیٹا کی ضرورت ہوگی تاکہ یہ چیک کیا جا سکے کہ آیا GPS ریڈنگ کو درست سمجھا جا سکتا ہے؟
@ -284,7 +284,7 @@ Azure Maps میں جیو فینس استعمال کرنے کے لیے، پہلے
جواب یہ ہے کہ یہ نہیں جان سکتا! اس کے بجائے آپ ایونٹس کو پڑھنے کے لیے متعدد الگ الگ کنیکشنز ڈیفائن کر سکتے ہیں، اور ہر ایک ان ریڈ میسجز کے دوبارہ چلانے کا انتظام کر سکتا ہے۔ انہیں *کنزیومر گروپس* کہا جاتا ہے۔ جب آپ اینڈ پوائنٹ سے کنیکٹ کرتے ہیں، تو آپ یہ اسپیسفائی کر سکتے ہیں کہ آپ کس کنزیومر گروپ سے کنیکٹ کرنا چاہتے ہیں۔ آپ کی ایپلیکیشن کے ہر کمپوننٹ ایک مختلف کنزیومر گروپ سے کنیکٹ کرے گا۔
![ایک IoT Hub جس میں 3 کنزیومر گروپس ایک ہی میسجز کو 3 مختلف فنکشنز ایپس میں تقسیم کر رہے ہیں](../../../../../translated_images/ur/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.png)
![ایک IoT Hub جس میں 3 کنزیومر گروپس ایک ہی میسجز کو 3 مختلف فنکشنز ایپس میں تقسیم کر رہے ہیں](../../../../../translated_images/ur/consumer-groups.a3262e26fc27ba20.webp)
نظریہ میں، ہر کنزیومر گروپ سے 5 ایپلیکیشنز تک کنیکٹ ہو سکتی ہیں، اور وہ سب میسجز وصول کریں گی جب وہ آئیں گے۔ بہترین عمل یہ ہے کہ ہر کنزیومر گروپ تک صرف ایک ایپلیکیشن کو رسائی دی جائے تاکہ ڈپلیکیٹ میسجز پروسیسنگ سے بچا جا سکے، اور یہ یقینی بنایا جا سکے کہ جب دوبارہ شروع کیا جائے تو تمام قطار میں موجود میسجز درست طریقے سے پروسیس ہوں۔ مثال کے طور پر، اگر آپ نے اپنی Functions ایپ کو لوکل طور پر لانچ کیا اور اسے کلاؤڈ میں بھی چلایا، تو وہ دونوں میسجز پروسیس کریں گے، جس سے اسٹوریج اکاؤنٹ میں ڈپلیکیٹ blobs محفوظ ہوں گے۔

@ -1,6 +1,6 @@
# پھلوں کے معیار کا پتہ لگانے والا تربیت کریں
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-15.843d21afdc6fb2bb.webp)
> خاکہ [نیتیا نرسمہن](https://github.com/nitya) کی تخلیق کردہ۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -38,7 +38,7 @@
خودکار کٹائی کے بڑھتے ہوئے رجحان نے پیداوار کی ترتیب کو کھیت سے فیکٹری میں منتقل کر دیا۔ خوراک لمبی کنویئر بیلٹس پر سفر کرتی، جہاں لوگوں کی ٹیمیں پیداوار کو چن کر غیر معیاری اشیاء کو ہٹا دیتیں۔ مشینری کی بدولت کٹائی سستی ہو گئی، لیکن خوراک کو دستی طور پر ترتیب دینے کی لاگت اب بھی موجود تھی۔
![اگر ایک سرخ ٹماٹر کا پتہ چلتا ہے تو وہ بغیر کسی رکاوٹ کے اپنی راہ پر چلتا رہتا ہے۔ اگر ایک سبز ٹماٹر کا پتہ چلتا ہے تو اسے ایک لیور کے ذریعے فضلہ کے ڈبے میں ڈال دیا جاتا ہے](../../../../../translated_images/ur/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.png)
![اگر ایک سرخ ٹماٹر کا پتہ چلتا ہے تو وہ بغیر کسی رکاوٹ کے اپنی راہ پر چلتا رہتا ہے۔ اگر ایک سبز ٹماٹر کا پتہ چلتا ہے تو اسے ایک لیور کے ذریعے فضلہ کے ڈبے میں ڈال دیا جاتا ہے](../../../../../translated_images/ur/optical-tomato-sorting.61aa134bdda4e5b1.webp)
اگلا ارتقاء مشینوں کا استعمال تھا جو یا تو کٹائی کرنے والی مشین میں شامل تھیں یا پروسیسنگ پلانٹس میں۔ ان مشینوں کی پہلی نسل نے رنگوں کا پتہ لگانے کے لیے آپٹیکل سینسرز کا استعمال کیا، جو لیورز یا ہوا کے جھونکوں کے ذریعے سبز ٹماٹروں کو فضلہ کے ڈبے میں دھکیلتے تھے، جبکہ سرخ ٹماٹر کنویئر بیلٹس کے نیٹ ورک پر چلتے رہتے تھے۔
@ -62,7 +62,7 @@
> 🎓 ML ماڈلز کے نتائج کو *پیش گوئیاں* کہا جاتا ہے۔
![2 کیلے، ایک پکا ہوا جس کی پیش گوئی 99.7% پکا، 0.3% کچا، اور ایک کچا جس کی پیش گوئی 1.4% پکا، 98.6% کچا](../../../../../translated_images/ur/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.png)
![2 کیلے، ایک پکا ہوا جس کی پیش گوئی 99.7% پکا، 0.3% کچا، اور ایک کچا جس کی پیش گوئی 1.4% پکا، 98.6% کچا](../../../../../translated_images/ur/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50e.webp)
ML ماڈلز بائنری جواب نہیں دیتے، بلکہ امکانات دیتے ہیں۔ مثال کے طور پر، ایک ماڈل کو ایک کیلے کی تصویر دی جا سکتی ہے اور یہ `پکا` 99.7% اور `کچا` 0.3% پیش گوئی کر سکتا ہے۔ آپ کا کوڈ پھر بہترین پیش گوئی کا انتخاب کرے گا اور فیصلہ کرے گا کہ کیلا پکا ہے۔
@ -90,7 +90,7 @@ ML ماڈلز بائنری جواب نہیں دیتے، بلکہ امکانات
کسٹم وژن ایک کلاؤڈ بیسڈ ٹول ہے جو تصویر کے درجہ بندی کرنے والے ماڈلز کو تربیت دینے کے لیے استعمال ہوتا ہے۔ یہ آپ کو صرف چند تصاویر کے ساتھ ایک ماڈل کو تربیت دینے کی اجازت دیتا ہے۔ آپ تصاویر کو ویب پورٹل، ویب API یا SDK کے ذریعے اپ لوڈ کر سکتے ہیں، ہر تصویر کو ایک *ٹیگ* دے کر جو اس تصویر کی درجہ بندی کی نمائندگی کرتا ہے۔ آپ پھر ماڈل کو تربیت دیتے ہیں، اور اس کی کارکردگی کو جانچتے ہیں۔ جب آپ ماڈل سے مطمئن ہو جائیں، تو آپ اس کے ورژنز کو شائع کر سکتے ہیں جو ویب API یا SDK کے ذریعے قابل رسائی ہوں۔
![Azure Custom Vision کا لوگو](../../../../../translated_images/ur/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.png)
![Azure Custom Vision کا لوگو](../../../../../translated_images/ur/custom-vision-logo.d3d4e7c8a87ec9da.webp)
> 💁 آپ کم از کم 5 تصاویر فی درجہ بندی کے ساتھ ایک کسٹم وژن ماڈل کو تربیت دے سکتے ہیں، لیکن زیادہ بہتر ہے۔ کم از کم 30 تصاویر کے ساتھ آپ کو بہتر نتائج مل سکتے ہیں۔
@ -146,7 +146,7 @@ ML ماڈلز بائنری جواب نہیں دیتے، بلکہ امکانات
جب آپ اپنا پروجیکٹ بنائیں، تو اس بات کو یقینی بنائیں کہ آپ نے پہلے بنائے گئے `fruit-quality-detector-training` ریسورس کا استعمال کیا ہے۔ *Classification* پروجیکٹ ٹائپ، *Multiclass* درجہ بندی کی قسم، اور *Food* ڈومین استعمال کریں۔
![کسٹم وژن پروجیکٹ کے لیے ترتیبات، نام `fruit-quality-detector`، کوئی وضاحت نہیں، ریسورس `fruit-quality-detector-training`، پروجیکٹ ٹائپ `classification`، درجہ بندی کی قسم `multi-class`، اور ڈومین `food`](../../../../../translated_images/ur/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.png)
![کسٹم وژن پروجیکٹ کے لیے ترتیبات، نام `fruit-quality-detector`، کوئی وضاحت نہیں، ریسورس `fruit-quality-detector-training`، پروجیکٹ ٹائپ `classification`، درجہ بندی کی قسم `multi-class`، اور ڈومین `food`](../../../../../translated_images/ur/custom-vision-create-project.cf46325b92d8b131.webp)
✅ اپنے تصویر کے درجہ بندی کرنے والے ماڈل کے لیے کسٹم وژن UI کو دریافت کرنے کے لیے کچھ وقت نکالیں۔
@ -164,7 +164,7 @@ ML ماڈلز بائنری جواب نہیں دیتے، بلکہ امکانات
* 2 پکے ہوئے کیلے استعمال کرتے ہوئے، ہر ایک کی مختلف زاویوں سے کچھ تصاویر لیں، کم از کم 7 تصاویر (5 تربیت کے لیے، 2 جانچ کے لیے)، لیکن ترجیحاً زیادہ۔
![2 مختلف کیلے کی تصاویر](../../../../../translated_images/ur/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.png)
![2 مختلف کیلے کی تصاویر](../../../../../translated_images/ur/banana-training-images.530eb203346d73bc.webp)
* یہی عمل 2 کچے کیلے کے ساتھ دہرائیں۔
@ -174,7 +174,7 @@ ML ماڈلز بائنری جواب نہیں دیتے، بلکہ امکانات
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/ur/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.png)
![پکے اور کچے کیلے کی تصاویر اپلوڈ کرنے کے ڈائیلاگ](../../../../../translated_images/ur/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 @@ ML ماڈلز بائنری جواب نہیں دیتے، بلکہ امکانات
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/ur/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.png)
![ایک کچا کیلا 98.9% امکان کے ساتھ کچا اور 1.1% امکان کے ساتھ پکا پیش گوئی کیا گیا](../../../../../translated_images/ur/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64.webp)
1. تمام جانچ کی تصاویر آزمائیں جو آپ کے پاس دستیاب ہیں اور امکانات کا مشاہدہ کریں۔

@ -1,6 +1,6 @@
# آئی او ٹی ڈیوائس سے پھلوں کی کوالٹی چیک کریں
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.jpg)
![اس سبق کا خاکہ](../../../../../translated_images/ur/lesson-16.215daf18b00631fb.webp)
> خاکہ نگاری: [نیتیا نرسمہن](https://github.com/nitya)۔ بڑی تصویر دیکھنے کے لیے تصویر پر کلک کریں۔
@ -26,7 +26,7 @@
کیمرہ سینسرز، جیسا کہ نام سے ظاہر ہے، وہ کیمرے ہیں جنہیں آپ اپنے آئی او ٹی ڈیوائس سے جوڑ سکتے ہیں۔ یہ اسٹِل تصاویر لے سکتے ہیں یا ویڈیو اسٹریم کر سکتے ہیں۔ کچھ کیمرے خام امیج ڈیٹا واپس کرتے ہیں، جبکہ کچھ امیج ڈیٹا کو JPEG یا PNG فائل میں کمپریس کر دیتے ہیں۔ عام طور پر آئی او ٹی ڈیوائسز کے ساتھ کام کرنے والے کیمرے چھوٹے اور کم ریزولوشن والے ہوتے ہیں، لیکن آپ اعلیٰ ریزولوشن والے کیمرے بھی حاصل کر سکتے ہیں جو اعلیٰ درجے کے فونز کا مقابلہ کر سکتے ہیں۔ آپ مختلف قسم کے لینز، ملٹیپل کیمرہ سیٹ اپس، انفراریڈ تھرمل کیمرے، یا یو وی کیمرے بھی حاصل کر سکتے ہیں۔
![روشنی لینز سے گزر کر CMOS سینسر پر مرکوز ہوتی ہے](../../../../../translated_images/ur/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.png)
![روشنی لینز سے گزر کر CMOS سینسر پر مرکوز ہوتی ہے](../../../../../translated_images/ur/cmos-sensor.75f9cd74decb1371.webp)
زیادہ تر کیمرہ سینسرز امیج سینسرز استعمال کرتے ہیں، جہاں ہر پکسل ایک فوٹوڈائیوڈ ہوتا ہے۔ ایک لینز تصویر کو امیج سینسر پر مرکوز کرتا ہے، اور ہزاروں یا لاکھوں فوٹوڈائیوڈز اس پر پڑنے والی روشنی کو پکڑتے ہیں اور اسے پکسل ڈیٹا کے طور پر ریکارڈ کرتے ہیں۔
@ -74,7 +74,7 @@
1. ورژن کے لیے **Publish** بٹن کو منتخب کریں۔
![شائع کرنے کا بٹن](../../../../../translated_images/ur/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.png)
![شائع کرنے کا بٹن](../../../../../translated_images/ur/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/ur/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.png)
![پیش گوئی API ڈائیلاگ جو URL اور کلید دکھا رہا ہے](../../../../../translated_images/ur/custom-vision-prediction-key-endpoint.30c569ffd0338864.webp)
✅ جب ایک نیا ورژن شائع کیا جاتا ہے، تو اس کا نام مختلف ہوتا ہے۔ آپ کے خیال میں آپ آئی او ٹی ڈیوائس کو استعمال کرنے والے ورژن کو کیسے تبدیل کریں گے؟
@ -109,7 +109,7 @@
ایک امیج کلاسیفائر کے بہترین نتائج حاصل کرنے کے لیے، آپ ماڈل کو ان تصاویر کے ساتھ تربیت دینا چاہتے ہیں جو پیش گوئی کے لیے استعمال ہونے والی تصاویر سے زیادہ سے زیادہ مشابہ ہوں۔ اگر آپ نے تربیت کے لیے اپنے فون کے کیمرے کا استعمال کیا، تو مثال کے طور پر، تصویر کا معیار، شارپنس، اور رنگ آئی او ٹی ڈیوائس سے جڑے کیمرے سے مختلف ہوں گے۔
![2 کیلے کی تصاویر، ایک کم ریزولوشن والی خراب روشنی کے ساتھ آئی او ٹی ڈیوائس سے، اور دوسری اعلیٰ ریزولوشن والی اچھی روشنی کے ساتھ فون سے](../../../../../translated_images/ur/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.png)
![2 کیلے کی تصاویر، ایک کم ریزولوشن والی خراب روشنی کے ساتھ آئی او ٹی ڈیوائس سے، اور دوسری اعلیٰ ریزولوشن والی اچھی روشنی کے ساتھ فون سے](../../../../../translated_images/ur/banana-picture-compare.174df164dc326a42.webp)
اوپر دی گئی تصویر میں، بائیں طرف کیلے کی تصویر Raspberry Pi کیمرے سے لی گئی ہے، جبکہ دائیں طرف کی تصویر اسی کیلے کی اسی جگہ پر iPhone سے لی گئی ہے۔ معیار میں واضح فرق ہے - iPhone کی تصویر زیادہ شارپ، روشن رنگوں اور زیادہ کنٹراسٹ کے ساتھ ہے۔

@ -16,7 +16,7 @@
### کام - کیمرہ کو جوڑیں
![راسپبیری پائی کیمرہ](../../../../../translated_images/ur/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.png)
![راسپبیری پائی کیمرہ](../../../../../translated_images/ur/pi-camera-module.4278753c31bd6e75.webp)
1. پائی کو بند کریں۔
@ -24,17 +24,17 @@
آپ [راسپبیری پائی کیمرہ ماڈیول کے ساتھ شروعات کی دستاویزات](https://projects.raspberrypi.org/en/projects/getting-started-with-picamera/2) میں کلپ کو کھولنے اور کیبل ڈالنے کا اینیمیشن دیکھ سکتے ہیں۔
![ربن کیبل کیمرہ ماڈیول میں داخل کی گئی](../../../../../translated_images/ur/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.png)
![ربن کیبل کیمرہ ماڈیول میں داخل کی گئی](../../../../../translated_images/ur/pi-camera-ribbon-cable.0bf82acd251611c2.webp)
1. پائی سے گروو بیس ہیٹ کو ہٹا دیں۔
1. ربن کیبل کو گروو بیس ہیٹ کے کیمرہ سلاٹ سے گزاریں۔ اس بات کو یقینی بنائیں کہ کیبل کا نیلا حصہ اینالاگ پورٹس **A0**, **A1** وغیرہ کی طرف ہو۔
![ربن کیبل گروو بیس ہیٹ سے گزرتی ہوئی](../../../../../translated_images/ur/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.png)
![ربن کیبل گروو بیس ہیٹ سے گزرتی ہوئی](../../../../../translated_images/ur/grove-base-hat-ribbon-cable.501fed202fcf73b1.webp)
1. ربن کیبل کو پائی کے کیمرہ پورٹ میں ڈالیں۔ ایک بار پھر، سیاہ پلاسٹک کلپ کو اوپر کھینچیں، کیبل ڈالیں، پھر کلپ کو واپس دھکیل دیں۔ کیبل کا نیلا حصہ USB اور ایتھرنیٹ پورٹس کی طرف ہونا چاہیے۔
![ربن کیبل پائی کے کیمرہ ساکٹ سے جڑی ہوئی](../../../../../translated_images/ur/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.png)
![ربن کیبل پائی کے کیمرہ ساکٹ سے جڑی ہوئی](../../../../../translated_images/ur/pi-camera-socket-ribbon-cable.a18309920b118009.webp)
1. گروو بیس ہیٹ کو دوبارہ لگائیں۔
@ -101,7 +101,7 @@
`camera.rotation = 0` لائن تصویر کی روٹیشن سیٹ کرتی ہے۔ ربن کیبل کیمرہ کے نیچے آتی ہے، لیکن اگر آپ نے کیمرہ کو گھمایا تاکہ وہ آسانی سے اس چیز کی طرف اشارہ کرے جسے آپ کلاسیفائی کرنا چاہتے ہیں، تو آپ اس لائن کو روٹیشن کے ڈگریز کے مطابق تبدیل کر سکتے ہیں۔
![کیمرہ مشروب کے کین کے اوپر لٹکا ہوا](../../../../../translated_images/ur/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.png)
![کیمرہ مشروب کے کین کے اوپر لٹکا ہوا](../../../../../translated_images/ur/pi-camera-upside-down.5376961ba3145988.webp)
مثال کے طور پر، اگر آپ ربن کیبل کو کسی چیز کے اوپر معلق کریں تاکہ وہ کیمرہ کے اوپر ہو، تو روٹیشن کو 180 پر سیٹ کریں:

@ -84,7 +84,7 @@
آپ لی گئی تصویر اور یہ اقدار **Predictions** ٹیب میں کسٹم وژن میں دیکھ سکیں گے۔
![کسٹم وژن میں ایک کیلا، 56.8% پر پکا ہوا اور 43.1% پر کچا ہونے کی پیش گوئی کی گئی](../../../../../translated_images/ur/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.png)
![کسٹم وژن میں ایک کیلا، 56.8% پر پکا ہوا اور 43.1% پر کچا ہونے کی پیش گوئی کی گئی](../../../../../translated_images/ur/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