সুচিপত্র:

PUBG থিম সং+Arduino এর সাথে অ্যানিমেশন !: 13 টি ধাপ (ছবি সহ)
PUBG থিম সং+Arduino এর সাথে অ্যানিমেশন !: 13 টি ধাপ (ছবি সহ)

ভিডিও: PUBG থিম সং+Arduino এর সাথে অ্যানিমেশন !: 13 টি ধাপ (ছবি সহ)

ভিডিও: PUBG থিম সং+Arduino এর সাথে অ্যানিমেশন !: 13 টি ধাপ (ছবি সহ)
ভিডিও: Sadman Talks | Episodio #2 feat. PACO 2024, নভেম্বর
Anonim
Image
Image
সমস্ত অংশ সংগ্রহ করা
সমস্ত অংশ সংগ্রহ করা

হ্যালো সেখানে এবং এই মজার নির্দেশযোগ্য স্বাগতম! আশা করি আপনারা সবাই ভালো আছেন এবং সুস্থ আছেন। এই ছোট কিন্তু আশ্চর্যজনক প্রকল্পটি হল PUBG থিম সং বাজানো এবং এমনকি arduino ব্যবহার করে কিছু গেম অ্যানিমেশন তৈরি করা।

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

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

সুতরাং, আর দেরি না করে, শুরু করা যাক!

ধাপ 1: সমস্ত অংশ সংগ্রহ করা

সমস্ত অংশ সংগ্রহ করা
সমস্ত অংশ সংগ্রহ করা

বিল্ডটি মূলত একটি Arduino Nano নিয়ে গঠিত যা এই প্রকল্পের মূল কেন্দ্র। আপনি জনপ্রিয় Arduino Uno, Arduino Pro Mini, Arduino Mega ইত্যাদি অন্যান্য Arduino ভেরিয়েন্ট ব্যবহার করতে পারেন অ্যানিমেশন এবং ছবিগুলি প্রদর্শনের জন্য, আমি 0.96 ইঞ্চি OLED ডিসপ্লে নিয়ে 128 x 64 পিক্সেল রেজোলিউশনের সাথে যাওয়ার সিদ্ধান্ত নিয়েছি। এই প্রদর্শনটি I2C প্রোটোকলের সাথে arduino এর সাথে ইন্টারফেস হতে পারে যার জন্য ডেটা এবং ঘড়ির জন্য মাত্র দুটি তারের প্রয়োজন হয়, এইভাবে সংযোগের সংখ্যা হ্রাস করে এবং প্রকল্পটিকে আরও কমপ্যাক্ট করে তোলে। PUBG থিম মেলোডি বাজানোর জন্য আমি একটি 5V বুজার ব্যবহার করেছি যার মধ্যে আমি পজেটিভ পিনকে ডিজিটাল পিন 6 আরডুইনো এর সাথে সংযুক্ত করেছি এবং আরডুইনো গ্রাউন্ডে চলে গেছে।

এগুলি প্রকল্পের জন্য প্রয়োজনীয় অংশগুলির তালিকা:

  1. Arduino Nano (অথবা আপনার পছন্দের অন্য কোন arduino বোর্ড)
  2. 0.96 ইঞ্চি OLED ডিসপ্লে মডিউল
  3. 5V বুজার
  4. জাম্পার তার
  5. ব্রেডবোর্ড
  6. আরডুইনো প্রোগ্রামিং ক্যাবল

ধাপ 2: OLED ডিসপ্লে সংযুক্ত করা

OLED ডিসপ্লে সংযুক্ত করা হচ্ছে
OLED ডিসপ্লে সংযুক্ত করা হচ্ছে
OLED ডিসপ্লে সংযুক্ত করা হচ্ছে
OLED ডিসপ্লে সংযুক্ত করা হচ্ছে
OLED ডিসপ্লে সংযুক্ত করা হচ্ছে
OLED ডিসপ্লে সংযুক্ত করা হচ্ছে

Arduino থেকে OLED ডিসপ্লে সংযুক্ত করার জন্য মোট 4 টি সংযোগ প্রয়োজন:

Arduino এর Vcc 5V

Arduino এর Gnd Gnd

Arduino এর SDA A4

Arduino এর SCK A5

Arduino এর পিন A4 এবং A5 এনালগ ইনপুটগুলির পাশাপাশি I2C যোগাযোগের জন্য পিনের একাধিক উদ্দেশ্যে কাজ করে। এখানে আমরা ডিসপ্লে মডিউলের সাথে ইন্টারফেস করার জন্য I2C প্রোটোকলের জন্য পিন ব্যবহার করেছি।

এই প্রকল্পে ব্যবহৃত অ্যাডাফ্রুট লাইব্রেরির লিঙ্ক:

ধাপ 3: বুজার সংযোগ করা

বুজার সংযোগ করা হচ্ছে
বুজার সংযোগ করা হচ্ছে
বুজার সংযোগ করা হচ্ছে
বুজার সংযোগ করা হচ্ছে

5V বাজারের একটি ইতিবাচক এবং নেতিবাচক সরবরাহের টার্মিনাল রয়েছে।

Arduino এর ইতিবাচক পিন D6 (ডিজিটাল পিন 6) (আপনি arduino এর যে কোন ডিজিটাল পিন ব্যবহার করতে পারেন)

Arduino এর নেগেটিভ পিন Gnd

আমরা ডিজিটাল পিন D6 তে কাঙ্ক্ষিত স্বর তৈরি করতে যাচ্ছি যেখানে বাজারের সুর বাজবে।

ধাপ 4: সমস্ত হার্ডওয়্যার সংযোগ সম্পূর্ণ

সমস্ত হার্ডওয়্যার সংযোগ সম্পূর্ণ
সমস্ত হার্ডওয়্যার সংযোগ সম্পূর্ণ
সমস্ত হার্ডওয়্যার সংযোগ সম্পূর্ণ
সমস্ত হার্ডওয়্যার সংযোগ সম্পূর্ণ

ওএলইডি ডিসপ্লে এবং বাজারের সমস্ত প্রয়োজনীয় সংযোগ সম্পূর্ণ। এখন প্রকল্পের প্রোগ্রামিং দিকটি বুঝতে এগিয়ে যাই..

ধাপ 5: লাইব্রেরি সহ এবং ডিসপ্লে প্রোটোকল শুরু করা

লাইব্রেরী সহ এবং ডিসপ্লে প্রোটোকল শুরু করা
লাইব্রেরী সহ এবং ডিসপ্লে প্রোটোকল শুরু করা

পুরো প্রোগ্রামটি 3 টি অংশে বিভক্ত করা হয়েছে:

  1. প্রাথমিক প্রোগ্রাম এবং চিত্র প্রদর্শন এবং সুরের ক্রম নিয়ে গঠিত
  2. "pitches.h" ফাইলটি বাদ্যযন্ত্রের নোটের তালিকা এবং সংশ্লিষ্ট ফ্রিকোয়েন্সি নিয়ে গঠিত
  3. ইমেজগুলির বিটম্যাপ ধারণকারী "pictures.h" ফাইলটি প্রদর্শিত হবে।

ওএলইডি ডিসপ্লের জন্য একটি ইমেজকে বিটম্যাপ অ্যারে রূপান্তর করার প্রক্রিয়াটি আসন্ন ধাপে আলোচনা করা হয়েছে।

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

ধাপ 6: থিম সং মেলোডি

থিম সং মেলোডি
থিম সং মেলোডি
থিম সং মেলোডি
থিম সং মেলোডি

আমি PUBG থিম সং নিয়ে গঠিত মৌলিক নোটগুলির জন্য ইন্টারনেটে সন্ধান করেছি এবং তারপরে সেগুলি মেলোডি অ্যারেতে যুক্ত করেছি।

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

ধাপ 7: স্টার্টআপের সময় গান বাজানো

স্টার্টআপের সময় গান বাজানো
স্টার্টআপের সময় গান বাজানো

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

ধাপ 8: ছবিগুলিকে বিটম্যাপে রূপান্তর করা।

ছবিগুলিকে বিটম্যাপে রূপান্তর করা
ছবিগুলিকে বিটম্যাপে রূপান্তর করা

এখন, প্রকল্পের আকর্ষণীয় অংশ হল পিক্সেল ঘনত্ব অনুসারে ওএলইডি ডিসপ্লের জন্য একটি ইমেজকে বিটম্যাপ অ্যারে রূপান্তর করার প্রক্রিয়া। এর জন্য আমি প্রিফেক্ট অনলাইন টুলটি পেয়েছি যা আমাদের কাস্টম বিটম্যাপ তৈরি করতে দেয়।

