
Բովանդակություն:
- Քայլ 1: Նյութեր
- Քայլ 2: Գործիքներ
- Քայլ 3: 3D տպագրություն
- Քայլ 4: Կառուցեք միացում
- Քայլ 5: LCD լարերի միացում
- Քայլ 6. Խոսափողի/ուժեղացուցիչի լարերի միացում
- Քայլ 7: Անմիջական անջատիչ լարերի միացում
- Քայլ 8: Պոտենցիոմետր էլեկտրագծերի տեղադրում
- Քայլ 9: Ականջակալների Jack միացում
- Քայլ 10. Խոսափողի/ուժեղացուցիչի ելք
- Քայլ 11. Խոսափողի/ուժեղացուցիչի ելքը շարունակվում է
- Քայլ 12: Շրջանակի բաղադրիչները
- Քայլ 13. Ներսում `զոդում
- Քայլ 14: +5V, GND Ընդլայնված լարեր
- Քայլ 15. Երկար լարերը սահեցրեք պարիսպի անցքով
- Քայլ 16: Heերմության նվազում
- Քայլ 17: Կնիքի պարիսպ
- Քայլ 18: Միացեք Arduino- ին
- Քայլ 19. Arduino IDE/Գրադարաններ
- Քայլ 20: Arduino Sketch
- Քայլ 21. Փորձարկիր այն:
- Քայլ 22. Ապագա աշխատանք
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48

Այս ուսանելի դասում դուք կսովորեք, թե ինչպես պատրաստել սպեկտրալ աստղադիտակ ՝ օգտագործելով արագ հարտլի կերպարանափոխությունը: Սա կարող է օգտագործվել սրտի և թոքերի հնչյունները պատկերացնելու համար:
Քայլ 1: Նյութեր
1.8 դյույմ LCD էկրան ($ 7.50 Amazon- ում)
Arduino Uno կամ համարժեք ($ 7.00 Gearbest- ում)
Electret ուժեղացուցիչ ($ 6.95 Adafruit- ում)
100 μF կոնդենսատոր ($ 0.79)
Մետաղալարեր և թռիչքներ ($ 4.00)
3.5 մմ ստերեո Jack ($ 1.50)
10kOhm պոտենցիոմետր ($ 2.00)
Momentary Switch ($ 1.50)
Քայլ 2: Գործիքներ
Sոդման երկաթ
Տաք սոսինձ ատրճանակ
3D տպիչ… կամ 3D տպիչով ընկեր (հնարավոր է պատրաստել նաև ստվարաթղթից)
Մետաղական կտրիչ
Breadboard
Քայլ 3: 3D տպագրություն
Առաջինն այս քայլին կցված.stl ֆայլերի 3D տպումն է: Երկու ֆայլերը տպել եմ ՝ օգտագործելով հետևյալ նյութը/պարամետրերը.
Նյութը ՝ PLA
Շերտի բարձրությունը `0.1 մմ
Պատի/վերևի/ներքևի հաստությունը `0.8 մմ
Տպման ջերմաստիճանը `200 ° C
Մահճակալի ջերմաստիճանը `60 ° C
Աջակցությունը միացված է @ 10%
Քայլ 4: Կառուցեք միացում
Օգտագործելով բաղադրիչները նյութերի բաժնում ՝ կառուցեք շրջանը: Ես միշտ միացումն առաջինը դնում եմ տախտակի վրա, որպեսզի համոզվեմ, որ այն ճիշտ է աշխատում, նախքան զոդի երկաթին դիպչելը:
Քայլ 5: LCD լարերի միացում

Օգտագործելով այս քայլին կցված նկարը, լարերը կպցրեք LCD էկրանին գտնվող ութ կապումներից յոթին: Այս լարերը պետք է ունենան մոտ 3 ոտնաչափ երկարություն, բացի գետնից և +5V կապումներից (դրանք պետք է լինեն միայն 2-3 դյույմ)
Քայլ 6. Խոսափողի/ուժեղացուցիչի լարերի միացում

Օգտագործելով այս քայլին ամրացված պատկերը, երեք լար ամրացրեք Adafruit խոսափողի/ուժեղացուցիչի +5V, Ground և Out կապում: Սրանք միայն պետք է լինեն մոտ 2-3 դյույմ երկարությամբ:
Քայլ 7: Անմիջական անջատիչ լարերի միացում
Մուտքագրեք մեկ 2-3 դյույմանոց մետաղալար `երկու կողպեքներից յուրաքանչյուրին վայրկենական անջատիչի վրա:
Քայլ 8: Պոտենցիոմետր էլեկտրագծերի տեղադրում
Օգտագործելով 6-րդ քայլի պատկերը, երեք լար լարեք մոտ 2-3 դյույմ երկարությամբ պոտենցիոմետրի երեք կողիկներին:
Քայլ 9: Ականջակալների Jack միացում
Threeոդեք ականջակալների օղակին, ծայրին և թևի երեք լար: Ես օգտագործեցի մետրոնոմից մի խցիկ, որն արդեն լարված էր: Եթե չգիտեք, թե ինչ են մատանին, ծայրը և թևերը, պարզապես google- ում այն շատ լավ պատկերներ կան ստերեո վարդակների միացման մասին:
Քայլ 10. Խոսափողի/ուժեղացուցիչի ելք
Խոսափողը/ուժեղացուցիչի, պոտենցիոմետրի և ականջակալների խրոցակի լարերը միացնելուց հետո մի մետաղալար կպցրեք մոտ երեք ոտնաչափ երկարությամբ խոսափողի ուժեղացուցիչի «դուրս» լարին: Այս մետաղալարը հետագայում կկապվի arduino- ի A0 կապին:
Քայլ 11. Խոսափողի/ուժեղացուցիչի ելքը շարունակվում է
Երկրորդ մետաղալարը միացրեք խոսափողի/ուժեղացուցիչի «դուրս» լարին: Այս մետաղալարը պետք է զոդել 100 microFarad կոնդենսատորի հետ: Եթե դուք օգտագործում եք էլեկտրոլիտիկ կոնդենսատոր, համոզվեք, որ դրական կողմը միացված է այս լարին:
Քայլ 12: Շրջանակի բաղադրիչները


Այն բանից հետո, երբ բոլոր լարերը կպցվեն բաղադրիչների վրա, տեղադրեք բաղադրիչները համապատասխան վայրերում ՝ հետևելով այս քայլին կցված պատկերներին: Ես օգտագործեցի տաք սոսինձ ՝ խոսափողի և ականջակալների խցիկը տեղում ամրացնելու համար:
Քայլ 13. Ներսում `զոդում
Բոլոր բաղադրիչներն ամրացված լինելուց հետո ամրացրեք բոլոր գրունտի լարերը միասին: Պետք է լինի մեկը LCD- ից, մեկը `խոսափողից/ուժեղացուցիչից, մեկը` ականջակալների խցիկի թևից: Նաև միացրեք +5V լարերը միասին և մեկ մետաղալար ՝ վայրկենական անջատիչից: Կրկին պետք է լինի մեկը LCD- ից, մեկը `խոսափողից/ուժեղացուցիչից, և մեկը` վայրկենական անջատիչից:
Քայլ 14: +5V, GND Ընդլայնված լարեր
Այժմ կտրեք երկու կտոր մետաղալար `մոտ 3 ոտնաչափ երկարությամբ: Oneոդեք մեկը հողային լարերի կլաստերին, իսկ մյուսը կպցրեք բաց մետաղալարերին պահի անջատիչի վրա:
Քայլ 15. Երկար լարերը սահեցրեք պարիսպի անցքով

