Բովանդակություն:
- Քայլ 1: Խնդիր
- Քայլ 2. Նախագծի համատեքստը
- Քայլ 3: Պահանջվում են մասեր / գործիքներ
- Քայլ 4: Տեխնիկական ռազմավարություն
- Քայլ 5: Կոդ
- Քայլ 6: Տեսանյութ
Video: NeckCrusher (կիթառի վրա տեղադրված էֆեկտի ոտնակ) ՝ 6 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:45
Դեյլ Ռոզեն, Կառլոս Ռեյես և Ռոբ Կոխ
DATT 2000
Քայլ 1: Խնդիր
Կիթառի ոտնակները երաժիշտին սահմանափակում են ոտնակի հարթակով: Լուծում. Կառուցեք և տեղադրեք կիթառի ոտնակների գործառույթը հենց կիթառի մեջ: Սա թույլ է տալիս երաժիշտին ազատ տեղաշարժվել բեմի վրայով ՝ օգտագործելով կիթառի պարանոցը որպես ինտերֆեյս, ոչ թե սահմանափակվել ոտնաթաթի տեղադրությամբ: Մենք ուսումնասիրելու ենք այս հայեցակարգը `ստեղծելով bitcrusher/sample rate rate սարք:
Քայլ 2. Նախագծի համատեքստը
Կան բազմաթիվ կիթառի ոտնակներ, որոնք երաժիշտներն օգտագործում են իրենց կիթառների ձայնը շահարկելու համար: Դրանցից շատերը սովորաբար գտնվում են դարակաշարերի վրա հիմնված կամ ստոմպային տուփի միավորներում, հետևաբար `ազդեցությունների վերահսկումը սահմանափակելով էֆեկտների միավորի տեղակայմամբ: Սարքը կիթառի վրա ամրացնելը հնարավորություն է տալիս նվագարկիչներին վերահսկել էֆեկտի պարամետրերը բեմի ցանկացած վայրում: Սա նշանակում է, որ նրանք չեն սահմանափակվի և կարող են ազատություն ունենալ շրջելու իրենց կատարման համար:
Քանի որ Arduino- ն ունակ է միայն 8 բիթ ձայնի, անհնար է բարձր հավատարմության ազդանշանի մշակում կատարել: Ահա թե ինչու մենք ընտրեցինք մեր արած էֆեկտները, քանի որ դրանք հիմնված են ցածր հավատարմության, խեղաթյուրված ձայնի ստեղծման վրա: Սրանք միակ ազդեցություններն են, որոնք ողջամիտ հնարավոր են Arduino- ի միջոցով:
Քայլ 3: Պահանջվում են մասեր / գործիքներ
● Ազդեցիկ վարժանք
● Մետաղական կտրիչներ
● մետաղալարեր
● oldոդման երկաթ
● տաք սոսինձ ատրճանակ
● Հալման պոմպ
● կիթառ ● պարիսպ
Erոդող
● տաք սոսինձ
Du Արդուինո
● Պրոտո տախտակ
● ծածկված մետաղալար
● Աուդիո խցիկներ (x2)
● Պոտենցիոմետրեր (x3)
● կոնդենսատորներ ՝ 2.2 uF (x2)
● Բաց պղնձե մետաղալարեր
● Պտուտակներ (M3.5 *8)
● Ռեզիստորներ ՝ 1 կ, 10 կ, 1.2 կ, 1.5 կ, 390 կ
Op * Op Amp (LM358) / * Տրանզիստոր (2N3442)
Քայլ 4: Տեխնիկական ռազմավարություն
Ներքին միացում
Մուտք/ելք
Մենք պետք է կիթառից եկող ձայնային ազդանշանը փոխակերպենք մի բանի, որը arduino- ն կարող է օգտագործել և փոփոխել: Այնուհետև մենք պետք է arduino- ից եկող ազդանշանը հետ փոխարկենք ձայնային ազդանշանի: Arduino- ն կարդում է 0V- ից մինչև 5V լարումները, ձայնային ազդանշանները `-1V- ից մինչև 1V: Այս փոխակերպումները կատարվում են դիմադրիչների միջոցով: Ազդանշանը կփոխարկվի նաև ելքային շղթայում:
Arduino գրադարան ՝ ArduinoDSP
Նախագծի նկարագրություն (ինտերֆեյս)
Բռնակներ Գլան 1. Նմուշի տոկոսադրույք
Գլխ 2. Բիթ ջախջախիչ
Բռնակ 3: Bit Shifter
Քայլ 5: Կոդ
#ներառել «dsp.h»
#սահմանել cbi (sfr, bit) (_SFR_BYTE (sfr) & = ~ _BV (bit)) #սահմանել sbi (sfr, bit) (_SFR_BYTE (sfr) | = _BV (bit))
բուլյան div32; բուլյան div16;
ցնդող բուլյան f_sample; անկայուն բայթ badc0; անկայուն բայթ badc1; անկայուն բայթ ibb;
int fx1; int fx2; int fx3; int fx4;
int cnta; int icnt; int icnt1; int icnt2; int cnt2; int iw; int iw1; int iw2; բայթ bb;
բայթ դդ [512]; // Աուդիո հիշողության զանգված 8-բիթանոց
void setup () {setupIO ();
// վերաբեռնել ալիքը 1 վայրկյան հետո fill_sinewave ();
// սահմանել adc prescaler- ը 64 -ի համար 19kHz նմուշառման հաճախականության cbi (ADCSRA, ADPS2); sbi (ADCSRA, ADPS1); sbi (ADCSRA, ADPS0); // 8-բիթանոց ADC ADCH Register sbi- ում (ADMUX, ADLAR); sbi (ADMUX, REFS0); cbi (ADMUX, REFS1); cbi (ADMUX, MUX0); cbi (ADMUX, MUX1); cbi (ADMUX, MUX2); cbi (ADMUX, MUX3); // Timer2 PWM ռեժիմը սահմանվել է արագ PWM cbi (TCCR2A, COM2A0); sbi (TCCR2A, COM2A1); sbi (TCCR2A, WGM20); sbi (TCCR2A, WGM21); // Կարգավորում Timer2 cbi- ի համար (TCCR2B, WGM22); // Timer2 ockամացույց Prescaler to: 1 sbi (TCCR2B, CS20); cbi (TCCR2B, CS21); cbi (TCCR2B, CS22); // Timer2 PWM Port Enable sbi (DDRB, 3); // cli (); cbi (TIMSK0, TOIE0); sbi (TIMSK2, TOIE2); iw1 = badc1;
}
դատարկ շրջան () {
// ստուգել ազդեցության պոտենցիոմետրի և պտտվող անջատիչի կարգավիճակը readKnobs ();
// ************* *** *** Նորմալ *** // *************
if (fx1 == 0 && fx2 == 0 && fx3 == 0 && fx4 == 0) {բայթ մուտքագրում = analogRead (ձախ); ելք (ձախ, մուտքագրում); }
// ************* // *** Փազոր *** // *************
եթե (fx4> 100) {
fx1 = 0; fx2 = 0; fx3 = 0;
while (! f_sample) {// սպասեք ADC- ից Sample Value} // ցիկլ 15625 KHz = 64uSec PORTD = PORTD | 128; f_sample = կեղծ; bb = badc1; dd [icnt1] = bb; // գրել բուֆերային fx4 = iw * badc0 / 255; // մասշտաբի հետաձգված նմուշ պոտենցիոմետրով iw1 = dd [icnt2]; // կարդալ հետաձգման բուֆերը badc0 = badc0 / 20; // սահմանափակել արժեքը մինչև 512 icnt1 ++; icnt2 = icnt1 - badc0; icnt2 = icnt2 & 511; // սահմանային ինդեքս 0.. icnt1 = icnt1 & 511; // սահմանային ինդեքս 0..511 iw2 = iw1 + bb; iw2 = iw2 / 2; bb = iw2; OCR2A = bb; // PWM արտադրանքի ընտրանքային արժեք
PORTD = PORTD ^ 128; ելք (ձախ, PORTD); // Ելք}
// ************* // *** Flanger *** // ************ եթե (fx3> 100) {
fx1 = 0; fx2 = 0; fx4 = 0;
while (! f_sample) {// սպասեք ADC- ից Sample Value} // Cycle 15625 KHz = 64uSec
PORTD = PORTD | 128; f_sample = կեղծ; bb = dd [icnt]; // կարդալ հետաձգման բուֆերը iw = 127 - bb; // հանել օֆսեթ fx3 = iw * badc0 / 255; // մասշտաբի հետաձգված նմուշ պոտենցիոմետրով iw1 = 127 - badc1; // փոխարինել նոր ընտրանքից փոխհատուցում iw1 = iw1 + iw; // ավելացնել հետաձգված նմուշ և նոր նմուշ, եթե (iw1 127) iw1 = 127; // Ձայնի սահմանափակիչ bb = 127 + iw1; // ավելացնել օֆսեթ dd [icnt] = bb; // պահել նմուշը աուդիո բուֆերում icnt ++; icnt = icnt & 511; // սահմանափակել bufferindex 0..511 OCR2A = bb; // PWM արտադրանքի ընտրանքային արժեք
PORTD = PORTD ^ 128; ելք (ձախ, PORTD); // Ելք
} }
void readKnobs () {fx1 = analogRead (1); fx2 = analogRead (2); fx3 = analogRead (3); fx4 = analogRead (4);
}
void fill_sinewave () {float pi = 3.141592; բոց dx; float fd; բոց fcnt; dx = 2 * pi / 512; // լրացրեք 512 բայթ բուֆերարրի համար (iw = 0; iw <= 511; iw ++) {// 50 պարբերությամբ sinewawe fd = 127 * sin (fcnt); // հիմնարար տոն fcnt = fcnt + dx; // 0 -ից 2xpi և 1/512 հավելումների միջակայքում bb = 127 + fd; // ավելացնել dc offset sinewawe dd [iw] = bb; // արժեքը գրել զանգվածում
} }
// ********************************************* ****************** // Timer2 ընդհատման ծառայություն 62.5 ԿՀց հաճախությամբ // այստեղ աուդիո և զամբյուղի ազդանշանը նմուշառվում է ՝ 16 ՄՀց / 256 /2 /2 = 15625 արագությամբ Հց ISR (TIMER2_OVF_vect) {
PORTB = PORTB | 1;
div32 =! div32; // բաժանել ժամանակաչափ 2 հաճախականությունը / 2 -ից 31.25kHz, եթե (div32) {div16 =! div16; եթե (div16) {// ընտրանքային ալիք 0 և 1 հերթափոխով, այնպես որ յուրաքանչյուր ալիք նմուշառվում է 15.6kHz badc0 = ADCH- ով; // ստանալ ADC ալիք 0 sbi (ADMUX, MUX0); // մուլտիպլեքսեր դնել 1 -ին ալիքին {badc1 = ADCH; // ստանալ ADC ալիք 1 cbi (ADMUX, MUX0); // բազմապատկիչը սահմանել 0 ալիքի վրա f_sample = true; } ibb ++; ibb--; ibb ++; ibb--; // կարճ հետաձգում փոխակերպման մեկնարկից առաջ sbi (ADCSRA, ADSC); // սկսել հաջորդ փոխակերպումը}
}
Քայլ 6: Տեսանյութ
Պոտենցիալ խնդիրներ ● Վերցումը մի փոքր չափազանց թույլ է հոսանքի միացման համար. Անհրաժեշտ է օպերատորի ուժեղացուցիչ: - Տեսահոլովակում մենք ազդանշանի ուժեղացուցիչ ենք օգտագործել: (Մոխրագույն տուփը պառկած է սեղանին):
Խորհուրդ ենք տալիս:
Հին լիցքավորիչ? Ոչ, դա RealTube18 բոլոր խողովակներով կիթառի ականջակալների ուժեղացուցիչ և ոտնակ է. 8 քայլ (նկարներով)
Հին լիցքավորիչ? Ոչ, դա RealTube18- ի բոլոր խողովակներով կիթառի ականջակալների ուժեղացուցիչ և ոտնակ է: ԱԿՆԱԲԱՆՈԹՅՈՆ. Ի՞նչ անել համաճարակի ժամանակ ՝ հնացած Նիկել-Կադմիում մարտկոցով լիցքավորիչով և 60+ տարեկան հնացած մեքենայի ռադիոակուլ խողովակներով, որոնք նստած են վերամշակման կարիք ունենալու դեպքում: Ի՞նչ կասեք խողովակի համար նախատեսված, ցածր լարման, ընդհանուր գործիքի մարտկոցի մասին
Phaser կիթառի ոտնակ. 14 քայլ (նկարներով)
Phaser կիթառի ոտնակ. Ֆազերային կիթառի ոտնակը կիթառի էֆեկտ է, որը պառակտում է ազդանշանը, մաքուր ուղարկում մի ուղի և շրջում երկրորդի փուլը: Երկու ազդանշաններն այնուհետև նորից խառնվում են իրար և երբ փուլից դուրս են գալիս, միմյանց չեղարկում: Սա ստեղծում է այնքան
DIY կիթառի ոտնակ. 24 քայլ (նկարներով)
DIY կիթառի ոտնակ. DIY կիթառի շրխկոցով ոտնակ պատրաստելը զվարճալի և հեշտ էլեկտրոնային հանգստյան օրերի ծրագիր է ինչպես հոբբիստների, այնպես էլ կիթառահարների համար: Կլասիկ ոտնակ պատրաստելը շատ ավելի հեշտ է, քան կարծում եք: Այն օգտագործում է ընդամենը երկու տրանզիստոր և մի բուռ այլ բաղադրիչներ: Բացի շ
Walabot FX - Կիթառի էֆեկտի կառավարում. 28 քայլ (նկարներով)
Walabot FX - Կիթառի էֆեկտների կառավարում. Կառավարեք ձեր սիրած կիթառի էֆեկտը `օգտագործելով ոչ այլ ինչ, քան կիթառի հիանալի պոզեր:
Փական կիթառի էֆեկտի պատյան և սնուցման սարք. 7 քայլ (նկարներով)
Փական կիթառի էֆեկտի պատյան և էլեկտրամատակարարում. Սա կլինի էներգիայի աղբյուր և շասսի կափույրի վրա հիմնված կիթառի էֆեկտի ոտնակի համար: Ես դա հասկանում էի, երբ գնում էի, այնպես որ այն առաջընթացը, որը ցույց կտամ, պարտադիր չէ, որ վերցնեի այն կարգը, որը հետևում է իդեալականացված երթուղուն, վերադասավորված և չբավարարված