Съдържание:
- Стъпка 1: Материали
- Стъпка 2: Инструменти
- Стъпка 3: 3D печат
- Стъпка 4: Изградете верига
- Стъпка 5: LCD окабеляване
- Стъпка 6: Окабеляване на микрофон/усилвател
- Стъпка 7: Моментално окабеляване на превключвателя
- Стъпка 8: Окабеляване на потенциометъра
- Стъпка 9: Окабеляване на жака за слушалки
- Стъпка 10: Изход за микрофон/усилвател
- Стъпка 11: Продължаване на изхода за микрофон/усилвател
- Стъпка 12: Компоненти в кутията
- Стъпка 13: Запояване в корпуса
- Стъпка 14: +5V, GND Удължени проводници
- Стъпка 15: Плъзнете дълги проводници през отвора на корпуса
- Стъпка 16: Термосвиване
- Стъпка 17: Запечатване на корпуса
- Стъпка 18: Свържете се с Arduino
- Стъпка 19: Arduino IDE/библиотеки
- Стъпка 20: Скица на Arduino
- Стъпка 21: Тествайте го
- Стъпка 22: Бъдеща работа
Видео: Спектрален стетоскоп за бързо преобразуване на Хартли: 22 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
В тази инструкция ще научите как да направите спектрален стетоскоп, използвайки бързата трансформация на Хартли. Това може да се използва за визуализиране на сърдечни и белодробни звуци.
Стъпка 1: Материали
1.8”LCD екран ($ 7.50 на Amazon)
Arduino Uno или еквивалент ($ 7,00 на Gearbest)
Електретен усилвател ($ 6,95 на Adafruit)
100 µF кондензатор ($ 0.79)
Тел и джъмпери ($ 4,00)
3,5 мм стерео жак (1,50 долара)
10kOhm потенциометър ($ 2,00)
Моментален превключвател ($ 1,50)
Стъпка 2: Инструменти
Поялник
Пистолет за горещо лепило
3D принтер … или приятел с 3D принтер (Възможно е да се направи и с картон)
Резачка за тел
Платка
Стъпка 3: 3D печат
Първият е да отпечатате 3D файловете.stl, приложени към тази стъпка. Отпечатах двата файла, използвайки следния материал/настройки:
Материал: PLA
Височина на слоя: 0,1 мм
Дебелина на стената/отгоре/отдолу: 0,8 мм
Температура на печат: 200⁰C
Температура на леглото: 60⁰C
Поддръжка активирана при 10%
Стъпка 4: Изградете верига
Използвайки компонентите в раздела материали, изградете веригата. Винаги първо поставям веригата на чиния, за да се уверя, че работи правилно, преди да докосна поялника.
Стъпка 5: LCD окабеляване
Използвайки фигурата, приложена към тази стъпка, запоявайте проводници към седем от осемте пина на LCD екрана. Тези проводници ще трябва да са с дължина около 3 фута, с изключение на земята и +5V щифтове (те трябва да са само 2-3 инча)
Стъпка 6: Окабеляване на микрофон/усилвател
Използвайки фигурата, прикрепена към тази стъпка, запоявайте три проводника към щифтовете +5V, заземяване и изход на микрофона/усилвателя Adafruit. Те трябва да са с дължина около 2-3 инча.
Стъпка 7: Моментално окабеляване на превключвателя
Свържете един 2-3-инчов проводник към всяка от двете пръчки на превключвателя за момент.
Стъпка 8: Окабеляване на потенциометъра
Използвайки фигурата в стъпка 6, запоявайте три проводника с дължина около 2-3 инча към трите уши на потенциометъра.
Стъпка 9: Окабеляване на жака за слушалки
Запояйте три проводника към пръстена, върха и втулките на жака за слушалки. Използвах жак от метроном, който вече беше свързан. Ако не знаете какво представляват пръстените, върховете и ръкавите, просто го потърсете в Google, има много добри изображения за свързване на стерео жакове.
Стъпка 10: Изход за микрофон/усилвател
След запояване на проводниците на микрофона/усилвателя, потенциометъра и жака за слушалки, запоявайте един проводник с дължина около три фута към "външния" проводник на усилвателя на микрофона. По -късно този проводник ще бъде свързан към щифта A0 на arduino.
Стъпка 11: Продължаване на изхода за микрофон/усилвател
Запояйте втори проводник към "изходния" проводник на микрофона/усилвателя. Този проводник трябва да бъде запоен към 100 microFarad кондензатор. Ако използвате електролитен кондензатор, уверете се, че положителната страна е свързана към този проводник.
Стъпка 12: Компоненти в кутията
След като всички проводници са запоени върху компонентите, поставете компонентите на съответните места, следвайки фигурите, приложени към тази стъпка. Използвах горещо лепило, за да закрепя жака за микрофон и слушалки на място.
Стъпка 13: Запояване в корпуса
След като всички компоненти са закрепени в кутията, запоявайте всички заземителни проводници заедно. Трябва да има един от LCD, един от микрофона/усилвателя и един от ръкава на жака за слушалки. Също така запоявайте +5V проводниците заедно и един проводник от моментния превключвател. Отново трябва да има един от LCD, един от микрофона/усилвателя и един от моментния превключвател.
Стъпка 14: +5V, GND Удължени проводници
Сега изрежете две парчета тел с дължина около 3 фута. Запоявайте единия към групата от заземени проводници, а другия - към отворения проводник на моментния превключвател.
Стъпка 15: Плъзнете дълги проводници през отвора на корпуса
Сега трябва да имате общо осем проводника с дължина около 3 фута. Поставете ги през незапълнения отвор в кутията. Вижте фигурата, приложена към тази стъпка
Стъпка 16: Термосвиване
След като запояването приключи, уверете се, че откритите проводници са покрити. Използвах термосвиваеми тръби, но електрическата лента също работи добре.
Стъпка 17: Запечатване на корпуса
Вземете половината от корпуса, съдържащ LCD екрана, и го плъзнете върху другата половина на корпуса, съдържащ останалите компоненти. Докато притискате двете части заедно, ги залепете горещо, за да закрепите кутията заедно.
Стъпка 18: Свържете се с Arduino
Осемте дълги останали проводника са свързани директно към съответните им щифтове Arduino, очертани в схемите на веригата. Уверете се, че всеки път, когато запоявате един от онези дълги 3 -футови проводници във веригата, поставяте парче лента на другия край, показвайки на кой щифт на Arduino отива!
Стъпка 19: Arduino IDE/библиотеки
Ще трябва да изтеглите Arduino IDE. За тази скица използвах три различни библиотеки: FHT.h, SPI.h и TFT.h. Ако не знаете как да изтеглите библиотеки на Arduino, моля, вижте https://www.arduino.cc/en/Guide/Libraries. Библиотеката на FHT.h е изтеглена от openmusiclabs.com. Другите две бяха изтеглени на GitHub.
Стъпка 20: Скица на Arduino
Кодът използва Fast Hartley Transform (FHT) за промяна на времевата област в честотна област. Това може да се направи и с помощта на Fast Fourier Transform (FFT), но FHT е много по -бърз. FFT и FHT са много фундаментални идеи при обработката на сигнали и са много забавни за научаване. Предлагам да прочетете сами, ако ви е интересно, вижте. Примерният код на FHT, който копирах от уебсайта на Open Music Labs, първоначално извеждаше амплитудата на всяка честотна лента като логаритмичен или децибелов изход. Промених това, за да извеждам честотните кутии в линейна скала. Това е така, защото линейната скала е по -добро визуално представяне на това как хората чуват звука. Цикълът for () в края е за изчертаване на амплитудата на всяка честотна лента на LCD екрана. Пълният спектър на FHT ще обхване всички честотни полета от i = 0 до i <128. Ще забележите, че моят цикъл for () е от i = 5 до i <40, това е така, защото честотите, важни за диагностициране на белодробни състояния, обикновено са между 150Hz и 3.5khz, реших да се кача до около 4kHz. Това може да се регулира, ако искате да покажете пълния честотен спектър.
[код]
// Код на цифров стетоскоп
// Библиотека за бързо преобразуване на Хартли, изтеглена от openmusiclabs
#define LIN_OUT 1 // настройте FHT да произвежда линеен изход
#define LOG_OUT 0 // изключване на логаритмичен изход на FHT
#define FHT_N 256 // FHT пробен номер
#include // включва FHT библиотека
#include // включва TFT библиотека
#include // включва SPI библиотека
#define cs 10 // задайте lcd cs щифт към arduino pin 10
#define dc 9 // задайте lcd dc щифт на arduino pin 9
#define rst 8 // задайте щифта за нулиране на LCD на 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
}
void loop () {
while (1) {// намалява трептенето cli (); // Прекъсването на UDRE се забавя по този начин на arduino1.0
for (int i = 0; i <FHT_N; i ++) {// запазване на 256 проби
while (! (ADCSRA & 0x10)); // изчакайте adc да е готов
ADCSRA = 0xf5; // рестартирайте adc байт
m = ADCL; // извличане на ADC байт данни
j = ADCH; int k = (j << 8) | m; // оформяме в int
k -= 0x0200; // формулираме в подписан int
k << = 6; // формира се в 16b подписан int
fht_input = k; // поставяме реални данни в контейнери
}
fht_window (); // прозорец на данните за по -добра честотна характеристика
fht_reorder (); // пренареждате данните преди да направите fht
fht_run (); // обработваме данните във fht
fht_mag_lin (); // вземем изхода на fht
sei ();
for (int i = 5; i <40; i ++) {
myScreen.stroke (255, 255, 255);
myScreen.fill (255, 255, 255);
int drawHeight = map (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 Hz, и продължават най -малко 250 ms. Рончи се срещат при основна честота от около 200 Hz или по -малко и продължават поне 250 ms. Много други белодробни звуци са дефинирани и са показателни за здравословни състояния (https://commongiant.github.io/iSonea-Physicians/assets/publications/7_ISN-charbonneau-Euro-resp-Jour-1995-1942-full.pdf). Мисля, че това е нещо, което може да се провери в кода, като се сравнява сигналът на честотните бинове след определен брой цикли през FHT и след това се изпълнява функцията millis (), за да се види колко дълго е присъствал, след което се сравнява до нивото на шума при изчислението на FHT. Сигурен съм, че тези неща могат да се направят!
Надявам се, че всички сте се забавлявали с този проект и ако имате въпроси, моля, коментирайте и аз ще отговоря възможно най -скоро! Очаквам с нетърпение коментарите.
Препоръчано:
Преобразуване на стари високоговорители в Bluetooth Boombox: 8 стъпки (със снимки)
Преобразуване на стари високоговорители в Bluetooth Boombox: Здравейте на всички! Благодаря ви много, че се свързахте с мен в тази компилация! Преди да преминем в детайлите, моля, помислете за гласуване за този Instructable в състезанието в най -долната част. Подкрепата е високо оценена! Изминаха няколко години, откакто започнах
Преобразуване на сензор за ефект на Хол Logitech 3D Extreme Pro: 9 стъпки
Преобразуване на сензор за ефект на Хола на Logitech 3D Extreme Pro: Контролът на кормилото на джойстика ми изгасваше. Опитах се да разглобя саксиите и да ги почистя, но не помогна много. Затова започнах да търся резервни съдове и попаднах на няколко различни уебсайта от преди няколко години, които се отнасят
Комплект за преобразуване на USB пишеща машина: 9 стъпки (със снимки)
Комплект за преобразуване на USB пишеща машина: Има нещо много вълшебно в писането на онези ръчни пишещи машини от старо училище. От задоволителното щракане на пружиниращите клавиши, до блясъка на полираните хромирани акценти, до отчетливите белези на отпечатаната страница, пишещите машини правят
Дизайн на играта с бързо движение в 5 стъпки: 5 стъпки
Дизайн на игра с Flick в 5 стъпки: Flick е наистина прост начин да направите игра, особено нещо като пъзел, визуален роман или приключенска игра
Бързо, бързо, евтино, добре изглеждащо LED осветление на стаята (за всеки): 5 стъпки (със снимки)
Бързо, бързо, евтино, добре изглеждащо LED осветление на стаята (за всеки): Добре дошли на всички :-) Това е първият ми инструктаж, така че коментарите са добре дошли :-) Това, което се надявам да ви покажа, е как да направите бързо LED осветление, което е включено МАЛКИ бугет. Какво ви е необходимо: Кабелни LED светодиоди Резистори (510 Ома за 12V) ТепелиПайник Режещи и други основи