সুচিপত্র:

আরডুইনো মিউজিক স্টাম্প: হালকা, ক্যাপটিভ টাচ এবং একটি বুজার: 3 টি ধাপ
আরডুইনো মিউজিক স্টাম্প: হালকা, ক্যাপটিভ টাচ এবং একটি বুজার: 3 টি ধাপ

ভিডিও: আরডুইনো মিউজিক স্টাম্প: হালকা, ক্যাপটিভ টাচ এবং একটি বুজার: 3 টি ধাপ

ভিডিও: আরডুইনো মিউজিক স্টাম্প: হালকা, ক্যাপটিভ টাচ এবং একটি বুজার: 3 টি ধাপ
ভিডিও: Creating Music using LDR's and Arduino. 2024, জুলাই
Anonim
Arduino MusicStump: হালকা, ক্যাপটিভ টাচ এবং একটি বুজার
Arduino MusicStump: হালকা, ক্যাপটিভ টাচ এবং একটি বুজার

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

ইলেকট্রনিক্স:- 1x Arduino Uno

- 15x তারগুলি

- একটি বৃত্তাকার টিপ সহ 1x সোল্ডারিং লোহা

- 1x অ্যাডাফ্রুট 8-কী ক্যাপটিভ টাচ (CAP1188)

- 1x আরডুইনো পাওয়ার ক্যাবল

- 1x 8 LED রিং

- 1x বুজার

- 1x গরম আঠালো বন্দুক

-CAP1188 এর লাইব্রেরি ডাউনলোড করুন

- Adafruit Neopixel এর লাইব্রেরি ডাউনলোড করুন

অতিরিক্ত (আবরণ):

- 1x গাছের স্টাম্প

- ভিতরের জন্য 1x লাঠি

- কাঠের থালায় এটি সব/ভিতরে রাখা

- বাইরের জন্য স্টাফড পশু স্টাফিং

আপনি বাইরে অন্য কিছু ব্যবহার করতে পারেন, সৃজনশীল হোন!

এখন শুরু করা যাক…

ধাপ 1: ধাপ 1: ক্যাপটিভ টাচ সহ LED রিং

ধাপ 1: ক্যাপটিভ টাচ সহ LED রিং
ধাপ 1: ক্যাপটিভ টাচ সহ LED রিং

এখন আপনি ভাগ্যবান হলে আপনার LED রিং এর সাথে ইতিমধ্যেই পিন সংযুক্ত আছে। যদি না হয় এটা ঝাল করার সময়!

এই প্রকল্পের জন্য আমরা যে জিনিসগুলি ব্যবহার করব তা হল:

- DI (ডিজিটাল ইনপুট, পিন 6

- 5V (পাওয়ারের জন্য, 5V পিন)

- GND (স্থল, GND পিন)

আপাতত এটাই এলইডি রিং।এখন ক্যাপটিভ টাচ।

এটি একটি ব্রেডবোর্ডে রাখুন এবং নিম্নরূপ সবকিছু সংযুক্ত করুন: SDA/MISO in pin (analog in) A4SCK in pin (analog in) A5VIN in (power) 5VGND in a GND pin1x cable in C1 (বন্দী স্পর্শ নিজেই)

এখন আপনার Arduino এ নিম্নলিখিত কোড আপলোড পরীক্ষা করতে:

// জুলিয়া Emmink // ইন্টারেক্টিভ গাছের জন্য হালকা এবং স্পর্শ কোড 19 /// Adafruit Neopixel এবং Adafruit ক্যাপটিভ টাচ (CAP1188) (ইনস্টল করা হবে) এবং LED ঝলকানি দেরি না করে তৈরি

// NEOPIXEL

#অন্তর্ভুক্ত

#ডিফাইন পিক্সেলস্পিন 6 // যেখানে আপনি LED রিং সংযুক্ত করেছেন

#সংজ্ঞায়িত সংখ্যা 8

Adafruit_NeoPixel পিক্সেল = Adafruit_NeoPixel (NUMPIXELS, PIXELSPIN, NEO_GRB + NEO_KHZ800);

স্বাক্ষরবিহীন দীর্ঘ পিক্সেল ব্যবধান = 500; // যে সময়টা আমাদের অপেক্ষা করতে হবে

স্বাক্ষরবিহীন লম্বা রঙ WipePreviousMillis = 0; স্বাক্ষরবিহীন দীর্ঘ থিয়েটার স্বাক্ষরবিহীন দীর্ঘ রংধনু পূর্ববর্তী মিলিস = 0; স্বাক্ষরবিহীন লম্বা রংধনু চক্র পূর্ববর্তী মিলিস = 0;

int থিয়েটারচ্যাসকিউ = 0;

uint16_t currentPixel = 0; // আমরা কোন পিক্সেল নিয়ে কাজ করছি

// স্পর্শ

#অন্তর্ভুক্ত #অন্তর্ভুক্ত #অন্তর্ভুক্ত

// রিসেট পিন I2C বা SPI এর জন্য ব্যবহৃত হয়

#CAP1188_RESET 9 নির্ধারণ করুন

// সিএস পিন সফটওয়্যার বা হার্ডওয়্যার SPI এর জন্য ব্যবহৃত হয়

#CAP1188_CS 10 নির্ধারণ করুন

// এগুলো সফটওয়্যার SPI, হার্ডওয়্যার SPI- এর জন্য সংজ্ঞায়িত, আপনার চেক করুন

// Arduino ডকুমেন্টেশনে বোর্ডের এসপিআই পিন #ডিএফাইন CAP1188_MOSI 11 #ডিফাইন CAP1188_MISO 12 #ডিফাইন CAP1188_CLK 13

// I2C ব্যবহার করুন, কোন রিসেট পিন নেই!

Adafruit_CAP1188 cap = Adafruit_CAP1188 ();

অকার্যকর সেটআপ() {

// NEOPIXEL ~~~~~~~~~~~~~~~~~~ currentPixel = 0; পিক্সেল শুরু (); // এটি নিওপিক্সেল লাইব্রেরির সূচনা করে। পিক্সেল শো (); // এটি হার্ডওয়্যারে আপডেট হওয়া পিক্সেল রঙ পাঠায়।

// স্পর্শ

Serial.begin (300); Serial.println ("CAP1188 পরীক্ষা!");

যদি (! cap.begin ()) {

Serial.println ("CAP1188 পাওয়া যায়নি"); যখন (1); } Serial.println ("CAP1188 পাওয়া গেছে!"); }

অকার্যকর লুপ () {

// টাচ + NEOPIXEL ~~~~~~~~~~~~~~~~~~~~~~ uint8_t স্পর্শ = cap.touched (); যদি (স্পর্শ == 0) {যদি ((স্বাক্ষরবিহীন দীর্ঘ) (মিলিস () - colorWipePreviousMillis)> = pixelsInterval) {colorWipePreviousMillis = millis (); কালারওয়াইপ (পিক্সেল। রঙ (0, 255, 125)); }} অন্য {যদি ((স্বাক্ষরবিহীন দীর্ঘ) (মিলিস () - colorWipePreviousMillis)> = pixelsInterval) {colorWipePreviousMillis = millis (); কালারওয়াইপ (পিক্সেল। রঙ (100, 0, 150)); }}

}

অকার্যকর রঙ মুছুন (uint32_t c) {

// NEOPIXEL ~~~~~~~~~~~~~~~~~~ // রঙ পিক্সেল থেকে মুক্তি পায়। setPixelColor (currentPixel, c); pixels.setPixelColor (currentPixel - 1, pixels. Color (0, 0, 0)); পিক্সেল শো (); currentPixel ++; যদি (currentPixel == NUMPIXELS) {currentPixel = 0; pixels.setPixelColor (7, pixels. Color (0, 0, 0));

}

}

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

ধাপ 2: ধাপ 2: শব্দ যুক্ত করা

একটি সহজ টিউটোরিয়াল ব্যবহার করে আমি এটি তৈরি করেছি। টিউটোরিয়ালটি নিম্নরূপ:

github.com/xitangg/-Pirates-of-the-Caribbe…

আপনার বুজার ধরার সময়! বাজারের (-) GND পিনের একটিতে এবং (+) পিন 10 Put এ রাখুন

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

// জুলিয়া এমিংক // ইন্টারেক্টিভ গাছের জন্য হালকা, স্পর্শ এবং সঙ্গীত কোড 2018-01-19 // অ্যাডাফ্রুট নিওপিক্সেল এবং ক্যাপটিভ টাচ (CAP1188) (ইনস্টল করতে হবে) এবং দেরি না করে LED ঝলকানি দিয়ে তৈরি

// NEOPIXEL ~~~~~~~~~~~~~~~~~~#অন্তর্ভুক্ত

#পিক্সেলস্পিন 6 নির্ধারণ করুন

#সংজ্ঞায়িত সংখ্যা 8

Adafruit_NeoPixel পিক্সেল = Adafruit_NeoPixel (NUMPIXELS, PIXELSPIN, NEO_GRB + NEO_KHZ800);

স্বাক্ষরবিহীন দীর্ঘ পিক্সেল ব্যবধান = 500; // যে সময়টা আমাদের অপেক্ষা করতে হবে

স্বাক্ষরবিহীন লম্বা রঙ WipePreviousMillis = 0; স্বাক্ষরবিহীন দীর্ঘ থিয়েটার স্বাক্ষরবিহীন দীর্ঘ রংধনু পূর্ববর্তী মিলিস = 0; স্বাক্ষরবিহীন লম্বা রংধনু চক্র পূর্ববর্তী মিলিস = 0;

int থিয়েটারচ্যাসকিউ = 0;

uint16_t currentPixel = 0; // আমরা কোন পিক্সেল নিয়ে কাজ করছি

// সঙ্গীত

const int buzzer = 10; // পিন 10 সংজ্ঞায়িত করুন, অন্যান্য PWM পিন ব্যবহার করতে পারেন (5, 6 বা 9) // Arduino Uno const int songspeed = 1.5 এ টোন ফাংশন ব্যবহার করার সময় নোট পিন 3 এবং 11 ব্যবহার করা যাবে না। // গানের ধীর সংস্করণের জন্য 2 তে পরিবর্তন করুন, গানটি যত বড় হবে তত বড় গান // *************************** ************** #সংজ্ঞায়িত করুন NOTE_C4 262 // নোটের ফ্রিকোয়েন্সি নির্ধারণ করা হচ্ছে 523 #ডিফাইন NOTE_D5 587 #ডিফাইন NOTE_E5 659 #ডিফাইন NOTE_F5 698 #ডিফাইন NOTE_G5 784 #ডিফাইন NOTE_A5 880 #ডিফাইন NOTE_B5 988 // *********************** ****************** int নোট = {// গানের নোট, 0 একটি বিশ্রাম/পালস NOTE_E4, NOTE_G4, NOTE_A4, NOTE_A4, 0, NOTE_A4, NOTE_B4, NOTE_C5, NOTE_C5, 0, NOTE_C5, NOTE_D5, NOTE_B4, NOTE_B4, 0, NOTE_A4, NOTE_G4, NOTE_A4, 0}; // ******************************************* int period = { / /প্রতিটি নোটের সময়কাল (ms) কোয়ার্টার নোট 250 ms 125, 125, 250, 125, 125, 125, 125, 250, 125, 125, 125, 125, 250, 125, 125, 125, 125 375, 125};

// স্পর্শ

#অন্তর্ভুক্ত #অন্তর্ভুক্ত #অন্তর্ভুক্ত

// রিসেট পিন I2C বা SPI এর জন্য ব্যবহৃত হয়

#CAP1188_RESET 9 নির্ধারণ করুন

// সিএস পিন সফটওয়্যার বা হার্ডওয়্যার SPI এর জন্য ব্যবহৃত হয়

#CAP1188_CS 10 নির্ধারণ করুন

// এগুলো সফটওয়্যার SPI, হার্ডওয়্যার SPI- এর জন্য সংজ্ঞায়িত, আপনার চেক করুন

// Arduino ডকুমেন্টেশনে বোর্ডের SPI পিন #DEfine CAP1188_MOSI 11 #Define CAP1188_MISO 12 #define CAP1188_CLK 13

// I2C ব্যবহার করুন, কোন রিসেট পিন নেই!

Adafruit_CAP1188 cap = Adafruit_CAP1188 ();

অকার্যকর সেটআপ() {

// সঙ্গীত ~~~~~~~~~~~~~~~~~~~~~~ জন্য (int i = 0; i <203; i ++) {// 203 হল মোট সঙ্গীত নোটের সংখ্যা গান int wait = period * songspeed; স্বর (বুজার, নোট , অপেক্ষা করুন); // সুর ~~~~~~~~~~~~~~~ currentPixel = 0; পিক্সেল শুরু (); // এটি নিওপিক্সেল লাইব্রেরির সূচনা করে। পিক্সেল শো (); // এটি হার্ডওয়্যারে আপডেট হওয়া পিক্সেল রঙ পাঠায়।

// স্পর্শ

Serial.begin (300); Serial.println ("CAP1188 পরীক্ষা!"); যদি (! cap.begin ()) {Serial.println ("CAP1188 পাওয়া যায়নি"); যখন (1); } Serial.println ("CAP1188 পাওয়া গেছে!");

}

অকার্যকর লুপ () {

// টাচ + NEOPIXEL ~~~~~~~~~~~~~~~~~~~~~~ uint8_t স্পর্শ = cap.touched (); যদি (স্পর্শ == 0) {যদি ((স্বাক্ষরবিহীন দীর্ঘ) (মিলিস () - colorWipePreviousMillis)> = pixelsInterval) {colorWipePreviousMillis = millis (); কালারওয়াইপ (পিক্সেল। রঙ (0, 255, 125)); }} অন্য {যদি ((স্বাক্ষরবিহীন দীর্ঘ) (মিলিস () - colorWipePreviousMillis)> = pixelsInterval) {colorWipePreviousMillis = millis (); কালারওয়াইপ (পিক্সেল। রঙ (100, 0, 150)); }}

জন্য (int i = 0; i = pixelsInterval) {

colorWipePreviousMillis = মিলিস (); কালারওয়াইপ (পিক্সেল। রঙ (0, 255, 125)); }} অন্য {যদি ((স্বাক্ষরবিহীন দীর্ঘ) (মিলিস () - colorWipePreviousMillis)> = pixelsInterval) {colorWipePreviousMillis = millis (); কালারওয়াইপ (পিক্সেল। রঙ (100, 0, 150)); }}

বিলম্ব (অপেক্ষা);

}

}

অকার্যকর রঙ মুছুন (uint32_t c) {

// NEOPIXEL ~~~~~~~~~~~~~~~~~~ // রঙ পিক্সেল থেকে মুক্তি পায়। setPixelColor (currentPixel, c); pixels.setPixelColor (currentPixel-1, pixels. Color (0, 0, 0)); পিক্সেল শো (); currentPixel ++; যদি (currentPixel == NUMPIXELS) {currentPixel = 0; pixels.setPixelColor (7, pixels. Color (0, 0, 0));

}

}

ধাপ 3: অতিরিক্ত পদক্ষেপ: স্টাম্প তৈরি করা 'আরডুইনো রেডি'

অতিরিক্ত পদক্ষেপ: স্টাম্প তৈরি করা 'আরডুইনো রেডি'
অতিরিক্ত পদক্ষেপ: স্টাম্প তৈরি করা 'আরডুইনো রেডি'
অতিরিক্ত পদক্ষেপ: স্টাম্প তৈরি করা 'আরডুইনো রেডি'
অতিরিক্ত পদক্ষেপ: স্টাম্প তৈরি করা 'আরডুইনো রেডি'
অতিরিক্ত পদক্ষেপ: স্টাম্প তৈরি করা 'আরডুইনো রেডি'
অতিরিক্ত পদক্ষেপ: স্টাম্প তৈরি করা 'আরডুইনো রেডি'

আপনি যদি ট্রি স্টাম্প ব্যবহার করার সিদ্ধান্ত নেন তাহলে আপনাকে নিম্নলিখিতগুলি করতে হবে।

  • একটি গাছের স্টাম্প পান (আমি একটি পুরানো ক্রিসমাস ট্রি থেকে বিনামূল্যে পেয়েছি)
  • আপনার Arduino পরিমাপ করুন এবং দেখুন কিভাবে আপনি গাছের স্টাম্পে তারগুলি রাখতে চান
  • স্টাম্পটি ফাঁকা করুন (আমি স্কুল থেকে একটি ড্রিল মেশিন ব্যবহার করেছি)
  • রুক্ষ প্রান্তগুলি বন্ধ করুন
  • মজার ছোট বিবরণ যোগ করুন

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

প্রস্তাবিত: