ব্যায়াম মেশিন ইউএসবি গেম কন্ট্রোলার: 8 টি ধাপ (ছবি সহ)
ব্যায়াম মেশিন ইউএসবি গেম কন্ট্রোলার: 8 টি ধাপ (ছবি সহ)
Anonim
ব্যায়াম মেশিন ইউএসবি গেম কন্ট্রোলার
ব্যায়াম মেশিন ইউএসবি গেম কন্ট্রোলার
ব্যায়াম মেশিন ইউএসবি গেম কন্ট্রোলার
ব্যায়াম মেশিন ইউএসবি গেম কন্ট্রোলার
ব্যায়াম মেশিন ইউএসবি গেম কন্ট্রোলার
ব্যায়াম মেশিন ইউএসবি গেম কন্ট্রোলার
ব্যায়াম মেশিন ইউএসবি গেম কন্ট্রোলার
ব্যায়াম মেশিন ইউএসবি গেম কন্ট্রোলার

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

প্রধান হার্ডওয়্যার হল $ 2 "কালো বড়ি" STM32F103C8 ডেভেলপমেন্ট বোর্ড যার সাথে stm32duino Arduino কোর এবং একটি USB HID লাইব্রেরি যা আমি libarra111 এর কোর ফর্ক এর উপর ভিত্তি করে তৈরি করেছি। STM32F1 দ্রুত এবং সস্তা এবং পূর্ণ গতির ইউএসবি সাপোর্ট আছে, তাই এটি প্রকল্পের জন্য উপযুক্ত।

ব্যবহার করার জন্য, আপনাকে উপবৃত্তাকার বা ব্যায়াম সাইকেলে ঘূর্ণন সেন্সরে ট্যাপ করতে হবে (যদি আপনার ঘূর্ণন সেন্সর আমাদের মেশিনগুলির থেকে আলাদাভাবে কাজ করে-প্রায় 3v, সক্রিয় কম-আপনাকে সার্কিট এবং/অথবা কোড পরিবর্তন করতে হতে পারে)।

উপবৃত্তাকার/বাইক ঘূর্ণন গতি নিয়ন্ত্রক স্লাইডার নিয়ন্ত্রণ করে। উপরন্তু, আপনি জয়েস্টিক মুভমেন্ট, বোতাম ইত্যাদির জন্য অ্যাডাপ্টারে একটি স্ট্যান্ডার্ড Wii Nunchuck বা Gamecube কন্ট্রোলার প্লাগ করেন। উদাহরণস্বরূপ, ছোট বাচ্চাদের তাদের গতি একটু বাড়ানোর প্রয়োজন হতে পারে, এবং কিছু গেম একটি ভিন্ন নিয়ন্ত্রণ স্কিম ব্যবহার করতে পারে। সফটওয়্যারে অনেকগুলো বিল্ট-ইন কন্ট্রোল স্কিম আছে এবং অন্যগুলো সহজেই কোডে যোগ করা যায়। ডিভাইসটি একটি ইউএসবি গেম কন্ট্রোলার, কীবোর্ড, মাউস, এক্সবক্স control০ কন্ট্রোলার বা প্রথম তিনটির কিছু সংমিশ্রণ অনুকরণ করতে পারে।

গতির দিক বর্তমানে সনাক্ত করা হয়নি: ফরওয়ার্ড এবং রিভার্স মোশনের মধ্যে স্যুইচ করার জন্য, অ্যাডাপ্টারের একটি টগল সুইচ থাকে। (পর্যায়ক্রমে, কেউ এই ডিভাইসের মতো হল-ইফেক্ট ম্যাগনেটিক সেন্সর ব্যবহার করতে পারে এবং সার্কিট এবং সফ্টওয়্যার পরিবর্তন করতে পারে।)

অ্যাডাপ্টারটি একটি স্ট্যান্ডার্ড ইউএসবি কন্ট্রোলার হিসাবে কাজ করে, তাই আপনি এটি উইন্ডোজ, লিনাক্স, ওএস এক্স, অ্যান্ড্রয়েড ইত্যাদির সাথে ব্যবহার করতে পারেন।

একটি বোনাস হিসাবে, অ্যাডাপ্টারের এই প্রকল্পের সমস্ত ফাংশন রয়েছে, একটি সম্পূর্ণ-ফাংশন গেমকিউব অ্যাডাপ্টার হিসাবে কাজ করে, আপনাকে কম্পিউটারে গেমকিউব কন্ট্রোলার ব্যবহার করতে দেয়, যার মধ্যে গেমকিউব/ওয়াই সামঞ্জস্যপূর্ণ ড্যান্স ডান্স বিপ্লব ডান্স ম্যাট সহ গেম নিয়ন্ত্রণ করা।

