- ضروری اجزاء
- سرو موٹر کی پن کی تفصیل
- سرکٹ ڈایاگرام
- امدادی موٹر کو AVR ATmega16 کے ساتھ کنٹرول کرنا
- پروگرامنگ ایٹمیگا 16 USBasp کا استعمال کرتے ہوئے
سروو موٹرز کا وسیع پیمانے پر استعمال ہوتا ہے جہاں عین مطابق کنٹرول کی ضرورت ہوتی ہے جیسے روبوٹ ، خودکار مشینری ، روبوٹک بازو وغیرہ۔ تاہم ، سروو موٹر کا دائرہ کار اس حد تک محدود نہیں ہے اور بہت سے ایپلی کیشنز میں استعمال ہوسکتا ہے۔ امدادی موٹر کی بنیادی باتیں ، نظریہ اور ورکنگ اصول کے بارے میں مزید جاننے کے لئے لنک پر عمل کریں۔
اس سے قبل ہم نے بہت سے مائکروکانٹرولرز کے ساتھ سروو موٹر کا انٹرفیس کیا:
- انٹرفیسنگ سرو موٹر سے اے آر ایم 7-ایل پی سی 2148
- ایم ایس پی 430 جی 2 کے ساتھ انٹرفیسنگ سروو موٹر
- STM32F103C8 کے ساتھ انٹرفیسنگ سروو موٹر
- ایم پی ایل بی اور ایکس سی 8 کا استعمال کرتے ہوئے پی آئی سی مائکروکنٹرولر کے ساتھ انٹر موٹرسائکو موٹر
- اردوینو یونو کے ساتھ انٹر موٹرسائیکو سروو موٹر
- امدادی موٹر 8051 مائکروکانٹرولر کے ساتھ انٹرفیسنگ
اس ٹیوٹوریل میں ، ہم ایٹمیگا 16 اے وی آر مائکروکنٹرولر کے ساتھ ایٹمل اسٹوڈیو 7.0 کا استعمال کرتے ہوئے مائیکرو سرو موٹر کو انٹرفیس کریں گے ۔ سروو موٹر کو 4.8-6V میں کام کرنے کا درجہ دیا گیا ہے۔ ہم پلس ٹرین یا پی ڈبلیو ایم سگنل لگا کر اس کے گردش اور سمت کے زاویہ کو کنٹرول کرسکتے ہیں۔ نوٹ کریں کہ सर्वो موٹرز مکمل ڈگری گردش کے ل for حرکت نہیں کرسکتے ہیں ، لہذا وہ استعمال کیے جاتے ہیں جہاں مسلسل گھومنے کی ضرورت نہیں ہوتی ہے۔ گردش کا زاویہ 0 -180 ڈگری یا (-90) - (+90) ڈگری ہے۔
ضروری اجزاء
- ایس جی 90 ٹاور پرو مائکرو سروو موٹر
- ایٹمیگا 16 مائکروکنٹرولر آئی سی
- 16 میگاہرٹز کرسٹل آسیلیٹر
- دو 100nF کپیسیٹرز
- دو 22pF کپیسیٹرز
- دبانے والا بٹن
- جمپر تاروں
- بریڈ بورڈ
- USBASP v2.0
- قیادت (کسی بھی رنگ)
سرو موٹر کی پن کی تفصیل
- ریڈ = مثبت بجلی کی فراہمی (4.8V سے 6V)
- بھوری = گراؤنڈ
- اورنج = کنٹرول سگنل (PWM پن)
سرکٹ ڈایاگرام
ذیل میں آراگرام میں دکھائے گئے تمام اجزاء کو مربوط کریں تاکہ AVR مائکروکونٹرولر کا استعمال کرتے ہوئے सर्वो موٹر کو گھمائیں ۔ چار PWM پن ہیں ، ہم Atmega16 کا کوئی بھی PWM پن استعمال کرسکتے ہیں۔ اس ٹیوٹوریل میں ہم PWM پیدا کرنے کے لئے پن PD5 (OC1A) استعمال کر رہے ہیں۔ PD5 براہ راست सर्वो موٹر کے اورنج تار سے جڑا ہوا ہے جو ان پٹ سگنل پن ہے۔ پاور اشارے کے لئے کسی بھی رنگ کو مربوط کریں۔ نیز ، جب بھی ضرورت ہو Atmega16 کو ری سیٹ کرنے کیلئے ری سیٹ پن میں ایک پش بٹن کو مربوط کریں۔ اتمیگا 16 کو مناسب کرسٹل آسکیلیٹر سرکٹ سے مربوط کریں۔ تمام سسٹم 5 وی سپلائی کے ذریعہ تقویت یافتہ ہوگا۔
مکمل سیٹ اپ نیچے کی طرح نظر آئے گا:
امدادی موٹر کو AVR ATmega16 کے ساتھ کنٹرول کرنا
اسٹیپر موٹر کی طرح ، سروو موٹر کو کسی بیرونی ڈرائیور کی ضرورت نہیں ہے جیسے ULN2003 یا L293D موٹر ڈرائیور۔ امدادی موٹر چلانے کے لئے صرف پی ڈبلیو ایم کافی ہے اور مائکروکنٹرولر سے پی ڈبلیو ایم تیار کرنا بہت آسان ہے۔ اس سروو موٹر کا ٹارک 2.5 کلوگرام / سینٹی میٹر ہے ، لہذا اگر آپ کو زیادہ سے زیادہ ٹارک کی ضرورت ہو تو یہ سروو مناسب نہیں ہے۔
جیسا کہ ہم جانتے ہیں کہ سروو موٹر ہر 20 سیکنڈ میں ایک نبض ڈھونڈتا ہے اور مثبت نبض کی لمبائی اس سروو موٹر کے گردش زاویہ کا تعین کرے گی۔
20 ایم ایس پلس حاصل کرنے کے لئے مطلوبہ تعدد 50 ہ ہرٹز (ایف = 1 / ٹی) ہے۔ لہذا اس سروو موٹر کے لئے ، تفصیلات بتاتی ہیں کہ 0 ڈگری کے لئے ہمیں 0.388ms کی ضرورت ہے ، 90 ڈگری کے لئے ہمیں 1.264ms اور 180 ڈگری کے لئے ہمیں 2.14ms نبض کی ضرورت ہے۔
مخصوص دالیں تیار کرنے کے ل we ہم Atmega16 کا ٹائمر 1 استعمال کریں گے۔ سی پی یو کی فریکوئنسی 16 میگاہرٹز ہے لیکن ہم صرف 1 میگاہرٹز کا استعمال کریں گے کیونکہ ہمارے پاس مائکروکونٹرولر سے زیادہ سے زیادہ پیری فیرلز نہیں جڑے ہوئے ہیں اور مائیکروکنٹرولر پر زیادہ بوجھ نہیں ہے ، لہذا 1 میگاہرٹز کام کرے گا۔ پری اسکیلر 1 پر سیٹ ہے۔ لہذا گھڑی کو 1 میگاہرٹز / 1 = 1 میگاہرٹز (1uS) کے طور پر تقسیم کیا گیا ہے جو بہت اچھا ہے۔ ٹائمر 1 کو فاسٹ پی ڈبلیو ایم موڈ یعنی موڈ 14 کے طور پر استعمال کیا جائے گا۔ آپ مطلوبہ پلس ٹرین بنانے کے لئے ٹائمر کے مختلف طریقوں کا استعمال کرسکتے ہیں۔ حوالہ ذیل میں دیا گیا ہے اور آپ مزید تفصیل ایٹمیگا 16 آفیشل ڈیٹا شیٹ میں حاصل کرسکتے ہیں۔
ٹائمر 1 کو تیز پی ڈبلیو ایم وضع کے بطور استعمال کرنے کے لئے ہمیں آئی سی آر 1 (ان پٹ کیپچر رجسٹر 1) کی ٹاپ ویلیو کی ضرورت ہوگی۔ نیچے دیئے گئے TOP قدر کے استعمال کے فارمولے کو تلاش کرنے کے ل To:
f pwm = f cpu / nx (1 + TOP)
اس کو آسان بنایا جاسکتا ہے ،
TOP = ( f cpu / ( f pwm xn)) - 1
جہاں ، N = ویلڈی آف پریسلر سیٹ
ایف سی پی یو = CPU Frequencey
f pwm = सर्वो موٹر نبض کی چوڑائی جو 50 ہ ہرٹز ہے
اب آئی سی آر 1 کی قدر کا حساب لگائیں کیونکہ ہمارے پاس تمام قدر کی ضرورت ہے ،
N = 1 ، f cpu = 1MHz ، f pwm = 50Hz
بس اقدار کو اوپر والے فارمولے میں رکھیں اور ہمیں مل جائے گا
ICR1 = 1999
اس کا مطلب ہے کہ زیادہ سے زیادہ ڈگری حاصل کرنا یعنی 180 0 ICR1 1999 ہونا چاہئے۔
16 میگاہرٹز کرسٹل اور پریسکلر 16 پر سیٹ کریں گے ، ہمارے پاس ہوگا
ICR1 = 4999
اب خاکہ پر گفتگو کرنے کے لئے آگے بڑھتے ہیں۔
پروگرامنگ ایٹمیگا 16 USBasp کا استعمال کرتے ہوئے
امدادی موٹر کو کنٹرول کرنے کے لئے مکمل AVR کوڈ ذیل میں دیا گیا ہے۔ کوڈ آسان ہے اور آسانی سے سمجھا جاسکتا ہے۔
یہاں ہم نے سرو موٹر کو 0 0 سے 180 0 تک گھومانے اور 180 0 سے 0 0 تک دوبارہ واپس آنے کے لme اتمیگا 16 کوڈ کیا ہے ۔ یہ منتقلی 9 مراحل میں مکمل ہوگی یعنی 0 - 45 - 90 - 135 - 180 - 135 - 90 - 45 - 0. تاخیر کے لئے، ہم اٹیل اسٹوڈیو کی داخلی لائبریری کا استعمال کریں گے۔
اپنے USBASP v2.0 کو مربوط کریں اور اس لنک میں دی گئی ہدایات پر عمل کریں پروگرام Atmega16 AVR مائکروکونٹرولر کا استعمال کرتے ہوئے USBASP اور اتمیل اسٹوڈیو 7.0 ۔ بیرونی ٹول چین کا استعمال کرکے صرف خاکہ تیار کریں اور اپ لوڈ کریں۔
مظاہرے ویڈیو کے ساتھ مکمل کوڈ ذیل میں دیا گیا ہے۔ روبوٹکس میں ان کی اہمیت کو جاننے کے ذریعہ امدادی موٹروں کے بارے میں مزید معلومات حاصل کریں۔