اس ٹیوٹوریل میں ، ہم کچھ گتے اور امدادی موٹروں سے ایک آرڈینو یونو پر مبنی روبوٹک بازو ڈیزائن کرنے جارہے ہیں ۔ ذیل میں مکمل طور پر تعمیراتی عمل کی وضاحت کی گئی ہے۔ یہاں اس پروجیکٹ میں اردوینو یونو کو سرو موٹروں کو کنٹرول کرنے کا پروگرام بنایا گیا ہے جو روبوٹک بازو کے جوڑ کے طور پر کام کررہے ہیں۔ یہ سیٹ اپ بھی روبوٹک کرین کی طرح نظر آتا ہے یا ہم کچھ آسان موافقت کرکے اسے کرین میں تبدیل کرسکتے ہیں۔ یہ پروجیکٹ ان ابتدائی افراد کے لئے مددگار ثابت ہوگا جو کم لاگت میں ایک سادہ روبوٹ تیار کرنا سیکھنا چاہتے ہیں یا صرف آرڈینوو اور سروو موٹرز کے ساتھ کام کرنا سیکھنا چاہتے ہیں۔
اس اریڈینو روبوٹک بازو کو چار پوٹینومیٹر اس کے ساتھ منسلک کیا جاسکتا ہے ، ہر سروٹو کو کنٹرول کرنے کے لئے ہر پوٹینومیٹر استعمال ہوتا ہے۔ آپ کسی چیز کو چننے کے لئے برتنوں کو گھوماتے ہوئے ان سرووں کو منتقل کرسکتے ہیں ، کچھ مشق کے ذریعہ آپ آسانی سے چیز کو ایک جگہ سے دوسری جگہ لے جا سکتے ہیں۔ ہم نے یہاں کم ٹارک سرووس استعمال کیا ہے لیکن آپ بھاری چیزوں کو لینے کے لئے زیادہ طاقتور سرووس استعمال کرسکتے ہیں۔ ویڈیو کے آخر میں اس پورے عمل کا اچھی طرح سے مظاہرہ کیا گیا ہے ۔ ہمارے دوسرے روبوٹکس پروجیکٹس کو بھی یہاں پر چیک کریں۔
ضروری اجزاء
- ارڈینو اونو
- 1000uF سندارتر (4 ٹکڑے ٹکڑے)
- 100nF سندارتر (4 ٹکڑے ٹکڑے)
- امدادی موٹر (ایس جی 90- چار ٹکڑے)
- 10K برتن- متغیر ریزٹر (4 ٹکڑے)
- بجلی کی فراہمی (5v- ترجیحا دو)
امدادی موٹر
پہلے ہم سروو موٹرز کے بارے میں تھوڑی بات کرتے ہیں۔ سروو موٹرز بنیادی طور پر استعمال ہوتی ہیں جب شافٹ کی درست حرکت یا پوزیشن کی ضرورت ہوتی ہے۔ یہ تیز رفتار درخواستوں کے لئے تجویز کردہ نہیں ہیں۔ امدادی موٹریں کم رفتار ، درمیانے ٹورک اور درست پوزیشن کی درخواست کے ل proposed تجویز کی گئی ہیں۔ لہذا یہ موٹرز روبوٹک بازو ڈیزائن کرنے کے لئے بہترین ہیں ۔
امدادی موٹریں مختلف اشکال اور سائز میں دستیاب ہیں۔ ہم چھوٹے امدادی موٹریں استعمال کرنے جارہے ہیں ، یہاں ہم چار ایس جی 90 سرووس استعمال کرتے ہیں ۔ ایک سرو موٹر میں بنیادی طور پر تاروں ہوں گی ، ایک مثبت وولٹیج کے لئے ہے دوسرا زمین کے لئے اور آخری پوزیشن کی ترتیب کے لئے ہے۔ سرخ تار بجلی سے منسلک ہے ، سیاہ تار زمین سے منسلک ہے اور پیلے تار سگنل سے منسلک ہے۔ اس کے بارے میں مزید جاننے کے لئے اردوینو کو استعمال کرتے ہوئے سروکو موٹر کو کنٹرول کرنے کے اس ٹیوٹوریل کو دیکھیں۔ اردوینو میں ہمارے پاس سروو کو کنٹرول کرنے کے لئے پہلے سے طے شدہ لائبریریاں ہیں ، لہذا امدادی کو کنٹرول کرنا بہت آسان ہے ، جو آپ اس سبق کے ساتھ سیکھیں گے۔
روبوٹک بازو کی تعمیر
کسی فلیٹ اور مستحکم سطح پر جیسا کہ ایک میز یا ہارڈ کارڈ بورڈ لیں۔ اگلا ایک سرو موٹر کو وسط میں رکھیں اور اسے جگہ پر چپکائیں۔ اس بات کو یقینی بنائیں کہ اعداد و شمار میں پیش کردہ علاقے میں گردش کی ڈگری موجود ہے۔ یہ امدادی بازو کی بنیاد کا کام کرتی ہے۔
پہلے سروو کے اوپر گتے کا ایک چھوٹا ٹکڑا رکھیں اور پھر بورڈ کے اس ٹکڑے پر دوسرا سروو رکھیں اور اسے جگہ پر چپکائیں۔ امدادی گردش لازمی طور پر آریھ سے ملتی ہے۔
کچھ گتے لیں اور انہیں 3 سینٹی میٹر x 11 سینٹی میٹر کے ٹکڑوں میں کاٹ دیں۔ اس بات کو یقینی بنائیں کہ ٹکڑا نرم نہیں ہوا ہے۔ ایک سرے پر آئتاکار سوراخ کاٹیں (نیچے سے 0.8CM چھوڑیں) ایک اور امدادی فٹ ہونے کے لئے کافی ہے اور دوسرے سرے پر پیچ کے ساتھ یا گلو کے ذریعہ امدادی گیئر کو مضبوطی سے فٹ کریں۔ پھر پہلے سوراخ میں تیسرا سرو فٹ کریں ۔
اب گتے کے ایک اور ٹکڑے کو کاٹیں جس کی لمبائی نیچے کی شکل میں دکھائی گئی ہے اور اس ٹکڑے کے نیچے ایک اور گئر کو گلو کریں۔
اب چوتھے اور آخری سروو کو دوسرے ٹکڑے کے کنارے پر چپکانا جیسا کہ اعداد و شمار میں دکھایا گیا ہے۔
اس کے ساتھ ، ایک ساتھ دو ٹکڑے نظر آتے ہیں۔
جب ہم اس سیٹ اپ کو اڈے سے جوڑ دیتے ہیں تو اس کی طرح نظر آنا چاہئے ،
یہ تقریبا ہوچکا ہے۔ ہمیں صرف چیز کو روبوٹ ہاتھ کی طرح پکڑنے اور لینے کے ل the ہک بنانے کی ضرورت ہے ۔ ہک کے ل 1 ، لمبائی 1 سینٹی میٹر 7 سینٹی میٹر اور 4 سینٹی میٹر 5 سینٹی میٹر کے کارڈ بورڈ کے ایک اور دو ٹکڑے کاٹ دیں۔ جیسا کہ اعداد و شمار میں دکھایا گیا ہے ان کو ساتھ ساتھ چپکائیں اور انتہائی کنارے پر آخری گیئر پر قائم رہیں۔
اس ٹکڑے کو اوپر چڑھاؤ اور اس کے ساتھ ہی ہم نے اپنا روبوٹک بازو تعمیر کیا ہے ۔
اس کے ساتھ ، ہمارا بنیادی روبوٹک بازو ڈیزائن مکمل ہوگیا اور اسی طرح ہم نے اپنی کم لاگت والا روبوٹک بازو بنایا ہے۔ اب سرکٹ ڈایاگرام کے مطابق سرکٹ کو روٹی بورڈ میں جوڑیں۔
سرکٹ ڈایاگرام اور ورکنگ وضاحت:
ارڈینوو یونو روبوٹک بازو کا سرکٹ کنکشن نیچے دکھایا گیا ہے۔
متغیر کے خلاف مزاحمت کرنے والوں میں وولٹیج پوری طرح لکیری نہیں ہے۔ یہ شور مچائے گا۔ چنانچہ اس شور کو چھاننے کے ل cap ، ہر ایک ریزسٹر میں کپیسیٹرز رکھے جاتے ہیں جیسا کہ اعداد و شمار میں دکھایا گیا ہے۔
اب ہم ان متغیر رزسٹر کے ذریعہ فراہم کردہ وولٹیج (وولٹیج جو پوزیشن کنٹرول کی نمائندگی کرتے ہیں) کو ارڈینو کے اے ڈی سی چینلز میں کھانا کھائیں گے۔ ہم اس کے لئے UN0 کے چار ADC چینلز A0 سے A3 استعمال کریں گے۔ ADC کی ابتدا کے بعد ، ہمارے پاس برتنوں کی ڈیجیٹل قیمت ہوگی جو صارف کے ذریعہ مطلوبہ مقام کی نمائندگی کرتی ہے۔ ہم اس قدر کو لیں گے اور اسے سرو پوزیشن کے ساتھ ملائیں گے۔
ارڈینو کے چھ اے ڈی سی چینل ہیں۔ ہم نے اپنے روبوٹک بازو کے لئے چار استعمال کیے ہیں ۔ یو این او اے ڈی سی 10 بٹ ریزولوشن کی حامل ہے لہذا 0-1023 (2 ^ 10 = 1024 ویلیوز) تک کی عددی اقدار اس کا مطلب ہے کہ یہ 0 اور 5 وولٹ کے درمیان ان پٹ وولٹیجز کو 0 اور 1023 کے درمیان عدد کی اقدار میں نقشہ بنائے گا۔ لہذا ہر یونٹ (5/1024 = 4.9mV) کے لئے فی یونٹ۔ اردوینو میں ADC چینلز کا استعمال کرتے ہوئے وولٹیج کی سطح کی نقشہ سازی کے بارے میں مزید معلومات حاصل کریں۔
اب ، یو این او کو ینالاگ سگنل کو ڈیجیٹل سگنل میں تبدیل کرنے کے ل we ، ہمیں مندرجہ ذیل افعال کی مدد سے ، ارڈینو اونو کا اے ڈی سی چینل استعمال کرنے کی ضرورت ہے۔
1. ینالاگ پڑھیں (پن)؛ 2. ینالاگ حوالہ ()؛ 3. ینالاگ ریڈ ریسولوشن (بٹس)؛
اردوینو اے ڈی سی چینلز میں 5V کی پہلے سے طے شدہ حوالہ قیمت ہے ۔ اس کا مطلب ہے کہ ہم کسی بھی ان پٹ چینل پر اے ڈی سی تبادلوں کے ل 5 زیادہ سے زیادہ ان پٹ وولٹیج 5V دے سکتے ہیں۔ چونکہ کچھ سینسر 0-2.5V سے وولٹیج فراہم کرتے ہیں ، لہذا 5V حوالہ کے ساتھ ، ہمیں کم درستگی مل جاتی ہے ، لہذا ہمارے پاس ایک ہدایت موجود ہے جو ہمیں اس حوالہ کی قیمت کو تبدیل کرنے کے قابل بناتی ہے۔ لہذا حوالہ کی قیمت کو تبدیل کرنے کے لئے ہمارے پاس "ینالاگ حوالہ ()" ہے۔
بطور ڈیفالٹ ہمیں زیادہ سے زیادہ بورڈ اے ڈی سی ریزولوشن ملتا ہے جو 10 بٹس ہے ، اس ریزولوشن کو انسٹرکشن ("اینالاگ ریڈ ریزولوشن (بٹس)؛") استعمال کرکے تبدیل کیا جاسکتا ہے۔
ہمارے روبوٹک ہاتھ سرکٹ میں ، ہم نے پہلے سے طے شدہ کے لیے اس ریفرنس وولٹیج چھوڑ دیا ہے ہم براہ راست تقریب کال کرکے اے ڈی سی چینل سے قدر پڑھ سکتے ہیں تو "analogRead (پن)؛"، یہاں "پن" ہم مطابق سگنل منسلک جہاں پن کی نمائندگی کرتا ہے، کا کہنا ہے ہم "A0" پڑھنا چاہتے ہیں۔ اے ڈی سی سے ملنے والی قدر کو ایک عدد انٹیجر میں جمع کیا جاسکتا ہے ۔ .
اب ہم سروو کے بارے میں بات کرتے ہیں ، اردوینو یونو کی ایک خصوصیت ہے جو ہمیں صرف ڈگری کی قیمت دے کر سرو پوزیشن کو کنٹرول کرنے کے قابل بناتی ہے۔ کہیں کہ اگر ہم چاہتے ہیں کہ امدادی عمر 30 پر ہو تو ہم براہ راست پروگرام میں قیمت کی نمائندگی کرسکتے ہیں۔ SERVO ہیڈر ( servo.h ) فائل داخلی طور پر تمام ڈیوٹی تناسب کے حساب کا خیال رکھتی ہے۔
# شامل کریں
یہاں پہلا بیان SERVO موٹر کو کنٹرول کرنے کے لئے ہیڈر فائل کی نمائندگی کرتا ہے۔ دوسرا بیان امداد کا نام لے رہا ہے۔ ہم اسے servo0 کے طور پر چھوڑ دیتے ہیں کیونکہ ہم چار استعمال کرنے جارہے ہیں۔ تیسرا بیان یہ بیان کرتا ہے کہ جہاں سرو سگنل پن منسلک ہے۔ یہ PWM پن ہونا ضروری ہے۔ یہاں ہم پہلے سرو کے لئے PIN3 استعمال کر رہے ہیں۔ چوتھا بیان ڈگریوں میں सर्वो موٹر پوزیشننگ کے لئے کمانڈ دیتا ہے۔ اگر اسے 30 دیا جاتا ہے تو ، سرو موٹر 30 ڈگری پر گھومتی ہے۔
اب ، ہمارے پاس 0 سے 180 تک ایس جی 90 سرو پوزیشن ہے اور اے ڈی سی کی اقدار 0-1023 کی ہیں۔ ہم ایک خاص فنکشن استعمال کریں گے جو دونوں اقدار سے خود بخود مماثل ہے۔
سینسروالیو 0 = نقشہ (سینسر ویلیو 0 ، 0 ، 1023 ، 0 ، 180)؛
یہ بیان دونوں اقدار کو خود بخود نقشہ بناتا ہے اور نتیجہ 'سرویوالیو0' میں اسٹور کرتا ہے ۔
اس طرح ہم نے اپنے روبوٹک بازو منصوبے میں ارڈینو کا استعمال کرتے ہوئے سرووس کو کنٹرول کیا ہے ۔ ذیل میں پورا کوڈ چیک کریں ۔
روبوٹک بازو کو چلانے کا طریقہ:
صارف کو چار برتنوں کی فراہمی ہے۔ اور ان چار برتنوں کو گھما کر ، ہم UNO کے ADC چینلز پر متغیر وولٹیج فراہم کرتے ہیں۔ لہذا آرڈینوو کی ڈیجیٹل اقدار صارف کے کنٹرول میں ہیں۔ یہ ڈیجیٹل اقدار امدادی موٹر پوزیشن کو ایڈجسٹ کرنے کے لpped نقش کی گئیں ، لہذا امدادی پوزیشن صارف کے اختیار میں ہے اور ان برتنوں کو گھومنے سے صارف روبوٹک بازو کے جوڑ کو حرکت دے سکتا ہے اور کسی بھی چیز کو چن سکتا ہے یا پکڑ سکتا ہے ۔