এই অনলাইন আবেদনের লিঙ্ক হল:

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

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

ধাপ 9: আপনার প্রদর্শন অনুযায়ী রেজোলিউশন সামঞ্জস্য করা

আপনার ডিসপ্লে অনুযায়ী রেজোলিউশন অ্যাডজাস্ট করা
আপনার ডিসপ্লে অনুযায়ী রেজোলিউশন অ্যাডজাস্ট করা

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

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

ধাপ 10: বিটম্যাপ অ্যারে তৈরি করা

বিটম্যাপ অ্যারে তৈরি করা হচ্ছে
বিটম্যাপ অ্যারে তৈরি করা হচ্ছে

ইমেজ প্যারামিটার অ্যাডজাস্ট করার পর, পরবর্তী ধাপে শুধু আউটপুট ফরম্যাট হিসেবে Arduino কোড নির্বাচন করুন এবং কাঙ্ক্ষিত বিটম্যাপ অ্যারে পেতে জেনারেট ক্লিক করুন!

সেখানে! আপনি আপনার ছবিটি সফলভাবে কাঙ্ক্ষিত বিটম্যাপ অ্যারেতে রূপান্তর করেছেন। আমি মোট 7 টি ছবির জন্য এই প্রক্রিয়াটি করেছি এবং সেগুলি সংরক্ষণ করেছি।

ধাপ 11: ক্রম হিসাবে ছবি প্রদর্শন

সিকোয়েন্স হিসেবে ছবি প্রদর্শন করা
সিকোয়েন্স হিসেবে ছবি প্রদর্শন করা
ক্রম হিসাবে ছবি প্রদর্শন
ক্রম হিসাবে ছবি প্রদর্শন
ক্রম হিসাবে ছবি প্রদর্শন
ক্রম হিসাবে ছবি প্রদর্শন

ছবিগুলি প্রদর্শনের জন্য আমি Arduino millis () ফাংশনটি ড্র () ফাংশনকে কল করতে ব্যবহার করেছি যা মূলত ডিসপ্লে সাফ করার জন্য কমান্ডের একটি সেট, OLED এ বিটম্যাপ অ্যারে প্লট করে এবং ডিসপ্লে আরম্ভ করে। মূল যুক্তি হচ্ছে প্রতি 3.5 সেকেন্ড পরে, ছবিটি পরিবর্তন করা হয় এবং পরবর্তী ছবিটি প্রদর্শিত হয়। ঠিক আছে, 3.5 সেকেন্ড একটি অনন্য সংখ্যা নয়, আমি শুধু বুঝতে পেরেছি যে যদি আমি পুরো সুরের সময়কালকে 7 টি ইমেজ দিয়ে ভাগ করি তবে প্রতিটি প্রদর্শনের জন্য আমি মোটামুটি 3.5 সেকেন্ড পেয়েছি। আপনি এতে আরো ছবি যোগ করতে পারেন এবং প্রতিটি ইমেজ প্রদর্শনের সময় কমাতে পারেন যদি আপনি চান।

কোড স্নিপেট ব্যাখ্যা করে কিভাবে মিলিস () ফাংশনের উপর ভিত্তি করে ফাংশন বলা হয়।

ছবির সম্পূর্ণ বিটম্যাপ অ্যারে "pictures.h" ফাইলে সংরক্ষিত আছে

ধাপ 12: সম্পূর্ণ কোড:

এখানে আমি আপনাদের সবার জন্য পুরো কোডটি শেয়ার করছি যাতে তারা খেলতে এবং পরীক্ষা করতে পারে!

একবার সবকিছু ঠিকঠাক মনে হলে এটি বোর্ডে আপলোড করার সময়:)

ধাপ 13: ফলাফল:

ফলাফলগুলো
ফলাফলগুলো
ফলাফলগুলো
ফলাফলগুলো
ফলাফলগুলো
ফলাফলগুলো
ফলাফলগুলো
ফলাফলগুলো

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

আমি আশা করি PUBG এর এই Arduino সংস্করণটি সমস্ত গেম এবং ইলেকট্রনিক উত্সাহীদের জন্য একটি উত্তেজনাপূর্ণ প্রকল্প।

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

পরবর্তী সময় পর্যন্ত।

প্রস্তাবিত: