সুচিপত্র:
ভিডিও: জোকিং ট্যাঙ্ক: 5 টি ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:01
এটি এমন একটি প্রকল্প যা আমি আমার স্কুলে এইচকেইউতে করেছি, যার জন্য আমাদের একটি আরডুইনো ইউনো দিয়ে কিছু করা দরকার। আমি এমন কিছু করতে চেয়েছিলাম যা আমার প্রিয় কাজ করবে, মানুষকে হাসাবে। তাই একটি কৌতুক বাক্স তৈরি করার সিদ্ধান্ত নিয়েছে যা আপনাকে একটি কৌতুক করবে, কিন্তু এটি আপনাকে কী রসিকতা দেবে তা নির্ভর করবে কিছু নির্দিষ্ট সেন্সর মডিউল সময় নির্দিষ্ট সময়ে কি পরিমাপ করছে। এটিকে আরও ব্যক্তিগত করার জন্য আমি এটি একটি ট্যাঙ্ক বানানোর সিদ্ধান্ত নিয়েছি।
ধাপ 1: যন্ত্রাংশ পাওয়া
এই প্রকল্পটি পুনরায় তৈরি করতে আপনার যে অংশগুলির প্রয়োজন হবে তা হবে
- 1x কম্পিউটার Arduino IDE চালাতে সক্ষম
- 1x Arduino Uno
- Arduino Uno এর জন্য 1x ইউএসবি সংযোগকারী কেবল
- 1x সোনার সেন্সর
- 1x স্পিকার (শালীন মানের একটি অগ্রাধিকারযোগ্য (, আমি একটি ব্লুটুথ স্পিকার থেকে বের করেছিলাম))
- 1x LM386 পরিবর্ধক মডিউল (এটি নিজে করা সম্ভব কিন্তু আমি একটি মডিউল ব্যবহার করেছি)।
- 1x LM393 মাইক্রোফোন
- 1x LDR
- 1x LED (যেকোনো রং করবে কিন্তু আমি নীল ব্যবহার করেছি)।
- 4x 1kΩ প্রতিরোধক
- 1x 2, 7kΩ প্রতিরোধক
- 1x ব্রেডবোর্ড
- 1x মাইক্রো এসডি কার্ড (বিশেষত ছোট (1 বা 2 গিগাবাইট))।
- 1x পাওয়ার ড্রিল।
- 1x 16 মিমি ড্রিলহেড (বিশেষত ড্রিলিং মেটালের জন্য তৈরি)।
- 1x 9 মিমি ড্রিলহেড (বিশেষত ড্রিলিং মেটালের জন্য তৈরি)।
- 1x 1 মিমি ড্রিলহেড (আবার বিশেষত ড্রিলিং মেটালের জন্য তৈরি)।
- 1x মডেল ট্যাংক (আমি 1:35 স্কেল চিতাবাঘ 2 ব্যবহার করেছি কিন্তু অন্যান্য ক্ষেত্রেও ভাল হওয়া উচিত)।
- সুপারগ্লু / হটগ্লু
- এবং বেশ কিছু তারের বিশেষ করে বিভিন্ন রঙে।
- তারের বন্ধন (alচ্ছিক)।
ধাপ 2: তারের
আমাদের ওয়্যারিং দিয়ে শুরু করতে হবে, ছবিটি একটি টেকনিক্যাল ড্রয়িং কিভাবে এটি সব তারযুক্ত করা উচিত। এটি আপনার ব্লুপ্রিন্ট হিসাবে কাজ করবে। দ্রষ্টব্য: সমস্ত Arduino পোর্টগুলিকে প্রতিটি বন্দরের জন্য AP# নাম দেওয়া হয়েছে। Arduino হল AP4, পোর্ট A0 হল APA0 এবং পোর্ট 6 AP হল AP6 ~, ইত্যাদি অন্যান্য সমস্ত পোর্ট নামকরণ করা হয়েছে কারণ তারা নিজেদের মডিউলগুলিতে উপস্থিত হয়।
ধাপ 3: প্রি কোড থিংস
এখন আমরা কোড ব্যবহার শুরু করার আগে আমাদের কিছু স্টাফ দরকার। আমি আপনাকে এখনই সুপারিশ করছি যে এই ধাপ 2 থেকে 4 পর্যন্ত অনুসরণ করুন
www.electronoobs.com/eng_arduino_tut8.php
যাইহোক আমরা তার কোড ব্যবহার করতে যাচ্ছি না কারণ আমরা আমাদের নিজের ব্যবহার করতে যাচ্ছি দয়া করে মনে রাখবেন যে কিছু স্পিকার বিভিন্ন ফ্রিকোয়েন্সি ব্যবহার করে। আমার স্পিকার 16-বিট 32kHz অডিও ফাইল ব্যবহার করেছে। সুতরাং যদি আপনার কথা বলতে কোন ধরনের আওয়াজ হয় কিন্তু আপনার ফাইলগুলি না বাজানো হয় তাহলে আপনার ফ্রিকোয়েন্সি দিয়ে খেলার চেষ্টা করুন।
ধাপ 4: কোড
এখন আমরা কোডটি আরডুইনোতে আপলোড করতে যাচ্ছি।এগুলি সব কপি করুন এবং এটিকে আরডুইনো আইডিইতে পাস করুন এবং আপনার আরডুইনোতে আপলোড করুন।
// SD কার্ড রিডারের জন্য লাইব্রেরি অন্তর্ভুক্ত করে।#অন্তর্ভুক্ত "Wtv020sd16p.h" // সোনার সেন্সরের জন্য প্রয়োজনীয় লাইব্রেরি অন্তর্ভুক্ত করে। #অন্তর্ভুক্ত // Arduino এর জন্য পিন সেট করে। int resetPin = 4; int clockPin = 5; int dataPin = 6; int busyPin = 7; int soundDetectedPin = 12; int lightDetectedPin = A0; // SD কার্ড লাইব্রেরির জন্য পিন সেট করে। Wtv020sd16p wtv020sd16p (resetPin, clockPin, dataPin, busyPin); // সোনার সেন্সর লাইব্রেরির জন্য পিন সেট করে। নিউপিং সোনার (11, 10); // অন্যান্য ইনপুট সেট করে এবং প্রোগ্রামের বিটরেট সেট করে। অকার্যকর সেটআপ () {wtv020sd16p.reset (); pinMode (lightDetectedPin, INPUT); pinMode (soundDetectedPin, INPUT); Serial.begin (9600); } // প্রোগ্রামের প্রধান অংশ। অকার্যকর লুপ () {// ইন্টারজারগুলি int lightDetectedVal = analogRead (lightDetectedPin) সেট করে; int distanceVal = sonar.ping_cm (); int soundDetectedVal = digitalRead (soundDetectedPin); // বিলম্ব যাতে প্রকল্পটি সীমাহীনভাবে স্পিকার ব্যবহার করতে না পারে। বিলম্ব (30000); // সিরিয়াল প্রিন্ট এবং প্রিন্ট লাইন যাতে আপনি সহজেই দেখতে পারেন যে সেন্সর মডিউলগুলি কোন মানগুলি গ্রহণ করে। সিরিয়াল.প্রিন্ট ("সাউন্ড ভ্যালু:"); // একাধিক যদি বিবৃতি থাকে যাতে প্রোগ্রামটি বিভিন্ন অডিও ফাইল চালায় মানগুলির উপর নির্ভর করে সেন্সর মডিউল দ্বারা পরিমাপ করা হয়। যদি (soundDetectedVal == 0) {Serial.println (soundDetectedVal); সিরিয়াল.প্রিন্ট ("দূরত্ব:"); যদি (distanceVal == 0) {Serial.println (distanceVal); সিরিয়াল.প্রিন্ট ("হালকা মান:"); যদি (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (1); // আরেকটি সিরিয়াল প্রিন্ট যাতে আপনি দেখতে পারেন কোন সঠিক অডিও ফাইলটি চালানো হয়েছিল। Serial.println ("1 --------"); // অডিও ফাইলটি সম্পূর্ণ দৈর্ঘ্যে চালাতে আরেকটি বিলম্ব। বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (2); Serial.println ("2 --------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (3); Serial.println ("3 --------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (4); Serial.println ("4 --------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (5); Serial.println ("5 --------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 500 || lightDetectedVal 0 || distanceVal == NULL) {Serial.println (distanceVal); সিরিয়াল.প্রিন্ট ("হালকা মান:"); যদি (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (7); Serial.println ("7 --------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (8); Serial.println ("8 --------"); বিলম্ব (8000); } অন্যথায় যদি (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (9); Serial.println ("9 --------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (10); Serial.println ("10 -------"); বিলম্ব (8000); } অন্যথায় যদি (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (11); Serial.println ("11 -------"); বিলম্ব (6000); } অন্যথায় যদি (lightDetectedVal> = 500 || lightDetectedVal <= 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (13); Serial.println ("13 -------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (14); Serial.println ("14 -------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (15); Serial.println ("15 -------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (16); Serial.println ("16 -------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (17); Serial.println ("17 -------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 500 || lightDetectedVal 0 || distanceVal == NULL || distanceVal> = 150) {Serial.println (distanceVal); সিরিয়াল.প্রিন্ট ("হালকা মান:"); যদি (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (19); Serial.println ("19 -------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (20); Serial.println ("20 -------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (21); Serial.println ("21 -------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (22); Serial.println ("22 -------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (23); Serial.println ("23 -------"); বিলম্ব (5000); } অন্যথায় যদি (lightDetectedVal> = 500 || lightDetectedVal << 500) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (24); Serial.println ("24 -------"); বিলম্ব (5000); }}}}
ধাপ 5: কেস
এখন আসল জটিল অংশ।
এই ক্ষেত্রে সবকিছু ফিট করা কিছুটা জটিল হতে পারে এটি নির্ভর করে আপনি কীভাবে আপনার রুটিবোর্ডে সবকিছু লাগিয়েছেন বা আপনি কীভাবে জিনিসগুলি একসঙ্গে বিক্রি করেছেন তার উপর। কিন্তু আপনাকে সেন্সরগুলির জন্য কয়েকটি ছিদ্র করতে হবে যাতে থরুগ আটকে যায়। আমি মাইক্রোফোন (9 মিমি ড্রিল প্রয়োজন) এবং সোনার মডিউল (6 মিমি ড্রিল প্রয়োজন) পিছনে এবং এলডিআর ট্যাঙ্কের সামনে রাখি
আপনার আরডুইনোকে কানেক্টর ক্যাবলের সাথে সংযুক্ত করতে মডেলের শরীরে একটি গর্ত কাটা নিশ্চিত করুন।
আমি বুর্জে স্পিকার লাগানোর পরামর্শ দেব। যেহেতু সেখানে প্রচুর জায়গা থাকা উচিত।
উপরের বাম ছবিটি হল কিভাবে আমি আরডুইনো লাগিয়েছি এবং প্রিন্টটি আমি চিতাবাঘ 2 মডেলের ভিতরে সোল্ডার করেছি ডান ছবিটি বেশিরভাগ তারের লাগানো।
আপনি যা করতে পারেন তা হল মডেলের নীচে ছোট ছোট গর্ত ড্রিল করা যাতে তারের বন্ধন দিয়ে আরডুইনো নিরাপদ হয়।
কিন্তু যদি আমি ভুল না করি তবে আপনার এখনই করা উচিত।
প্রস্তাবিত:
Arduino SN7300 Sinoning এর জন্য সস্তা এক্রাইলিক রোবট ট্যাঙ্ক চ্যাসি: 6 টি ধাপ
Arduino SN7300 Sinoning এর জন্য সস্তা এক্রাইলিক রোবট ট্যাঙ্ক চ্যাসি: Arduino SN7000 Sinoning এর জন্য সস্তা এক্রাইলিক ট্যাঙ্ক চ্যাসি কিনুন: SINONING ROBOT TANK থেকে
ওয়াইফাই তেল ট্যাঙ্ক মনিটর: 6 ধাপ (ছবি সহ)
ওয়াইফাই অয়েল ট্যাঙ্ক মনিটর: হিটিং অয়েল ট্যাঙ্কে কতটা জ্বালানি বাকি আছে তা পরীক্ষা করার বিভিন্ন উপায় রয়েছে। সবচেয়ে সহজ উপায় হল ডিপস্টিক ব্যবহার করা, খুব নির্ভুল কিন্তু ঠান্ডা শীতের দিনে খুব বেশি মজা হয় না। কিছু ট্যাঙ্ক একটি দৃষ্টি নল দিয়ে লাগানো হয়, আবার একটি সরাসরি ইঙ্গিত দেয়
কিভাবে SMARS রোবট তৈরি করবেন - Arduino স্মার্ট রোবট ট্যাঙ্ক ব্লুটুথ: 16 টি ধাপ (ছবি সহ)
কিভাবে SMARS রোবট তৈরি করবেন - Arduino স্মার্ট রোবট ট্যাঙ্ক ব্লুটুথ: এই নিবন্ধটি PCBWAY দ্বারা গর্বিতভাবে স্পনসর করা হয়েছে। আপনার নিজের জন্য এটি ব্যবহার করে দেখুন এবং PCBWAY তে মাত্র 5 ডলারে 10 PCBs পান খুব ভালো মানের সাথে, ধন্যবাদ PCBWAY। Arduino Uno এর জন্য মোটর শিল্ড
রিমোট কন্ট্রোল ট্যাঙ্ক ড্রাইভ গাড়ি: 3 ধাপ
রিমোট কন্ট্রোল ট্যাঙ্ক ড্রাইভ কার: এটি একটি রিমোট কন্ট্রোল ট্যাঙ্ক ড্রাইভ গাড়ি কিভাবে তৈরি করা যায় তার একটি নির্দেশিকা। আমি আজ গাড়িটি তৈরির জন্য যে সেটটি ব্যবহার করব তা হল একটি সাধারণ ট্যাঙ্ক ড্রাইভ গাড়ির কিট, একটি পথ অনুসরণ করার জন্য একটি হালকা সেন্সর সহ। আপনার গাড়ির লাইট সেন্সরের প্রয়োজন নেই, তবে একটি ট্যাঙ্ক ড্রাইভ গাড়ির প্রয়োজন
3 ডি মুদ্রিত আরসি নিয়ন্ত্রিত ট্যাঙ্ক !!: 8 টি ধাপ (ছবি সহ)
3 ডি মুদ্রিত আরসি নিয়ন্ত্রিত ট্যাঙ্ক !! ময়লার মতো ভূখণ্ডে গাড়ি চালানোর সময় ট্যাঙ্কের ট্র্যাকগুলি দুর্দান্ত ধরার অনুমতি দেয়