Skocz do zawartości

Wykrywanie dźwięku o danej częstotliwości


kertoiP

Pomocna odpowiedź

Celem jest nadanie za pomocą głośnika/buzzera dźwięku z zakresu ultradźwięków (w tym przypadku od 20kHz do 50kHz), a następnie odebranie tego sygnału za pomocą mikrofonu elektretowego lub przetwornika ultradźwiękowego i odczytanie tego faktu przez połączony z mikrofonem mikrokontroler za pomocą przerwania zewnętrznego lub odczytania za pomocą ADC ustawionego powyżej danego progu.

Zakres odległości: 0.01 - 5m.

Przykładowo: nadaję impuls o f = 40kHz, trwający 1ms i chcę aby na wyjściu mikrofonu (za wzmacniaczem i filtrem) pojawił się sygnał o wystarczającym wzmocnieniu, aby mikrokontroler mógł to jednoznacznie odebrać jako wysłany do niego sygnał i nie pomylił z szumem rozmowy, muzyką lub jakimkolwiek innym dźwiękiem.

Pytania są następujące:

1. Jaki nadajnik i odbiornik fal dźwiękowych będzie najlepszy do tego zastosowania?

2. Czy filtr środkowoprzepustowy będzie wystarczająco dobry do wyekstraktowania z dźwięków dochodzących do odbiornika fal dźwiękowych o danej częstotliwości i o wystarczającym wzmocnieniu (czy dla np. szumu of f = 38kHz wzmocnienie będzie na tyle duże, że mikrokontroler je wykryje jako 40kHz, chodzi o szerokość pasma przewodzenia, jak wąskie może być)?

3. Jakie wzmacniacze do mikrofonów polecacie?

Link do komentarza
Share on other sites

Można się długo rozpisywać, ale to co chcesz zrobić jest dokładnym powtórzeniem tego co robi każdy detektor odległości. Zanim więc zaczniesz się zagłębiać w filtry i wzmacniacze, spróbuj obejrzeć schematy kilku takich czujników.

http://www.kerrywong.com/2011/01/22/a-sensitive-diy-ultrasonic-range-sensor/

http://www.micro-examples.com/public/microex-navig/doc/090-ultrasonic-ranger.html

http://www.electroschematics.com/3552/ultrasonic-sensor-circuit/

Generalnie jest tak:

W otaczającej nas przestrzeni mało jest sygnałów o częstotliwościach > 20kHz. Na pewno produkują taki hałas niektóre urządzenia techniczne (wentylatory, silniki) - ale w bardzo ograniczonych mocach no i nietoperze rzecz jasna. Tak więc jeśli będziesz bawił się w pomieszczeniu to możesz nie martwić się o duży poziom zakłóceń.

Typowe elementy akustyczne/audio typu buzzer czy głośnik (nawet wysokotonowy) kończą się dużo wcześniej niż 20kHz. A tanie buzzery - szczególnie typu piezo mają bardzo wąski zakres działania. Jeśli w jego danych napisali np. 2.4kHz to tyle ma być, bo dla 5kHz będzie już 5x gorzej/ciszej. Do nadawania i odbierania ultradźwięków praktycznie wyłącznie stosuje się specjalne przetworniki ultradźwiękowe. Mają one dwie podstawowe zalety: mają w tym paśmie dobrą sprawność (czyli duża część doprowadzonej energii elektrycznej idzie w sygnał akustyczny) oraz dość wąskie pasmo. To pierwsze jest oczywiste, to drugie może być zaletą lub wadą - zależy co chcesz zrobić.

Im szersze jest pasmo toru odbiornika tym więcej śmieci przechodzi dalej. Ponieważ odbiornik zaczyna się od przetwornika/mikrofonu, to już jego charakterystyka bardzo wpływa na całość. Typowy przetwornik ultradźwiękowy za 10zł stosowany w hobbystycznych czujniczkach odległości lub alarmach samochodowych ma wąskie pasmo skupione wokół (zwykle) 40kHz i praktycznie wyłącznie taki sygnał będzie odbierał. Możesz tu poruszać się kilka kHz w górę i w dół, ale najlepiej obejrzeć ch-kę przenoszenia podawaną w kartach katalogowych:

http://www.tme.eu/pl/Document/5b72095a40cf3c3725924c6598b6df84/100902_bpu-1640ioah12.pdf

Pamiętaj, że różnica 20dB to 10-krotna zmiana amplitudy. Ten przykładowy czujnik jest "dual-use" czyli może być zarówno nadajnikiem jak i odbiornikiem sygnału. Stąd masz dwa wykresy: ciśnienia akustycznego (SPL - sound pressure level) i czułości (sensitivity). Można więc z niego zrobić czujnik parkowania gdzie ten sam element nadaje i odbiera sygnał zwrotny. Nie zawsze tak jest i nie zawsze jest to wygodne z punktu widzenia elektroniki. U Ciebie, gdy układy nadawaczy i odbiorczy będą oddalone od siebie to i tak tory będą osobne, możesz użyć pary: nadajnik po jednej i odbiornik po drugiej albo po obu stronach elementów dual-use.

Wadą wąskiego pasma jest to, że taki element trudniej "rozbujać": musisz mu podać więcej impulsów przy nadawaniu żeby zaczął w ogóle coś wysyłać (musi się "rozhuśtać") no i musi odebrać kilka impulsów żeby coś pokazało się na wyjściu. Dlatego wykresy oscyloskopowe sygnału odbieranego przez czujniki odległości są takie łagodne jak fale na morzu: amplituda powoli narasta i powoli opada. No ale innego wyjścia nie ma bo inne przetworniki są bardzo drogie.

Im węższe pasmo filtru - jeśli taki wbudujesz w układ - tym szumów i zakłóceń będziesz miał mniej ale tym trudniej go zbudować, trudniej przestrajać i tym gorsza będzie jego odpowiedź w czasie (parz wyżej). Wiele prostych czujników odległości bazuje na ch-ce samego mikrofonu plus ew. jakiś filtr górnoprzepustowy osiągany "przy okazji" pojemnościowego sprzężenia kolejnych stopni wzmacniaczy. Na tym schemacie standardowego HC-SR04 jest jeden stopień filtru aktywnego (znajdziesz go?):

https://uglyduck.ath.cx/ep/archive/2014/01/Making_a_better_HC_SR04_Echo_Locator.html

Kolejna ważna rzecz to spadek amplitudy wraz z odległością. Jeśli ustawisz duże wzmocnienie, to z bliska wzmacniacze wejściowe będą przesterowane gdy zmniejszysz gain, nic z daleka nie odbierzesz. W profesjonalnych rozwiązaniach stosuje się sterowanie wzmocnienia czasem. Na początku - tuż po nadaniu impulsu sondującego wzmocnienie jest małe bo jeśli coś się odbije i wróci teraz, to będzie bardzo silne. W miarę upływu czasu spodziewamy się coraz słabszego echa więc wzmocnienie jest podkręcane aż do granicy możliwości toru. To jednak wymaga stawienia tzw. VGA (variable gain amplifier) który jest drogi i trudny. U Ciebie chyba to byłoby trudne bo odbiornik jak rozumiem "nie wie" w jakiej jest odległości od nadajnika i "nie spodziewa się" amplitudy echa tak jak sonar.

Przetworniki ultradźwiękowe są kierunkowe - dużo bardziej niż głośniki audio więc zarówno wiązka nadajnika jak i kąt widzenia odbiornika są dość wąskie. Można sobie poradzić przez skierowanie osi w górę lub w dół i zrobienie stożka rozpraszającego.

Nie musisz nadawać przez 1ms. To aż 40 impulsów 40kHz. Zwykle wystarczy dużo mniej, np. 5-8, ale też nie wiem co chcesz zrobić. Co to będzie? Możesz zdradzić nam pomysł?

  • Lubię! 1
Link do komentarza
Share on other sites

Właściwie to pomysł jest dopiero w fazie kształtowania się. Chcę lokalizować współrzędne punktu w pomieszczeniu za pomocą trzech stacji odbiorczych i sygnału akustycznego. Właśnie na sygnale akustycznym ma się to wszystko opierać i to jest niezmiennik. Stacja nadawcza nadawałaby w "eter" dźwięk o danej częstotliwości i nasłuchiwała sygnałów radiowych od stacji odbiorczych co pozwoliłoby zmierzyć odległość między nimi. Obecnie są dwa warianty działania:

1) Nadanie przez stację nadawczą dźwięku i oczekiwanie na sygnały radiowe.

2) Nadanie przez stację nadawczą sygnału radiowego do stacji odbiorczej informując, że niedługo przyjdzie sygnał akustyczny i dopiero wtedy nadanie dźwięku.

Pierwsza wersja jest prostsza technologicznie i wymaga w stacji odbiorczej tylko nadajnika radiowego i mikrofonu. W drugiej potrzebny jest już transceiver ale za to odbiornik "spodziewa" się sygnału dzięki czemu można zastosować filtr nie aż tak bardzo dokładny ponieważ są małe szanse, że w tak krótkim czasie (dla 5m czyli maksymalnego zasięgu jest to 15ms) pojawi się zakłócenie, chociaż nie jest to pewne. Wtedy żeby mieć pewność, że to ten sygnał, a nie szum sprawdzono by czas trwania otrzymanego sygnału, przykładowo właśnie 1ms, ale to już kwestia doboru eksperymentalnego o ile w ogóle byłoby to potrzebne.

Zależy mi na tym, aby stacje odbiorcze były stosunkowo proste, tanie i małe dlatego chciałbym je jak najbardziej uprościć. Wstępnie główne elementy to zasilanie bateryjne, Attiny13, przetwornik ultradźwiękowy i transceiver radiowy. W stacji nadawczej moc obliczeniowa nie powinna być problemem, chcę wrzucić tam jakiegoś STM32.

Przetworniki ultradźwiękowe były właśnie pierwszą myślą, ale tak jak wspomniałeś problemem jest ich kierunkowość i nie za bardzo wiem jak wygląda sprawa z rozpraszaniem, tzn. czy taki rozproszony sygnał będzie miał wystarczającą amplitudę i czy wszędzie dotrze.

Co do schematu HC-SR04 to wydaje mi się, że jako filtr środkowoprzepustowy służy U2C.

Amplituda w zależności od odległości jest kolejnym problemem, zarówno dla 1cm jak i dla 5m amplituda powinna być na tyle duża, żeby mikrokontroler był w stanie odczytać dany sygnał. Może dałoby się to zrobić odpowiednio dobranym progiem ADC.

Mam do dyspozycji różnego rodzaju głośniki, buzzery, nadajniki i odbiorniki ultradźwiękowe na 40kHz oraz kilka opampów: TL081, LM386 i LM358D oraz sporo wolnego czasu. Zamierzam poeksperymentować z tym wszystkim, robić filtry środkowoprzepustowe i pomierzyć przebiegi na oscyloskopie, żeby sprawdzić, które rozwiązanie jest najlepsze, ale nie bardzo wiem od czego zacząć, stąd ten temat.

Link do komentarza
Share on other sites

Amplituda w zależności od odległości jest kolejnym problemem, zarówno dla 1cm jak i dla 5m amplituda powinna być na tyle duża, żeby mikrokontroler był w stanie odczytać dany sygnał. Może dałoby się to zrobić odpowiednio dobranym progiem ADC.

Myślę, że to jest główny problem twojego pomysłu i że w zasadzie kładzie go kompletnie. Siła odebranego sygnału tak bardzo zależy od parametrów otoczenia takich jak temperatura, wilgotność powietrza, wiatr i poruszające się przedmioty, inne dźwięki nakładające się na twój, przeszkody, odbicia, etc., że w zasadzie masz małe szanse na precyzyjne określenie odległości. Dlatego sonary działają mierząc czas odbicia echa, a nie jego siłę.

Mam w szufladzie podobny projekt, może się podzielę swoimi przemyśleniami i w czymś ci to pomoże.

Tak jak napisałeś, masz główne urządzenie i boje o znanych położeniach. Wysyłasz sygnał, dostajesz sygnał zwrotny, używasz trilateracji żeby określić swoje położenie. Wszystko pięknie. Tylko teraz szczegóły.

U mnie każda boja to ultradźwiękowy czujnik odległości z usuniętym odbiornikiem (w sumie nie trzeba go usuwać, ale nie będzie używany) i prostym odbiornikiem podczerwieni (takim do pilota). Do tego oczywiście jakiś attiny, który odbiera sygnał podczerwony (reaguje tylko na unikalny kod przydzielony tej konkretnej boi) i jak tylko go odbierze, to po ściśle określonym opóźnieniu wysyła ping czujnikiem.

Urządzenie główne ma diodę podczerwoną ustawioną tak, żeby światło było rozproszone we wszystkich kierunkach, oraz czujnik ultradźwiękowy z usuniętym nadajnikiem. Mikrokontroler na nim ma listę kodów boi wraz z ich pozycjami i kolejno odpytuje je -- i mierzy ile czasu pomiędzy nadaniem sygnału danej boi a odebraniem pinga minęło. Jak jakaś nie odpowie w określonym czasie, to jest ignorowana. Z opóźnień znasz odległości a z tego i z pozycji możesz już coś policzyć.

Zalety takiego systemu: boje biorą mało prądu, bo tylko czujnik IR musi działać cały czas. Wąska kierunkowość pinga, który generują nie jest takim problemem, bo ustawiasz je w rogach pomieszczenia pod sufitem, skierowane do wewnątrz pomieszczenia. Jak gdzieś nie masz pokrycia, to dodajesz boję. Naraz "gada" tylko jedna boja -- ta wywołana -- więc nie ma problemu z ich odróżnianiem. Boje są też bardzo proste i tanie. Użycie podczerwieni dodatkowo powoduje, że aktywujesz tylko boje w zasięgu wzroku -- więc nie marnujesz energii pozostałych. Użycie gotowych części znacznie też obniża cenę i ułatwia konstrukcję.

Niestety pomysł nieprzetestowany -- podejrzewam, że główne urządzenie będzie potrzebować całego zestawu odbiorników ultradźwiękowych dookoła, żeby poradzić sobie z kierunkowością sygnału.

[ Dodano: 30-01-2017, 18:12 ]

A tak naprawdę to dużo precyzyjniejsze pozycjonowanie dostaniesz z analizy obrazu z taniego webcama.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Zaszło pewne nieporozumienie, miarą odległości nie ma być pomiar amplitudy odebranego sygnału, a czas jego powrotu. Po odebraniu przez stację odbiorczą dźwięku wysłany zostanie numer stacji odbiorczej drogą radiową do stacji nadawczej. Stacja nadawcza wiedząc kiedy wysłała sygnał i wiedząc po jakim czasie zostanie on odebrany, ale już jako komunikat radiowy obliczy czas potrzebny pokonanie danej drogi z prędkością dźwięku. Dzięki temu wiele stacji naraz będzie mogło odebrać jeden sygnał akustyczny i wysłać drogą radiową swoją odpowiedź do stacji nadawczej, która wiedząc od kogo dostała sygnał obliczy swoje położenie.

Link do komentarza
Share on other sites

W każdej chcę mieć mikrofon, i nadajnik radiowy:

Stacja nadawcza (taktująca z załóżmy f = 80MHz co jest wystarczająco dokładne do tego zadania) nadaje sygnał akustyczny i w tym momencie zaczyna liczyć czas, a kończy zliczanie gdy otrzyma sygnał radiowy od stacji odbiorczej. Czyli równolegle stacja odbiorcza czeka na sygnał akustyczny, a od razu gdy go otrzyma wysyła sygnał radiowy.

Link do komentarza
Share on other sites

Zmiana amplitudy prowadzi do bardzo dużych błędów czasowych, narysuj sobie dwa przebiegi: identyczne w kształcie narastające (przez kilka okresów) i równie wolno opadające sinusoidy o różnych amplitudach szczytowych, np. różniące się 10-krotnie. A teraz narysuj poziomą kreskę pokazującą poziom odcięcia Twojego komparatora. Czy oba sygnały są przecięte w tym samym miejscu? Nie? To właśnie jest błąd czasu. Ta metoda jest zbyt trywialna - tak się nie robi, chyba że robisz zabawkę lub wstawisz regulację wzmocnienia czyli stabilizację amplitudy sygnału wchodzącego na komparator - ale do tego potrzebujesz wiedzieć a priori jakiej się spodziewać. Możesz też użyć filtru dopasowanego, który korelacyjnie będzie poszukiwał miejsca wystąpienia przebiegu o precyzyjnie, całościowo zadanym kształcie.

To pierwsze (czyli regulacja wzmocnienia) zadziała gdy najpierw będzie wysyłany radiowy lub podczerwony sygnał "ping" a dopiero po nim będzie wracało echo akustyczne. Wtedy wiesz że im później tym słabiej i możesz z głowy modyfikować wzmocnienie toru. Odwrotnie nie zadziała, bo zawsze sygnał akustyczny będzie dla strony odbiorczej zaskoczeniem.

Link do komentarza
Share on other sites

Może po kolei, tutaj schemat sygnałów wchodzących i wychodzących (bez wzmacniacza i filtru):

Generowany na nadajnik sygnał jest prostokątny. Sygnał na wyjściu odbiornika ma mniejszą amplitudę i dodatkowe zakłócenia. Im większa odległość między urządzeniami, tym amplituda na odbiorniku jest mniejsza. Napięcie na odbiorniku przyjmuje jedynie wartości zakresu 0V - 5V.

Przykładowo:

Przy nadawaniu sygnału z odległości 5m na wyjściu odbiornika za filtrem i wzmacniaczem jest 400mV. Przy 10cm na wyjściu są 4V. Wtedy ustawiam próg ADC na 375mV i jeżeli jakiś sygnał go przekroczy to wiem, że wykryto sygnał z nadajnika.

Co do różnicy w czasie w zależności od amplitudy, przy częstotliwości 40kHz i sygnale sinusoidalnym maksymalny czas między dwoma maksymalnymi amplitudami wynosi 25us więc przy prędkości dźwięku 330m/s w najgorszym wypadku niedokładność pomiaru odległości wynosiłaby 8mm, co jeszcze jest akceptowalne, szczególnie, że po filtracji zrobionej na podstawie np. 10 pomiarów możliwe byłoby uzyskanie stosunkowo dokładnego pomiaru. Mimo wszystko na dokładności rzędu milimetrów mi nie zależy szczególnie, że będzie to pierwszy tego typu projekt.

Filtr dopasowany wydaje się być właśnie tym czego szukam, martwi mnie jedynie czas przetwarzania tego sygnału. Przykładowo dla ATtiny na kwarcu 9.6MHz czas 25us to ok. 250 taktów mikrokontrolera w trakcie których musiałby odfiltrować sygnał i nadać informację o nadejściu sygnału akustycznego drogą radiową. Im dłużej mu to zajmie tym większy błąd.

Link do komentarza
Share on other sites

Nie wiem czy piszesz swoje życzenia z sufitu czy to co zmierzyłeś, bo tak:

1. Zarówno nadajnik jak i odbiornik są wąskopasmowe więc drgają jak wahadło - sinusoidalnie. Nawet jeśli wygenerujesz sygnał prostokątny to żaden z tych przetworników nie przeniesie wyższych harmonicznych. Już nadawana w powietrze fala będzie praktycznie sinusoidalna a odbiornik dołoży swoje filtrowanie. Tak więc z ciągu ostrych i jednakowych impulsów po jednej stronie, dostajesz łagodnie narastającą i opadającą (przez kilka/naście okresów) sinusoidę po drugiej. Tak wygląda filtrowanie pasmowoprzepustowe i nic na to nie możesz poradzić. Nie mam akurat pod ręką jakichś przebiegów z oscyloskopu, ale tu masz niezły przykład:

https://hackaday.io/project/5903-sonar-for-the-visually-impaired/log/24845-firmware-progress-1-digital-range-finder

2. Sygnał akustyczny słabnie z kwadratem odległości. Jeśli z 10cm masz amplitudę A to z 1m dostaniesz już tylko A/100. A jak będzie z 5m? Tak więc z odległości centymetrowych wystarczy praktycznie sam przetwornik odbiorczy - amplituda jest ogromna. Ale żeby odebrać coś z kilku metrów potrzebujesz wzmocnień rzędu setek lub nawet tysięcy. Bez regulacji wzmocnienia albo przesterujesz wzmacniacz z bliska albo nic nie odbierzesz z daleka. Jak ustawisz próg gdy amplituda będzie zmieniać się z 4V do 4mV? Tutaj pomysł deshipu, by beacony umieścić wysoko (albo daleko poza zasięgiem strefy poruszania się) jest dobry. Wtedy maleje względna różnica dystansu między odległością minimalną a maksymalną zatem maleje także rozpiętość amplitud.

3. Jaki sygnał chcesz przetwarzać? Na wyjściu odbiornika masz falę 40kHz. Gdybyś zechciał zrobić to "po bożemu" musiałbyś to próbkować min 100ksps. Nie masz takiego przetwornika ADC na pokładzie AVR. A to będzie konieczne to zrobienia filtra dopasowanego - mam nadzieję, że mówimy o tym samym. Możesz też na wyjściu odbiornika zrobić detektor szczytowy i szukać takim filtrem znanego kształtu obwiedni a nie samego sygnału nośnej. Wtedy pasmo może być rzędy wielkości niższe. Poza tym w takim procesorze filtru nie puszczasz co każdą próbkę tylko łapiesz do bufora wszystko a gdy już minie czas najpóźniej spodziewanego sygnału kończysz próbkowanie i zaczynasz liczyć filtr. Im dłuższy filtr tym będzie lepiej wykrywał, ale tym więcej trzeba się naliczyć i więcej czasu to zajmuje.

EDIT:

4. Stałe opóźnienia nie przeszkadzają - system może je uwzględniać więc czas liczenia filtra nie ma znaczenia - byle zawsze był taki sam.

Link do komentarza
Share on other sites

Zrobiłem przed chwilą testy:

Nadajnik:

Nóżki podłączone do pinów mikrokontrolera 5V, raz jeden, raz drugi naprzemiennie wystawia stan wysoki, a drugi stan niski z częstotliwością 40kHz.

Odbiornik:

Podłączony bezpośrednio do oscyloskopu.

Przy wyłączonym nadajniku na odbiorniku była sinusoida o amplitudzie 24mV. Przy skierowaniu nadajnika do odbiornika z odległości 10cm amplituda wzrosła do 120mV.

Następnie odwróciłem w stronę sufitu zarówno odbiornik, jak i nadajnik oddalone od siebie o ok. 30cm. Odbiornik niczego nie wykrył, amplituda 24mV. Po dodaniu nad nadajnik przedmiotu o kształcie kuli amplituda wzrosła do 32mV, czyli rozpraszanie rzeczywiście może pomóc uzyskać sygnał przy takim ułożeniu czujników.

Niestety będę musiał trochę zmienić założenia w tym wypadku. Jeżeli nic lepszego nie wymyślę zamiast ATtiny wrzucę coś szybszego (aby możliwe było zrobienia filtra dopasowanego), możliwe też, że zasięg będzie mniejszy np. 2m. Myślałem też o zrobieniu tak dużego wzmocnienia, żeby nawet na dalszych odległościach amplituda była wystarczająco duża, ale wtedy łapałoby wszystkie szumy, więc bez sensu.

Planuję zrobić wzmacniacz z regulowanym wzmocnieniem, żeby sprawdzić jaka jest maksymalna odległość przy której możliwe jest wykrycie sygnału. Wtedy może będzie łatwiej wymyślić sposób na przetworzenie odebranego sygnału, znając w praktyce jego skrajne parametry.

Wstępny schemat:

Wybaczcie za błędy ale to trochę co innego teoria, a praktyka. Staram się samodzielnie dochodzić do rozwiązań, ale czasami lepiej jest spytać kogoś bardziej doświadczonego niż marnować czas i elektronikę na koncepcje skazane na porażkę.

Link do komentarza
Share on other sites

Dobra, pomyśl jeszcze o tym detektorze szczytowym.

Raczej niemożliwe, byś na wyjściu detektora dostawał kilkadziesiąt mV sygnału 40kHz bez włączonego nadawania. Jesteś biegły w posługiwaniu się oscyloskopem? Może to było 50Hz z sieci?

Czy sprawdziłeś jak wyglądał sygnał na wyjściach procesora? Przecież nadajnik piezo to wielki kondensator i wymaga sterowania mocnym driverem. Potwierdziłeś, że było tam rzeczywiście dokładnie 40kHz o sensownej amplitudzie czy tylko napisałeś program i do boju? W takich eksperymentach musisz być drobiazgowy (tym bardziej gdy nie czujesz się pewnie w dziedzinie), bo dojdziesz do ruskich wniosków. Weryfikuj cały tor od początku do końca.

Czy wiesz jakie wzmocnienie ma LM386 w tym układzie? Jakie pasmo? Pamiętaj, że na wyjściu będzie składowa stała, bo to tylko asymetrycznie zasilany wzmacniacz audio w klasie B. Acha, i to nie jest VGA 🙂 To zwykły potencjometr i wzmacniacz o stałym wzmocnieniu. Przyda się do doświadczeń (choć wiesze wzmocnienie byłoby zaletą) ale nie możesz tu płynnie zmieniać wzmocnienia programem z procesora w czasie kilku ms nadchodzącego echa.

No i pisz co tam wymyśliłeś. Zawsze to tańsze niż rzeźba z lutownicą.

Czy liczyłeś ile MIPSów potrzebujesz do liczenia filtra, powiedzmy 20-tapowego z prędkością 100kHz? Naprawdę pomyśl nad liczeniem tego post-factum.

Link do komentarza
Share on other sites

Bardzo biegły w obsłudze oscyloskopu nie jestem, możliwe, że coś źle zrobiłem. Podłączyłem bezpośrednio sondę do nóżek odbiornika. Zrobiłem teraz pomiar jeszcze raz i przy dłuższym pomiarze częstotliwość sygnału wynosiła ok. 50Hz więc były to raczej zakłócenia z sieci.

Na wyjściu procesora było coś zastanawiającego:

Sygnał między jedną z nóżek, a masą:

Sygnał przy podłączeniu sond do nóżek (bez nadajnika):

Sygnał przy podłączeniu sond do nóżek (z nadajnikiem):

Nadajnik był podłączony na szybko wprost do nóżek procesora, nie posiadam drivera.

W tym układzie ze względu na dodatnie kondensatora C2 wzmocnienie wynosi 200. Bez niego wynosiłoby 20. Możliwa jest zmiana wzmocnienia w zakresie 20-200 przez dodatnie w szeregu do kondensatora rezystora i w taki sposób w celach eksperymentalnych będę zmieniał wzmocnienie. Dla f = 40kHz wzmocnienie spada o kilka decybeli. Nie jest to idealny wzmacniacz do tego zastosowania, ale innego nie mam pod ręką póki nie zdecyduję się co robić dalej.

Właśnie zastanawia mnie ta składowa stała na wyjściu skoro na wejściu jest kondensator, który powinien blokować ją dla sygnału wejściowego, to skąd na wyjściu ona mogłaby się pojawić? I swoją drogą jakie jest kryterium doboru wartości oraz rodzaju kondensatora blokującego składową stałą?

Zakładając minimalną i maksymalna odległość między nadajnikiem i odbiornikiem na 5-200cm, wzmocnienie przy 200cm powinno być takie same jak przy 5cm, czyli wynosić 1600V/V (64dB). Przykładowo PGA112 ma wzmocnienie z zakresu 1-128, łącząc je szeregowo udałoby się uzyskać zamierzone wzmocnienie. Ma to sens?

http://www.ti.com/lit/ds/symlink/pga112.pdf

Aktualnie plan jest taki:

Nadajnik:

Jak najmocniejszy, ze stożkiem rozpraszającym.

Odbiornik:

W momencie nadania sygnału akustycznego będzie nadawany również sygnał radiowy do odbiornika. Gdy odbiornik odbierze sygnał radiowy, zacznie aż do nadejścia sygnału akustycznego zwiększać wzmocnienie. Na wyjściu wzmacniacza detektor szczytowy z odpowiednio dobraną stałą RC i diodą o bardzo niskim spadku napięcia.

Wolałbym w miarę możliwości uniknąć zaawansowanych filtrów, ale jeżeli nic innego nie pomoże to nie mam innego wyjścia. Fajnie jest się nauczyć takich rzeczy ale to wymaga sporo czasu.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.