You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/ur/1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md

222 lines
18 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!--
CO_OP_TRANSLATOR_METADATA:
{
"original_hash": "a4f0c166010e31fd7b6ca20bc88dec6d",
"translation_date": "2025-08-26T23:43:12+00:00",
"source_file": "1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md",
"language_code": "ur"
}
-->
# وائیو ٹرمینل
[سیڈ اسٹوڈیوز کا وائیو ٹرمینل](https://www.seeedstudio.com/Wio-Terminal-p-4509.html) ایک آرڈوینو کے ساتھ مطابقت رکھنے والا مائیکرو کنٹرولر ہے، جس میں وائی فائی، کچھ سینسرز اور ایکچیویٹرز شامل ہیں، اور اضافی سینسرز اور ایکچیویٹرز شامل کرنے کے لیے پورٹس موجود ہیں، جو ایک ہارڈویئر ایکوسسٹم [گروو](https://www.seeedstudio.com/category/Grove-c-1003.html) کے ذریعے کام کرتا ہے۔
![سیڈ اسٹوڈیوز کا وائیو ٹرمینل](../../../../../translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.ur.png)
## سیٹ اپ
وائیو ٹرمینل استعمال کرنے کے لیے، آپ کو اپنے کمپیوٹر پر کچھ مفت سافٹ ویئر انسٹال کرنے کی ضرورت ہوگی۔ اس کے علاوہ، وائیو ٹرمینل کو وائی فائی سے منسلک کرنے سے پہلے اس کا فرم ویئر اپ ڈیٹ کرنا ہوگا۔
### کام - سیٹ اپ
ضروری سافٹ ویئر انسٹال کریں اور فرم ویئر اپ ڈیٹ کریں۔
1. ویژول اسٹوڈیو کوڈ (VS Code) انسٹال کریں۔ یہ وہ ایڈیٹر ہے جسے آپ اپنے ڈیوائس کے کوڈ کو C/C++ میں لکھنے کے لیے استعمال کریں گے۔ VS Code انسٹال کرنے کے لیے [VS Code دستاویزات](https://code.visualstudio.com?WT.mc_id=academic-17441-jabenn) کا حوالہ دیں۔
> 💁 آرڈوینو ڈویلپمنٹ کے لیے ایک اور مشہور آئی ڈی ای [Arduino IDE](https://www.arduino.cc/en/software) ہے۔ اگر آپ اس ٹول سے پہلے سے واقف ہیں، تو آپ اسے VS Code اور PlatformIO کے بجائے استعمال کر سکتے ہیں، لیکن اسباق VS Code استعمال کرنے کی ہدایات فراہم کریں گے۔
1. VS Code کے لیے PlatformIO ایکسٹینشن انسٹال کریں۔ یہ ایکسٹینشن مائیکرو کنٹرولرز کو C/C++ میں پروگرام کرنے کے لیے سپورٹ فراہم کرتی ہے۔ اس ایکسٹینشن کو انسٹال کرنے کے لیے [PlatformIO ایکسٹینشن دستاویزات](https://marketplace.visualstudio.com/items?WT.mc_id=academic-17441-jabenn&itemName=platformio.platformio-ide) کا حوالہ دیں۔ یہ ایکسٹینشن Microsoft C/C++ ایکسٹینشن پر انحصار کرتی ہے، جو PlatformIO انسٹال کرنے پر خود بخود انسٹال ہو جاتی ہے۔
1. اپنے وائیو ٹرمینل کو کمپیوٹر سے منسلک کریں۔ وائیو ٹرمینل کے نیچے ایک USB-C پورٹ ہے، جسے آپ کے کمپیوٹر کے USB پورٹ سے منسلک کرنے کی ضرورت ہے۔ وائیو ٹرمینل کے ساتھ ایک USB-C سے USB-A کیبل آتی ہے، لیکن اگر آپ کے کمپیوٹر میں صرف USB-C پورٹس ہیں تو آپ کو یا تو ایک USB-C کیبل یا USB-A سے USB-C اڈاپٹر کی ضرورت ہوگی۔
1. [وائیو ٹرمینل وکی وائی فائی اوورویو دستاویزات](https://wiki.seeedstudio.com/Wio-Terminal-Network-Overview/) میں دی گئی ہدایات پر عمل کریں تاکہ اپنے وائیو ٹرمینل کو سیٹ اپ کریں اور فرم ویئر اپ ڈیٹ کریں۔
## ہیلو ورلڈ
جب آپ کسی نئی پروگرامنگ زبان یا ٹیکنالوجی کے ساتھ شروعات کرتے ہیں تو یہ روایت ہے کہ ایک 'ہیلو ورلڈ' ایپلیکیشن بنائی جائے - ایک چھوٹی سی ایپلیکیشن جو کچھ ایسا متن جیسے `"Hello World"` آؤٹ پٹ کرتی ہے تاکہ یہ دکھایا جا سکے کہ تمام ٹولز صحیح طریقے سے ترتیب دیے گئے ہیں۔
وائیو ٹرمینل کے لیے ہیلو ورلڈ ایپ اس بات کو یقینی بنائے گی کہ آپ نے ویژول اسٹوڈیو کوڈ کو صحیح طریقے سے انسٹال کیا ہے، PlatformIO کے ساتھ، اور مائیکرو کنٹرولر ڈویلپمنٹ کے لیے ترتیب دیا ہے۔
### PlatformIO پروجیکٹ بنائیں
پہلا قدم یہ ہے کہ PlatformIO کا استعمال کرتے ہوئے وائیو ٹرمینل کے لیے ترتیب دیا گیا ایک نیا پروجیکٹ بنایا جائے۔
#### کام - PlatformIO پروجیکٹ بنائیں
PlatformIO پروجیکٹ بنائیں۔
1. وائیو ٹرمینل کو اپنے کمپیوٹر سے منسلک کریں۔
1. ویژول اسٹوڈیو کوڈ لانچ کریں۔
1. PlatformIO آئیکن سائیڈ مینو بار پر ہوگا:
![PlatformIO مینو آپشن](../../../../../translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.ur.png)
اس مینو آئٹم کو منتخب کریں، پھر *PIO Home -> Open* منتخب کریں۔
![PlatformIO اوپن آپشن](../../../../../translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.ur.png)
1. ویلکم اسکرین سے، **+ نیا پروجیکٹ** بٹن منتخب کریں۔
![نیا پروجیکٹ بٹن](../../../../../translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.ur.png)
1. پروجیکٹ کو *پروجیکٹ وزرڈ* میں ترتیب دیں:
1. اپنے پروجیکٹ کا نام `nightlight` رکھیں۔
1. *بورڈ* ڈراپ ڈاؤن سے، `WIO` ٹائپ کریں تاکہ بورڈز کو فلٹر کریں، اور *Seeeduino Wio Terminal* منتخب کریں۔
1. *فریم ورک* کو *Arduino* پر چھوڑ دیں۔
1. یا تو *ڈیفالٹ لوکیشن استعمال کریں* چیک باکس کو چیک رہنے دیں، یا اسے ان چیک کریں اور اپنے پروجیکٹ کے لیے ایک لوکیشن منتخب کریں۔
1. **فنش** بٹن منتخب کریں۔
![مکمل پروجیکٹ وزرڈ](../../../../../translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.ur.png)
PlatformIO ان اجزاء کو ڈاؤن لوڈ کرے گا جن کی اسے وائیو ٹرمینل کے لیے کوڈ کمپائل کرنے اور آپ کے پروجیکٹ کو بنانے کے لیے ضرورت ہے۔ اس میں کچھ منٹ لگ سکتے ہیں۔
### PlatformIO پروجیکٹ کا جائزہ لیں
VS Code ایکسپلورر PlatformIO وزرڈ کے ذریعے بنائی گئی فائلز اور فولڈرز دکھائے گا۔
#### فولڈرز
* `.pio` - یہ فولڈر PlatformIO کے لیے ضروری عارضی ڈیٹا جیسے لائبریریاں یا کمپائل شدہ کوڈ پر مشتمل ہوتا ہے۔ اگر حذف کر دیا جائے تو یہ خود بخود دوبارہ بن جاتا ہے، اور اگر آپ اپنا پروجیکٹ GitHub جیسے سائٹس پر شیئر کر رہے ہیں تو آپ کو اسے سورس کوڈ کنٹرول میں شامل کرنے کی ضرورت نہیں ہے۔
* `.vscode` - یہ فولڈر PlatformIO اور VS Code کے ذریعے استعمال ہونے والی کنفیگریشن پر مشتمل ہوتا ہے۔ اگر حذف کر دیا جائے تو یہ خود بخود دوبارہ بن جاتا ہے، اور اگر آپ اپنا پروجیکٹ GitHub جیسے سائٹس پر شیئر کر رہے ہیں تو آپ کو اسے سورس کوڈ کنٹرول میں شامل کرنے کی ضرورت نہیں ہے۔
* `include` - یہ فولڈر اضافی لائبریریوں کے لیے ہیڈر فائلز کے لیے ہے۔ آپ ان اسباق میں اس فولڈر کو استعمال نہیں کریں گے۔
* `lib` - یہ فولڈر ان لائبریریوں کے لیے ہے جنہیں آپ اپنے کوڈ سے کال کرنا چاہتے ہیں۔ آپ ان اسباق میں اس فولڈر کو استعمال نہیں کریں گے۔
* `src` - یہ فولڈر آپ کی ایپلیکیشن کے مین سورس کوڈ پر مشتمل ہوتا ہے۔ ابتدائی طور پر، اس میں ایک ہی فائل ہوگی - `main.cpp`۔
* `test` - یہ فولڈر آپ کے کوڈ کے لیے کسی بھی یونٹ ٹیسٹ کے لیے ہے۔
#### فائلز
* `main.cpp` - یہ فائل `src` فولڈر میں آپ کی ایپلیکیشن کے انٹری پوائنٹ پر مشتمل ہوتی ہے۔ اس فائل کو کھولیں، اور اس میں درج ذیل کوڈ ہوگا:
```cpp
#include <Arduino.h>
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
```
جب ڈیوائس شروع ہوتی ہے، تو آرڈوینو فریم ورک `setup` فنکشن کو ایک بار چلاتا ہے، پھر `loop` فنکشن کو بار بار چلاتا ہے جب تک کہ ڈیوائس بند نہ ہو جائے۔
* `.gitignore` - یہ فائل ان فائلز اور ڈائریکٹریز کی فہرست پر مشتمل ہوتی ہے جنہیں Git سورس کوڈ کنٹرول میں شامل کرتے وقت نظرانداز کیا جانا چاہیے، جیسے کہ GitHub پر ریپوزٹری اپ لوڈ کرتے وقت۔
* `platformio.ini` - یہ فائل آپ کے ڈیوائس اور ایپ کے لیے کنفیگریشن پر مشتمل ہوتی ہے۔ اس فائل کو کھولیں، اور اس میں درج ذیل کوڈ ہوگا:
```ini
[env:seeed_wio_terminal]
platform = atmelsam
board = seeed_wio_terminal
framework = arduino
```
`[env:seeed_wio_terminal]` سیکشن وائیو ٹرمینل کے لیے کنفیگریشن پر مشتمل ہے۔ آپ کے کوڈ کو متعدد بورڈز کے لیے کمپائل کرنے کے لیے متعدد `env` سیکشنز ہو سکتے ہیں۔
دیگر ویلیوز پروجیکٹ وزرڈ کی کنفیگریشن سے میل کھاتی ہیں:
* `platform = atmelsam` وائیو ٹرمینل کے ہارڈویئر کو ڈیفائن کرتا ہے (ایک ATSAMD51 پر مبنی مائیکرو کنٹرولر)۔
* `board = seeed_wio_terminal` مائیکرو کنٹرولر بورڈ کی قسم کو ڈیفائن کرتا ہے (وائیو ٹرمینل)۔
* `framework = arduino` اس پروجیکٹ کے آرڈوینو فریم ورک استعمال کرنے کو ڈیفائن کرتا ہے۔
### ہیلو ورلڈ ایپ لکھیں
اب آپ ہیلو ورلڈ ایپ لکھنے کے لیے تیار ہیں۔
#### کام - ہیلو ورلڈ ایپ لکھیں
ہیلو ورلڈ ایپ لکھیں۔
1. VS Code میں `main.cpp` فائل کھولیں۔
1. کوڈ کو درج ذیل کے مطابق تبدیل کریں:
```cpp
#include <Arduino.h>
void setup()
{
Serial.begin(9600);
while (!Serial)
; // Wait for Serial to be ready
delay(1000);
}
void loop()
{
Serial.println("Hello World");
delay(5000);
}
```
`setup` فنکشن سیریل پورٹ سے کنکشن کو انیشیالائز کرتا ہے - اس کیس میں، USB پورٹ جو وائیو ٹرمینل کو آپ کے کمپیوٹر سے منسلک کرنے کے لیے استعمال ہوتا ہے۔ پیرامیٹر `9600` [باڈ ریٹ](https://wikipedia.org/wiki/Symbol_rate) (جسے سمبل ریٹ بھی کہا جاتا ہے) یا وہ رفتار ہے جس پر ڈیٹا سیریل پورٹ کے ذریعے بھیجا جائے گا، بٹس فی سیکنڈ میں۔ یہ سیٹنگ 9,600 بٹس (0 اور 1) فی سیکنڈ بھیجنے کا مطلب ہے۔ اس کے بعد یہ سیریل پورٹ کے تیار ہونے کا انتظار کرتا ہے۔
`loop` فنکشن لائن `Hello World!` سیریل پورٹ پر بھیجتا ہے، تاکہ `Hello World!` کے حروف کے ساتھ ایک نیا لائن کریکٹر بھیجا جا سکے۔ اس کے بعد یہ 5,000 ملی سیکنڈ یا 5 سیکنڈ کے لیے سوتا ہے۔ جب `loop` ختم ہو جاتا ہے، تو یہ دوبارہ چلتا ہے، اور بار بار، جب تک کہ مائیکرو کنٹرولر آن ہو۔
1. اپنے وائیو ٹرمینل کو اپ لوڈ موڈ میں ڈالیں۔ آپ کو ہر بار جب آپ ڈیوائس پر نیا کوڈ اپ لوڈ کریں گے، یہ کرنا ہوگا:
1. پاور سوئچ کو دو بار جلدی سے نیچے کھینچیں - یہ ہر بار آن پوزیشن پر واپس آجائے گا۔
1. USB پورٹ کے دائیں جانب نیلی اسٹیٹس ایل ای ڈی چیک کریں۔ یہ پلسیٹ کر رہی ہونی چاہیے۔
[![وائیو ٹرمینل کو اپ لوڈ موڈ میں ڈالنے کا ویڈیو](https://img.youtube.com/vi/LeKU_7zLRrQ/0.jpg)](https://youtu.be/LeKU_7zLRrQ)
اس عمل کو دکھانے کے لیے ویڈیو دیکھنے کے لیے اوپر دی گئی تصویر پر کلک کریں۔
1. کوڈ کو وائیو ٹرمینل پر بنائیں اور اپ لوڈ کریں۔
1. VS Code کمانڈ پیلیٹ کھولیں۔
1. اپ لوڈ آپشن تلاش کرنے کے لیے `PlatformIO Upload` ٹائپ کریں، اور *PlatformIO: Upload* منتخب کریں۔
![کمانڈ پیلیٹ میں PlatformIO اپ لوڈ آپشن](../../../../../translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.ur.png)
PlatformIO اپ لوڈ کرنے سے پہلے ضرورت پڑنے پر کوڈ کو خود بخود بنائے گا۔
1. کوڈ کمپائل ہوگا اور وائیو ٹرمینل پر اپ لوڈ ہوگا۔
> 💁 اگر آپ macOS استعمال کر رہے ہیں، تو *DISK NOT EJECTED PROPERLY* کے بارے میں ایک نوٹیفکیشن ظاہر ہوگا۔ یہ اس لیے ہے کہ وائیو ٹرمینل فلیشنگ کے عمل کے حصے کے طور پر ایک ڈرائیو کے طور پر ماؤنٹ ہو جاتا ہے، اور جب کمپائل شدہ کوڈ ڈیوائس پر لکھا جاتا ہے تو یہ منقطع ہو جاتا ہے۔ آپ اس نوٹیفکیشن کو نظرانداز کر سکتے ہیں۔
⚠️ اگر آپ کو اپ لوڈ پورٹ دستیاب نہ ہونے کے بارے میں ایرر ملے، تو پہلے یہ یقینی بنائیں کہ آپ نے وائیو ٹرمینل کو اپنے کمپیوٹر سے منسلک کیا ہے، اور اسکرین کے بائیں جانب سوئچ کا استعمال کرتے ہوئے آن کیا ہے، اور اپ لوڈ موڈ میں سیٹ کیا ہے۔ نیچے سبز روشنی آن ہونی چاہیے، اور نیلی روشنی پلسیٹ کر رہی ہونی چاہیے۔ اگر آپ کو اب بھی ایرر ملتا ہے، تو پاور سوئچ کو دو بار جلدی سے نیچے کھینچیں تاکہ وائیو ٹرمینل کو اپ لوڈ موڈ میں زبردستی ڈالیں اور دوبارہ اپ لوڈ کرنے کی کوشش کریں۔
PlatformIO میں ایک سیریل مانیٹر ہے جو USB کیبل کے ذریعے وائیو ٹرمینل سے بھیجے گئے ڈیٹا کی نگرانی کر سکتا ہے۔ یہ آپ کو `Serial.println("Hello World");` کمانڈ کے ذریعے بھیجے گئے ڈیٹا کی نگرانی کرنے کی اجازت دیتا ہے۔
1. VS Code کمانڈ پیلیٹ کھولیں۔
1. سیریل مانیٹر آپشن تلاش کرنے کے لیے `PlatformIO Serial` ٹائپ کریں، اور *PlatformIO: Serial Monitor* منتخب کریں۔
![کمانڈ پیلیٹ میں PlatformIO سیریل مانیٹر آپشن](../../../../../translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.ur.png)
ایک نیا ٹرمینل کھلے گا، اور سیریل پورٹ کے ذریعے بھیجا گیا ڈیٹا اس ٹرمینل میں اسٹریم ہوگا:
```output
> Executing task: platformio device monitor <
--- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
--- More details at http://bit.ly/pio-monitor-filters
--- Miniterm on /dev/cu.usbmodem101 9600,8,N,1 ---
--- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
Hello World
Hello World
```
`Hello World` ہر 5 سیکنڈ میں سیریل مانیٹر پر پرنٹ ہوگا۔
> 💁 آپ اس کوڈ کو [code/wio-terminal](../../../../../1-getting-started/lessons/1-introduction-to-iot/code/wio-terminal) فولڈر میں تلاش کر سکتے ہیں۔
😀 آپ کا 'ہیلو ورلڈ' پروگرام کامیاب رہا!
---
**ڈسکلیمر**:
یہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا غیر درستیاں ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ ہم اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے ذمہ دار نہیں ہیں۔