Այժմ, դուք պետք է ունենաք ընդհանուր առմամբ ութ լար `մոտ 3 ոտնաչափ երկարությամբ: Տեղադրեք դրանք պարիսպի չլցված անցքի միջով: Տեսեք այս քայլին կցված պատկերը
Քայլ 16: Heերմության նվազում
Soldոդման ավարտից հետո համոզվեք, որ բացված լարերը ծածկված են: Ես օգտագործել եմ ջերմության նվազեցման խողովակներ, բայց էլեկտրական ժապավենը նույնպես լավ է աշխատում:
Քայլ 17: Կնիքի պարիսպ


Վերցրեք LCD էկրանը պարունակող պարիսպի կեսը և սահեցրեք մյուս բաղադրիչները պարունակող պարիսպի մյուս կեսի վրայով: Երկու կտորները միասին մղելիս դրանք տաք սոսնձով ամրացրեք պատյանը միասին:
Քայլ 18: Միացեք Arduino- ին
Մնացած ութ, երկար և լարերը միացված են անմիջապես իրենց համապատասխան Arduino- ի կապումներին, որոնք նշված են սխեմայի սխեմաներում: Համոզվեք, որ ամեն անգամ, երբ այդ երկար 3 ֆուտ լարերից մեկը միացնում եք շղթայի մեջ, մյուս ծայրին ժապավեն եք դնում ՝ նշելով, թե որ ուղղությամբ է գնում Arduino- ն:
Քայլ 19. Arduino IDE/Գրադարաններ
Ձեզ հարկավոր է ներբեռնել Arduino IDE- ն: Այս ուրվագծի համար ես օգտագործել եմ երեք տարբեր գրադարաններ ՝ FHT.h, SPI.h և TFT.h. Եթե չգիտեք, թե ինչպես ներբեռնել Arduino գրադարանները, խնդրում ենք այցելել https://www.arduino.cc/hy/Guide/Libraries: FHT.h գրադարանը ներբեռնվել է openmusiclabs.com կայքից: Մյուս երկուսը ներբեռնվել են GitHub- ում:
Քայլ 20: Arduino Sketch
Կոդը օգտագործում է Fast Hartley Transform (FHT) ՝ ժամանակի տիրույթը հաճախականության տիրույթ փոխելու համար: Դա կարելի է անել նաև Ֆուրիեի արագ փոխակերպման (FFT) միջոցով, սակայն FHT- ն շատ ավելի արագ է: FFT- ն և FHT- ն ազդանշանների մշակման շատ հիմնարար գաղափարներ են, որոնց մասին սովորելը շատ հաճելի է: Առաջարկում եմ ինքներդ կարդալ, եթե ձեզ հետաքրքրում է, տեսեք: FHT- ի օրինակը, որը ես պատճենել եմ Open Music Labs- ի կայքից, սկզբում թողարկում էր յուրաքանչյուր հաճախականության աղբարկղի ամպլիտուդը որպես լոգարիթմական կամ դեցիբելային ելք: Ես փոխեցի սա ՝ գծային մասշտաբով ելնելով հաճախականությունների աղբարկղերից: Դա պայմանավորված է նրանով, որ գծային սանդղակը ավելի լավ տեսողական ներկայացում է, թե ինչպես են մարդիկ լսում ձայնը: Վերջում for () օղակը նախատեսված է LCD էկրանին յուրաքանչյուր հաճախականության աղբարկղի ամպլիտուդը նկարելու համար: FHT- ի ամբողջական սպեկտրը կընդգրկի բոլոր հաճախականությունների աղբարկղերը ՝ i = 0 -ից մինչև i <128: Դուք կնկատեք, որ իմ for () հանգույցը i = 5 -ից i <40 է, դա պայմանավորված է նրանով, որ թոքերի հիվանդությունների ախտորոշման համար հաճախականությունները սովորաբար 150Hz- ից մինչև 3.5khz են, ես որոշեցի բարձրացնել մինչև 4kHz: Դա կարող է ճշգրտվել, եթե ցանկանում եք ցույց տալ հաճախականության ամբողջ սպեկտրը:
[ծածկագիր]
// Թվային աստղադիտակի ծածկագիր
// Fast Hartley Transform գրադարանը ներբեռնված է openmusiclabs- ից
#սահմանել LIN_OUT 1 // սահմանել FHT ՝ գծային ելք արտադրելու համար
#սահմանել LOG_OUT 0 // անջատել FHT լոգարիթմական ելքը
#սահմանել FHT_N 256 // FHT նմուշի համարը
#ներառել // ներառել FHT գրադարանը
#ներառել // ներառել TFT գրադարանը
#ներառել // ներառել SPI գրադարանը
#սահմանել cs 10 // սահմանել lcd cs pin- ը arduino pin 10 -ի վրա
#սահմանեք dc 9 // տեղադրեք lcd dc pin- ը arduino pin 9 -ի վրա
#define rst 8 // սահմանել lcd reset reset- ը arduino pin 8 -ի վրա
TFT myScreen = TFT (cs, dc, rst); // հայտարարել TFT էկրանի անունը
void setup () {
//Serial.begin(9600);// սահմանել ընտրանքի մակարդակը
myScreen.begin (); // սկզբնականացնել TFT էկրանը
myScreen.background (0, 0, 0); // ֆոնը սահմանել սև
ADCSRA = 0xe5; // adc- ն սահմանել ազատ գործարկման ռեժիմի
ADMUX = 0x40; // օգտագործել adc0
}
դատարկ շրջան () {
while (1) {// նվազեցնում է jitter cli (); // UDRE ընդհատումը այս կերպ դանդաղեցնում է arduino1.0- ում
for (int i = 0; i <FHT_N; i ++) {// պահպանել 256 օրինակ
իսկ (! (ADCSRA & 0x10)); // սպասեք adc- ի պատրաստ լինելուն
ADCSRA = 0xf5; // վերագործարկեք adc բայթ
մ = ADCL; // ստանալ adc տվյալների բայթ
j = ADCH; int k = (j << 8) | մ; // ձևավորել ինտ
k -= 0x0200; // ձևավորել ստորագրված ինտ
k << = 6; // ձևավորել 16 բ ստորագրված ինտ
fht_input = k; // իրական տվյալները դնել աղբարկղերի մեջ
}
fht_window (); // պատուհան տվեք տվյալները `ավելի լավ հաճախականության պատասխանի համար
fht_reorder (); // վերադասավորեք տվյալները fht անելուց առաջ
fht_run (); // տվյալները մշակել fht- ում
fht_mag_lin (); // վերցրեք fht- ի ելքը
sei ();
համար (int i = 5; i <40; i ++) {
myScreen.stroke (255, 255, 255);
myScreen.fill (255, 255, 255);
int drawHeight = քարտեզ (fht_lin_out , 10, 255, 10, myScreen.height ());
int ypos = myScreen.height ()-drawHeight-8; myScreen.rect ((4*i) +8, ypos, 3, drawHeight);
}
myScreen.background (0, 0, 0);
}
}
[/կոդը]
Քայլ 21. Փորձարկիր այն:

Ես օգտագործել եմ հնչերանգների առցանց գեներատոր (https://www.szynalski.com/tone-generator/) `ծածկագիրը ճիշտ աշխատելու համար: Աշխատանքը հաստատելուց հետո սեղմեք աստղադիտակի զանգը մինչև կրծքավանդակը, խորը շունչ քաշեք և տեսեք, թե ինչ հաճախականություններ կան:
Քայլ 22. Ապագա աշխատանք
** Նշում. Ես քիմիկոս եմ, ոչ թե ինժեներ կամ համակարգչագետ **: Հավանաբար կլինեն սխալներ և բարելավումներ դիզայնի և ծածկագրի մեջ: Ասածս այն է, որ ես կարծում եմ, որ դա լավ սկիզբ է մի բանի համար, որը կարող է ավարտվել որպես շատ օգտակար և էժան: Հետևյալ փամփուշտներն ապագա բարելավումներ են, որոնք ես կցանկանայի կատարել, և հուսով եմ, որ ձեզանից ոմանք նույնպես կփորձեն բարելավել այն:
· Սարքը դարձրեք շարժական: Ես պրոցեսորների կամ այլ միկրոկոնտրոլերների հետ մեծ փորձ չունեմ, բայց այն պետք է ունենա բավականաչափ հիշողություն ՝ ամբողջ FHT գրադարանը, կամ, հնարավոր է, Bluetooth- ում պահելու համար:
· Ներկայացրեք վիճակագրական վերլուծության որոշ հաշվարկներ ծածկագրում: Օրինակ, սովորաբար սուլոցը ունի 400 Հց -ից հավասար կամ ավելի մեծ հաճախականություն և տևում է առնվազն 250 ms: Rhonchi- ն տեղի է ունենում մոտ 200 Հց կամ ավելի ցածր հաճախականությամբ և տևում է առնվազն 250 ms: Թոքերի շատ այլ հնչյուններ սահմանվում և ցույց են տալիս առողջական պայմանները (https://commongiant.github.io/iSonea-Physicians/assets/publications/7_ISN-charbonneau-Euro-resp-Jour-1995-1942-full.pdf): Կարծում եմ, որ դա այն է, ինչը կարելի է ստուգել ծածկագրում ՝ համեմատելով հաճախականության աղբարկղերի ազդանշանը FHT- ի որոշակի շրջափուլերից հետո, այնուհետև գործարկելով millis () գործառույթը ՝ տեսնելու, թե որքան ժամանակ է այն ներկա, այնուհետև համեմատելով այն դեպի FHT հաշվարկի աղմուկի հատակ: Վստահ եմ, որ այս բաները կարելի է անել:
Հուսով եմ, որ բոլորդ զվարճացաք այս նախագծով, և եթե ունեք հարցեր, մեկնաբանեք, և ես կպատասխանեմ հնարավորինս շուտ: Ես անհամբերությամբ սպասում եմ մեկնաբանությունների:
Խորհուրդ ենք տալիս:
Super FAST RC Ground Effect Vehicle (Ekranoplan) ՝ 5 քայլ (նկարներով)

Super FAST RC Ground Effect Vehicle (Ekranoplan). Գիտե՞ք, թե ինչպես են վայրէջքի ժամանակ օդանավերը որոշ ժամանակ սավառնում գետնից մի քանի վայրկյան առաջ, մինչև նրանց անիվները դիպչեն թռիչքուղուն: Սա ոչ միայն ուղևորներին սահուն վայրէջք տալու համար է, այլ նաև ստորգետնյա ազդեցության բնական արդյունքն է, որի ընթացքում
EasyFFT. Արագ Fourier Transform (FFT) Arduino- ի համար. 6 քայլ

EasyFFT. Արագ Fourier Transform (FFT) Arduino- ի համար. Գրավված ազդանշանից հաճախականության չափումը կարող է դժվար խնդիր լինել, հատկապես Arduino- ում, քանի որ այն ունի ավելի ցածր հաշվարկային հզորություն: Կան մեթոդներ ՝ զրոյական անցումը գրավելու համար, որտեղ հաճախականությունը ֆիքսվում է ստուգված քանի անգամ
Transform-a-Car: Հեռակառավարվող ՝ ինքնակառավարվող ՝ 4 քայլ

Transform-a-Car. Remote Controlled to Self Controlled: Սա կոտրում է RC մեքենայի կոտրված հեռակառավարմամբ: Դուք կարող եք շատ բան գտնել ավտոտնակների վաճառքում:
Fast Edge Square Wave Pulse Generator: 4 քայլ

Fast Edge Square Wave Pulse Generator: Fast Edge Pulse Generator - Ultra Fast Square Wave Pulse Generator Այս պարզ միացումը, օգտագործելով 74HC14N (վեց TTL ինվերտորներ ցածր արագությամբ հարվածով), այն ունակ է առաջացնել քառակուսի ալիքի ազդանշաններ մինչև 10 ՄՀց: Իդեալական է էլեկտրոնիկայի որոշ փորձարկումների համար: Փտածությամբ
Fast Edge Square Wave Generator: 4 քայլ

Fast Edge Square Wave Generator. Եթե ցանկանում եք չափել ինդուկտիվությունը, ցանկացած բաղադրիչի հզորությունը, ապա ձեզ հարկավոր է արագ եզրային քառակուսի ալիք այս հոդվածում, որը մենք սովորում ենք դրա մասին: