সুচিপত্র:

লিপ মোশন নিয়ন্ত্রিত দূরবর্তী অনুসন্ধান এবং নিষ্পত্তি রোবট: 5 টি ধাপ
লিপ মোশন নিয়ন্ত্রিত দূরবর্তী অনুসন্ধান এবং নিষ্পত্তি রোবট: 5 টি ধাপ

ভিডিও: লিপ মোশন নিয়ন্ত্রিত দূরবর্তী অনুসন্ধান এবং নিষ্পত্তি রোবট: 5 টি ধাপ

ভিডিও: লিপ মোশন নিয়ন্ত্রিত দূরবর্তী অনুসন্ধান এবং নিষ্পত্তি রোবট: 5 টি ধাপ
ভিডিও: ৫০০ টি বাছাই করা দৈনন্দিন ব্যবহৃত ইংরেজি শব্দভাণ্ডার || 500 most important vocabulary || #ielts 2024, নভেম্বর
Anonim
Image
Image

লিপ মোশন #3 ডি জ্যামের জন্য আমার প্রবেশের অংশ হিসাবে, আমি রাস্পবেরি পাই এর উপর ভিত্তি করে এই ওয়্যারলেস অঙ্গভঙ্গি নিয়ন্ত্রিত অনুসন্ধান/উদ্ধার রোবট তৈরি করতে পেরে উচ্ছ্বসিত ছিলাম। এই প্রজেক্টটি দেখায় এবং কিভাবে একটি বেতার 3D হাতের অঙ্গভঙ্গি ব্যবহার করা যায় এবং শারীরিক জিনিসগুলির সাথে যোগাযোগ করতে একটি সংক্ষিপ্ত উদাহরণ প্রদান করে।

যেহেতু এই প্রকল্পটি রাস্পবেরি পাইতে জনপ্রিয় ওয়েবআইওপিআই আইওটি কাঠামো ব্যবহার করে, তাই এটি খুব সহজেই নিয়ন্ত্রণ এবং ইন্টারফেসের জন্য প্রসারিত করা যেতে পারে সাধারণত সেন্সর/হার্ডওয়্যার/ইলেকট্রনিক্স যা রাস্পবেরি পাই দিয়ে ইন্টারফেস করা যায়।

কিছু সম্ভাব্য দৃশ্য যা আমি কল্পনা করি সঙ্গী নির্মাতারা এই প্রকল্পটি তাদের ভিত্তি কাঠামো হিসাবে ব্যবহার করতে পারেন:

1. দূরবর্তী অঙ্গভঙ্গি পরিচালিত বোমা নিষ্ক্রিয়করণ রোবট (সম্ভবত একটি OWI আর্ম ইত্যাদি ব্যবহার করে)

2. একজন ডাক্তার দ্বারা দূরবর্তী অস্ত্রোপচার অপারেশন

3. অঙ্গভঙ্গি নিয়ন্ত্রিত ইন্টারেক্টিভ আর্ট প্রদর্শনী বা শিক্ষামূলক বিষয়বস্তু

4. অসীম অন্যান্য সম্ভাবনা/ইন্টিগ্রেশন (আমি আমার কল্পনা দ্বারা সীমাবদ্ধ:))

ধাপ 1: ওভারভিউ

WebIOPi ফ্রেমওয়ার্ক বোঝা
WebIOPi ফ্রেমওয়ার্ক বোঝা

এই প্রকল্পটি ব্যবহারকারীকে একটি পিসির সাথে সংযুক্ত লিপ মোশনের মাধ্যমে 3D হাতের অঙ্গভঙ্গি ব্যবহার করে একটি রোবটকে ইন্টারেক্টিভভাবে নিয়ন্ত্রণ করতে দেয়।

রাস্পবেরি পাই অন-বোর্ড রোবটটিতে একটি ইউএসবি ওয়েবক্যামও রয়েছে যা ব্যবহারকারীর কাছে সরাসরি ভিডিও স্ট্রিম করে যা একটি ওয়েব ব্রাউজারে দেখা যায়। লিপমোশন জাভাস্ক্রিপ্ট লাইব্রেরি এই ওয়েবপেজে এম্বেড করা হাতের অঙ্গভঙ্গি প্রক্রিয়া করে এবং নিয়ন্ত্রণ সংকেতগুলি রোবটের কাছে ফেরত পাঠায়, যা তারপর সেই অনুযায়ী চলে।

রোবটের রাস্পবেরি পাইটি হটস্পট (এপি মোড) হিসাবে কনফিগার করা হয়েছে যার সাহায্যে এটি সংযুক্ত ইউএসবি ওয়াইফাই ডংগলের সাহায্যে। এটি আমাদের পিসি/ডিভাইসগুলিকে সরাসরি রাস্পবেরি পাইয়ের সাথে সংযুক্ত করতে এবং একটি ওয়েবপৃষ্ঠার মাধ্যমে নিয়ন্ত্রণ করতে দেয়। রাস্পবেরি পাই ক্লায়েন্ট মোডে কাজ করার জন্য কনফিগার করা যেতে পারে, যেখানে এটি ওয়াইফাই রাউটারের AP এর সাথে ওয়্যারলেস সংযোগ করে যেখানে পিসি/ডিভাইসগুলি ইতিমধ্যেই সংযুক্ত।

এই প্রকল্পটি WebIOPi (https://webiopi.trouch.com/) এর উপর ভিত্তি করে তৈরি করা হয়েছে যা রাস্পবেরি পাই এর জন্য একটি জনপ্রিয় IoT ফ্রেমওয়ার্ক। বান্ডেলড উইভড আইওটি কিট (বা রাউটারে পোর্ট ফরওয়ার্ডিংয়ের মাধ্যমে) ব্যবহার করে, এই রোবটটি দূরবর্তীভাবে নিয়ন্ত্রণ করা যায় এবং/অথবা বিশ্বের যে কোন প্রান্ত থেকে ডেটা গ্রহণ করা যায়।

প্রকল্পটি নির্মাণের জন্য নিম্নলিখিত উপাদানগুলি ব্যবহার করা হয়েছিল:

  1. রাস্পবেরি পাই বি (রাস্পবেরি পাই বি+এর সাথে 100% এগিয়ে সামঞ্জস্যপূর্ণ)
  2. লজিটেক ইউএসবি ওয়েবক্যাম (সামান্য 1.3 মেগাপিক্সেল)
  3. L293D মোটর ড্রাইভার আইসি এবং ব্রেকআউট শিল্ড
  4. রাস্পবেরি পাই এর জন্য ইউএসবি ওয়াইফাই ডংগল
  5. রাস্পবেরি পাই এর জন্য ইউএসবি পাওয়ার ব্যাংক
  6. রোবট মোটর চালানোর জন্য বাহ্যিক 4V/1.5A ব্যাটারি

ধাপ 2: প্রকল্প নির্মাণ

WebIOPi ইনস্টল করা, কাস্টম কোড লেখা এবং ওয়েবক্যাম কনফিগার করা:

WebIoPi ইনস্টলেশন নির্দেশাবলী, কাঠামোর মূল বিষয় এবং অনেক উদাহরণ এখানে প্রকল্প পৃষ্ঠায় পাওয়া যায়:

ওয়েব পেজে ট্রিগার জিপিআইও ক্রিয়াকলাপগুলি রাস্পবেরি পাই -তে এম্বেড করা লিপমোশন ফাংশনগুলি পেতে, আমরা ম্যাক্রো ব্যবহার করেছি, যার বিবরণ এখানে পাওয়া যায়:

আমি উপরের প্রক্রিয়া সম্পর্কে কিছু শুরু নোট লিখেছি যা সংযুক্ত পাওয়া যাবে।

ওয়েবক্যাম ইনস্টল এবং কনফিগার করা

আমরা পিজে সংযুক্ত ইউএসবি ওয়েবক্যামের মাধ্যমে রাস্পবেরি পাই থেকে ব্রাউজারে ভিডিও ফিড স্ট্রিম করার জন্য এমজেপিজি-স্ট্রিমার ব্যবহার করছি। রাস্পবেরি পাই-তে এমজেপিজি-স্ট্রিমার কাজ করার জন্য অনুগ্রহ করে https://blog.miguelgrinberg.com/post/how-to-build-… নির্দেশিত সেটআপ এবং বিল্ড নির্দেশাবলী অনুসরণ করুন।

Raspberry Pi কে AP/Hotspot হিসেবে কনফিগার করা হচ্ছে

হোস্টপট হিসাবে রাস্পবেরি পাই সেটআপ করার জন্য, দয়া করে এখানে প্রদত্ত নির্দেশাবলী অনুসরণ করুন: https://elinux.org/RPI-Wireless-Hotspot। আমি রাস্পবেরি পাই এর স্ট্যাটিক আইপি 192.168.42.1 হিসাবে কনফিগার করেছি যা পাই ব্রাউজারে টাইপ করার পরে আমরা পি মোড এ বুট হয়ে যাই।

ওয়েবআইওপিআই, এমজেপিজি-স্ট্রিমার এবং ওয়াইফাই হটস্পট পরিষেবাটি বুটে স্বয়ংক্রিয়ভাবে চালানোর জন্য কনফিগার করা হয়েছে এবং এটি আমাদের একটি ওয়েব ব্রাউজার সরাসরি খুলতে এবং বুট হওয়ার পরে রোবটের সাথে সংযোগ স্থাপন করতে দেয়। রেপোতে উপলব্ধ rc.local ফাইলটি বুটে ওয়েবক্যাম চালানোর জন্য ব্যবহৃত হয়।

ধাপ 3: নির্মাণ/তারের নির্দেশাবলী

রাস্পবেরি পাই এর 4 টি জিপিআইও, যেমন জিপিআইও 9, 11, 23 এবং 24 এল 293 ডি মোটর ড্রাইভার আইসির সাথে সংযুক্ত যা ওয়েবিওপি ফ্রেমওয়ার্ক দ্বারা পরিবেশন করা ওয়েবপৃষ্ঠা থেকে ম্যাক্রো অনুরোধ পাওয়ার পর সেই অনুযায়ী মোটর চালায়। ইউএসবি ওয়াইফাই ডংগল এবং ইউএসবি লজিটেক ওয়েবক্যাম রাস্পবেরি পাইতে উপলব্ধ 2 ইউএসবি পোর্টের সাথে সংযুক্ত। একটি 5V 4000 মাহ পাওয়ার ব্যাংক পাইকে প্রধান শক্তি সরবরাহ করে। মোটর চালানোর জন্য 4V 1.5A লিড এসিড ব্যাটারি ব্যবহার করা হয়।

দ্রষ্টব্য: যেহেতু আমি যে পাওয়ার ব্যাংকের সর্বাধিক আউটপুট কারেন্ট ব্যবহার করেছি তা ছিল মাত্র 1000 মাহ, তাই আমাকে মোটর চালানোর জন্য বাহ্যিক লিড এসিড ব্যাটারি ব্যবহার করতে হয়েছিল। যদি আপনার একটি পাওয়ার ব্যাংক থাকে যা> = 2000 মাহ দেয়, তাহলে আপনি সরাসরি পাই -তে 5V রেল থেকে মোটর চালাতে পারেন (যদিও আমি ক্ষুধার্ত মোটরগুলির জন্য এটি সুপারিশ করব না)

লিপমোশন জাভাস্ক্রিপ্ট এপিআই, ওয়েবআইওপিআই এবং এমজেপিজি-স্ট্রিমার এবং তাদের মৌলিক কাজ/সেটআপের তিনটি মূল উপধারা নিচে সংক্ষেপে তুলে ধরা হলো।

ধাপ 4: WebIOPi ফ্রেমওয়ার্ক বোঝা

ব্রাউজারে যে ফ্রন্টএন্ডটি দেখানো হয়েছে তা HTML (Filename: index.html) এবং জাভাস্ক্রিপ্টে লেখা আছে যখন GPIOs চালিত ব্যাকএন্ড পাইথনে লেখা আছে (ফাইলের নাম: script.py)। WebIOPi ফ্রেমওয়ার্কের উপর ভিত্তি করে একটি কাস্টম WebApp তৈরির বিস্তারিত নোট বিটবকেট রেপোতে নোট হিসেবে সংযুক্ত করা হয়েছে।

পাইথন স্ক্রিপ্টে সংজ্ঞায়িত কাস্টম ম্যাক্রো HTML ফাইল থেকে ট্রিগার করা যেতে পারে।

যেমন: webiopi ()। CallMacro ("go_forward"); এটি পাইথন স্ক্রিপ্টে সংজ্ঞায়িত একটি ম্যাক্রো go_forward এ একটি কাস্টম কল যা উভয় মোটরকে সামনের দিকে চালানোর প্রক্রিয়া পরিচালনা করে।

Pi তে ফাইলগুলি কোথায় সংরক্ষিত থাকে তার নির্দেশিকা শ্রেণিবিন্যাস সংযুক্ত ছবিতে দেখানো হয়েছে।

রোবট ফোল্ডারে এই সাব-ফোল্ডারগুলি রয়েছে:

  • html: index.html ধারণকারী
  • পাইথন: script.py ধারণ করে
  • mjpg-streamer-r63: বিল্ড ফাইল ধারণ করে এবং ওয়েবক্যাম চালানোর জন্য এক্সিকিউটেবল

এমজিপিজি-স্ট্রিমার: ইউএসবি ওয়েবক্যাম থেকে লাইভ ভিডিও স্ট্রিম ডিফল্টভাবে পাই এর পোর্ট 8080 এ চলে। স্ট্রিমটি ম্যানুয়ালি দেখার জন্য, ওয়েবক্যাম চালু করার পরে ব্রাউজারে RASPBERRYPI_IP: 8080 এ নেভিগেট করুন।

লিপমোশন কোড:

লিপমোশন এসডিকে প্রদত্ত উদাহরণগুলির কোড স্নিপেটগুলি index.html ফাইলে এম্বেড করা হয়েছিল। লিপমোশনের leap.js ফাইলটি রাস্পবেরি পাই -এর প্রোজেক্ট ডিরেক্টরিতে HTML ফোল্ডারে যুক্ত করতে হবে।

লিপমোশন দ্বারা পাঠানো পামপজিশন প্যারামিটারটি রাস্পবেরি পাইতে কোন ম্যাক্রো ট্রিগার করবে তা নির্ধারণ করতে ব্যবহৃত হয়।

ধাপ 5: প্রকল্প চালানো

কেবল রাস্পবেরি পাই চালু করুন এবং প্রায় এক মিনিট অপেক্ষা করুন। আপনি একটি নতুন হটস্পট রাস্পবেরিপি দেখাবেন। এই হটস্পটে সংযোগ করুন এবং ব্রাউজারে এই স্ট্যাটিক আইপি ঠিকানাটি খুলুন: 192.168.42.1:8000। 8000 হল WebIOPi এর ডিফল্ট পোর্ট।

রাস্পবেরি পাইকে হটস্পট হিসাবে দেখানোর পরিবর্তে স্থানীয় ওয়াইফাই নেটওয়ার্কের সাথে ক্লায়েন্ট হিসাবে সংযোগ করার জন্য কনফিগার করা যেতে পারে। তারপর আপনাকে রাউটার দ্বারা রাস্পবেরি পাইকে নির্ধারিত ডায়নামিক আইপি নির্ধারণ করতে হবে এবং তারপর বটের সাথে খেলতে ব্রাউজারে এটিকে আঘাত করুন।

যদি আপনার কোন সাহায্যের প্রয়োজন হয় বা প্রকল্প সম্পর্কে কোন প্রশ্ন থাকে তবে আপনি একটি মন্তব্য করতে পারেন। হ্যাপি লিপিং!

সম্পূর্ণ সোর্স কোড সংযুক্ত করা হয়েছে। প্রকল্পের বিল্ডিংয়ের যে কোন অংশে আপনার কোন সাহায্যের প্রয়োজন হলে আপনি একটি মন্তব্য করতে পারেন। হ্যাপি লিপিং!

প্রস্তাবিত: