সুচিপত্র:

পং একটি শার্টে নমনীয় স্ক্রিন বাজানো: 8 টি ধাপ (ছবি সহ)
পং একটি শার্টে নমনীয় স্ক্রিন বাজানো: 8 টি ধাপ (ছবি সহ)

ভিডিও: পং একটি শার্টে নমনীয় স্ক্রিন বাজানো: 8 টি ধাপ (ছবি সহ)

ভিডিও: পং একটি শার্টে নমনীয় স্ক্রিন বাজানো: 8 টি ধাপ (ছবি সহ)
ভিডিও: Дэймон Браун «Принеси свою ценность»: официальная аудиокнига 2024, নভেম্বর
Anonim
পং একটি শার্টে নমনীয় পর্দা বাজানো
পং একটি শার্টে নমনীয় পর্দা বাজানো
পং একটি শার্টে নমনীয় পর্দা বাজানো
পং একটি শার্টে নমনীয় পর্দা বাজানো
পং একটি শার্টে নমনীয় পর্দা বাজানো
পং একটি শার্টে নমনীয় পর্দা বাজানো

এটি 2013 সালের জন্য আমার হ্যালোইন পোশাক। এটি প্রায় এক বছর ধরে কাজ করছে এবং এটি তৈরি করতে বেশ কয়েক ঘন্টা সময় লেগেছে। স্ক্রিন 14 বাই 15 পিক্সেল, তাই, বেশ কম রেজোলিউশন কিন্তু এটি এখনও কিছু মজার জিনিস করতে পারে। এটি সব দিক দিয়ে শারীরিকভাবে নমনীয়, যদিও এটি ক্ষতি ছাড়া ভাঁজ করা যায় না। এটিতে একটি কন্ট্রোলার রয়েছে যার মধ্যে একটি একক বোতাম এবং স্লাইড পট রয়েছে, যা ইউএসবি এর মাধ্যমে একটি প্রো মেগাতে সংযুক্ত। এটিকে দীর্ঘ সময়ের জন্য বাঁচিয়ে রাখার জন্য এটি প্রয়োজনীয় ভোল্টেজ পেতে সিরিজের তারযুক্ত দুটি দানবীয় 2200 এমএএইচ ব্যাটারি নিযুক্ত করে, এবং তারপর এটি 5 ভোল্ট রেগুলেটর ব্যবহার করে। সমস্ত ইলেকট্রনিক্স শার্টের ভিতরে পকেটে থাকে যাতে সেগুলি সরানো যায় এবং শার্টটি ধুয়ে ফেলা যায়। এটি পং এর একটি কার্যকরী খেলা খেলে। এটি প্রথমে টম থাম্ব ফন্টের একটি পরিবর্তিত সংস্করণ ব্যবহার করে সুদৃশ্য নীল অক্ষরে "পং প্লে" শব্দের সাহায্যে অনুগ্রহ করে (https://robey.lag.net/2010/01/23/tiny-monospace-font এ পাওয়া যাবে.html)। পাঁচ সেকেন্ডের পরে বাটন টিপে চলার জন্য বিকল্পটি দেওয়া যেতে পারে, অথবা বোতাম টিপতে না এবং পিছনে একটি সম্পূর্ণ ভাল অভিজ্ঞতা রেখে যেতে পারে। যখন কেউ বোতাম টিপতে পছন্দ করে, খেলা শুরু হয়। ডানদিকে একটি লাল প্যাডেল হল কম্পিউটার প্যাডেল এবং ডানদিকে সবুজ প্যাডেল হল প্লেয়ার প্যাডেল, যা স্লাইড পট দ্বারা নিয়ন্ত্রিত হয় উপরে ও নিচে। বল প্রতিটি দিকে একটি পয়েন্ট স্কোর করার চেষ্টা করে চারপাশে বাউন্স। প্লেয়ার তাদের প্যাডেলের প্রান্ত দিয়ে বলটিকে আঘাত করতে পারে (এটি একটি চমৎকার বৈশিষ্ট্য) যখন কম্পিউটার এটি করতে পারে না, এবং পরিবর্তে বলের চেয়ে কিছুটা ধীর গতিতে আটকে যায়। যখন একটি পয়েন্ট স্কোর করা হয় তখন স্কোরিং সাইড প্যাডেলে একটি পিক্সেল সাদা হয়ে যায়। এটি নিচ থেকে বাইনারি গণনা করে। যেখানে সবুজ বা লাল শূন্য এবং সাদা ১. ২১ হল জেতার স্কোর (বা কে হারায় তার উপর নির্ভর করে হেরে যাওয়া 21 পয়েন্ট) এবং তাই যখন প্লেয়ার প্যাডেল 10101 পড়ে, তখন "আপনি জয়ী" লেখাটি প্রদর্শিত হয়। আবারও পরিবর্তিত টম থাম্ব। একই ঘটে কিন্তু পরিবর্তে "আপনি হারিয়ে যান" প্রদর্শিত হয়। জয় -পরাজয়ের পর পং প্লে -এর ঠিক পরেই খেলাটি আবার শুরু হয়। সম্পূর্ণরূপে পুনরায় আরম্ভ করার জন্য "ম্যাজিক বক্স" -এর পুনরায় আরম্ভ করার বোতাম, যা-বক্স-সহ-সব-ই-ইলেকট্রনিক্স-ছাড়া-ছাড়া-স্ক্রীন নামেও পরিচিত, টিপানো হয়।

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

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

একটি * দিয়ে চিহ্নিত জিনিসগুলি optionচ্ছিক কিন্তু সুপারিশ এবং তাই কোন বিশেষ ক্রমে নয়… উপকরণ: 4 গজ অ্যাডাফ্রুট নিওপিক্সেল 60 পিক্সেল প্রতি মিটার স্ট্রিপ 1 টি-শার্ট * 1 জোড়া সাসপেন্ডার 1/2 গজ কাপড় যথেষ্ট পরিমাণে বেশি হবে (অ প্রসারিত বয়ন পছন্দ করা হয়) 6 ফুট USB A পুরুষ থেকে USB B পুরুষ কেবল 1 USB A মহিলা সংযোগকারী 3 2 পিন JST মহিলা সংযোগকারী 4 2 পিন JST পুরুষ তারের ব্যাটারি চার্জার 2 6600 mAh ব্যাটারি 1 আর্কেড স্টাইল বোতাম 1 arduino প্রো-মেগা 1 FTDI হেডার ব্রেকআউট বোর্ডের সাথে 1 ইউএসবি বি মহিলা সংযোগকারী কিছুটা প্লাস্টিকের কিছু সোল্ডার কিছু তারের কিছু থ্রেড *কিছু গরম আঠালো *কিছু ইলাস্টিক কিছু সময় (হয়তো "কিছুটা" এর চেয়ে কিছুটা বেশি) কিছু অধ্যবসায় (আপনার সম্ভবত এই বাস্তবতার কিছুটা প্রয়োজন হবে) কিছু তাপ সঙ্কুচিত টিউবিং বা বৈদ্যুতিক টেপ কিছু সুপার আঠালো কিছু লোহা ব্যাকিং টুলস *হেল্পিং হ্যান্ডস নরমাল হ্যান্ড গুলি (বা তাদের অ্যাক্সেসের সাথে কেউ) সোল্ডারিং আয়রন *হট গ্লু গান ড্রেমেল বা স্যান্ডপেপার চিসেল ওয়্যার স্ট্রিপারস ওয়্যার কাটার স্ট্যাপল গান স্ক্রু ড্রাইভার সান পিন সেলাই মেশিন ফ্যাব্রিক কাঁচি

ধাপ 2: ছোট স্ট্রিপের মধ্যে LED স্ট্রিপ কাটুন

ছোট স্ট্রিপগুলিতে LED স্ট্রিপ কাটুন
ছোট স্ট্রিপগুলিতে LED স্ট্রিপ কাটুন
ছোট স্ট্রিপগুলিতে LED স্ট্রিপ কাটুন
ছোট স্ট্রিপগুলিতে LED স্ট্রিপ কাটুন
ছোট স্ট্রিপগুলিতে LED স্ট্রিপ কাটুন
ছোট স্ট্রিপগুলিতে LED স্ট্রিপ কাটুন

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

ধাপ 3: একসাথে স্ক্রিন সোল্ডারিং

একসাথে স্ক্রিন সোল্ডারিং
একসাথে স্ক্রিন সোল্ডারিং
একসাথে স্ক্রিন সোল্ডারিং
একসাথে স্ক্রিন সোল্ডারিং
একসাথে স্ক্রিন সোল্ডারিং
একসাথে স্ক্রিন সোল্ডারিং

তারটি নিন এবং এটি প্রায় 3.5 ইঞ্চি (9 সেমি) অংশে কেটে নিন। আমার ক্ষেত্রে সোল্ডারিংয়ের সময় সোজা রাখা সহজ করার জন্য আমার তিনটি ভিন্ন রঙ আছে, কিন্তু একটি রঙ ঠিক কাজ করবে। আপনার এই ছোট ছেলেদের মধ্যে প্রায় 40 জন প্রয়োজন হবে, কিন্তু ক্ষেত্রে আরো একটি দম্পতি কাটা। একবার আপনি তারের কাটা শেষ করে ফেলুন, প্রান্ত এবং টিনের প্রান্তগুলি (যদি আপনার সোল্ডারিংয়ের অভিজ্ঞতা থাকে তবে আপনি পরবর্তী অনুচ্ছেদে যেতে পারেন), অর্থাত্ আপনি প্লাস্টিকের সামান্য অংশ সরানোর পরে প্রতিটি তারের প্রান্তে কিছু ঝাল রাখুন। সোল্ডার গরম করবেন না এবং তারে যাওয়ার চেষ্টা করবেন না, তামার নীচে থেকে সোল্ডারিং লোহা দিয়ে গরম করুন এবং সোল্ডারটি উপরে রাখুন। ধৈর্য ধরুন এবং গরম তারের সোল্ডার গলে যাওয়ার জন্য অপেক্ষা করুন। এটা শুরু করার জন্য সোল্ডারিং সোল্ডারিং লোহা শক্ত করার জন্য প্রলুব্ধকর (আমার অধৈর্য্য এবং আমি জানি আপনি ঠিক কেমন অনুভব করেন) কিন্তু সোল্ডারটিও লেগে থাকবে না। ফালা বিভাগের প্রতিটি প্রান্তে উন্মুক্ত তামার চিহ্নগুলির জন্য একই কাজ করুন। যদি এটি ইতিমধ্যে ঝাল থাকে তবে এটি সম্পর্কে চিন্তা করবেন না। স্ট্রিপের জন্য আপনি একটু mিবি তৈরি করতে চাইতে পারেন যাতে পরে এটি সহজ হয়। স্ট্রিপের সাথে কাজ করার সময়, এটি দ্রুত করুন এবং স্ট্রিপে তাপ প্রয়োগে বেশি সময় ব্যয় না করার চেষ্টা করুন। সোল্ডারটি ট্রেসে গলানোর জন্য আপনাকে যা করতে হবে তা করুন। প্রতিটি ট্রেসে প্রথম স্ট্রিপের শেষে একটি তারের সোল্ডার (তারের এবং সংযোগকারী সহ প্রথম স্ট্রিপ, এটি উন্মুক্ত প্রান্তে সোল্ডার)। যদি আপনি স্ট্রিপটি দেখেন তবে আপনি দেখতে পাবেন যে তার উপর ছোট তীরগুলি শেষ পর্যন্ত যাচ্ছে যেখানে আপনি তারের সোল্ডার করেছেন। আরেকটি স্ট্রিপ নিন যাতে তীরগুলি বিপরীত দিকে নির্দেশ করে, এবং GND ট্রেস থেকে অন্যের GND ট্রেসে আসা তারের ঝালাই করে, +5V থেকে +5V ইত্যাদি। এটি পুনরাবৃত্তি করুন নিশ্চিত করুন যে তীরগুলি প্রতিটি বিভাগের পরে দিকনির্দেশনাগুলি পরিবর্তন করে যাতে আপনি যদি তাদের অনুসরণ করেন তবে এটি উপরে এবং নীচে ঝাঁকুনি করবে এবং এটি শেষ পর্যন্ত দীর্ঘ স্ট্রিপে প্রসারিত হতে পারে। একবার সমস্ত 14 টি স্ট্রিপ সোল্ডার হয়ে গেলে, সেগুলি বিছিয়ে দিন এবং তারপর লাইন আপ করুন যাতে LED এর একটি গ্রিড তৈরি হয়। তারপরে স্ট্রিপের ক্ষতি ছাড়াই পরে সরানো যায় এমন একটি পদ্ধতি ব্যবহার করে তাদের একসাথে রাখুন। আমি স্কচ টেপ ব্যবহার করেছি। সবকিছু একসাথে রাখার জন্য এটি যথেষ্ট চটচটে কিন্তু অবশিষ্টাংশ রেখে যাওয়ার মতো এত স্টিকি নয়। আমি স্থায়ী কোন কিছুর সুপারিশ করি না, যেমন স্ট্যাপলস বা নালী টেপ। একবার সবকিছু একসাথে টেপ করা হলে নীচের স্ট্রিপ থেকে একটি তারের সাথে +5V এর সাথে সাথে তার পাশে লাগান। পুনরাবৃত্তি করুন যতক্ষণ না পুরো নীচে পাওয়ার ট্যাপগুলি সমস্ত পথ জুড়ে যাচ্ছে। এটি তাই LEDs অগ্রগতির লাইন হিসাবে পর্দা ম্লান হয় না।

ধাপ 4: কোর ইলেকট্রনিক্স সোল্ডারিং

কোর ইলেকট্রনিক্স সোল্ডারিং
কোর ইলেকট্রনিক্স সোল্ডারিং
কোর ইলেকট্রনিক্স সোল্ডারিং
কোর ইলেকট্রনিক্স সোল্ডারিং
কোর ইলেকট্রনিক্স সোল্ডারিং
কোর ইলেকট্রনিক্স সোল্ডারিং

ইউএসবি বি সংযোগকারীকে ইউএসবি বি ব্রেকআউট বোর্ড (বিওবি) বিক্রি করুন। ইউএসবি এ কানেক্টরে উপযুক্ত তারের সোল্ডার করুন। আমি এই ওয়েবসাইটে পাওয়া কানেক্টরের পিন-আউট দেখার পরামর্শ দিচ্ছি, https://image.pinout.net/pinout_USB_files/pc_usb_connectors_pinout.png। এখনই ইউএসবি এ সংযোগকারীতে তারের অন্য প্রান্তগুলি কোথায় বিক্রি করবেন তা নিয়ে চিন্তা করবেন না; যা নিয়ামক ধাপে আচ্ছাদিত হবে। স্ট্রিপ থেকে ডেটা কানেক্টর কেটে ফেলুন, মহিলা সংযোগকারী, পুরুষ সংযোগকারী নয় (মহিলা সংযোগকারী অন্য প্রান্ত থেকে অর্জিত)। ব্যাটারির প্রান্তে পুরুষ জেএসটি সংযোগকারীগুলিকে সোল্ডার করুন যাতে লাল লাল হয়ে যায় এবং কালো কালো হয়ে যায়। উন্মুক্ত তারের উপর গলানো তাপ সঙ্কুচিত টিউবিং (সোল্ডারিংয়ের আগে স্লাইড) যাতে তারা ছোট না হয় বা বৈদ্যুতিক টেপ বা গরম আঠা ব্যবহার করে। সমস্ত মহিলা জেএসটি সংযোগকারীকে কিছু তারের সোল্ডার করুন। একটি পুরুষ শেষ প্লাগ ইন নিশ্চিত করুন যাতে পিন চারপাশে স্থানান্তরিত না হয়। পোলারিটি সম্পর্কে সতর্ক থাকুন এবং নিশ্চিত করুন যে তারের পুরুষ সংযোগকারীদের সাথে মেলে। একটি উচ্চ ভোল্টেজ সংযোগকারীকে সোল্ডার তারগুলি (তবে এটি জোড়া নয়), আবার নিশ্চিত করুন যে কোনও রঙ মিলেছে এবং কোনও শিফটিং পিন আটকাতে তারা একসঙ্গে প্লাগ করা হয়েছে। মহিলা জাস্ট কানেক্টর/তারের সমাবেশকে সোল্ডার করুন যাতে তারা পাওয়ার রেগুলেটরের থ্রেশহোল্ড ভোল্টেজ অতিক্রম করার জন্য সমান্তরাল নয়, ধারাবাহিকভাবে তারযুক্ত হয়। সুতরাং, অন্যান্য সমাবেশের নেতিবাচক তারের সাথে ধনাত্মক তারের সোল্ডার করুন তাই এখন আমাদের একটি আন-সোল্ডারড পজিটিভ ওয়্যার এবং একটি নেগেটিভ আন-সোল্ডার ওয়্যার রয়েছে এবং দুটি সোল্ডার্ড ওয়্যারগুলি বিভিন্ন সংযোগকারীকে বিক্রি করা হয়েছে। নেতিবাচক তারটি নিন এবং এটি অন্যত্র নেতিবাচক তারের কাছে বিক্রি করার জন্য সংরক্ষণ করুন। এখন ধনাত্মক তারটি নিন এবং সুইচটিতে এটি সোল্ডার করুন যদি সেখানে তিন বা ততোধিক পিন থাকে (বা "অন" হওয়ার একাধিক উপায়) এটি মাঝের পিনে বিক্রি করে। মনে রাখবেন "মধ্য পিন" শারীরিকভাবে মাঝখানে নাও থাকতে পারে। এটি সনাক্ত করার উপায় হল পিনটি খুঁজে বের করা যে, যখন কোন অবস্থায় সুইচ চালু থাকে তখন সবসময় অন্য পিনের সাথে সংযুক্ত থাকবে। যদি কোন পিন এই মত না হয় তাহলে আপনি একটি খুব বিশেষ সুইচ আছে; শুধু যে কোন পিনের সাথে এটি সংযুক্ত করুন এবং নিশ্চিত করুন যে সুইচটিতে সোল্ডার করা পরবর্তী তারটি সেই তারের সাথে কমপক্ষে একটি অবস্থায় সংযুক্ত থাকবে। এখন ভোল্টেজ রেগুলেটরে পজিটিভ ইনটেক তারের সুইচের বিপরীত প্রান্তে বিক্রি করুন, যেমনটি উপরে আলোচনা করা হয়েছে। পোস্ট-ভোল্টেজটি আন-সোল্ডার্ড হাই কারেন্ট কানেক্টরের ইতিবাচক প্রান্তে বিক্রি করুন। নেতিবাচক ইনটেক তারের নিন এবং এটি উচ্চ বর্তমান সংযোগকারী নেতিবাচক প্রান্তে ঝালাই। আমরা এখন আরডুইনো এবং পাওয়ার স্ট্রিপের সমান্তরালে শক্তি বিক্রি করতে যাচ্ছি। এখন ভোল্টেজ রেগুলেটর আউটপুট তারগুলি নিন এবং ধনাত্মক এবং নেতিবাচক উভয় প্রান্তে তারের দুটি টুকরো ঝালাই করুন যাতে তারা একটি Y আকৃতিতে বেরিয়ে আসে। নেতৃত্বাধীন স্ট্রিপ সমাবেশের ইতিবাচক এবং নেতিবাচক তারের একটি দুটি পিন সংযোজক। আপনি কোন ধরনের সংযোগকারী ব্যবহার করেন তা কোন ব্যাপার না, এটি JST হতে পারে অথবা আমার ক্ষেত্রে কিছু পাওয়ার/অডিও কেবল বা কিছু (আমি নিশ্চিত নই, এবং কোন ছবি না থাকার জন্য আমি দু apologখিত)। হালকা স্ট্রিপের জন্য বিপরীত সংযোগকারীর ধনাত্মক প্রান্তে একটি ধনাত্মক বিদ্যুতের তারের সংযোজন করুন এবং সংযোগকারীটির অন্য পিনে একটি নেতিবাচক তারের। একই কাজ করুন কিন্তু একটি পুরুষ জেএসটি সংযোগকারী/তারের সমাবেশের জন্য। সব সময় শর্টস এড়ানোর জন্য সোল্ডার জয়েন্টগুলিকে ইনসুলেট করতে মনে রাখবেন। এখন ইউএসবি বি কানেক্টর দিয়ে কি করতে হবে। আরডুইনো প্রো মেগাতে একটি 5v গর্তে ইতিবাচক তারটি বিক্রি করুন। স্থল তারটি নিন এবং এটি একটি GND গর্তে ঝালাই করুন। D+ নিন এবং এটিকে ডিজিটাল পিনে (বা এই ক্ষেত্রে গর্তে) সোল্ডার করুন 40. সোল্ডার D- থেকে এনালগ পিন 15. মহিলা সংযোগকারীর ডেটা শেষ করে দিন যা LED স্ট্রিপ পুরুষ সংযোগকারীর সাথে ডেটা পিন 6 এবং একটি GND পিন স্থল তারের। বোর্ডে তারগুলি ধরে রাখার জন্য মাস্কিং বা স্কচ টেপ দুর্দান্ত কাজ করে যাতে সোল্ডার করার সময় এটি উল্টে যায় না। এখন একটি ক্ষণস্থায়ী বোতাম নিন এবং এক প্রান্ত থেকে ভিসিসি পিন (বা যে কোনও ভোল্টেজ আউটপুট পিন) এবং অন্য প্রান্তটি রিসেট পিনে একটি তারের সোল্ডার করুন।

ধাপ 5: নিয়ামক

নিয়ন্ত্রক
নিয়ন্ত্রক
নিয়ন্ত্রক
নিয়ন্ত্রক
নিয়ন্ত্রক
নিয়ন্ত্রক

প্রথমে শুরু করার জন্য সঠিক আকৃতি নির্বাচন করা। এটি সব নির্ভর করে আপনি কিভাবে নিয়ামক কাঠামো চান। আমি একটি সমতল নিয়ামক চেয়েছিলাম তাই আমি 3 1/2 "3/4" তক্তার একটি টুকরো পেয়েছিলাম। অংশগুলি এমনভাবে সাজান যা উপযুক্ত এবং কাজ করতে আরামদায়ক মনে হয়। একটি ফরাসি বক্ররেখা, কম্পাস, ত্রিভুজ এবং সোজা প্রান্ত ব্যবহার করুন যেখানে সব টুকরা যেতে হবে। আপনার পছন্দের কাটিং টুল ব্যবহার করে মৌলিক রূপরেখাটি কেটে ফেলুন। একটি নিষেধাজ্ঞা দেখে ভাল হবে কিন্তু আমি একটি মোকাবেলা করাত ব্যবহার করেছি, যা ঠিক কাজ করেছে। এগুলিকে মসৃণভাবে রূপান্তর করার জন্য প্রান্তগুলি বালি করুন, তারপরে কোণগুলিকে আরও আরামদায়ক করতে বালি দিন। সুইচের জন্য গর্তটি ড্রিল করুন, তারপর বালি, চিসেল, এবং/অথবা ড্রেমেল নীচের যে কোনও অংশকে এটি উপযুক্ত করে তুলবে। উপরের অংশে কিছু না করার চেষ্টা করুন এবং কেবল বালি বের করুন যা আপনি এটিকে মোচড়ানো, অ্যাঙ্গেলিং, বা অন্য যেকোনো জিনিস দিয়ে এটিতে ফিট করতে সক্ষম হবেন। একবার এটি প্লাস্টিকের বাদামের সাথে সংযুক্ত করুন এবং এটি সংযুক্ত করুন সুইচ পেন্টিওমিটার গাঁটের জন্য জায়গাটি ড্রিল করুন এবং একটি অঞ্চলকে ছিদ্র করুন যাতে এটি ডুবে যায় এবং পুরো পথটি ফিট করে। কিছু ছিদ্র ড্রিল করুন যাতে একটি স্ক্রু এটি ধরে রাখতে পারে। ইউএসবি এ সংযোগকারীর ছোট ছোট টুকরোগুলিতে বাঁকুন যা এর সাধারণ প্রস্থকে একটু বাড়িয়ে দেয় (ছবিগুলি দেখুন)। সংযোগকারীর জন্য একটি অংশ ছিঁড়ে ফেলুন, ক্রমাগত পরীক্ষা করে নিশ্চিত করুন যে সংযোগকারীটি ফিট করে। সংযোগকারীটিকে তার স্লটে সুপার আঠালো করুন। প্লাস্টিকের একটি ছোট টুকরো নিন এবং এটি এমন একটি আকৃতিতে কাটুন যা সংযোগকারীর উপর ফিট হবে (ছবিগুলি দেখুন), এবং তারপর এটি কাঠের জন্য প্রধান। পথে যে কোনো টুকরো কেটে ফেলুন। পোটেন্টিওমিটারে স্ক্রু করুন এবং গাঁটটি সংযুক্ত করুন। পজেন্টিওমিটারের এক প্রান্তে ধনাত্মক তারের (পরিবর্তনশীল অংশ নয়) এবং বিপরীত প্রান্তে negativeণাত্মক তারের সংমিশ্রণ করুন। পাত্রের ভেরিয়েবল পিনে ডি-পিন বিক্রি করুন। পাত্রের পিন থেকে পজিটিভ তারের সাথে বোতামটির একটি পিনে একটি তারের সোল্ডার করুন। বোতামের অন্য পিনে সোল্ডার ডি+। অতিরিক্ত তারের ছাঁটাই করুন এবং প্রয়োজনীয় টুকরাগুলি নিরোধক করুন।

ধাপ 6: শার্ট

শার্ট
শার্ট
শার্ট
শার্ট
শার্ট
শার্ট

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

ধাপ 7: প্রোগ্রামিং

প্রোগ্রামিং
প্রোগ্রামিং

এবং এখানে কোড। কিছু অংশ আছে যা ভালভাবে মন্তব্য করা হয়েছে কিন্তু বিশাল সংখ্যাগরিষ্ঠ নয়। যদি আপনার বিভিন্ন অংশে প্রশ্ন থাকে তাহলে আপনি আমাকে লাইন নম্বর দিতে পারেন (#লাইন নম্বর এক হিসাবে অন্তর্ভুক্ত করুন) অথবা আমাকে লাইন (গুলি) এবং যে ফাংশনে এটি থাকে তার একটি অনুলিপি দিন (যেমন লুপ () অথবা compMovePaddle ()) এবং আমি আপনাকে এটি ব্যাখ্যা করার জন্য যথাসাধ্য চেষ্টা করব, তারপরে কোডটি ব্যাখ্যা করে একটি মন্তব্য যুক্ত করুন। #অন্তর্ভুক্ত #পিন 6 সংজ্ঞায়িত করুন // বলে যে গেমের জন্য ইনপুট পিনগুলি int buttonPin = 40; // স্কোর নির্দেশ করে, একটি বায়ানারি অ্যারেতে রাখা হয় কারণ এটি esier int playerScore [5] = {0, 0, 0, 0, 0}; int compScore [5] = {0, 0, 0, 0, 0}; // বলের দিক নির্দেশ করে int bvd = 0; // 0 নিচে, 1 up int bhd = 0; // 0 ডান, 1 বাম // বলের অবস্থান int bvp = 8 নির্দেশ করে; int bhp = 6; // বল ফাস্ট মোডে আছে কিনা তা পরীক্ষা করে বুলিয়ান ফাস্ট = মিথ্যা; // এটি একটি স্কোর কিনা তা পরীক্ষা করে। বুলিয়ান cIsPoint = মিথ্যা; বুলিয়ান pIsPoint = মিথ্যা; // প্যাডেল অবস্থান cPaddle = 0; int pPaddle = 0; দীর্ঘ আগের মিলিস = 0; দীর্ঘ আগের MillisForComp = 0; // দ্রুত এবং ধীর গতিতে চলমান বলের জন্য বিলম্বের সময় নির্ধারণ করুন "Int" আদর্শে এবং fastInt ব্যবধানের জন্য int normInt = 50; int fastInt = 10; // একটি জয়ের জন্য চেক করতে ব্যবহৃত। 1 হল খেলোয়াড়ের জয়, -1 কম্পিউটারের জয়ে, এবং 0 কিছুই হয়নি এখনো ঘটেনি int win = 0; // একটি বাগ পরিত্রাণ পেতে অ্যাডঅন স্টেটমেন্টে ব্যবহৃত এবং অন্য কোথাও নয়। int যা = 0; // শুরুর আগে প্রদর্শিত জিনিস, -1 একটি পলায়ন int pongPlay = {1, 2, 3, 4, 10, 11, 12, 13, 16, 18, 20, 27, 29, 33, 34, 41, 42, 61, 62, 63, 70, 71, 72, 76, 85, 86, 88, 91, 92, 94, 100, 101, 102, 103, 131, 132, 136, 139, 144, 145, 146, 147, 148, 161, 162, 166, 175, 183, 185, 192, 194, 195, 196, 197, 198, 199, 204, 205, 206, 207, 208, -1}; // যদি আপনি int youWin = {1, 2, 3, 4, 5, 16, 17, 18, 19, 20, 27, 33, 34, 39, 46, 47, 48, 49, 54, 55, 56, 57, 58, 77, 78, 79, 84, 88, 91, 92, 93, 94, 95, 99, 103, 106, 110, 114, 118, 130, 131, 132, 144, 145, 146, 147, 151, 162, 163, 168, 169, 170, 177, 181, 192, 193, 204, 205, 206, 207, -1}; // যদি আপনি int হারিয়ে ফেলেন = {1, 3, 5, 16, 17, 18, 19, 20, 24, 26, 28, 31, 32, 32, 33, 34, 35, 39, 46, 47, 48, 49, 62, 65, 77, 78, 79, 84, 86, 88, 91, 94, 99, 103, 106, 110, 122, 123, 124, 130, 131, 132, 144, 148, 152, 153, 154, 162, 163, 168, 169, 170, 181, 192, 193, 204, 205, 206, 207, 208, -1}; // নেতৃত্বাধীন স্ট্রিপ সেট করে Adafruit_NeoPixel স্ট্রিপ = Adafruit_NeoPixel (210, PIN, NEO_RGB + NEO_KHZ800); // সেট আপ, ইনপুটের জন্য কোন পিন 40 চালু করে, স্ট্রিপ শুরু করে, // বার্তা প্রদর্শন করে এবং এটি দেখায়। অকার্যকর সেটআপ () {pinMode (buttonPin, INPUT); strip.begin (); জন্য (int i = 0; pongPlay > 0; i ++) {strip.setPixelColor (pongPlay , strip. Color (0, 0, 255)); } strip.show (); বিলম্ব (5000); while (digitalRead (buttonPin) == LOW) {// এটি একটি ফাঁদ! // (int i = 0; i <5; i ++) {if (playerScore == 1) {strip.setPixelColor (204-i, strip. Color (255, 255, 255)); } অন্যথায় যদি ((playerScore == 0)) {strip.setPixelColor (204-i, strip. Color (0, 255, 0)); } যদি (compScore == 1) {strip.setPixelColor (5+i, strip. Color (255, 255, 255)); } অন্যথায় যদি ((compScore == 0)) {strip.setPixelColor (5+i, strip. Color (255, 0, 0)); }} // বলটিকে তার প্রারম্ভিক অবস্থানে নিয়ে যায় strip.setPixelColor (98, strip. Color (255, 255, 255)); strip.show (); // সিদ্ধান্ত নেয় যে বলটি উপরে যাচ্ছে নাকি নিচে যাচ্ছে (pIsPoint == false && cIsPoint == false) {clearScreen (); স্বাক্ষরবিহীন দীর্ঘ কারেন্টমিলিস = মিলিস (); // প্লেয়ার প্যাডেল পজিশন pPaddle = checkPaddlePos (); // পরবর্তী পজিশন চেক চেক নেক্সট (); // বল সরানো যদি (দ্রুত == মিথ্যা) {যদি (currentMillis - previousMillis> normInt) {previousMillis = currentMillis; moveBall (); }} অন্যথায় যদি (দ্রুত == সত্য) {যদি (currentMillis - previousMillis> fastInt) {previousMillis = currentMillis; moveBall (); }} // বলটি আঁকুন যদি (bhp%2! = 0) {strip.setPixelColor (bhp*15+14-bvp, strip. Color (255, 255, 255)); } অন্যথায় যদি (bhp%2 == 0) {strip.setPixelColor (bhp*15+bvp, strip. Color (255, 255, 255)); } // কম্পিউটার প্যাডেল মুভমেন্ট compMovePaddle (); // ড্র এর প্যাডেল ড্রপ্যাডলস (); // প্রকৃতপক্ষে সবকিছু রাখা।strip.show (); // একটি পয়েন্ট স্কোর করা হয়েছে কিনা তা পরীক্ষা করা হচ্ছে (pIsPoint == true) {যা = 0; bhd = 0; এক যোগ কর(); বিরতি; } অন্যথায় যদি (cIsPoint == true) {যা = 1; bhd = 1; এক যোগ কর(); বিরতি; }} if (win == 1) {clearScreen (); জন্য (int i = 0; youWin > 0; i ++) {strip.setPixelColor (youWin , strip. Color (255, 0, 0)); strip.show (); } বিলম্ব (5000); জন্য (int i = 0; i <5; i ++) {playerScore = 0; compScore = 0; } জয় = 0; } অন্যথায় যদি (win == -1) {clearScreen (); জন্য (int i = 0; youLose > 0; i ++) {strip.setPixelColor (youLose , strip. Color (0, 255, 0)); strip.show (); } বিলম্ব (5000); জন্য (int i = 0; i <5; i ++) {playerScore = 0; compScore = 0; } জয় = 0; } pIsPoint = মিথ্যা; cIsPoint = মিথ্যা; bvp = 8; bhp = 6; bvd = এলোমেলো (0, 2); // 0 নিচে, 1 দ্রুত আপ = মিথ্যা; } // গেমটি অকার্যকর compMovePaddle () {স্বাক্ষরবিহীন দীর্ঘ কারেন্টমিলিস = মিলিস (); যদি (currentMillis - previousMillisForComp> 51) {previousMillisForComp = currentMillis; যদি (bvp> = 13 && 10-cPaddle 0) {cPaddle--; } অন্যথায় যদি (bvp = 0 && cPaddle <10) {cPaddle ++; } অন্যথায় যদি (bvp-3> 10-cPaddle && 10-cPaddle> = 0 && cPaddle> 0) {cPaddle--; } অন্যথায় যদি (bvp <10-cPaddle && 10-cPaddle <= 10) {cPaddle ++; }}} // বলকে অকার্যকর করে চলে যায় moveBall () {যদি (bhd == 0) {bhp--; } অন্যথায় যদি (bhd == 1) {bhp ++; } যদি (bvd == 0) {bvp--; } অন্যথায় যদি (bvd == 1) {bvp ++; }} // অ্যারেতে একটি যোগ করে। যদি কোনটি 0 হয় তবে এটি খেলোয়াড়ের স্কোর যোগ করে। যদি এটি 1 হয় তবে এটি কম্পিউটারে অকার্যকর addOne () {if (যা == 0) {// যদি এটি প্লেয়ারের স্কোর // যোগ করে এই সহজ পদ্ধতি আমি জানি কিভাবে। জন্য (int i = 0; i <5; i ++) {// loop if (playerScore == 0) {// যদি মানটি শূন্য প্লেয়ারস্কোর = 1; // এটি 1 ব্রেক; // তাহলে চলে যান} অন্যথায় {// যদি এটি 1 playerScore = 0; // এটি শূন্য এবং লুপ করুন}}} অন্যথায় যদি (যা == 1) {জন্য (int i = 0; i <5; আমি ++) {যদি (compScore == 0) {compScore = compScore +1; বিরতি; } অন্যথায় {compScore = 0; }}} // কেউ জিতেছে কিনা তা পরীক্ষা করে। যদি (compScore [0] == 1 && compScore [2] == 1 && compScore [4] == 1) {win = -1; } অন্যথায় যদি (playerScore [0] == 1 && playerScore [2] == 1 && playerScore [4] == 1) {win = 1; }} // বলগুলি পরের অবস্থানে অকার্যকর চেক চেক করুন } অন্যথায় যদি (bhp == 0) {cIsPoint = true; } // যদি একটি পয়েন্ট স্কোর করা হয় বাকি জিনিসগুলি এড়িয়ে যাওয়ার চেয়ে যদি (pIsPoint == false || cIsPoint == false) {// বলটি উল্লম্বভাবে পরীক্ষা করে যদি; } অন্যথায় যদি (bvp+bvd == 0) {bvd = 1; } // বলটি অনুভূমিকভাবে পরীক্ষা করে যদি (bhp+bhd == 13) {// প্রথমে কম্পিউটারের পাশে যদি (bvp> = 10-cPaddle && bvp <= 10-cPaddle+4) {if (bhd == 1) {bhd = 0; } অন্যথায় যদি (bhd == 0) {bhd = 1; } দ্রুত = মিথ্যা; } অন্যথায় যদি (bvp+bvd == 10-cPaddle || bvp+bvd == 10-cPaddle+5) {if (bvp! = 0 && bvp! = 14) {if (bvd == 0) {bvd = 1; } অন্যথায় যদি (bvd == 1) {bvd = 0; } bhd = 1; } অন্যথায় যদি (bvp == 0 || bvp == 14) {bhd = 1; } দ্রুত = মিথ্যা; }} অন্যথায় যদি (bhp+bhd == 1) {// তাহলে প্লেয়ারের পাশে যদি (bvp> = pPaddle && bvp <= pPaddle+4) {// এটি একটি স্বাভাবিক জায়গায় প্যাডেল মারছে? //বল বাউন্স! যদি (bhd == 1) {bhd = 0; } অন্যথায় যদি (bhd == 0) {bhd = 1; }} অন্যথায় যদি (bvp+bvd == pPaddle || bvp+bvd-5 == pPaddle) {// এটা কোণে প্যাডেল মারছে যদি (bvp! = 0 && bvp! = 14) {// এটা উপরে না নীচে? //বল বাউন্স! যদি (bvd == 0) {bvd = 1; } অন্যথায় যদি (bvd == 1) {bvd = 0; } bhd = 1; দ্রুত = সত্য; } অন্যথায় যদি (bvp == 0 || bvp == 14) {// এটা কি উঁচু বা নিচে কম? //বল বাউন্স! bhd = 0; দ্রুত = সত্য; // বলটি দ্রুত গতিতে চালানোর জন্য মান সেট করুন}}}} int checkPaddlePos () {// পাত্রটি পড়ে এবং প্যাডেলের অবস্থান ঠিক করে নেয় যদি (analogRead (A15) <93) {return 0; } অন্যথায় যদি (analogRead (A15) <186) {return 1; } অন্যথায় যদি (analogRead (A15) <279) {return 2; } অন্যথায় যদি (analogRead (A15) <372) {return 3; } অন্যথায় যদি (analogRead (A15) <465) {return 4; } অন্যথায় যদি (analogRead (A15) <558) {return 5; } অন্যথায় যদি (analogRead (A15) <652) {return 6; } অন্যথায় যদি (analogRead (A15) <745) {return 7; } অন্যথায় যদি (analogRead (A15) <837) {return 8; } অন্যথায় যদি (analogRead (A15) <= 931) {return 9; } অন্যথায় যদি (analogRead (A15) <= 2014) {return 10; }} void drawPaddles () {// সঠিক জায়গায় প্যাডেল আঁকুন এবং প্যাডেলের জন্য স্কোর প্রদর্শন করুন (int i = 0; i <5; i ++) {if (playerScore == 1) {স্ট্রিপ। setPixelColor (pPaddle+i, strip. Color (255, 255, 255)); } অন্যথায় যদি ((playerScore == 0)) {strip.setPixelColor (pPaddle+i, strip. Color (255, 0, 0)); } যদি (compScore == 1) {strip.setPixelColor (199+cPaddle-i, strip. Color (255, 255, 255)); } অন্যথায় যদি ((compScore == 0)) {strip.setPixelColor (199+cPaddle-i, strip. Color (0, 255, 0)); }}} void clearScreen () {for (int i = 0; i <= 210; i ++) {strip.setPixelColor (i, strip. Color (0, 0, 0)); } strip.show (); }

ধাপ 8: সমাপ্ত পণ্য

সমাপ্ত পণ্য
সমাপ্ত পণ্য
সমাপ্ত পণ্য
সমাপ্ত পণ্য

এবং আপনি সেখানে যান, সমাপ্ত শার্ট!

প্রস্তাবিত: