সুচিপত্র:

ভার্চুয়াল রিয়েলিটি নিয়ন্ত্রিত আরসি গাড়ি: 9 টি ধাপ
ভার্চুয়াল রিয়েলিটি নিয়ন্ত্রিত আরসি গাড়ি: 9 টি ধাপ

ভিডিও: ভার্চুয়াল রিয়েলিটি নিয়ন্ত্রিত আরসি গাড়ি: 9 টি ধাপ

ভিডিও: ভার্চুয়াল রিয়েলিটি নিয়ন্ত্রিত আরসি গাড়ি: 9 টি ধাপ
ভিডিও: Virtual Reality (ভার্চুয়াল রিয়েলিটি) 2024, নভেম্বর
Anonim
Image
Image

আপনি কি কখনও সঙ্কুচিত হতে চান এবং ইনারস্পেস বা ফ্যান্টাস্টিক ভয়েজের মতো একটি জাহাজ চালাতে চান? আচ্ছা, আমি মনে করি এটি যতটা আপনি সংক্ষিপ্ত নোটিশে পেতে যাচ্ছেন ততটা কাছাকাছি!

এখানে পিচ আছে:

ভার্চুয়াল রিয়েলিটি কমান্ড কনসোল থেকে চালিত একটি রিয়েল-লাইফ রিমোট কন্ট্রোল গাড়ি। এর মানে হল যে আপনি একটি VR হেডসেটে চাবুক লাগান, একটি RC গাড়িতে একটি সুইচ উল্টান, তারপর VR থেকে লাইভ ভিডিও ফিড দিয়ে সরাসরি আপনার মুখে পাইলট করতে পারেন।

এমন কিছু আছে যা আমি বাস্তবায়ন করেছি যা আপনি VR গাড়িতে নিয়ন্ত্রণ করতে পারেন।

  1. চাকা
  2. হর্ন
  3. আলো

এই সবগুলির মধ্যে VR তে কিছু ধরণের বোতাম বা লিভার রয়েছে যা আপনি গাড়ি চালানোর জন্য ফ্লিপ বা স্যুইচ করতে পারেন।

সম্পূর্ণ রেপো এবং আরো তথ্যের জন্য, আমার Github এবং আমার ওয়েবসাইট দেখুন!

ধাপ 1: উপকরণ এবং সরঞ্জাম

উপকরণ এবং সরঞ্জাম
উপকরণ এবং সরঞ্জাম
উপকরণ এবং সরঞ্জাম
উপকরণ এবং সরঞ্জাম

যান্ত্রিক:

4 হুইল ড্রাইভ চ্যাসি কিট

বৈদ্যুতিক:

  • চাকা এনকোডার
  • 3S 1300mAh ব্যাটারি
  • আরডুইনো উনো
  • আরডুইনো মোটর শিল্ড
  • পাইজো ইলেকট্রিক বুজার
  • ছোট LED
  • XT60 সংযোগকারী
  • বুস্ট / বাক কনভার্টার

কম্পিউটার:

  • যেকোন এমবেডেড কম্পিউটার সিস্টেম: রাস্পবেরি পাই, জেটসন ন্যানো ইত্যাদি।
  • ইউএসবি ক্যামেরা (পছন্দনীয় - 180 ডিগ্রি ক্যামেরা)

সরঞ্জাম / অতিরিক্ত:

  • তাতাল
  • কিছু VR সেটআপ - আমার Oculus Rift আছে
  • মাল্টিমিটার

ধাপ 2: গাড়ি তৈরি করুন

গাড়ি তৈরি করুন
গাড়ি তৈরি করুন
গাড়ি তৈরি করুন
গাড়ি তৈরি করুন
গাড়ি তৈরি করুন
গাড়ি তৈরি করুন

গাড়ির জন্য চ্যাসি নির্মাণ করা খুব সহজ। আপনাকে কেবল ট্যাবগুলির মাধ্যমে মূল বোর্ডের সাথে মোটর সংযুক্ত করতে হবে। আপনি চাকা এবং মোটর সংযুক্ত করার পরে, গাড়ির সামনের দিকে ক্যামেরা সংযুক্ত করার জন্য আপনার কিছু প্রয়োজন হবে।