খরচ প্রায় 10 ডলারের নিচে, প্লাস কেস (আমার একটি 3 ডি মুদ্রণযোগ্য নকশা আছে), তার এবং ঝাল। অংশ:

  • "ব্ল্যাক পিল" stm32f103c8 ডেভেলপমেন্ট বোর্ড (Aliexpress এ $ 2)
  • গেমকিউব সকেট (Aliexpress এ $ 1.60, একটি গেমকিউব এক্সটেনশন কর্ড যা কাটা যাবে)
  • Nunchuck সকেট ব্রেকআউট বোর্ড (Aliexpress $ 0.51; Wiichuck জন্য অনুসন্ধান)
  • ছোট দুই অবস্থানের টগল সুইচ (Aliexpress এ $ 1 এর নিচে)
  • আপনার দুই-কন্ডাক্টর পুরুষ এবং মহিলা সংযোগকারীদের পছন্দ আপনার প্রতি ব্যায়াম মেশিনে একজন মহিলা সংযোগকারী প্রয়োজন
  • 2 টাচাইল সুইচ (Aliexpress এ $ 0.50 এর নিচে)
  • 4 টি লাল LEDs (Aliexpress এ $ 0.50 এর নিচে; আপনি একটি ছোট Nokia LCD স্ক্রিনও ব্যবহার করতে পারেন)
  • ক্যাপাসিটার: 10uF ইলেক্ট্রোলাইটিক, এবং alচ্ছিক 100nF
  • প্রতিরোধক: 1 x 100K, 2 x 10K, 1 x 1K, 4 x 220ohm
  • ছোট প্রোটো বোর্ড (Aliexpress এ $ 1 এর নিচে)।

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

আপনার একটি কম্পিউটার, একটি সোল্ডারিং লোহা এবং একটি মাল্টিমিটারও দরকার। আপনার একটি UART-to-USB সেতুরও প্রয়োজন হবে (আমি একটি Arduino মেগা ব্যবহার করেছি যা আমার অন্য প্রকল্পের জন্য ছিল; অথবা আপনি একটি ডলারের বিনিময়ে Aliexpress এ একটি CP2102 মডিউল কিনতে পারেন) এটি ব্যবহার করার জন্য আপনার কালো পিলটিতে একটি বুটলোডার ইনস্টল করুন Arduino পরিবেশ, অন্যথায় আপনি আরো কয়েক ডলার খরচ করতে পারেন এবং একটি Arduino বুটলোডার প্রিলোডেড সঙ্গে RobotDyn এর উন্নয়ন বোর্ড পেতে পারেন।

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

ধাপ 1: ঘূর্ণন সেন্সরে আলতো চাপুন

ঘূর্ণন সেন্সরে আলতো চাপুন
ঘূর্ণন সেন্সরে আলতো চাপুন
ঘূর্ণন সেন্সরে আলতো চাপুন
ঘূর্ণন সেন্সরে আলতো চাপুন
ঘূর্ণন সেন্সরে আলতো চাপুন
ঘূর্ণন সেন্সরে আলতো চাপুন
ঘূর্ণন সেন্সরে আলতো চাপুন
ঘূর্ণন সেন্সরে আলতো চাপুন

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

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

মূলত, ড্রিলটি হল: মেশিনটি চলার সাথে মাল্টিমিটারকে একজোড়া তারের (কিছু সংক্ষিপ্ত না করার বিষয়ে সতর্ক থাকা) সংযুক্ত করুন এবং খুব ধীরে ধীরে প্যাডেলগুলি ঘুরান। আমাদের উভয় মেশিনে, তারের একটি জোড়া রয়েছে যার মধ্যে সাধারণত ভোল্টেজ +3V এর কাছাকাছি থাকে, কিন্তু ঘূর্ণনের একটি ছোট অংশের সময় এটি মাটিতে পড়ে যায়: এটি একটি সক্রিয়-কম স্কিম। আপনি হয়তো খুঁজে পেতে পারেন যে আপনার মেশিনের একটি সক্রিয়-উচ্চ স্কিম রয়েছে যেখানে বেশিরভাগ ঘূর্ণন স্থল, এবং পালস ইতিবাচক, এবং তারপর আপনাকে Arduino স্কেচ সম্পাদনা করতে হবে।

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

ব্যায়াম বাইকের ক্ষেত্রে, এটি সত্যিই সহজ ছিল। মাত্র চারটি তার ছিল। দুটি ছিল হার্ট-রেট মনিটরের জন্য এবং দুটি ছিল ঘূর্ণন সেন্সরের জন্য।

উপবৃত্তাকার অনেক বেশি তার ছিল, এবং তাই এটি আরও কাজ ছিল। বর্বর শক্তি পদ্ধতি এটি। তারের একটি জোড়া একটি মাল্টিমিটার সংযুক্ত করুন। আস্তে আস্তে প্যাডেলগুলিতে একটি পূর্ণ ঘূর্ণন করুন (বা কিছুটা বেশি)। যদি হ্যাঁ, আপনি এটা পেয়েছেন। যদি না হয়, অন্য জোড়া জন্য পুনরাবৃত্তি। এটি অনেক ট্রায়াল এবং ত্রুটি: 13 টি তারের জন্য, এটি 78 ঘূর্ণন।

এখানে একটি কৌশল যা আপনাকে সঠিক তারের জোড়ার অনুসন্ধানের গতি বাড়িয়ে তুলতে সাহায্য করতে পারে। আপনি আশা করতে পারেন যে আপনার মেশিন, আমার মত, ডিটেক্টর ভোল্টেজ সাধারণত কম পালস সহ উচ্চ হয়। যদি তাই হয়, তাহলে যদি আপনি একটি এলোমেলো স্থানে প্যাডেল ছেড়ে যান, আপনি একটি ভাল সুযোগ পেয়েছেন যে দুটি ডিটেক্টর তারের মধ্যে প্রায় +3V বা +5V আছে। তাই কেবল তারের জোড়াগুলির জন্য প্যাডেল ঘূর্ণন পরীক্ষা করুন যার মধ্যে +3V বা +5V রয়েছে।

আরেকটি কৌশল। আপনি প্যাডেল ঘূর্ণন কোথায় ঘূর্ণন সেন্সর ট্রিগার সনাক্ত করতে সক্ষম হতে পারে। উদাহরণস্বরূপ, আপনার মেশিন তখন স্ক্রিনে কিছু ফ্ল্যাশ করতে পারে, অথবা স্পিড ডিসপ্লে আপডেট করতে পারে, অথবা স্লিপ মোড, বা বীপ থেকে সক্রিয় করতে পারে। যদি তাই হয়, তাহলে প্যাডেলগুলিকে ঘূর্ণনের প্রায় 1/3 দূরে সরান, এবং তারপরে 3-5V এর তারের জোড়াগুলি সন্ধান করুন এবং প্যাডেলগুলিকে সেন্সর ট্রিগার করে এমন অবস্থানে নিয়ে পরীক্ষা করুন।

যদি আপনি গ্রাউন্ড ওয়্যার সনাক্ত করতে পারেন, তাহলে আপনি প্রক্রিয়াটিকে যথেষ্ট গতি দিতে পারেন, যেহেতু আপনাকে কেবল মাটি এবং প্রতিটি অজানা তারের মধ্যে যেতে হবে। অদ্ভুতভাবে, যদিও, আমাদের উপবৃত্তাকার উপর বিদ্যুৎ সরবরাহের স্থলটি ঘূর্ণন ডিটেক্টরের ভূমির মতো বলে মনে হয় না।

একবার আপনি তারগুলি সনাক্ত করার পরে, সেগুলির একটি নোট তৈরি করুন। আপনি নোট নিশ্চিত করুন:

  • উচ্চ ভোল্টেজ স্তর: যদি এটি প্রায় 3.3V এর বেশি হয় কিন্তু 5V এর বেশি না হয়, আপনি ঘূর্ণন সনাক্তকরণের জন্য A7 এর পরিবর্তে পিন A9 ব্যবহার করতে সার্কিট পরিবর্তন করতে চান কারণ পিন A9 5V- সহনশীলতা এবং A7 নয়, এবং সম্পাদনা করুন আমার স্কেচে একটি লাইন; যদি এটি 5V এর বেশি হয়, তাহলে আপনাকে একটি ভোল্টেজ ডিভাইডার যোগ করতে হবে
  • ঘূর্ণন সনাক্তকরণ পালস কম বা উচ্চ: নাড়ি উচ্চ হলে, আপনি আমার Arduino স্কেচ একটি লাইন সম্পাদনা করতে হবে।

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

পদক্ষেপ 2: উন্নয়ন বোর্ড প্রস্তুত করুন

উন্নয়ন বোর্ড প্রস্তুত করুন
উন্নয়ন বোর্ড প্রস্তুত করুন
উন্নয়ন বোর্ড প্রস্তুত করুন
উন্নয়ন বোর্ড প্রস্তুত করুন
উন্নয়ন বোর্ড প্রস্তুত করুন
উন্নয়ন বোর্ড প্রস্তুত করুন

আপনার কালো পিলের উপর ছয়টি কেন্দ্রীয় জাম্পার পিন বিক্রি করুন।

আপনার যদি আরডুইনো বুটলোডারের সাথে একটি রোবটডাইন বোর্ড থাকে, তবে B0- এবং B1- কে কেন্দ্রের পিনগুলিতে সংযুক্ত করুন এবং আপনি পদক্ষেপটি সম্পন্ন করেছেন।

অন্যথায়, আপনাকে এখন বুটলোডার ইনস্টল করতে হবে। ইউএসবি ব্রিজের জন্য আপনার একটি স্বতন্ত্র ইউএআরটি প্রয়োজন হবে অথবা আপনি এই উদ্দেশ্যে একটি আরডুইনো ইউনো বা মেগা ব্যবহার করতে পারেন। যদিও কালো পিলটি 3.3V এ চলে, UART পিনগুলি 5V সহনশীল, তাই আপনার সংযোগকারী 3.3V বা 5V এ চলে কিনা তা নিয়ে চিন্তা করবেন না।

আপনার যদি একটি ইউনো বা মেগা থাকে তবে রিসেট এবং গ্রাউন্ডের মধ্যে একটি জাম্পার কেবল রাখুন। এটি Arduino কে একটি ডেডিকেটেড UART থেকে USB সেতুতে পরিণত করে, তা ছাড়া TX/RX পিনগুলি সাধারণত একটি সংযোগকারীতে যেভাবে থাকে তার বিপরীত।

বুটলোডার বাইনারি ডাউনলোড করুন। আপনি generic_boot20_pb12.bin চান। উইন্ডোজে, ST এর ফ্ল্যাশ লোডার ডেমোনস্ট্রেটর ইনস্টল করুন। লিনাক্সে (এবং সম্ভবত ওএস এক্স এবং এমনকি উইন্ডোজ যদি আপনি কমান্ডলাইন সরঞ্জাম পছন্দ করেন), পরিবর্তে এই পাইথন স্ক্রিপ্টটি ব্যবহার করুন, তবে আমার নির্দেশাবলী উইন্ডোজের জন্য হবে।

নিম্নলিখিত সংযোগগুলি করুন:

  • PA9 থেকে UART সেতু RX ("TX" যদি আপনি Arduino কৌশল ব্যবহার করেন)
  • PA10 থেকে UART সেতু TX ("RX" যদি আপনি Arduino কৌশল ব্যবহার করেন)
  • G থেকে UART সেতু স্থল

আমি STM32 সাইডে সংযোগ তৈরি করতে লজিক প্রোব টিপস ব্যবহার করতে পছন্দ করি, কিন্তু আপনি কিছু তারের মধ্যে সোল্ডারও করতে পারেন যা আপনি পরে কেটে ফেলতে পারেন (অথবা যদি আপনি ঝরঝরে হতে চান তবে ডি-সোল্ডার)।

আপনার UART সেতুকে আপনার কম্পিউটারের সাথে সংযুক্ত করুন। ব্ল্যাক পিলকে তার ইউএসবি পোর্টের মাধ্যমে শক্তিশালী করুন (যদি আপনি এটি কম্পিউটারের পরিবর্তে চার্জারের সাথে সংযুক্ত করেন, কারণ কম্পিউটার সম্ভবত একটি অচেনা ইউএসবি ডিভাইস সম্পর্কে অভিযোগ করবে)। ফ্ল্যাশ লোডার বিক্ষোভকারী শুরু করুন। আপনার UART ব্রিজের জন্য COM পোর্ট নির্বাচন করুন। উপলব্ধ থাকলে "সুরক্ষা সরান" নির্বাচন করুন। 128kb ফ্ল্যাশ ভার্সনের পরিবর্তে 64kb বেছে নিন। এবং বুটলোডার বাইনারি আপলোড করুন।

সবকিছুকে শক্তিহীন করুন এবং তারপরে জাম্পারটি B0+/কেন্দ্র থেকে B0-/কেন্দ্রে সরান। আপনার কাছে এখন একটি বুটলোডার আছে যা আপনি Arduino IDE দিয়ে ব্যবহার করতে পারেন।

ধাপ 3: Arduino IDE তে Stm32duino প্রস্তুত করুন

Arduino IDE তে Stm32duino প্রস্তুত করুন
Arduino IDE তে Stm32duino প্রস্তুত করুন
Arduino IDE তে Stm32duino প্রস্তুত করুন
Arduino IDE তে Stm32duino প্রস্তুত করুন

আমি ধরে নিচ্ছি আপনার কাছে সর্বশেষ Arduino IDE ইনস্টল আছে।

সরঞ্জামগুলিতে | বোর্ড | বোর্ড ম্যানেজার, আরডুইনো জিরোর জন্য সমর্থন ইনস্টল করুন (শুধু অনুসন্ধানের মধ্যে জিরো রাখুন, পাওয়া এন্ট্রিতে ক্লিক করুন, এবং তারপর ইনস্টল করুন)। হ্যাঁ, আপনি একটি জিরো দিয়ে কাজ করছেন না, কিন্তু এটি সঠিক gcc কম্পাইলার ইনস্টল করবে।

পরবর্তী, stm32duino কোর ডাউনলোড করুন। উইন্ডোজ -এ, আমি জিপ ফাইলটি ডাউনলোড করার পরামর্শ দিচ্ছি, যেহেতু যখন আমি ফাইলগুলি পরীক্ষা করেছিলাম (স্বীকার করে, svn সহ), আমার উইন্ডোজ টুলস ডিরেক্টরিতে ফাইলগুলির সাথে কিছু অনুমতি সমস্যা ছিল যা ঠিক করার প্রয়োজন ছিল। Arduino/Hardware/Arduino_STM32 এ শাখাটি রাখুন (তাই আপনার কাছে Arduino/Hardware/Arduino_STM32/STM32F1 ইত্যাদি ফোল্ডার থাকবে)

আমার USBHID লাইব্রেরি ইনস্টল করুন: স্কেচে যান | লাইব্রেরি অন্তর্ভুক্ত করুন লাইব্রেরি পরিচালনা করুন, এবং USBHID অনুসন্ধান করুন। এটিতে ক্লিক করুন এবং ইনস্টল ক্লিক করুন।

আমার GameControllersSTM32 লাইব্রেরি ইনস্টল করুন: স্কেচে যান | লাইব্রেরি অন্তর্ভুক্ত করুন লাইব্রেরি পরিচালনা করুন, এবং GameControllers অনুসন্ধান করুন। এটিতে ক্লিক করুন এবং ইনস্টল ক্লিক করুন।

ধাপ 4: সার্কিট

সার্কিট
সার্কিট
সার্কিট
সার্কিট
সার্কিট
সার্কিট
সার্কিট
সার্কিট

আমার সেটআপ চারটি এলইডি ব্যবহার করে বাইনারিতে বর্তমান এমুলেশন মোড নির্দেশ করে (হ্যাঁ, কেউ একটি এলসিডি ডিসপ্লে ব্যবহার করতে পারে, কিন্তু যখন আমি এটি তৈরি করেছি তখন আমার চারপাশে এলইডি ছিল), মোড আপ এবং ডাউন করার জন্য দুটি পুশ-বোতাম (এবং অন্য কিছু করুন ট্রিকস), এবং চলাচলের দিক পরিবর্তন করার জন্য একটি টগল সুইচ।

উপরন্তু, Nunchuck থেকে একটি I2C ইনপুট এবং Gamecube নিয়ামক একটি সংযোগকারী আছে। আপনি যদি এই দুটির মধ্যে একটিকেই সমর্থন করতে চান, তাহলে আপনি শুধু স্কেচে gamecube.h সম্পাদনা করতে পারেন এবং নিজেকে কিছু সোল্ডারিং বাঁচাতে পারেন।

আমি চারটি মোড এলইডি এবং দুটি মোড-সুইচ বোতাম (উপরে এবং নীচে) মাউন্ট করার জন্য, পাশাপাশি গেমকিউব ডেটার জন্য একটি পুল-আপ প্রতিরোধক মাউন্ট করতে একটি ছোট্ট প্রোটোবোর্ড ব্যবহার করেছি। আমি প্রোটোবার্ডে 3.3 ভি নিয়ে এসেছি, কিন্তু তাতে মাটি বের করার দরকার ছিল না, যদিও আপনি চাইলে করতে পারেন। আমি Nunchuck সংযোগকারী মাউন্ট করার জন্য আরেকটি ছোট্ট প্রোটোবোর্ড ব্যবহার করেছি।

Gamecube তারের কাটা। আপনি সকেট পাশের সাথে কাজ করতে চান, যা আপনার নিয়ামক প্লাগ ইন করবে। সংযোগের জন্য তারের স্ট্রিপ।

এখন সার্কিট ডায়াগ্রাম অনুযায়ী এই সংযোগগুলি তৈরি করুন:

  • 3.3v এবং গ্রাউন্ডের মধ্যে 10uF ক্যাপাসিটর (মাটিতে কোন ইলেক্ট্রোলাইটিক্সের বিয়োগ দিক দিয়ে)। এটি যতটা সম্ভব চিপের কাছাকাছি হওয়া উচিত, তাই আমি এটি প্রোটোবোর্ডের পরিবর্তে ডেভেলপমেন্ট বোর্ডে বিক্রি করেছি। ভাল পরিমাপের জন্য, আপনি আমার মতো 100nF যোগ করতে পারেন, কিন্তু আমি নিশ্চিত নই যে এটি প্রয়োজন।
  • Gamecube সকেট #2 - A6 stm32 বোর্ডে
  • 1 স্টেম 32 বোর্ডে গেমকিউব সকেট #2 এবং 3.3V এর মধ্যে কোহম প্রতিরোধক (বা প্রোটোবোর্ডে)
  • Gamecube সকেট #3 এবং #4 - stm32 বোর্ডে স্থল
  • Gamecube সকেট #6 - 3.3V stm32 বোর্ডে (অথবা প্রোটোবোর্ডে)
  • স্টেম 32 বোর্ডে A0 এবং 3.3V (নেগেটিভ এন্ড (ফ্ল্যাট) থেকে PA0 এর মধ্যে 220ohm (বা বড়) প্রতিরোধক সহ সিরিজের LED; 3.3V এর ইতিবাচক শেষ)
  • A1 এবং 3.3V, A2 এবং 3.3V, এবং A3 এবং 3.3V এর মধ্যে LED+প্রতিরোধক দিয়ে পুনরাবৃত্তি করুন
  • স্টেম 32 বোর্ড (ইনক্রিমেন্ট মোড) এবং 3.3V এবং অন্যটি A4 এবং 3.3V (হ্রাস মোড) এর মধ্যে A5 এর মধ্যে ক্ষণস্থায়ী সুইচ; এই সুইচ মোড সংখ্যা বৃদ্ধি করে
  • A8 এবং 3.3V এর মধ্যে টগল সুইচ
  • ব্যায়াম মেশিন স্থল - stm32 স্থল
  • ব্যায়াম মেশিন ইতিবাচক সংকেত - stm32 বোর্ড A7 (মনে রাখবেন যে A7 শুধুমাত্র 3.3V এর জন্য ভাল; যদি আপনার ব্যায়াম মেশিন 5V হয়, A9 ব্যবহার করুন, এবং gamecube.h সম্পাদনা করুন)
  • Nunchuck স্থল (লেবেলযুক্ত - আমার অ্যাডাপ্টার বোর্ডে) - stm32 স্থল
  • Nunchuck +3.3V (লেবেল +) - stm32 3.3V
  • Nunchuck SDA (লেবেল D) - stm32 B7
  • নানচাক এসসিএল (লেবেল সি) - stm32 B6
  • 10 নম্বক এসডিএ এবং 3.3V এর মধ্যে কোহম প্রতিরোধক stm32 বোর্ডে
  • 10 নচাক এসসিএল এবং 3.3V এর মধ্যে কোহম প্রতিরোধক stm32 বোর্ডে।

ধাপ 5: স্কেচ ইনস্টল করুন

স্কেচ ইনস্টল করুন
স্কেচ ইনস্টল করুন
স্কেচ ইনস্টল করুন
স্কেচ ইনস্টল করুন

আমার গেমকিউব ইউএসবি অ্যাডাপ্টার স্কেচ ডাউনলোড করুন এবং এটি আরডুইনো আইডিইতে লোড করুন। Gamecubecontroller.h- এ নিয়ন্ত্রণ করার কিছু অপশন আছে:

  • অপসারণ // সামনে #ডিফাইন ENABLE_EXERCISE_MACHINE (প্রত্যেককে এটি করতে হবে)
  • যদি আপনার ব্যায়াম মেশিন সংযোগটি A9 এ স্থানান্তরিত করার প্রয়োজন হয়, তবে কনস্ট uint32_t rotationDetector = PA7 লাইনে PA7 কে PA9 এ পরিবর্তন করুন
  • যদি আপনার ব্যায়াম মেশিনের ঘূর্ণন শনাক্তকরণ পালস বেশি হয়, তাহলে পরিবর্তন করুন
  • আপনি যদি নানচাক ব্যবহার করতে না চান, তাহলে // সংজ্ঞায়িত_নুনচুকের সামনে // রাখুন
  • আপনি যদি গেমকিউব কন্ট্রোলার ব্যবহার করতে না চান, তাহলে // ডিফাইন ENABLE_GAMECUBE এর সামনে // রাখুন।

Arduino IDE তে, সরঞ্জাম | বোর্ড | জেনেরিক STM32F103C সিরিজ।

ডান-তীর আপলোড বোতাম টিপুন। মনে রাখবেন যে বোর্ডটি স্বীকৃত নয় এমন বার্তা পেলে আপনাকে সঠিক সময়ে রিসেট বোতাম (বা আনপ্লাগ/প্লাগ) টিপতে হতে পারে।

ধাপ 6: ব্যায়াম মেশিন সংযোগ

ব্যায়াম মেশিন সংযোগ
ব্যায়াম মেশিন সংযোগ
ব্যায়াম মেশিন সংযোগ
ব্যায়াম মেশিন সংযোগ
ব্যায়াম মেশিন সংযোগ
ব্যায়াম মেশিন সংযোগ
ব্যায়াম মেশিন সংযোগ
ব্যায়াম মেশিন সংযোগ

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

ধাপ 7: প্রকল্প কেস

প্রজেক্ট কেস
প্রজেক্ট কেস
প্রজেক্ট কেস
প্রজেক্ট কেস
প্রজেক্ট কেস
প্রজেক্ট কেস
প্রজেক্ট কেস
প্রজেক্ট কেস

কেউ একটি ছোট কার্ডবোর্ড বাক্স, একটি টুপারওয়্যার কন্টেইনার বা একটি কাস্টম 3D মুদ্রিত ঘেরের মধ্যে প্রকল্পটি ঘিরে রাখতে পারেন। যেহেতু আমার কাছে একটি 3D প্রিন্টার আছে, আমি কাস্টম ঘেরের জন্য গিয়েছিলাম। OpenSCAD এবং STL ফাইল এখানে।

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

আমি প্রজেক্ট কেস এবং এক্সারসাইজ মেশিন উভয়েই কিছু হুক-এন্ড-লুপ ফাস্টেনারকে হট-আঠালো করেছি।

ধাপ 8: ব্যবহার করুন

ব্যবহার করুন
ব্যবহার করুন
ব্যবহার করুন
ব্যবহার করুন
ব্যবহার করুন
ব্যবহার করুন
ব্যবহার করুন
ব্যবহার করুন

দুটি বোতাম 16 টি পর্যন্ত বিভিন্ন এমুলেশন মোডের মধ্যে স্যুইচ করতে পারে (আসলে আপনার আরও কিছু থাকতে পারে, কিন্তু মোড নম্বর প্রদর্শনের জন্য প্রকল্পে মাত্র চারটি LED আছে)। স্কেচে gamecubecontroller.h এ এমুলেশন মোড সংজ্ঞায়িত করা হয়েছে। বেশিরভাগ গেমের জন্য, আপনি 100% গতিতে মোড 1, ইউনিফাইড স্লাইডার জয়স্টিক ব্যবহার করতে পারেন। অনুকরণকৃত জয়স্টিকের একটি স্লাইডার আছে (আসলে দুটি স্লাইডার, কিন্তু উভয়ই একই কাজ করে) যা ব্যায়াম মেশিনের ঘূর্ণন দ্বারা নিয়ন্ত্রিত হয়। বোতাম এবং জয়স্টিক নিজেই Gamecube নিয়ামক বা Nunchuck দ্বারা নিয়ন্ত্রিত হয়। উইন্ডোজে, কিছু গেম একটি XBox 360 নিয়ামক সমর্থন করে কিন্তু একটি USB জয়স্টিক নয়। তাদের জন্য, মোড 13 ব্যবহার করুন (মোড 1 থেকে ডাউন বোতাম টিপুন)।

9 এবং 10 মোডগুলি আপনাকে ধীর গতিতে প্যাডেল করার অনুমতি দেয় এবং এখনও পূর্ণ স্লাইডার ডিপ্রেশন পেতে পারে, যা শিশুদের জন্য বা উচ্চতর প্রতিরোধের জন্য সেট করা ব্যায়াম মেশিনগুলির জন্য চমৎকার। আপনি ব্যায়াম মেশিন.ইনোর গতিও সামঞ্জস্য করতে পারেন।

আরো অনেক এমুলেশন মোড আছে। একটি মুদ্রণযোগ্য রেফারেন্স স্কেচ সহ modelist.pdf এ অন্তর্ভুক্ত করা হয়েছে।

যখন আপনি ব্যায়াম মেশিনে প্যাডেল করেন, তখন প্রকল্পের এলইডি বর্তমান মোড নম্বর প্রদর্শন থেকে গতিতে স্যুইচ করে। যখন চারটি লাইট জ্বালানো হয়, আপনার গতি সর্বাধিক হয় (এমুলেটেড স্লাইডারের সর্বাধিক এক্সটেনশন থাকে)-সেই সময়ে, আপনি আরও দ্রুত যাওয়ার থেকে গেমের সুবিধা পাবেন না। উপরন্তু, STM32F1 বোর্ডে নীল LED চালু থাকে যখন সবকিছু কাজ করে, কিন্তু ঘূর্ণন সেন্সরটি ট্রিগার করার সময় জ্বলজ্বল করে।

আন্দোলন বিপরীত করতে, অ্যাডাপ্টার বাক্সে দিক পরিবর্তন টগল সুইচ উল্টান।

উইন্ডোজে, calibrate করতে joy.cpl চালান এবং দেখুন কিভাবে কাজ করে। ইমুলেটেড জয়স্টিককে ক্যালিব্রেট করার জন্য সত্যিই দ্রুত প্যাডেল করা একটি উপদ্রব, তাই ক্রমাঙ্কনের জন্য প্রতারণার একটি উপায় রয়েছে। গেমকিউব কন্ট্রোলারে, যদি আপনি প্রায় 10 সেকেন্ড স্থির থাকেন, তাহলে আপনি অনুকরণকৃত জয়স্টিক স্লাইডারগুলি নিয়ন্ত্রণ করতে কাঁধের বোতাম ব্যবহার শুরু করতে পারেন। নানচাকের সাথে, যখন আপনি মোড-মাইনাস বোতামটি ধরে রাখবেন, আপনি এর পরিবর্তে এমুলেটেড স্লাইডারগুলিকে নিয়ন্ত্রণ করতে জয়স্টিক উপরে/নিচে ব্যবহার করতে পারেন।

যদি আপনি এমুলেশন মোড স্যুইচ করার জন্য একটি GUI চান, উইন্ডোজের স্কেচ মোড.পি, মোড স্যুইচ করার জন্য একটি GUI সহ একটি পাইথন স্ক্রিপ্ট অন্তর্ভুক্ত করে। আপনি একটি ব্যাচ ফাইলে mode.py চালু করতে পারেন যা একটি গেম চালু করে।

ব্যায়াম মেশিনের সাথে আমি সত্যিই দারুণ কাজ করতে পেয়েছি এমন দুটি গেম হল টয়বক্স টার্বোস এবং সুপারটাক্সকার্ট (বিনামূল্যে)।

অ্যাডাপ্টারে অন্যান্য অনেক এমুলেশন বৈশিষ্ট্যও রয়েছে। উদাহরণস্বরূপ, আপনি এটিকে সোজা নানচাক বা গেমকিউব কন্ট্রোলার অ্যাডাপ্টার, জয়স্টিক, কীবোর্ড (যেমন, তীর/WASD) এবং/অথবা মাউস হিসাবে ব্যবহার করতে পারেন। Gamecubecontroller.h এ অনেকগুলি মোড তালিকাভুক্ত রয়েছে। আপনি একটি ডান্স ডান্স রেভোলিউশন গেমকিউব/ওয়াই-সামঞ্জস্যপূর্ণ প্যাডও প্লাগ করতে পারেন এবং এটি অতিরিক্ত মজা এবং ব্যায়ামের জন্য টেট্রিসের মতো ডিজাইন করা গেমগুলি খেলতে ব্যবহার করতে পারেন।

প্রস্তাবিত: