সুচিপত্র:

ল্যাপকেড আর্কেড কন্ট্রোলার: 6 টি ধাপ (ছবি সহ)
ল্যাপকেড আর্কেড কন্ট্রোলার: 6 টি ধাপ (ছবি সহ)

ভিডিও: ল্যাপকেড আর্কেড কন্ট্রোলার: 6 টি ধাপ (ছবি সহ)

ভিডিও: ল্যাপকেড আর্কেড কন্ট্রোলার: 6 টি ধাপ (ছবি সহ)
ভিডিও: Как спрятать данные в ячейках Excel? 2024, জুন
Anonim
ল্যাপকেড আর্কেড কন্ট্রোলার
ল্যাপকেড আর্কেড কন্ট্রোলার

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

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

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

ওভারভিউ
ওভারভিউ
ওভারভিউ
ওভারভিউ

এটা কি?

প্রথমে, ল্যাপকেড কী নয় তা লক্ষ্য করুন:

  • এটি একটি গেমিং কনসোল নয়।
  • এটিতে কোন গেম নেই বা গেমগুলি লোড এবং খেলার ক্ষমতা নেই।
  • এটি একটি টিভি বা মনিটরের সাথে সংযুক্ত নয়।

ল্যাপকেড একটি ব্লুটুথ কীবোর্ড। বেশিও না কমও না.

আমি এটি নিয়ে এসেছি কারণ এই মুহুর্তে কিছু বিভ্রান্তি রয়েছে। এটাতে কোন গেম লোড করা যায় এবং এটি কোন ধরনের ভিডিও ইন্টারফেস ব্যবহার করে তা নিয়ে আমার অনেক প্রশ্ন ছিল - এটি পারে না এবং পারে না! এটি সম্পূর্ণরূপে নির্ভর করে যে পিসিতে আপনি এটি সংযুক্ত করেন এবং সেই ক্ষেত্রে, আকাশ সীমা। যদি আপনার ডিভাইস একটি ব্লুটুথ কীবোর্ড গ্রহণ করতে পারে, তাহলে ল্যাপকেড এর সাথে কাজ করা উচিত। আমি এটি চেষ্টা করে দেখিনি কিন্তু আমি অন্যান্য প্রকল্প দেখেছি যা হ্যান্ডহেল্ড ডিভাইসের সাথে সংযুক্ত EZ-Key (নীচে বর্ণিত) ব্যবহার করেছে। সুতরাং, তাত্ত্বিকভাবে, আপনি এই ডিভাইসটিকে উইন্ডোজ, লিনাক্স, ক্রোমওএস, ম্যাক ইত্যাদি চালানোর সাথে সাথে রাস্পবেরি পাই, অ্যান্ড্রয়েড, আইওএস এবং অন্যান্য যারা ব্লুটুথ v2.1 সমর্থন করে তাদের সাথে সংযুক্ত করতে পারেন। তবে কীকোডগুলির পরিবর্তন প্রয়োজন হতে পারে।

প্রাক সংস্করণ 1

মূলত, আমি অ্যাডাফ্রুট ব্লুফ্রুট ইজেড -কী ব্লুটুথ এইচআইডি (হিউম্যান ইন্টারফেস ডিভাইস - থিংক কীবোর্ড) নামে একটি পণ্য খুঁজে পেয়েছি যা আমাকে পরিচিত ক্লিক বোতামগুলি সংযুক্ত করতে এবং কীবোর্ডের মতো কীস্ট্রোক পাঠাতে দেয়। যখন আমি প্রথম EZ-Key এর উপর ভিত্তি করে একটি কন্ট্রোলার তৈরি করেছিলাম, তখন আমি একটি সহজ এবং সোজা ফরওয়ার্ড কন্ট্রোলার তৈরির জন্য নির্দেশাবলীর একটি সেট অনুসরণ করেছিলাম এবং এটি দুর্দান্ত কাজ করেছিল। আমি কয়েক মাস ধরে সমস্যা ছাড়াই একটি ভারী কাঠের ফ্রেমে কন্ট্রোলার ব্যবহার করেছি। যাইহোক, আপনি 12 টি ইনপুটের মধ্যে সীমাবদ্ধ এবং EZ-Key ইনপুট পিনগুলি পুনরায় প্রোগ্রাম না করে ডিভাইস দ্বারা প্রেরিত কীকোড পরিবর্তন করার কোন উপায় নেই।

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

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

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

এটি একটি আপগ্রেড করার সময় ছিল।

সংস্করণ 1 ডিজাইন প্রকল্পের লক্ষ্য:

  • নমনীয়
  • রিচার্জেবল
  • বাম এবং অধিকারীদের জন্য
  • দড়ি নেই
  • লাইটওয়েট

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

EZ-Key রিয়েল টাইমে সরাসরি প্রোগ্রামযোগ্য ছিল না তাই পরবর্তী সমাধানটি হবে একটি Arduino এর মত কন্ট্রোলার ব্যবহার করে কার্যকারিতা পরিচালনা করা। ইজেড-কী শুধুমাত্র ব্লুটুথের মাধ্যমে পিসিতে কীকোড প্রেরণ করতে ব্যবহৃত হবে। আমি ইউএনওর সাথে সরাসরি সামঞ্জস্যের কারণে (যা আমার ইতিমধ্যে অভিজ্ঞতা ছিল) এবং এর কম্প্যাক্ট আকারের কারণে আমি আরডুইনো প্রো মিনি বেছে নিয়েছি।

আমি এই নতুন বাক্সের সাথে ব্যাটারির মোকাবেলা করতে চাইনি যেমন আমি ল্যাপকেডের পূর্বসূরীর সাথে করেছি, তাই আমি লিথিয়াম পলিমার রিচার্জেবল ব্যাটারি এবং চার্জার/সাপ্লাই বোর্ড ব্যবহার করা বেছে নিয়েছি। এর মানে হল যে আমি কেবল একটি স্ট্যান্ডার্ড ইউএসবি চার্জার ব্যবহার করতে পারি। এর অর্থ এইও ছিল যে প্রতিবার ব্যাটারি মারা গেলে আমাকে কেস খুলতে হবে না। EZ-Key এবং PowerBoost 500C উভয়েরই সূচক রয়েছে যা জোড়া করার অবস্থা এবং কম ব্যাটারি ইঙ্গিতের জন্য নিয়ামকের শীর্ষে স্থানান্তরিত হওয়া প্রয়োজন। আমি ডিজাইনে কিছু এলইডি যোগ করেছি যাতে আমি অপারেশনের সময় ব্যবহারকারীর কাছে এই সুবিধাজনক অবস্থা নির্দেশকগুলি প্রতিফলিত করতে পারি।

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

ধাপ 2: আপনার যা প্রয়োজন

ইলেকট্রনিক যন্ত্রাংশ তালিকা

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

1 Arduino Pro Mini 5V - আমি প্রো পছন্দ করি কারণ এটি কম্প্যাক্ট। আপনি প্রদত্ত কোড সহ যেকোনো ইউনো পিন/ইন্টারাপ্ট সামঞ্জস্যপূর্ণ বোর্ড ব্যবহার করতে পারেন

1 অ্যাডাফ্রুট ব্লুফ্রুট ইজেড -কী ব্লুটুথ এইচআইডি - উপরে বর্ণিত হিসাবে, এটি ব্লুটুথ এইচআইডি যা কীকোডগুলিকে হোস্ট পিসিতে প্রেরণ করতে দেয়।

1 MCP23017 - i2c 16 ইনপুট/আউটপুট পোর্ট এক্সপেন্ডার - এই চিপটি I2C কমিউনিকেশন প্রোটোকলের মাধ্যমে আরডুইনোতে আরও 16 টি ইনপুট যোগ করতে ব্যবহৃত হয়

1 Adafruit PowerBoost 500 + Charger - এটি ল্যাপকেড পাওয়ার এবং LiPo চার্জ করার জন্য পাওয়ার কন্ট্রোল বোর্ড

1 লিটিয়াম পলিমার ব্যাটারি (আমি 2500mAh ব্যবহার করেছি, কিন্তু আপনি উচ্চ / নিম্ন ক্ষমতা ব্যবহার করতে পারেন)

1 8 -ওয়ে আর্কেড জয়স্টিক - দয়া করে জয়স্টিকের বিষয়ে "সংস্করণ 2 এর জন্য চিন্তা" বিভাগটি দেখুন

9 আর্কেড পুশ বাটন - বিভিন্ন রং এবং স্ক্রিনপ্রিন্ট

2 আলোকিত ক্ষণস্থায়ী পুশবটন - আমি এই 2 টি বোতাম সেন্টার 4 এবং 5 বোতামের জন্য ব্যবহার করেছি এবং এডাফ্রুট থেকে: লাল (কেন্দ্র 4), নীল (কেন্দ্র 5)

1 আলোকিত ল্যাচিং পুশবাটন আমি এটি অ্যাডাফ্রুট থেকে পাওয়ার বোতামের জন্য ব্যবহার করেছি: সবুজ

2 LEDs জোড়ার সংকেত এবং ব্যাটারি কম রেফারেন্সের জন্য ব্যবহৃত হয়। আমি দুটি রেডিওশ্যাক অংশ 2760270 এবং 2760271 ব্যবহার করেছি

1 16 x 2 LCD স্ক্রিন

1 I2C/SPI LCD ব্যাকপ্যাক - 16x2 ডিসপ্লেতে I2C যোগাযোগের জন্য ব্যবহৃত হয়।

1 প্যানেল মাউন্ট ইউএসবি এক্সটেনশন কেবল - পাওয়ারবোস্টের মাইক্রো -বি ইউএসবি সংযোগকারীকে মন্ত্রিসভা প্রাচীর পর্যন্ত প্রসারিত করতে ব্যবহৃত হয়।

1 অ্যাডাফ্রুট পারমা-প্রোটো পূর্ণ আকারের ব্রেডবোর্ড পিসিবি-প্রয়োজনীয় নয় কিন্তু স্থায়ী মাউন্ট করা এত সহজ করে তোলে।

5 220 ওহম প্রতিরোধক

7 1K ওহম প্রতিরোধক

2. 2.2K ওহম প্রতিরোধক

1 4.7K ওহম প্রতিরোধক

18 #10 মহিলা কোদাল সংযোগকারী - তোরণ বোতাম পরিচিতিগুলির সাথে সংযোগের জন্য। সোল্ডারিংয়ের জন্য সুপারিশ করা হয়েছে কারণ বোতামগুলি শেষ পর্যন্ত শেষ হয়ে যাবে।

22 গেজ হুকআপ ওয়্যার - ফ্রি স্ট্যান্ডিং ওয়্যার ম্যানেজমেন্ট করার জন্য আমি আটকে থাকার পরিবর্তে কঠিন হুকআপ ওয়্যার ব্যবহার করেছি। এটি সম্পূর্ণরূপে বিক্ষোভের উদ্দেশ্যে এবং সুপারিশ করা হয় না কারণ কঠিন তারের ভঙ্গুর এবং ভাঙ্গার প্রবণ।

নিচের আইটেমগুলির প্রয়োজন নেই কিন্তু মৌং করাকে সহজ করে তুলবে এবং, যদি আপনি একটি উপাদান টোস্ট করেন, প্রতিস্থাপনকে সহজ করে তুলুন:

  • আইসি সকেট - 28 -পিন 0.3 "চিপসের জন্য
  • আইসি সকেট - 28 -পিন 0.6 "চিপসের জন্য
  • 0.1 "মহিলা হেডার (কমপক্ষে 1 36 পিন হেডার)

মন্ত্রিসভা অংশ:

  • 3 12 x 24 1/8 ইঞ্চি বার্চ প্যানেল
  • 1 12 x 24 1/8 ইঞ্চি পরিষ্কার এক্রাইলিক প্যানেল

নথি পত্র:

  • Lapcade V1.xlsx - নিচে উল্লেখ করা স্প্রেডশীটে সার্কিট সংযোগ আছে।
  • LapcadeV1-code.zip - এই প্রকল্পের জন্য লেখা Arduino কোড ধারণকারী জিপ ফাইল।
  • Lapcade_v1.zip - মন্ত্রিসভার জন্য svg অঙ্কন ধারণকারী জিপ ফাইল।
  • LapcadeV1-Circuit_Diagram_Large.zip - নিচে দেখানো ফ্রিজিং সার্কিট ডায়াগ্রামের একটি হাই রেজোলিউশন সংস্করণ ধারণকারী জিপ ফাইল।

আরো সম্পদের লিঙ্ক:

  • Adafruit Bluefruit EZ-Key ডকুমেন্টেশন
  • Adafruit PowerBoost 500 + ডকুমেন্টেশন
  • I2C/SPI LCD ব্যাকপ্যাক ডকুমেন্টেশন
  • MCP23017 I2C পোর্ট এক্সটেন্ডার ডকুমেন্টেশন
  • Adafruit MCP23017 Arduino লাইব্রেরি

ধাপ 3: সমাবেশ - মন্ত্রিসভা

পরিষদ - মন্ত্রিসভা
পরিষদ - মন্ত্রিসভা
পরিষদ - মন্ত্রিসভা
পরিষদ - মন্ত্রিসভা
পরিষদ - মন্ত্রিসভা
পরিষদ - মন্ত্রিসভা
পরিষদ - মন্ত্রিসভা
পরিষদ - মন্ত্রিসভা

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

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

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

পৃষ্ঠগুলি পরিষ্কার করার পরে, আমি পলিউরেথেনের বেশ কয়েকটি কোট প্রয়োগ করেছি - যা কোটের মধ্যে নিরাময়ের অনুমতি দেয়। ফলাফলটি ছিল এক্রাইলিক বটম কভার সহ হালকা ওজনের কাঠের বাক্স। আমি প্রথমে একটি সম্পূর্ণ পরিষ্কার বাক্স চেয়েছিলাম কিন্তু যখন তিনি আমাকে বার্চের "টেস্ট" অংশ পাঠালেন, তখনই আমি আমার মন পরিবর্তন করলাম। এটি কেবল হালকা ছিল না, এটি মন্ত্রিসভা গেমিংয়ের ধারণার দিকে ফিরে একটি চমৎকার নিক্ষেপ ছিল। Svg ফাইলগুলো নিচে দেওয়া হল।

অনুগ্রহ করে মনে রাখবেন: এটি একটি মাল্টি-লেয়ার অঙ্কন এবং প্রতিটি স্তর উপাদানগুলির একটি শীটে এক সেট কাটের প্রতিনিধিত্ব করে। আপনার কাটারে একটি প্রিন্ট পাঠানোর সময়, নিশ্চিত করুন যে অন্য সমস্ত স্তরগুলি কাটার আগে লুকানো আছে।

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

তৃতীয় নোট: আমি মূল অঙ্কনে ইউএসবি চার্জিং কর্ডের জন্য একটি কাটআউট অন্তর্ভুক্ত করিনি কারণ আমি নিশ্চিত ছিলাম না যে আমি এটি কোথায় রাখতে চাই তাই এটি ব্যবহারে হস্তক্ষেপ করবে না। আমি পরবর্তীতে বাম দিকে খুব কাছাকাছি ছিদ্রগুলি কেটেছি যেখানে আপনি নীচের ছবিতে "ল্যাপকেড" শব্দটি দেখতে পাচ্ছেন। সংস্করণ 2 এর চার্জিং পোর্টটি এখনও একটি ভিন্ন অবস্থানে থাকবে।:)

ধাপ 4: সমাবেশ - ইলেকট্রনিক্স

সমাবেশ - ইলেকট্রনিক্স
সমাবেশ - ইলেকট্রনিক্স
সমাবেশ - ইলেকট্রনিক্স
সমাবেশ - ইলেকট্রনিক্স
সমাবেশ - ইলেকট্রনিক্স
সমাবেশ - ইলেকট্রনিক্স
সমাবেশ - ইলেকট্রনিক্স
সমাবেশ - ইলেকট্রনিক্স

প্রথমে উপরে দেখানো ওয়্যারিং ডায়াগ্রামটি দেখে নেওয়া যাক।

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

উপাদান সংযোগ

প্রতিটি সংযোগ এখানে দীর্ঘ আকারে বলার চেষ্টা করার পরিবর্তে (Arduino এনালগ পিন 0 একটি 220 ওহম রেসিস্টারের মাধ্যমে PowerBoost ব্যাট পিনে যায়), আমি একটি স্প্রেডশীট তৈরি করেছি যাতে কম্পোনেন্টের দৃষ্টিকোণ থেকে সমস্ত সংযোগ রয়েছে। সুতরাং, স্প্রেডশীটের Arduino ট্যাবে, আপনি APM A0 -> 2.2K OHM -> PB Bat দেখতে পাবেন এবং PowerBoost ট্যাবে আপনি PB BAT -> 2.2K OHM -> APM A0 দেখতে পাবেন। এই প্রকল্পের সাথে সম্পর্কিত সমস্ত ফাইলের জন্য অনুগ্রহ করে নীচের সম্পদ বিভাগটি দেখুন।

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

প্রতিটি তোরণ বোতামে একটি সাধারণ (com), একটি স্বাভাবিকভাবে খোলা (না) এবং সাধারণত বন্ধ (nc) যোগাযোগ থাকে। এই প্রতিটি বোতামের জন্য, আমি com এবং nc সংযোগ ব্যবহার করছি।

ধাপ 5: কোড

কোড
কোড

প্রথম এবং সর্বাগ্রে, আমাকে ক্রেডিট দিতে হবে যেখানে এটি প্রাপ্য। ল্যাপকেড কোড করার জন্য আমি নিম্নলিখিত নিবন্ধটির উপর নির্ভর করেছিলাম:

learn.adafruit.com/convert-your-model-m-keyboard-to-bluetooth-with-bluefruit-ez-key-hid বেঞ্জামিন গোল্ডকে একটি ভাল লিখিত এবং দলিলকৃত প্রকল্পের জন্য বিশেষ ধন্যবাদ!

সুতরাং, এই প্রকল্পের কেন্দ্রবিন্দুতে একটি কীবোর্ড রয়েছে। পিসির দৃষ্টিকোণ থেকে, ল্যাপকেড কেবল ব্লুটুথের মাধ্যমে সংযুক্ত একটি কীবোর্ড যা EZ-Key এ এত ভাল। এটি জটিল ব্লুটুথ প্রোটোকল, সময়, এবং কোডগুলি নেয় এবং সেগুলিকে এনক্যাপসুলেট করে যাতে আমাকে আরডুইনো দিয়ে যা করতে হবে তা কীকোড পাঠাতে হবে। এটি করার জন্য, আমি উপরের প্রকল্পে কোড মানচিত্র এবং অপারেশনাল মোড তৈরি করতে আমার নিজের অ্যারে ব্যবহার করেছি। প্রতিটি মোড ল্যাপকেডে একই বোতাম টিপে কী করে এবং পিসিতে কী পাঠানো হয় তা পরিবর্তন করে। তিনটি "অন্তর্নির্মিত" অপারেশনাল মোড রয়েছে এবং সেগুলির পরে সমস্ত মোড অ্যাপ্লিকেশন মোড।

অপারেশনাল মোড

নিম্নলিখিত ল্যাপকেডের অপারেশনাল মোডগুলি সংক্ষিপ্ত করে:

  1. স্টার্টআপ - এই মোড পিসির সাথে সংযোগের জন্য পরীক্ষা করে এবং স্টার্টআপ ভেরিয়েবল সেট করে। যদি EZ-Key একটি পিসির সাথে যুক্ত না হয় তবে এটি পেয়ারিং মোডে পরিবর্তিত হয়
  2. পেয়ারিং - এই মোডে EZ -Key একটি পিসির সাথে যুক্ত হওয়ার জন্য অপেক্ষা করছে।
  3. মোড সিলেক্ট - এই মোড ব্যবহারকারীকে কোন অ্যাপ্লিকেশন মোড ব্যবহার করতে হবে তা নির্বাচন করতে দেয়। এই মোডে পিসিতে কোন কী কোড পাঠানো হয় না। পূর্ববর্তী অ্যাপ্লিকেশন মোডের উপর ভিত্তি করে দ্রুত মোড নির্বাচনও রয়েছে। উদাহরণস্বরূপ টিপুন মোড এবং তারপর প্লেয়ার দুই বোতাম যখন Mame প্লেয়ার 1 মোডে কেবলমাত্র মোডটি স্যুইচ না করে ডিসপ্লেতে Mame Player 2 নির্বাচন করুন।

অ্যাপ্লিকেশন মোড

ব্যবহারকারীর কোন অ্যাপ্লিকেশনের উপর ভিত্তি করে পিসিতে উপযুক্ত কীকোড পাঠানোর জন্য অ্যাপ্লিকেশন মোড ব্যবহার করা হয়। উদাহরণস্বরূপ কোডি মোডে অ্যাকশন 2 কী "P" পাঠায় যা বিরতি। মামে, সেই একই বোতামটি বাম Alt কী পাঠায়। যদি কেউ পিসির জন্য মাইনক্রাফ্ট খেলতে কন্ট্রোলার ব্যবহার করতে চায়, তাহলে যা করতে হবে তা হল উপযুক্ত অ্যারে মানচিত্র যোগ করা।

প্রতিটি অ্যাপ্লিকেশনের ডেটা 4 অ্যারেতে সংজ্ঞায়িত করা প্রয়োজন।

  • মোড - এই অ্যারেটিতে টেক্সট রয়েছে যা প্রতিটি মোডের জন্য পর্দায় উপস্থাপন করা হবে। ডিসপ্লের দ্বিতীয় লাইনটি ব্যবহার করতে, লাইন বিরতি হিসাবে অ্যারেতে কেবল একটি place রাখুন।
  • keyModes [14] - এই ম্যাট্রিক্স অ্যারেতে পিসিতে পাঠানো কীকোড থাকে। 14 টি উপাদানের প্রতিটি লাইন কীকোড ম্যাপিংগুলিতে পৃথক বোতামগুলি উপস্থাপন করে।
  • keyModifiers [14] - এই ম্যাট্রিক্স অ্যারেটিতে প্রতিটি কীস্ট্রোকের জন্য কীকোড মডিফায়ার রয়েছে যেমন শিফট কী চেপে রাখা।
  • QuickMode [3] - এই ম্যাট্রিক্স অ্যারেতে বর্তমান মোডের জন্য দ্রুত মোড নির্বাচন প্যাটার্ন রয়েছে।

প্রাথমিক অভিযান

যখন সিস্টেমটি চালু হয় তখন এটি স্টার্টআপ মোডে চলে যায় যেখানে ব্লুটুথ সংযোগের অবস্থা পরীক্ষা করা হয় এবং ব্যবহারকারীর কাছে প্রদর্শিত হয়। EZ-Key এর L1 পিন থেকে ডাল গণনা এবং সময় নির্ধারণ করে Arduino EZ-Key এর মর্যাদা পায়। স্টার্টআপ মোডের জন্য চারটি সাব-স্ট্যাটাস রয়েছে:

  • পেয়ারিং - ইজেড -কী সক্রিয় পেয়ারিং মোডে একটি ডিভাইসে সংযুক্ত হওয়ার অপেক্ষায় রয়েছে।
  • জোড়া হয়েছে কিন্তু সংযুক্ত নয় - EZ -Key এর আগে জোড়া হয়েছে কিন্তু বর্তমানে হোস্ট ডিভাইসের সাথে সংযুক্ত নয়।
  • জোড়া এবং সংযুক্ত - ইজেড -কী জোড়া হয়েছে এবং হোস্টের সাথে সংযোগ স্থাপন করা হয়েছে। এই মুহুর্তে, সিস্টেম মোড সিলেক্টে চলে যাবে।
  • অজানা স্থিতি - ইজেড -কী একটি অজানা কোড ফিরিয়ে দিচ্ছে বা সংকেত হস্তক্ষেপ যা একটি অজানা সংকেত প্যাটার্ন তৈরি করছে। সিস্টেম ব্যবহারকারীকে ধরে রাখবে এবং অবহিত করবে। যদি এটি ঘটে তবে পুনরায় চালু করতে হবে।

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

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

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

একবার একটি অ্যাপ্লিকেশন মোডে, প্রতিটি বোতাম এবং জয়স্টিক উপরে বর্ণিত চারটি অ্যারেতে নির্দিষ্ট কী -ম্যাপে কীকোড পাঠাবে।

দ্রুত মোড

একবার একটি অ্যাপ্লিকেশন মোড নির্বাচন করা হলে, এটি দ্রুত মোড সংজ্ঞা সেট করা হয়। সোজা কথায়, কুইক মোড হচ্ছে অ্যাপ্লিকেশন মোড যা প্রথম তিনটি সেন্টার বোতাম দ্বারা নির্বাচনযোগ্য (কেন্দ্র 1-3)। এই তিনটি বোতাম ম্যাট্রিক্স জুড়ে অ্যারে এলিমেন্টের সাথে মিলে যায়।

উদাহরণস্বরূপ, বর্তমান কনফিগারেশনে, প্লেয়ার 1 মোডে Mame ব্যবহার করার সময় (মোড 4 বা পঞ্চম মোড সংজ্ঞায়িত), তারপর মোড বোতাম টিপুন এবং তারপর প্লেয়ার দুটি বোতাম কুইকমোড [4] [1] অ্যারে উপাদান লোড করে (Arduino ব্যবহার করে 0 বেস অ্যারে ইনডেক্সিং) যা 5। সিস্টেমটি তারপর অ্যাপ্লিকেশন মোড 5 এ স্যুইচ করে যা Mame, প্লেয়ার 2।

ধাপ 6: সংস্করণ 2 এর জন্য ধারণা

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

4-ওয়ে বনাম 8-ওয়ে জয়স্টিক-আরেকটি বিষয় যা আমি জয়স্টিক ব্যবহার শুরু করার পরে স্পষ্ট হয়ে গেল তা হল পুরোনো গেমগুলি 8-উপায় জয়স্টিক ব্যবহার করার জন্য নয়। পয়েন্ট ইন প্যাক-ম্যান। এই নিয়ামক তৈরির পর থেকে, আমি দেখেছি যে সেখানে জয়স্টিক রয়েছে যা যান্ত্রিকভাবে 4-উপায় থেকে 8-পথে স্যুইচ করতে সক্ষম। হ্যাঁ, সেই তালিকায় আছে এবং যদি আপনি ক্লাসিক আর্কেড গেম খেলার পরিকল্পনা করছেন, তবে কেবল পরিবর্তনযোগ্য একটিতে যান। অবশ্যই, নিশ্চিত করুন যে আপনি জয়ারস্টিকের উপর ভিত্তি করে তারের এবং প্রোগ্রামিংয়ের পরিবর্তনের জন্য হিসাব করেছেন। ক্লাসিক তোরণ নিয়ন্ত্রণের কিছু সরবরাহকারী এখানে:

  • https://www.ultimarc.com/controls.html
  • https://groovygamegear.com/webstore/index.php?main…

ডান এবং বাম দিকের "ফ্লিপার" বোতামগুলি - সংস্করণ 2 নিশ্চিতভাবে মন্ত্রিসভার বাম এবং ডানদিকে একটি করে বোতাম যুক্ত করবে। একটি সম্ভাব্য ব্যবহার হবে পিনবল ফ্লিপারের জন্য।

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

অন -বোর্ড প্রোগ্রামিং - পরবর্তী সংস্করণে কেসটি না খোলায় নতুন কনফিগারেশন যুক্ত করার ক্ষমতা থাকতে হবে। আমি এটি সংস্করণ 1 এ যোগ করতে চেয়েছিলাম কিন্তু এটি আমার চেয়ে বেশি সময় এবং সম্পদের প্রয়োজন ছিল।

ওয়্যারলেস প্রতিযোগিতা
ওয়্যারলেস প্রতিযোগিতা
ওয়্যারলেস প্রতিযোগিতা
ওয়্যারলেস প্রতিযোগিতা

ওয়্যারলেস প্রতিযোগিতায় দ্বিতীয় পুরস্কার

প্রস্তাবিত: