Daftar Isi:
- Langkah 1: Bahan
- Langkah 2: Alat
- Langkah 3: Pencetakan 3D
- Langkah 4: Bangun Sirkuit
- Langkah 5: Kabel LCD
- Langkah 6: Kabel Mikrofon / Amplifier
- Langkah 7: Pengkabelan Sakelar Sesaat
- Langkah 8: Pengkabelan Potensiometer
- Langkah 9: Kabel Jack Headphone
- Langkah 10: Output Mikrofon / Amplifier
- Langkah 11: Output Mikrofon / Amplifier Lanjutan
- Langkah 12: Komponen dalam Enclosure
- Langkah 13: In-Enclosure-Soldering
- Langkah 14: +5V, Kabel Perpanjangan GND
- Langkah 15: Selipkan Kabel Panjang Melalui Lubang Kandang
- Langkah 16: Panas Menyusut
- Langkah 17: Kandang Segel
- Langkah 18: Hubungkan ke Arduino
- Langkah 19: Arduino IDE/Perpustakaan
- Langkah 20: Sketsa Arduino
- Langkah 21: Ujilah
- Langkah 22: Pekerjaan Masa Depan
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-23 14:49
Dalam instruksi ini Anda akan belajar cara membuat stetoskop spektral menggunakan transformasi hartley cepat. Ini dapat digunakan untuk memvisualisasikan suara jantung dan paru-paru.
Langkah 1: Bahan
Layar LCD 1,8” ($7,50 di Amazon)
Arduino Uno atau Setara ($7,00 di Gearbest)
Electret Amplifier ($6,95 untuk Adafruit)
Kapasitor 100 F ($0,79)
Kawat dan Jumper ($4.00)
Jack Stereo 3,5mm ($ 1,50)
Potensiometer 10kOhm ($2.00)
Saklar Sesaat ($1,50)
Langkah 2: Alat
Solder Besi
Pistol lem panas
Printer 3D…atau teman yang punya printer 3D (Bisa juga dibuat dari karton)
Alat pemotong kawat
Papan tempat memotong roti
Langkah 3: Pencetakan 3D
Yang pertama adalah mencetak 3D file.stl yang dilampirkan pada langkah ini. Saya mencetak kedua file menggunakan materi/pengaturan berikut:
Bahan: PLA
Tinggi Lapisan: 0.1mm
Tebal Dinding/Atas/Bawah: 0.8mm
Suhu Pencetakan: 200⁰C
Suhu Tempat Tidur: 60⁰C
Dukungan Diaktifkan @ 10%
Langkah 4: Bangun Sirkuit
Menggunakan komponen di bagian bahan, buat sirkuit. Saya selalu menyatukan sirkuit di papan tempat memotong roti terlebih dahulu untuk memastikannya berfungsi dengan baik sebelum menyentuh besi solder.
Langkah 5: Kabel LCD
Dengan menggunakan gambar yang dilampirkan pada langkah ini, solder kabel ke tujuh dari delapan pin pada layar LCD. Kabel ini harus memiliki panjang sekitar 3 kaki, kecuali untuk ground dan pin +5V (ini hanya perlu 2-3 inci)
Langkah 6: Kabel Mikrofon / Amplifier
Dengan menggunakan gambar yang dilampirkan pada langkah ini, solder tiga kabel ke pin +5V, Ground, dan Out pada mikrofon/amplifier Adafruit. Ini hanya perlu sekitar 2-3 inci panjangnya.
Langkah 7: Pengkabelan Sakelar Sesaat
Hubungkan satu kabel 2-3 inci ke masing-masing dari dua lug pada sakelar sesaat.
Langkah 8: Pengkabelan Potensiometer
Menggunakan gambar di langkah 6, solder tiga kabel dengan panjang sekitar 2-3 inci ke tiga lug potensiometer.
Langkah 9: Kabel Jack Headphone
Solder tiga kabel ke ring, tip, dan lug selongsong jack headphone. Saya menggunakan jack dari metronom yang sudah terhubung. Jika Anda tidak tahu apa itu ring, tip, dan sleeve lug, googling saja ada banyak gambar bagus tentang wiring stereo jacks.
Langkah 10: Output Mikrofon / Amplifier
Setelah menyolder kabel pada mic/amp, potensiometer, dan jack headphone, solder satu kabel dengan panjang sekitar tiga kaki ke kabel "keluar" dari amplifier mikrofon. Kawat ini nantinya akan disambungkan ke pin A0 arduino.
Langkah 11: Output Mikrofon / Amplifier Lanjutan
Solder kabel kedua ke kabel "keluar" mikrofon/amplifier. Kawat ini perlu disolder ke kapasitor 100 mikroFarad. Jika Anda menggunakan kapasitor elektrolitik, pastikan sisi positif terhubung ke kabel ini.
Langkah 12: Komponen dalam Enclosure
Setelah semua kabel disolder pada komponen, letakkan komponen di tempatnya masing-masing mengikuti gambar yang terlampir pada langkah ini. Saya menggunakan lem panas untuk mengamankan mikrofon dan jack headphone di tempatnya.
Langkah 13: In-Enclosure-Soldering
Setelah semua komponen diamankan di enklosur, solder semua kabel ground bersama-sama. Harus ada satu dari LCD, satu dari mic/amp, dan satu dari lengan jack headphone. Juga solder kabel +5V bersama-sama dan satu kabel dari sakelar sesaat. Sekali lagi harus ada satu dari LCD, satu dari mic/amplifier, dan satu lagi di sakelar sesaat.
Langkah 14: +5V, Kabel Perpanjangan GND
Sekarang potong dua potong kawat dengan panjang sekitar 3 kaki. Solder satu ke sekelompok kabel ground dan solder yang lain ke kabel terbuka pada sakelar sesaat.
Langkah 15: Selipkan Kabel Panjang Melalui Lubang Kandang
Sekarang, Anda harus memiliki total delapan kabel dengan panjang sekitar 3 kaki. Tempatkan ini melalui lubang yang tidak terisi di enklosur. Lihat gambar terlampir pada langkah ini
Langkah 16: Panas Menyusut
Setelah semua penyolderan selesai, pastikan kabel yang terbuka tertutup. Saya menggunakan tabung panas menyusut, tetapi pita listrik juga berfungsi dengan baik.
Langkah 17: Kandang Segel
Ambil setengah dari selungkup yang berisi layar LCD dan selipkan di atas bagian lain dari selungkup yang berisi komponen lainnya. Sambil mendorong kedua bagian menjadi satu, rekatkan dengan lem panas untuk menyatukan penutupnya.
Langkah 18: Hubungkan ke Arduino
Delapan, panjang, kabel yang tersisa terhubung langsung ke pin Arduino masing-masing yang diuraikan dalam skema rangkaian. Pastikan bahwa setiap kali Anda menyolder salah satu kabel sepanjang 3 kaki itu ke dalam sirkuit, Anda menempelkan selotip di ujung yang lain yang menunjukkan pin Arduino yang digunakannya!
Langkah 19: Arduino IDE/Perpustakaan
Anda harus mengunduh Arduino IDE. Untuk sketsa ini, saya menggunakan tiga library yang berbeda: FHT.h, SPI.h, dan TFT.h. Jika Anda tidak tahu cara mengunduh perpustakaan Arduino, silakan lihat https://www.arduino.cc/en/Guide/Libraries. Pustaka FHT.h diunduh dari openmusicabs.com. Dua lainnya diunduh di GitHub.
Langkah 20: Sketsa Arduino
Kode menggunakan Fast Hartley Transform (FHT) untuk mengubah domain waktu ke domain frekuensi. Ini juga dapat dilakukan dengan menggunakan Fast Fourier Transform (FFT), tetapi FHT jauh lebih cepat. FFT dan FHT adalah ide yang sangat mendasar dalam pemrosesan sinyal dan sangat menyenangkan untuk dipelajari. Saya sarankan untuk membaca sendiri, jika Anda tertarik, lihat. Contoh kode FHT yang saya salin dari situs web Open Music Labs awalnya mengeluarkan amplitudo setiap nampan frekuensi sebagai keluaran logaritmik atau desibel. Saya mengubah ini untuk menampilkan nampan frekuensi pada skala linier. Ini karena skala linier adalah representasi visual yang lebih baik tentang bagaimana manusia mendengar suara. Loop for() di bagian akhir adalah untuk menggambar amplitudo setiap nampan frekuensi pada layar LCD. Spektrum FHT penuh akan mencakup semua frekuensi dari i=0 sampai i<128. Anda akan melihat bahwa for() loop saya dari i=5 ke i<40, ini karena frekuensi penting untuk mendiagnosis kondisi paru-paru biasanya antara 150Hz dan 3.5khz, saya memutuskan untuk naik ke sekitar 4kHz. Itu dapat disesuaikan jika Anda ingin menampilkan spektrum frekuensi penuh.
[kode]
//Kode Stetoskop Digital
// Pustaka Fast Hartley Transform diunduh dari openmusiclabs
#define LIN_OUT 1 //set FHT untuk menghasilkan output linier
#define LOG_OUT 0 //matikan keluaran logaritma FHT
#define FHT_N 256 //nomor sampel FHT
#include //sertakan perpustakaan FHT
#sertakan //sertakan perpustakaan TFT
#include //sertakan perpustakaan SPI
#define cs 10 //set pin lcd cs ke pin arduino 10
#define dc 9 //set pin dc lcd ke pin arduino 9
#define rst 8 //set pin reset lcd ke pin arduino 8
TFT myScreen = TFT(cs, dc, rst);//deklarasikan nama layar TFT
batalkan pengaturan() {
//Serial.begin(9600);//set sampling rate
myScreen.begin();//menginisialisasi layar TFT
myScreen.background(0, 0, 0);//set background menjadi hitam
ADCSRA=0xe5;//setel adc ke mode berjalan bebas
ADMUX=0x40;//gunakan adc0
}
lingkaran kosong() {
while(1){ // mengurangi jitter cli(); // Interupsi UDRE melambat seperti ini pada arduino1.0
for (int i = 0; i < FHT_N; i++) { // simpan 256 sampel
while(!(ADCSRA & 0x10)); // tunggu adc siap
ADCSRA = 0xf5; // mulai ulang adc byte
m = ADCL; // ambil byte data adc
j = ADCH; int k = (j << 8) | M; // bentuk menjadi int
k -= 0x0200; // bentuk menjadi int yang ditandatangani
k<<= 6; // bentuk menjadi 16b masuk ke
fht_input = k; // masukkan data asli ke dalam bin
}
fht_jendela(); // jendela data untuk respons frekuensi yang lebih baik
fht_reorder(); // menyusun ulang data sebelum melakukan fht
fht_run(); // memproses data di fht
fht_mag_lin(); // ambil output dari fht
sei();
untuk (int i=5;i<40;i++){
myScreen.stroke(255, 255, 255);
myScreen.fill(255, 255, 255);
int drawHeight=peta(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);
}
}
[/kode]
Langkah 21: Ujilah
Saya menggunakan generator nada online (https://www.szynalski.com/tone-generator/) untuk memastikan kode berfungsi dengan baik. Setelah memastikan berfungsi, tekan bel stetoskop ke dada Anda, tarik napas dalam-dalam dan lihat frekuensi apa yang ada!!
Langkah 22: Pekerjaan Masa Depan
**Catatan: Saya seorang ahli kimia, bukan insinyur atau ilmuwan komputer**. Kemungkinan akan ada kesalahan dan perbaikan pada desain dan kode. Karena itu, saya pikir ini adalah awal yang baik untuk sesuatu yang bisa menjadi sangat berguna dan murah. Poin-poin berikut adalah perbaikan di masa mendatang yang ingin saya lakukan dan saya harap beberapa dari Anda juga mencoba memperbaikinya!
· Jadikan perangkat mobile. Saya tidak memiliki pengalaman yang luas dengan CPU atau mikrokontroler lainnya, tetapi perlu memiliki cukup memori untuk menyimpan seluruh perpustakaan FHT, atau mungkin Bluetooth.
· Perkenalkan beberapa perhitungan analisis statistik ke dalam kode. Misalnya, biasanya mengi memiliki frekuensi dasar yang sama atau lebih besar dari 400 Hz dan berlangsung setidaknya 250 ms. Rhonchi terjadi pada frekuensi dasar sekitar 200 Hz atau kurang dan berlangsung setidaknya 250 ms. Banyak suara paru lainnya didefinisikan dan menunjukkan kondisi kesehatan (https://commongiant.github.io/iSonea-Physicians/assets/publications/7_ISN-charbonneau-Euro-resp-Jour-1995-1942-full.pdf). Saya pikir itu adalah sesuatu yang dapat diperiksa dalam kode dengan membandingkan sinyal tempat frekuensi setelah sejumlah siklus melalui FHT dan kemudian menjalankan fungsi millis() untuk melihat berapa lama ia hadir, lalu membandingkannya ke lantai kebisingan dari perhitungan FHT. Saya yakin hal-hal ini bisa dilakukan!
Saya harap Anda semua bersenang-senang dengan proyek ini dan jika Anda memiliki pertanyaan, silakan beri komentar dan saya akan merespons sesegera mungkin! Saya berharap untuk melihat komentar.
Direkomendasikan:
Kendaraan Efek Tanah RC Super CEPAT (Ekranoplan): 5 Langkah (dengan Gambar)
Super FAST RC Ground Effect Vehicle (Ekranoplan): Tahukah Anda bagaimana, saat mendarat, pesawat melayang beberapa kaki di atas tanah selama beberapa saat sebelum rodanya benar-benar menabrak landasan? Ini tidak hanya untuk memberikan penumpang pendaratan yang mulus tetapi juga hasil alami dari ground effect, di mana
Transform-a-Car: Remote Controlled ke Self Controlled: 4 Langkah
Transform-a-Car: Remote Controlled to Self Controlled: Ini adalah hack pada mobil RC dengan remote yang rusak. Anda dapat menemukan banyak hal di garage sale
Cara Cepat dan Mudah untuk Mengubah Layar Kunci Anda dalam 6 Langkah Sederhana (Windows 8-10): 7 Langkah
Cara Cepat dan Mudah untuk Mengubah Layar Kunci Anda dalam 6 Langkah Sederhana (Windows 8-10): Ingin mengubah banyak hal di laptop atau PC Anda? Ingin perubahan dalam suasana Anda? Ikuti langkah-langkah cepat dan mudah ini untuk berhasil mempersonalisasi layar kunci komputer Anda
Pencahayaan Ruangan LED Cepat, Cepat, Murah, Tampan (untuk Siapa Saja): 5 Langkah (dengan Gambar)
Pencahayaan LED Kamar Cepat, Cepat, Murah, Tampan (untuk Siapa Saja): Selamat datang semua:-) Ini adalah instruksi pertama saya jadi komentar dipersilakan:-)Yang ingin saya tunjukkan adalah bagaimana membuat pencahayaan LED cepat yang ada di Buget KECIL.Yang Anda butuhkan:KabelLEDResistor (510Ohm untuk 12V)StapelBesi solderPemotong dan dasar lainnya
Soft Switch Cepat dan Sederhana (untuk Pembuatan Prototipe Cepat): 5 Langkah
Soft Switch Cepat dan Sederhana (untuk Quick Prototyping): Ada banyak cara berbeda untuk membuat soft switch. Instruksi ini menunjukkan opsi lain dari prototipe yang sangat cepat untuk sakelar lunak, menggunakan pita aluminium alih-alih kain konduktif, dan kabel padat alih-alih benang konduktif, yang