আমি কার্ডবোর্ডের বাক্সটি ব্যবহার করেছি যা ক্যামেরাটি মাউন্ট করার জন্য এসেছিল। আমি একটি বড় এল আকৃতি কেটেছি এবং ক্যামেরাটি পুঙ্খানুপুঙ্খভাবে পোকা দেওয়ার জন্য একটি গর্ত কেটেছি। এর পরে, আপনি কেবল ক্যামেরাটি স্লট করতে পারেন এবং এটিকে জায়গায় রাখার জন্য পিছনে কিছু টেপ রাখতে পারেন। আপনি যদি চান, তাহলে আপনি এখন আপনার হেডলাইটের জন্য গর্তও রাখতে পারেন, অথবা তারের দৈর্ঘ্য পরিমাপ করার সময় পরে এটি করতে পারেন।

আপনাকে চাকার এনকোডারটি একটি চাকার সাথে সংযুক্ত করতে হবে। এটা কোন ব্যাপার না, আমি এটা পেছনের বাম চাকায় রেখেছি। আপনাকে চাকার প্রকৃত খাদে চৌম্বকীয় ডিস্ক লাগাতে হবে, এবং এনকোডারটি গাড়ির পাশে লাগানো উচিত। এটি বেশ গ্রহণযোগ্য, তাই এটির উপরে থাকা দরকার নেই, তবে যতটা সম্ভব কাছাকাছি। আমি আমার এনকোডারটি টেপ এবং একটি জিপ টাই দিয়ে সুরক্ষিত করেছি। আমরা আমাদের গাড়ির গতি পরিমাপ করতে এনকোডার ব্যবহার করব।

ধাপ 3: সোল্ডার সার্কিট

সোল্ডার সার্কিট
সোল্ডার সার্কিট
সোল্ডার সার্কিট
সোল্ডার সার্কিট

এই অংশটি বরং ক্লান্তিকর, কিন্তু জটিল নয়। আপনি যদি ছবিটি অনুসরণ করেন এবং আপনার তারের কাটার আগে সবকিছু পরিমাপ করেন তবে এটি খুব খারাপ নয়।

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

ধাপ 4: এমবেডেড সিস্টেমে নির্ভরতা ইনস্টল করুন

এম্বেডেড সিস্টেমে নির্ভরতা ইনস্টল করুন
এম্বেডেড সিস্টেমে নির্ভরতা ইনস্টল করুন

এখানে খুব বেশি কিছু করার নেই, কিন্তু এখনও অবিশ্বাস্যভাবে গুরুত্বপূর্ণ।

প্রথমে, নিশ্চিত করুন যে আপনি যে রাউটারটি ব্যবহার করবেন তার সাথে সংযোগ স্থাপন করুন যাতে এটি এখন থেকে স্বয়ংক্রিয়ভাবে সংযুক্ত হতে পারে।

তারপরে, একটি টার্মিনাল খুলুন এবং নিম্নলিখিতটি টাইপ করুন:

sudo apt আপডেট

sudo apt openssh-server ইনস্টল করুন

sudo apt python-pip pip install numpy pip install opencv-python pip install pyzmq

একবার এই জিনিসগুলি ইনস্টল হয়ে গেলে, আমাদের নিশ্চিত করতে হবে যে, আরডুইনো কোন পোর্টেই লাগানো হোক না কেন, এটি সর্বদা স্বীকৃত। সুতরাং, আমরা যা UDEV নিয়ম বলা হয় লিখুন। এইগুলি আপনার অপারেটিং সিস্টেমের জন্য নিয়ম যা আপনি যখন জিনিসগুলিকে প্লাগ ইন করেন তখন কী ঘটে তা নিয়ন্ত্রণ করে। আমরা যখন arduino প্লাগ ইন করি তখন আমরা এটি সনাক্ত করতে চাই এবং এটিকে অ্যাক্সেস করার জন্য একটি নাম দিতে চাই। সেই নাম হবে "arduino_0"। এটি করার জন্য, আমরা এটি সনাক্ত করতে arduino এর অভ্যন্তরীণ ক্রমিক নম্বর ব্যবহার করব।

udevadm তথ্য -a -n /dev /ttyUSB1 | grep '{serial}' | মাথা -n1

এটি সিরিয়াল নম্বরের জন্য একটি মান বের করবে, এগিয়ে যান এবং সেই মানটি অনুলিপি করুন।

তারপরে আমাদের "99-usb-serial.rules" নামে একটি ফাইল সম্পাদনা করতে হবে (অথবা যদি এটি না থাকে তবে তৈরি করতে হবে)। এই ফাইলটি নিম্নলিখিত ফাইল পাথ "/etc/udev/rules.d/99-usb-serial.rules" এ থাকে। যেমনটি আমি উল্লেখ করেছি, যদি সেই ফাইলটি বিদ্যমান না থাকে তবে কেবল এটি তৈরি করুন এবং VALUE_FROM_ABOVE এর সাথে আপনার লাইনের পরিবর্তে নিম্নলিখিত লাইনে পেস্ট করুন।

SUBSYSTEM == "tty", ATTRS {serial} == "VALUE_FROM_ABOVE", SYMLINK+= "arduino_0"

এটি অপারেটিং সিস্টেমকে বলে যে যখনই এটি এই নির্দিষ্ট সিরিয়াল নম্বরটি দেখে তখন এটিকে arduino_0 বলে।

এখানে শেষ কাজটি হল pushArucoVideoPullCommands.py ডাউনলোড করা এবং এটি সহজেই অ্যাক্সেসযোগ্য কোথাও রাখা। আমি আপনার ব্যবহারকারীর জন্য হোম ডাইরেক্টরি সুপারিশ করব, যেহেতু আমরা যখন এমবেডেড সিস্টেমে এসএসএইচ করব তখন আমরা শেষ করব।

ধাপ 5: স্ট্যাটিক আইপি ঠিকানা সেটআপ করুন

স্ট্যাটিক আইপি অ্যাড্রেস সেটআপ করুন
স্ট্যাটিক আইপি অ্যাড্রেস সেটআপ করুন

এখন সেই অংশ যা সবাই পছন্দ করে, আইপি অ্যাড্রেসিং। এই প্রকল্পটি কাজ করার জন্য, কোডটি জানতে হবে কোথায় ছবি পাঠাতে হবে এবং কমান্ডগুলি নিয়ন্ত্রণ করতে হবে এবং এর মানে হল আমাদের ডিভাইসগুলির একটি স্ট্যাটিক আইপি প্রয়োজন।

আপনার ডিভাইসকে একটি স্ট্যাটিক আইপি বরাদ্দ করার অনেক উপায় আছে, কিন্তু, যেহেতু আমাদের গ্রাউন্ড স্টেশন এবং এমবেডেড সিস্টেমকে সংযুক্ত করার জন্য আমাদের একটি রাউটার আছে, তাই আমরা খুব সহজেই আমাদের নির্দিষ্ট আইপি ঠিকানা দিতে এটি ব্যবহার করতে পারি।

আপনার রাউটারের অ্যাডমিন বিভাগে নেভিগেট করুন, সাধারণত (বেশিরভাগ রাউটারের জন্য) এটি একটি ওয়েব ব্রাউজার খোলার মাধ্যমে এবং "192.168.1.1" এ গিয়ে করা হয়। এটি আপনাকে সাইন ইন করতে বলবে এবং বেশিরভাগ রাউটারের জন্য সাধারণ মান ব্যবহারকারীর নাম এবং পাসওয়ার্ড হল "অ্যাডমিন"।

একবার সেখানে, এমন কিছুতে নেভিগেট করুন যা 'DHCP সার্ভার' উল্লেখ করে। গ্রাউন্ড স্টেশন কম্পিউটার এবং এমবেডেড সিস্টেম সম্পর্কে, এবং সেগুলিকে সংরক্ষিত ক্লায়েন্ট বিভাগে যুক্ত করুন। এটি যখনই এই রাউটারের সাথে সংযুক্ত থাকবে তখন এটি তাদের একটি স্ট্যাটিক আইপি দেবে।

নিশ্চিত করুন যে আপনি এমবেডেড সিস্টেমের আইপি 192.168.1.122 এ সেট করেছেন গ্রাউন্ড স্টেশনের আইপি যেকোন কিছুতে সেট করা যেতে পারে।

ধাপ 6: আরডুইনোতে কোড আপলোড করুন

আরডুইনোতে কোড আপলোড করুন
আরডুইনোতে কোড আপলোড করুন

আরডুইনো কোড আপলোড করার জন্য, আমাদের প্রথমে মোটর শিল্ডের সাথে কাজ করার জন্য একটি লাইব্রেরি ইনস্টল করতে হবে।

আপনার Arduino IDE- এ যান, Sketch-> Include Library-> Manage Libraries… তারপর, Adafruit Motor Shield Library এর জন্য অনুসন্ধান করুন। এই লাইব্রেরিটি ইনস্টল করুন, তারপরে কোডটি আপনার আরডুইনোতে আপলোড করুন, অন্য কিছু প্রয়োজন হবে না।

ধাপ 7: গাড়িতে সার্কিট্রি এবং কম্পিউটার সংযুক্ত করুন

গাড়িতে সার্কিট্রি এবং কম্পিউটার সংযুক্ত করুন
গাড়িতে সার্কিট্রি এবং কম্পিউটার সংযুক্ত করুন

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

বেশিরভাগ জিনিস গাড়ির উপরে কোথাও বসতে দেওয়া বেশ সহজ, তাই, যদি অনেক জায়গা না থাকে তবে চিন্তা করবেন না।

ধাপ 8: VR পরিবেশ সেটআপ করুন

VR পরিবেশ সেটআপ করুন
VR পরিবেশ সেটআপ করুন

আপনি কি ধরণের ভিআর সেটআপ করছেন তার উপর নির্ভর করে এই বিভাগটি কিছুটা আলাদা দেখতে চলেছে। যাই হোক না কেন, আমি এই সফ্টওয়্যারটি বিকাশের জন্য স্টিমভিআর ব্যবহার করেছি, তাই আপনার এটি ইনস্টল করার প্রয়োজন হতে পারে।

যতক্ষণ আপনি SteamVR ব্যবহার করছেন, নিয়ন্ত্রণগুলি বিভিন্ন নিয়ামকদের সাথে খাপ খাইয়ে নেওয়া উচিত। আমি কন্ট্রোলগুলিকে "অ্যাকশনে" ম্যাপ করেছি অগত্যা বোতাম নয়, তাই, তত্ত্বগতভাবে, এটি প্রত্যেকের জন্য মানিয়ে যাবে।

আপনাকে কেবল বিল্ড ইউনিটি ওয়ার্ল্ডের সাথে ফাইলটি ডাউনলোড এবং আনজিপ করতে হবে এবং VR_Bot.exe চালানোর জন্য প্রস্তুত থাকতে হবে।

ধাপ 9: এটি সব একসাথে চালান

এটা সব একসাথে চালান
এটা সব একসাথে চালান
এটা সব একসাথে চালান
এটা সব একসাথে চালান

সুতরাং, এখন আমরা গাড়ী সেটআপ পেয়েছি, এবং গ্রাউন্ড স্টেশন সব জড়িয়ে আছে এবং যেতে প্রস্তুত, আমরা আসলে কিভাবে এই খারাপ ছেলে চালাতে পারি? আচ্ছা, গ্রাউন্ড স্টেশনের দৃষ্টিকোণ থেকে, আপনাকে যা করতে হবে তা VR_Bot.exe ফাইলটি আমরা আগে থেকে দেখেছি।

একই সময়ে, আপনাকে এমবেডেড সিস্টেমে ব্যাটারি প্লাগ ইন করতে হবে এবং এটি স্বয়ংক্রিয়ভাবে বুট হবে এবং আপনার রাউটারের সাথে সংযুক্ত হবে। একবার এটি বুট হয়ে গেলে, এতে SSH। এটি অ্যাক্সেস করতে, আপনাকে গ্রাউন্ড স্টেশনে কিছু ধরণের টার্মিনালের প্রয়োজন হবে, আমি গিটবাশকে সুপারিশ করি।

এসএসএইচ মানে নিরাপদ শেল এবং এটি রিমোট সিস্টেমে নিরাপদে অ্যাক্সেস করার জন্য একটি প্রোটোকল। আমাদের ক্ষেত্রে, এটি আমাদের গ্রাউন্ড স্টেশন থেকে এমবেডেড সিস্টেমে অ্যাক্সেস দেবে। আরও জানতে এখানে ক্লিক করুন.

আপনি যে ইউজারনেম দিয়ে আপনার এমবেডেড সিস্টেম সেটআপ করেছেন তা জানতে হবে। রাস্পবেরি পাই এর জন্য ডিফল্ট ব্যবহারকারীর নাম হল 'পাই' এবং পাসওয়ার্ড 'রাস্পবেরি'।

একবার ইনস্টল হয়ে গেলে, একটি টার্মিনাল খুলুন এবং নিম্নলিখিতটি টাইপ করুন:

ssh {এমবেডেড সিস্টেমের ব্যবহারকারীর নাম@192.168.1.122

এটি এমবেডেড সিস্টেমে একটি টার্মিনাল খুলবে।

একবার সেখানে গেলে, আপনাকে কেবল পাইথন স্ক্রিপ্টটি কার্যকর করতে হবে যা আমরা আগে কপি করেছি।

পাইথন /path/to/pushArucoVideoPullCommands.py

আপনি এটি করার পরে, এমবেডেড সিস্টেম চিত্রগুলি পাম্প করা শুরু করবে এবং গ্রাউন্ড স্টেশনে এবং থেকে আদেশগুলি গ্রহণ করবে।

আপনি তারপর ড্রাইভিং এবং মজা শুরু করতে ভাল!

প্রস্তাবিত: