সুচিপত্র:
- ধাপ 1: প্রকল্প ওভারভিউ
- ধাপ 2: স্কিম্যাটিক্স
- ধাপ 3: PS2 কন্ট্রোলার ডায়াগ্রাম
- ধাপ 4: জিও মডিউল সংযোগ সেট আপ
- ধাপ 5: রোবোটিক আর্ম সার্ভোকে জিও 16 সার্ভো কন্ট্রোলারের সাথে সংযুক্ত করুন
- ধাপ 6: আপনার 16 সার্ভোকে ডিসি/ডিসি বুস্টারের সাথে সংযুক্ত করুন এবং 6.0V এ সেট করুন।
- ধাপ 7: Zuino M Uno কে Zio 16 Servo Controller এর সাথে সংযুক্ত করুন
- ধাপ 8: ইউএনওকে PS2 রিসিভারের সাথে সংযুক্ত করা
- ধাপ 9: রোবোটিক আর্মের জন্য কোড
- ধাপ 10: আপনার কোড চালান
- ধাপ 11: কোড ব্যাখ্যা
ভিডিও: জিও মডিউল সহ রোবোটিক আর্ম পার্ট 2:11 ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:01
আজকের টিউটোরিয়ালে, আমরা রোবটিক বাহু নিয়ন্ত্রণ করতে সমস্ত 4 টি সার্ভস এবং একটি PS2 ওয়্যারলেস কন্ট্রোলার ব্যবহার করব।
এই ব্লগ পোস্টটি জিও রোবটিক্স সিরিজের অংশ।
ভূমিকা
আমাদের আগের ব্লগে, আমরা কিভাবে জিও মডিউল ব্যবহার করে একটি রোবোটিক আর্ম নিয়ন্ত্রণ করতে পার্ট 1 টি টিউটোরিয়াল পোস্ট করেছি। পার্ট 1 বেশিরভাগই স্বয়ংক্রিয়ভাবে আপনার রোবোটিক আর্মের নখ খোলার এবং বন্ধ করার নিয়ন্ত্রণে মনোনিবেশ করেছে।
আজকের টিউটোরিয়ালে, আমরা রোবোটিক আর্মকে নিয়ন্ত্রণ করার জন্য একটি PS2 ওয়্যারলেস কন্ট্রোলার অন্তর্ভুক্ত করে এটিকে একটু বাড়িয়ে দেব। এই প্রকল্পের জন্য, আমরা 4 টি সার্ভিস ব্যবহার করব।
ধাপ 1: প্রকল্প ওভারভিউ
কাঠিন্য মাত্রা:
জিও পদাওয়ান
সহায়ক সম্পদ:
জিও ডেভেলপমেন্ট বোর্ডগুলি কীভাবে ইনস্টল করবেন সে সম্পর্কে আপনার প্রাথমিক ধারণা থাকা উচিত। এই টিউটোরিয়ালে, আমরা ধরে নিচ্ছি যে আপনার ডেভেলপমেন্ট বোর্ড ইতিমধ্যেই কনফিগার করা আছে এবং সেট আপ করার জন্য প্রস্তুত। আপনি যদি এখনও আপনার বোর্ড কনফিগার না করে থাকেন তাহলে শুরু করতে আমাদের জিও কিউইক স্টার্ট গাইড টিউটোরিয়ালটি দেখুন:
Zio Zuino M UNO Qwiic Start Guide
ধাপ 2: স্কিম্যাটিক্স
এখানে রোবোটিক আর্ম পার্ট 2 প্রজেক্টের ওয়্যারিং স্কিম্যাটিক্সের পাশাপাশি আপনার কোডিং অংশের জন্য বোঝার জন্য প্রয়োজনীয় PS2 কন্ট্রোলার ডায়াগ্রাম।
ধাপ 3: PS2 কন্ট্রোলার ডায়াগ্রাম
ধাপ 4: জিও মডিউল সংযোগ সেট আপ
নীচে আমাদের জিও মডিউলগুলির সংযোগ স্থাপন করা হবে রোবোটিক আর্মের সাথে। সমস্ত মডিউল একসাথে সংযুক্ত করা বেশ সহজ এবং সেট আপ করতে 10 মিনিটের বেশি সময় লাগবে না।
ধাপ 5: রোবোটিক আর্ম সার্ভোকে জিও 16 সার্ভো কন্ট্রোলারের সাথে সংযুক্ত করুন
ধাপ 6: আপনার 16 সার্ভোকে ডিসি/ডিসি বুস্টারের সাথে সংযুক্ত করুন এবং 6.0V এ সেট করুন।
আমরা একটি ডিসি/ডিসি বুস্টার ব্যবহার করে ব্যাটারি সাপ্লাই ভোল্টেজ 6.0 তে উন্নীত এবং সামঞ্জস্য করতে।
6.0 না পাওয়া পর্যন্ত ভোল্টেজ সামঞ্জস্য করতে ডিসি বুস্টারে পোটেন্টিওমিটার ব্যবহার করুন। ডিসপ্লে 6.0 না দেখানো পর্যন্ত ইন/আউট বোতাম টিপুন। ভোল্টেজ সামঞ্জস্য করার জন্য আপনাকে প্রথমে আপনার ডিসি/ডিসি বুস্টারে পাওয়ার (3.7V ব্যাটারি) সরবরাহ করতে হবে।
ধাপ 7: Zuino M Uno কে Zio 16 Servo Controller এর সাথে সংযুক্ত করুন
Qwiic Zuino M Uno কে Qwiic ক্যাবল দিয়ে Zio Servo কন্ট্রোলারের সাথে সংযুক্ত করে।
ধাপ 8: ইউএনওকে PS2 রিসিভারের সাথে সংযুক্ত করা
এখানে সংযোগগুলির একটি পিন ডায়াগ্রাম। এই অংশের জন্য আপনার 5 জন পুরুষ থেকে মহিলা জাম্পার তারের প্রয়োজন।
ধাপ 9: রোবোটিক আর্মের জন্য কোড
আমরা আমাদের রোবোটিক আর্মের সাথে কাজ করার জন্য আমাদের PS2 ওয়্যারলেস কন্ট্রোলারকে কোড করতে PS2 Arduino লাইব্রেরি ব্যবহার করব। আপনি আমাদের Github পৃষ্ঠায় এই রোবোটিক আর্ম পার্ট 2 প্রকল্পের সোর্স কোড খুঁজে পেতে এবং ডাউনলোড করতে পারেন।
নিম্নলিখিত লাইব্রেরিগুলি ডাউনলোড এবং ইনস্টল করুন এবং আপনার স্থানীয় Arduino IDE লাইব্রেরি ফোল্ডারে সংরক্ষণ করুন:
- Adafruit PWM Servo Driver Library
- PS2 Arduino লাইব্রেরি
লাইব্রেরিগুলি ইনস্টল করতে আপনার Arduino IDE খুলুন, স্কেচ ট্যাবে যান, লাইব্রেরি অন্তর্ভুক্ত করুন -> Add. Zip লাইব্রেরি নির্বাচন করুন। আপনার IDE তে অন্তর্ভুক্ত করার জন্য উপরের লাইব্রেরিগুলি নির্বাচন করুন।
Arduino আপনার Arduino IDE তে লাইব্রেরি কিভাবে ইনস্টল করবেন তার একটি সহজ নির্দেশিকা রয়েছে। তাদের এখানে দেখুন!
ধাপ 10: আপনার কোড চালান
Arduino IDE খুলুন। ফাইল> উদাহরণ> PS2_Arduino_Library এর অধীনে, PS2X_Servo নির্বাচন করুন
দ্রষ্টব্য: PS2 কন্ট্রোলারের সাহায্যে আপনার রোবোটিক বাহু নিয়ন্ত্রণ করার আগে নিচের ধাপগুলো পরীক্ষা করুন: আপনার PS2 কন্ট্রোলার চালু করুন। মোড LED জ্বলছে কিনা তা পরীক্ষা করুন। যদি তা না হয়, আপনার নিয়ামক মোড বোতাম টিপুন। উপরের কাজগুলো করার পরে, আপনার কন্ট্রোলার সেটিংস পড়ার জন্য আপনাকে আপনার Zuino M Uno তে রিসেট বাটন টিপতে হবে। আপনার রোবটিক আর্মটি সরানোর জন্য আপনাকে L1 এবং জয়স্টিক টিপতে হবে।
- বাম জয়স্টিক আর্মের নমনকে উপরের দিকে বা নিচের দিকে নিয়ন্ত্রণ করে
- ডান জয়স্টিক নখকে খোলার বা বন্ধ করার এবং নখকে বাম বা ডানদিকে ঘোরানোর জন্য নিয়ন্ত্রণ করে।
ধাপ 11: কোড ব্যাখ্যা
PS2X Arduino লাইব্রেরির ব্যবহার সহজ, শুধুমাত্র একটি প্রারম্ভিকতা, একটি সেটআপ, এবং তারপর একটি রিড কমান্ড প্রয়োজন।
আপনার ইউএনও এর সাথে আপনার পিএস 2 কন্ট্রোলারের সংযোগ স্থাপন করতে, আপনার কোডে আপনাকে যে পিনগুলি নির্ধারণ করতে হবে তা নীচে রয়েছে:
/***************************************************** ****************সেট পিন PS2 নিয়ামক সংযুক্ত:* - 1e কলাম: মূল* - 2e colmun: Stef? *আপনি যেগুলি ব্যবহার করেন তার দ্বারা পিন নম্বর প্রতিস্থাপন করুন ********************************************** ************************/#PS2_DAT 13 // 14 সংজ্ঞায়িত করুন PS2_CMD 11 // 15#PS2_SEL 10 // 16#PS2_CLK 12 সংজ্ঞায়িত করুন // 17
উপরের পিন ডায়াগ্রামে বর্ণিত হিসাবে আমরা আমাদের ইউনোর সাথে সংযোগ করতে যে পিনগুলি ব্যবহার করি সেগুলি দিয়ে আমরা পিনগুলি প্রতিস্থাপন করেছি।
/***************************************************** **************** PS2 নিয়ামক নির্বাচন পদ্ধতি:* - চাপ = পুশ -বাটন এর এনালগ পড়া ****************************************************** ************///#চাপ সংজ্ঞায়িত করুন সত্যকে সংজ্ঞায়িত করুন মিথ্যাকে সংজ্ঞায়িত করুন
এখানে আমরা চাপের জন্য PS2 মোড সংজ্ঞায়িত করেছি এবং গুজবকে মিথ্যা বলেছি। আমরা যাদের ব্যবহার করি না তাদের মন্তব্য করেছি।
আমরা শুধুমাত্র আমাদের রোবোটিক আর্মের গতিবিধি নিয়ন্ত্রণ করতে কন্ট্রোলারের জয়স্টিক কমান্ড এবং L1 ব্যবহার করব।
অকার্যকর লুপ () {/* আপনাকে নতুন মান পেতে এবং কম্পন মান ps2x.read_gamepad (ছোট মোটর চালু/বন্ধ, 0-255 থেকে বড় মোটর শক্তি) সেট করতে গেমপ্যাড পড়তে হবে (); কোন মান ছাড়াই আপনাকে এটি অন্তত একবার সেকেন্ডে কল করতে হবে অন্য {// ডুয়ালশক কন্ট্রোলার ps2x.read_gamepad (মিথ্যা, কম্পন); // কন্ট্রোলার পড়ুন এবং 'ভাইব্রেট' গতিতে স্পিন করার জন্য বড় মোটর সেট করুন (ps2x. Button (PSB_START)) // যতক্ষণ পর্যন্ত বোতাম টিপলে সিরিয়াল.প্রিন্টলন ("স্টার্ট হোল্ড হচ্ছে") সত্য হবে; যদি (ps2x. Button (PSB_SELECT)) Serial.println ("নির্বাচন অনুষ্ঠিত হচ্ছে"); কম্পন = ps2x. অ্যানালগ (PSAB_CROSS); // এটি নীল (X) বোতামটি কতটা চাপলে তার উপর ভিত্তি করে বড় মোটর কম্পনের গতি সেট করবে (ps2x. Button (PSB_L1) || = ps2x. অ্যানালগ (PSS_RY); RX_Value = ps2x. Analog (PSS_RX); LY_Value = ps2x. Analog (PSS_LY); LX_Value = ps2x. Analog (PSS_LX); Serial.print ("Stick Values:"); সিরিয়াল.প্রিন্ট (RX_Value); সিরিয়াল.প্রিন্ট (""); সিরিয়াল.প্রিন্ট (RY_Value); সিরিয়াল.প্রিন্ট (""); সিরিয়াল.প্রিন্ট (LY_Value); সিরিয়াল.প্রিন্ট (""); Serial.println (LX_Value);
নীচের কোডটি হল যেখানে আমরা আমাদের সার্ভোসগুলিকে কোড করি যা আমাদের রোবোটিক বাহু নিয়ন্ত্রণ করে যা আমরা ps2x.button (PSB_L1) এর অধীনে ফাংশন কলটিতে অন্তর্ভুক্ত করি || ps2x.button (PSB_R1)।
আপনার রোবটিক আর্ম নিয়ন্ত্রণ করতে আপনাকে জয়স্টিকের সাথে L1 বা R1 বোতাম টিপতে হবে।
বাহু অংশের জন্য বাম জয়স্টিক কন্ট্রোল সার্ভিস 2 এবং 3 - যথাক্রমে বাহুর উপরে এবং নিচে বাঁক নিয়ন্ত্রণ করে, যখন ডান জয়স্টিক রোবটিক আর্মের নখ 0 এবং 1 নিয়ন্ত্রণ করে খোলা বা বন্ধ করতে এবং বাম বা ডানদিকে ঘোরানোর জন্য।
SERVO 0, 1 - নখ SERVO 2, 3 - আর্ম
আপনার রোবটিক আর্ম এঙ্গেলের ডিগ্রী নিয়ন্ত্রণ করতে আপনি এই বিভাগে মান পরিবর্তন করতে পারেন:
pulselen0 = মানচিত্র (RY_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen1 = মানচিত্র (RX_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen2 = মানচিত্র (LY_Value, 0, 127, SERVOMIN2, SERVOMAX2); pulselen3 = মানচিত্র (LX_Value, 0, 255, SERVOMIN3, SERVOMAX3);
প্রস্তাবিত:
PS2 কন্ট্রোলার ব্যবহার করে জিও দিয়ে রোবোটিক আর্ম নিয়ন্ত্রণ করুন: 4 টি ধাপ
PS2 কন্ট্রোলার ব্যবহার করে জিও দিয়ে রোবটিক আর্ম নিয়ন্ত্রণ করুন: এই ব্লগ পোস্টটি জিও রোবটিক্স সিরিজের একটি অংশ। এই টিউটোরিয়ালে, আমরা আমাদের রোবোটিক আর্মের আরেকটি অংশ যুক্ত করব। পূর্ববর্তী টিউটোরিয়ালগুলির জন্য একটি বেস অন্তর্ভুক্ত নয়
জিও মডিউল সহ রোবোটিক আর্ম পার্ট 3: 4 ধাপ
জিও মডিউল সহ রোবোটিক আর্ম পার্ট 3: এই ব্লগ পোস্টটি জিও রোবটিক্স সিরিজের অংশ। ভূমিকা আমাদের আগের ব্লগে, আমরা জিও মডিউল ব্যবহার করে একটি রোবোটিক আর্মকে কিভাবে নিয়ন্ত্রণ করতে হয় সে বিষয়ে পার্ট 1 এবং 2 টি টিউটোরিয়াল পোস্ট করেছি। পার্ট 1 বেশিরভাগই স্বয়ংক্রিয়ভাবে আপনার রোবোটিক আর্মের নখ নিয়ন্ত্রণে মনোনিবেশ করেছে
জিও মডিউল এবং Qwiic সঙ্গে I2C প্রবর্তন: 6 ধাপ
জিও মডিউল এবং কিউইইকের সাথে I2C প্রবর্তন: রবিন শর্মা বলেছেন: 'সময়ের সাথে ছোট ছোট উন্নতি চমকপ্রদ ফলাফলের দিকে নিয়ে যায়'। আপনি হয়তো ভাবছেন, 'আরে, আরেকটি I2C পোস্ট?'। ঠিক আছে, যখন I2C এর কথা আসে তখন অবশ্যই হাজার হাজার তথ্য থাকে। তবে সাথে থাকুন, এটি কেবল অন্য একটি I2C নয়
জিও মডিউল পার্ট 1: 8 ধাপের সাহায্যে একটি রোবোটিক আর্ম নিয়ন্ত্রণ করুন
জিও মডিউল দিয়ে একটি রোবোটিক আর্ম নিয়ন্ত্রণ করুন পার্ট 1: এই ব্লগ পোস্টটি জিও রোবটিক্স সিরিজের একটি অংশ। এই টিউটোরিয়ালে, আমরা একটি প্রকল্প তৈরি করব যেখানে আমরা রোবোটিক আর্ম নিয়ন্ত্রণ করতে জিও মডিউল ব্যবহার করব। এই প্রকল্পটি আপনাকে শেখাবে কিভাবে আপনার রোবটিক আর্মের নখ খুলতে এবং বন্ধ করতে হয়। এই n
কীভাবে একটি প্রভাবশালী কাঠের রোবট আর্ম (পার্ট 3: রোবট আর্ম) - মাইক্রো ভিত্তিক: BITN: 8 টি পদক্ষেপ
কীভাবে একটি প্রভাবশালী কাঠের রোবট আর্ম (পার্ট 3: রোবট আর্ম) - মাইক্রো ভিত্তিক: বিটএন: পরবর্তী ইনস্টলেশন প্রক্রিয়াটি এড়ানো বাধা মোডের সমাপ্তির উপর ভিত্তি করে। পূর্ববর্তী বিভাগে ইনস্টলেশন প্রক্রিয়াটি লাইন-ট্র্যাকিং মোডে ইনস্টলেশন প্রক্রিয়ার মতো। তাহলে আসুন A এর চূড়ান্ত রূপটি দেখে নেওয়া যাক