Мазмұны:
- 1 -қадам: Қажетті материалдар
- 2 -қадам: Құрылыс уақыты
- 3 -қадам: дыбыстық сенсор модулі және RGB жарықдиодты шамы
- 4 -қадам: код
- 5 -қадам: Қорытынды ойлар
Бейне: RGB светодиоды бар клавиатуралық модуль фортепиано: 5 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:26
Кіріспе
Сәлеметсіз бе, ханымдар мен мырзалар, менің бірінші нұсқаулығыма қош келдіңіздер! Бүгін мен сізге фортепиано жасауды үйретемін, оның негізгі компоненттері пернетақта модулі мен пьезо-дыбыстық сигнал, ол DO-RE-MI және т.б.
Пернетақта модулінің негізгі мақсаты - құнды заттарға арналған қорапты құру үшін RFID ардуиносымен біріктірілген пернетақта. Бұл жағдайда мен пернетақтаны өзгерттім, мен бір нәрсені қорғаудың орнына қарапайым қуаныш пен музыканы айтуға шешім қабылдадым.
Идея туралы түсінік
Бұл туындының идеясы мен музыка сабағында кішкентай кезімде ксилофон ойнаған кездегі қарапайым бақытты жадтан туындады. Менің денемдегі қуаныш пен толқудың шыңы болды, демек, әр бала оңай қанағаттанатын, ал менің қанағаттануым ксилофон ойнау болды.
Зерттеу
Жоғарыдағы сіздің шамыңыз жанған соң, кішкене зерттеу жүргізу қажет. Біраз уақыт интернетті шолғаннан кейін мен өзім ойлаған ойды кездестірдім! Пернетақта модулі фортепианоға айналды, біреу дәл осы жобаның бейнесін осында жасады. Алдын ала ойлана отырып, мен жобаны одан әрі жетілдіретін, бірақ оны тартымды ететін және оны менікі деп атай алатын бөлек компонент қосуым керек болды.
1 -қадам: Қажетті материалдар
Материалдар тізімі
- Piezo Buzzer 1x ▶
- 4x4 пернетақта модулі 1x ▶
- Arduino Uno 1x ▶
- USB 2.0 кабелі A/B 1x ▶
- Дыбыс сенсоры модулі 1x ▶
- RGB жарықдиодты 1x ▶
- 330 Ом резисторы 3x ▶
- Еркек пен әйел арасындағы секіргіш сым 8х ▶
- Еркек пен еркекке 4x ▶ ▶
- 3 түйреуіш еркек пен әйелге арналған секіргіш сым 1x ▶
Материалдар тізімі жоғарыдағы суреттермен реттелген.
2 -қадам: Құрылыс уақыты
4x4 пернетақта модулі және Piezo Buzzer
Теория
4x4 пернетақтасы модулі мен пьезо -дыбыстық сигналда көптеген түйреуіштер бар болғандықтан, мен қолданылған компоненттерді екі жұпқа бөлуге шешім қабылдаймын. Пернетақтаға назар аудару, әдетте кіріс ретінде қолданылады. SunFounder 4*4 матрицалық пернетақта модулі- бұл параллель 16 пернеден тұратын матрицалық кодталмаған пернетақта, әр жол мен бағананың кілттері сырттағы түйреуіштер арқылы қосылады- Y1-Y4 түйреуіші жолдарды басқару жанында белгіленген, X1- X4, бағандар.
Мақсаты
Бұл компоненттердің бүкіл жобаның мақсаты - пайдаланушыға герц жиілігі арқылы пьезо -дыбыстық сигнал шығаратын белгілі бір дыбысқа орнатылған түймені басуға мүмкіндік беру.
Матрицалық модуль түйрегіші - Arduino түйреуіші
- 4 - 2
- 3 - 3
- 2 - 4
- 1 - 5
- 5 - 6
- 6 - 7
- 7 - 8
- 8 - 13
Piezo Buzzer - Arduino Pin
Қара - GND
Қызыл - Қуат
Бұл құрылыстағы менің ең қиын міндетім - әрбір сымның қай жерге қосылғанын анықтау. Жоғарыда мен сізге сымдардың орналасу жолын жылдам және оңай ұсынамын, егер жоғарыдан төменге қарай жүретін болсаңыз, уақытты алыңыз және әр істіктің дұрыс ұяға дұрыс салынғанына көз жеткізіңіз.
*Кеңес - әрбір сымның бір шетінен екінші шетіне дейін орналасуын қадағалау.
Белгілі бір компоненттер сымдарының барлық Tinkercad эскиздері түспен дұрыс кодталған, сондықтан оларды мұқият орындаңыз
3 -қадам: дыбыстық сенсор модулі және RGB жарықдиодты шамы
Дыбыс сенсоры модулі және RGB жарық диоды
Теория
Дыбыс сенсоры модулі дыбыстың таңдалған нүктеден асып кеткенін анықтауға мүмкіндік береді. Дыбыс микрофон арқылы анықталады және LM393 жұмыс күшейткішіне беріледі. Дыбыс деңгейі белгіленген нүктеден асып кеткенде, модульдегі жарық диоды жанады және жарық шығады.
Мақсаты
Бұл компоненттердің бүкіл жобаның мақсаты - дыбыс сенсоры модулінің дыбыс/дыбыс көрсеткішін алу және сол арқылы RGB светодиодты оқу дыбысқа қатысты дұрыс түсті белсендіреді.
Дыбыс сенсоры модулі - Arduino түйреуіші (3 істікшелі секіргішті қолданыңыз)
- Шығу - A0 аналогтық түйреуіш
- GND - кез келген ашық GND түйреуіш ұясы
- VCC - 3В
RGB жалпы анодты (+) жарықдиодты - Arduino Pin
- Қызыл - 9
- Қуаты - 5 В.
- Жасыл - 10
- Көк - 11
Әрбір жеке сымды 330 Ом резистор арқылы өткізуді ұмытпаңыз. Анықтама ретінде жоғарыдағы суретті пайдаланыңыз.
Бұл құрылыстағы менің ең қиын міндетім - әрбір сымның қай жерге қосылғанын анықтау. Жоғарыда мен сізге сымдардың орналасу жолын тез және оңай ұсынамын, егер жоғарыдан төменге қарай жүретін болсақ, уақытты бөліп, болашақ отладтауды болдырмау үшін әр түйреуіш дұрыс ұяға дұрыс салынғанына көз жеткізіңіз.
*Кеңес - әрбір сымның қай жаққа да енгізілгенін қадағалау
Белгілі бір компоненттер сымдарының барлық Tinkercad эскиздері түспен дұрыс кодталған, сондықтан жалғастырыңыз
4 -қадам: код
Код
Бұл код барлық компоненттерге жаңа анықталған функцияны қолдана отырып, көптеген басқару элементтерін қосуға мүмкіндік береді, олардың құрамында көптеген өзгермелі айнымалы мәндері бар компоненттер бар, олар компоненттері RGB болды және rgb түсін пайдаланып түсі өзгергенде және пьезо дыбысы мен дыбыс батырманың басылуына байланысты болады.
Бұл кодта міндетті түрде пернетақта кітапханасы болды
Мұнда сілтеме:
Жүктелгеннен кейін arduino -ға жаңа кітапхананы қосыңыз, содан кейін оны іске қосу үшін қажет кодтың бір жолын енгізіңіз.
Код кезінде қиындықтар мен жаңадан анықталған функцияларды қайда орналастыру керек болды, себебі мен сынақ және қателік арқылы оның циклде емес, баптауда болуы керек екенін түсіндім.
Код
#қосу // Пернетақта кітапханасы
int greenPin = 11; // RGB Green Pin 9 цифрлық түйреуге қосылған
int redPin = 10; // RGB Red Pin 9 цифрлық түйреуішке қосылған
int bluePin = 9; // RGB Blue Pin цифрлық пинге қосылды 9 int speakerPin = 12; // динамик цифрлық пинге қосылды 12 const байт ROWS = 4; // төрт жолды const байт COLS = 4; // төрт колон const const soundPin = A0; // дыбыс датчигі A0 -ға бекітіледі
char пернелері [ROWS] [COLS] = {
{'a', 'b', 'c', 'd'}, {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', ' l '}, {' m ',' n ',' o ',' p '}}; // Пернетақта модулінің визуализациясы
байт rowPins [ROWS] = {2, 3, 4, 5}; // пернетақтаның жол шеттеріне қосылу
байт colPins [COLS] = {6, 7, 8, 13}; // пернетақтаның бағаналы түйініне қосылыңыз
Пернетақта пернетақтасы = Пернетақта (makeKeymap (пернелер), rowPins, colPins, ROWS, COLS); // Кілттерді жасайды
жарамсыз орнату () {
pinMode (SpeakerPin, OUTPUT); // SpeakerPin -ді шығыс етіп орнатады
pinMode (redPin, OUTPUT); // қызыл түйреуішті pinMode шығысына орнатады (greenPin, OUTPUT); // жасыл түйреуішті pinMode (bluePin, OUTPUT) шығыс етіп орнатады; // көк түйреуішті шығыс етіп орнатады
Serial.begin (9600);
} void setColor (int red, int green, int blue) // RGB түсі RGB коды арқылы көрсетуге мүмкіндік беретін жаңа анықталған функция {#ifdef COMMON_ANODE red = 255 - қызыл; жасыл = 255 - жасыл; көк = 255 - көк; #endif analogWrite (redPin, red); analogWrite (greenPin, жасыл); analogWrite (bluePin, көк); }
бос дыбыс сигналы (белгісіз char speakerPin, int жиілігіInHertz, ұзақ уақытInMilliseconds) {// дыбыс шығаратын функциялар
int x; long delayAmount = (long) (1000000/жиілігіInHertz); long loopTime = (ұзақ) ((timeInMilliseconds*1000)/(delayAmount*2)); үшін (x = 0; x
void loop () {
char пернесі = keypad.getKey (); int мәні = analogRead (soundPin); // A0 мәнін оқу Serial.println (мән); // мәнді басып шығару
if (key! = NO_KEY) {
Serial.println (кілт); } if (key == 'a') {дыбыстық сигнал (SpeakerPin, 2093, 100); setColor (218, 112, 214); } if (key == 'b') {дыбыстық сигнал (SpeakerPin, 2349, 100); setColor (218, 112, 214); } if (key == 'c') {дыбыстық сигнал (SpeakerPin, 2637, 100); setColor (218, 112, 214); } if (key == 'd') {дыбыстық сигнал (SpeakerPin, 2793, 100); setColor (218, 112, 214); } if (key == 'e') {дыбыстық сигнал (SpeakerPin, 3136, 100); setColor (218, 112, 214); } if (key == 'f') {дыбыстық сигнал (SpeakerPin, 3520, 100); setColor (218, 112, 214); } if (key == 'g') {дыбыстық сигнал (SpeakerPin, 3951, 100); setColor (218, 112, 214); } if (key == 'h') {дыбыстық сигнал (SpeakerPin, 4186, 100); setColor (218, 112, 214); } if (key == 'i') {дыбыстық сигнал (SpeakerPin, 2093, 100); setColor (230, 230, 0); } if (key == 'j') {дыбыстық сигнал (SpeakerPin, 2349, 100); setColor (180, 255, 130); } if (key == 'k') {дыбыстық сигнал (SpeakerPin, 2637, 100); setColor (130, 255, 130); } if (key == 'l') {дыбыстық сигнал (SpeakerPin, 2739, 100); setColor (130, 220, 130); } if (key == 'm') {дыбыстық сигнал (SpeakerPin, 3136, 100); setColor (0, 255, 255); } if (key == 'n') {дыбыстық сигнал (SpeakerPin, 3520, 100); setColor (0, 220, 255); } if (key == 'o') {дыбыстық сигнал (SpeakerPin, 3951, 100); setColor (0, 69, 255); } if (key == 'p') {дыбыстық сигнал (SpeakerPin, 4186, 100); setColor (255, 0, 255); }}
5 -қадам: Қорытынды ойлар
Қорытынды ойлар
Бұл жобаның түпкі ойы - ойыншық болу, көңілді және қарапайым қуаныш әкелу. Бұл жоба аяқталған және жұмыс істеп жатқандықтан, менің ойымша, бұл құрылысты жазу элементі немесе көшірме/симонның элементі немесе тіпті белгілі бір әнді ойнауға арналған ноталары бар СКД сияқты қосымша компоненттермен толықтыруға болады.
Мен пернетақта модулі туралы сіздің пікіріңізді білгім келеді, сіз қандай компоненттерді қосуға болады деп ойладыңыз. Сіз оны кез келген жобаңызда қолданасыз ба? Төмендегі түсініктеме бөлімінде өз ойларыңызды жазыңыз.
Егер сізге arduino жобасы ұнаған болса, бөлісуді ұмытпаңыз.
Ұсынылған:
Октарин: WS2812 RGB светодиоды бар түстерді сәйкестендіру ойыны: 6 қадам
Октарин: WS2812 RGB светодиодтары бар түстерді сәйкестендіру ойыны: сиқырдың түсі - октарин. Ол тірі және жарқырап тұрды, бұл қиялдың сөзсіз пигменті, өйткені қай жерде пайда болса да, бұл заттың сиқырлы ақыл күштерінің қызметшісі екендігінің белгісі. Бұл сиқыршылар болды
Шайырға ендірілген светодиоды бар ғарыштық жарық: 11 қадам (суреттермен)
Шайырға ендірілген светодиоды бар ғарыштық жарық: Мен светодиодты қолданатын шайырдан жарық жасағым келді, бірақ дәнекерлеу жоқ (мен білемін, көптеген адамдар дәнекерлемейді, және мен сияқты оны жасай алатындар бар шығар) Мен мұны істегенді ұнатпаймын.) Ол бірнеше монеталық батареямен жұмыс істейді, сондықтан оңай
Arduino Uno R3 бар RGB светодиоды: 7 қадам
Arduino Uno R3 қосылған RGB светодиоды: Бұрын біз жарық диодты жарықтандыруды және күңгірттеуді басқару үшін PWM технологиясын қолданған болатынбыз. Бұл сабақта біз оны әр түрлі түстерді жыпылықтау үшін RGB жарықдиодты басқару үшін қолданамыз. Әр түрлі PWM мәндері светодиодтың R, G және B түйреуіштеріне орнатылғанда, оның жарықтығы
Тоқу: светодиоды бар тоқылған тоқу: 5 қадам (суреттермен)
Тоқу: светодиоды бар тоқылған тоқыма: тоқымашыларға арналған тағы бір жоба және тоқымайтындарға шабыт көзі деп үміттенемін. Жарықдиодты немесе басқа жабдықты тоқу жобасына жабысқақ тоқу техникасын қолданып енгізіңіз. Ақпарат қосылды 1 мамыр 2009 ж. Weavezine.com сайтындағы мақала мамыр айындағы шығарылымы
Винтаждық IPod динамиктері (светодиоды бар!): 7 қадам (суреттермен)
Винтаждық IPod динамиктері (светодиоды бар!): Дұрыс жабдықталған кезде өзіңіздің жоғары сапалы iPod немесе mp3 ойнатқыш қондырғыңызды жасау оңай. Дүкеннің айналасында қалаған тақтайшалардың, динамиктердің және ағаштың бірнеше сынықтарын қолдана отырып, мен жақсы дыбыстық және ұқыпты келбетті жасай алдым