Skocz do zawartości

Teoretyzowanie przed praktyką #1 - podczerwień w robotyce amatorskiej


Treker

Pomocna odpowiedź

Dopisałem trochę rzeczy do poprzedniego postu. Mogę wrzucić kilka liczb, ale to już gdy zrobię jakieś pomiary. Mało czasu przed Świętami. Wiesz, to wciąż nie jest żaden dalmierz tylko prosty miernik odbijanej energii 🙁 , więc nazywanie go radarem jest sporo na wyrost..

Link do komentarza
Share on other sites

Wiesz, to wciąż nie jest żaden dalmierz tylko prosty miernik odbijanej energii, więc nazywanie go radarem jest sporo na wyrost..

Jak na nasze warunki, to śmiało można uważać go za radar 🙂 Nikt chyba nie przedstawił tak kompleksowego rozwiązania problemu żadnego problemu na Forbocie. Dziękuję Marku za zaangażowanie. Szkoda, że nikt inny nie pokusił się o testy. Chociaż może po prostu nikt nie dzieli się swoimi odkryciami...

Jak to jest, przyznać się, kto śledzi wątek, ale się nie udziela?

Link do komentarza
Share on other sites

Mechano, to jest chyba nie tylko Twój problem. Ja również wycofałem się z dyskusji merytorycznej z powodu braku wiedzy z tej dziedziny. Jednak bardzo przyjemnie czytać te wszystkie posty i wyciągać z tego wnioski 🙂

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

Marek, mam takie pytanko, czy tak szerokokątny odbiornik nie zaczyna łapać oświetlenia bezpośrednio "z sufitu" (a z pewnością z lampy wiszącej pod kątem 45stopni np. nisko położone słońce) i tym samym nie ma momentami sygnału stałego przekraczającego maksymalny sygnał na wejściu?

Mam wrażenie, że bezpośredni sygnał z góry mógłby tak daleko przekroczyć sygnał odbity z jakiejś większej odległości (typu 50cm), że praktycznie dla ADC byłby trudno wykrywalny.

Link do komentarza
Share on other sites

Oczywiście, im szerszy kąt widzenia, tym więcej zakłóceń i tym bardziej nasz sygnał znika w szumie. Pamiętaj jednak, że przyjęta metoda radzi sobie z sygnałem dziesiątki jeśli nie setki razy słabszym niż zakłócenia. Np. w tej chwili na biurku bawię się moim - niech będzie- "radarem". Za oknem jest już ciemno, ale całe pole pomiarowe oświetlone jest lampą 100W z wysokości ok. 50cm. Użyta dioda widzi do przodu, na boki a nawet z tyłu - choć znacznie słabiej. Jeżeli zrobiłbym prosty wzmacniacz jej sygnału i podłączył do oscyloskopu, to nie mam żadnych szans zobaczyć tego co przychodzi odbite od gumki do ścierania (to moja nowa ofiara). Wszystko ginie we wszechobecnym szumie a poziom zmian składowej stałej sygnału od zapalania i gaszenia lampy jest setki razy większy niż prostokąt którego szukam.

Na szczęście mam dwie rzeczy: stopień wejściowy tłumiący wszelkie zmiany składowej stałej i okolic (do 50-100Hz) oraz programowy detektor synchroniczny. Powiem Ci, że nie widzę żadnych zmian wartości wyjściowych z 6 kanałów radaru podczas gdy zapalam lub gaszę lampę.

Największym problemem było natomiast coś innego. Układ jest zmontowany na dwóch małych płytkach uniwersalnych ok. 23x50mm każda. Na parterze mieszkają diody nadawcze i ich drivery, a na pięterku odbiornik. Musiałem zrobić porządną przegrodę (no dobra, na razie z tektury) między zespołem nadawczym a diodą odbiorczą bo - mimo iż diody IR teoretycznie świecą tylko do przodu, w wąskim stożku ±10° od osi - emisja zachodziła również na boki. Okazało się, że bez diody odbiorczej na wyjściu detektora miałem poziomy szumu samego wzmacniacza rzędu 0-2 a po podłączeniu diody ona widziała nawet to, co diody emitowały pod kątem ponad 90° czyli jakby do tyłu. Poziom wykrywanego sygnału rósł wtedy do np. 70-80 bez żadnych przeszkód przed czujnikiem. Pełna skala to jakieś 700. Teraz, po wstawieniu przegrody, diody świecą tylko do przodu i jest OK. Być może wstawię też jakiś kapturek na diodę odbiorczą, ale muszę wykonać czarny, płaski lejek zamknięty z tyłu, żeby nie widziała bliskich odbić od podłoża i zakłóceń z góry. Każdy sposób jest dobry by zwiększyć odstęp sygnału od szumu, bo to poprawia zasięg.

W obecnym stanie mam bez żadnych odbić sygnał ok. 30-40 i to jest poziom "tła". Być może lejek coś tu jeszcze pomoże. Żółta karteczka 80x80mm z odległości 30cm daje odbicie na poziomie ok. 200 jeżeli jest dokładnie w osi jednego z kanałów. Przesuwanie jej na boki powoduje spadek energii w jednym kanale i stopniowy wzrost w sąsiednim. To wynika z szerokości wiązek diod nadawczych. Ponieważ rozchylone są co 20° i takie są właśnie ich stożki promieniowania, (definiowane jako spadek mocy do połowy względem tego co idzie w osi) to "zazębiają" się mniej więcej w połowie mocy. To z kolei znaczy, że energia odbicia od małego przedmiotu spadnie mniej więcej do połowy w jednym kanale zanim sąsiedni podniesie się także do połowy swojego maksimum dla danego przedmiotu i swojej osi 0°. Duże przedmioty mogą pokrywać więcej niż obszar jednego kanału na raz i wtedy mamy kilka silnych odbić w sąsiednich kanałach, to jasne.

Jeśli ktoś czuje, że "wymiękł" to proszę o pytania. Przecież to żaden wstyd je zadawać. Nie mam jakiegoś jasnego celu tych prac i nie powstanie tu pewnie schemat "końcowy", idealny dla wszystkich. W toku tej zabawy przedstawiam różne koncepcje i chciałbym, żebyście mogli z tego jakoś skorzystać. Jeśli ktoś widzi jakieś praktyczne zastosowanie jednego z układów tu narysowanych, niech pyta o szczegóły, spróbuję pomóc. To wszystko są bardziej pomysły rozwiązania pewnych problemów niż dopracowane produkcyjnie układy, opisywane właśnie po to, by pokazać, że się da. Nie ma na co czekać. Nie przewiduję ostatniego slajdu, nie będzie chwili na pytania z sali, nie widzę, to dziękuję za uwagę.

Link do komentarza
Share on other sites

Koszulka jest fajna, ale nie wiem czy zda egzamin w przypadku diody 120°. Jej obudowa jest czarna i zupełnie nie widzę gdzie znajduje się struktura fotoczuła. Być może dioda patrzy nie tylko przez czoło, ale także przez ścianki boczne walca. Poza tym jeśli chcę zbudować osłonę uniemożliwiającą wnikanie zakłóceń od tyłu, z góry i z dołu a prawidłowy odbiór z lewej i prawej to to na pewno nie może być tunel z termokurcza tylko właśnie rodzaj płaskiego lejka. Spróbuję jutro zwinąć coś takiego z czarnego kartonu.

Link do komentarza
Share on other sites

Marek, mam jeszcze jedno pytanko. Jak działa filtr vs standardowe oświetlenie innych czujników typu fala 36kHz?

Dobrze rozumiem, że w tym momencie nic nie wytniesz z tego sygnału i wszystko przejdzie do ostatniego wzmacniacza tym samym w zasadzie ubijając wyniki (o ile się zmieścisz w zakresie to jest szansa wyciąć to na ADC, ale jak się nie mieścisz to automatycznie wyniki są nic nie warte)?

Link do komentarza
Share on other sites

Tak, to jest kolejny problem z którym trzeba powalczyć. Teoretycznie prostownik synchroniczny jest odporny na wszystko co ma inną częstotliwość niż przebieg szukany. Tak jest rzeczywiście, pod warunkiem używania filtra dolnoprzepustowego który służy de facto do zawężania pasma odbieranego. W taki filtr wyposażony był układ z przełącznikiem analogowym i dwoma kondensatorami i on jest odporny na falę 36kHz. Układ z przełączanym wzmacniaczem ±1 także, bo miał filtr dolnoprzepustowy z definicji na wyjściu.

Nasz uproszczony detektor programowy musiałby łapać wiele sampli w czasie jednej górki i tyle samo w czasie dołka. Mi udawało się robić po 6 i to przy podkręconym przetworniku i jednym kanale. Zakłócenie od takiego obcego czujnika 36kHz można sobie wyobrazić jak nałożony na każdą naszą górkę i każdy nasz dołek przebieg prostokątny o dużo większej częstotliwości. Łapiąc wiele próbek i uśredniając je usuwamy wpływ tego obcego prostokąta. Dostajemy wtedy średni poziom górki, średni poziom dołka, odejmujemy i mamy pomiar.

Niestety przy kilku kHz naszej własnej fali IR to ani ADC nie jest na tyle szybki by złapać kilkadziesiąt próbek w każdym półokresie ani też procesor nie jest w stanie tego obrobić. Tak więc filtracja cyfrowa rozumiana jako uśrednianie w ramach jednej górki i jednego dołka odpada.

Obecnie w radarze mam uśrednianie kilku skanów i dopiero to jest wyświetlanym wynikiem. Ponieważ przebieg z pilota TV jest w przypadkowej fazie względem tego czego szukam, to takie uśrednianie działa choć zdarzają się pomiary w których nagle jeden z kanałów wyjeżdża w górę lub dół. To dzieje się wtedy, gdy w kilku kolejnych skanach w tym samym kanale złapię moim pojedynczym pomiarem obcy przebieg 36kHz w tej samej fazie. Wynik jest oczywiście do kosza, ale prawdopodobieństwo takiego zajścia spada wraz z liczbą uśrednianych skanów więc znów mamy gorszy czas odpowiedzi w zamian za lepsze filtrowanie. Tego nie da się oszukać.

Popracuję nad tym problemem. Być może wystarczy ograniczyć pasmo wzmacniacza wstępnego i/lub dalszych stopni. Wtedy odpowiedź będzie toru będzie jeszcze bardziej spóźniona względem zapalania/gaszenia diodek nadawczych i trzeba będzie startować przetwornik z opóźnieniem nie 10us a tuż pod koniec okresu tak, by próbkowanie przypadło na ostatnią chwilę danego stanu diodki IR. Filtrowanie analogowe nie kosztuje mocy procesora więc wydaje się dobrym pomysłem.

Link do komentarza
Share on other sites

Jest jeszcze programowa meto da zwiększenia ilości próbek, chyba nad próbkowanie sie to zwie. Uśrednia się wyniki z dwóch sąsiednich próbek, w ten sposób z 6 próbek otrzymasz 11.

Wiem jest to takie liczenie średniej z średniej, ale ciekawe jaki dałoby to efekt ?

Link do komentarza
Share on other sites

Hm, coś nie bardzo. Pomieszałeś dwie rzeczy.

Nadpróbkowanie (oversampling) to próbkowanie z większą częstotliwością niż wynikałoby to z warunku Nyquista. Mając więcej próbek możesz lepiej filtrować sygnał, łatwiej pozbywać się aliasingu i taniej zbudować część analogową toru sygnałowego.

Z kolei uzupełnianie tego co już masz dodatkowymi próbkami policzonymi przez matematykę to interpolacja, która w DSP składa się z uzupełniania ciągu "prawdziwych" próbek zerami a potem przepuszczaniu tego przez filtr interpolacyjny. Na pierwszą z tych metod nie mamy szybkości przetwornika a druga w tym przypadku nic nie da. Nowo policzone próbki nie wnoszą nowej informacji. Tę metodę stosuje się najczęściej, gdy musisz zmienić częstotliwość próbkowania na wyższą (a po uzupełnieniu o decymator - na dowolną) lub gdy np. potrzebujesz większej liczby próbek w celu lepszego zobrazowania (to w sumie to samo). To właśnie robią oscyloskopy cyfrowe, gdy muszą pokazać ciągłe linie przebiegów między rzeczywiście zdjętymi próbkami sygnałów.

Link do komentarza
Share on other sites

Ja pasywnie przyglądam się tematowi, ale z dużą ciekawością. Chciałbym ten radar władować do swojego robota, o którym już pisałem dużo dużo wcześniej, tylko właśnie - mam gotową obudowę z otworami pod diody i fototranzystory/fotodiody. Jest tam 7 takich slotów, każdy optycznie odseparowany od kolejnych - czy po spięciu kilku tych diodek równolegle, nie zachowywałyby się one jak jedna o szerokim kącie widzenia? Bo tak na chłopski rozum by wynikało, ale chciałbym się upewnić. Chętnie porobię jakieś testy, ale to dopiero po świętach - na uczelni jest pracownia z oscyloskopami i tego typu sprzętami, ale teraz już raczej nie zdążę nic zmontować i przetestować, bo pod koniec przyszłego tygodnia wracam do domu. Chętnie zobaczyłbym schemat tego stopnia wejściowego, bo sam ze swoją wiedzą raczej za wiele nie zdziałam w tej kwestii.

Link do komentarza
Share on other sites

Na pierwszy rzut oka fotodiody w takim podłączeniu jak moje są źródłami prądowymi więc można je spinać równolegle a prądy będą się sumować. Niestety gdy przyjrzymy się bliżej (a właściwie szybciej) to ujawniają się zjawiska dynamiczne. Fotodioda ma jakąś pojemność złącza, zależną od napięcia wstecznego i zwykle dokładnie specyfikowaną wykresem w danych katalogowych. Dlaczego to ważne? Bo od tej pojemności zależy szybkość odpowiedzi diody. Gdy mamy do czynienia z prądami dobrze poniżej 1uA to pojemności rzędu pF zaczynają przeszkadzać gdy trzeba coś zrobić w miarę szybko. Połączenie równoległe fotodiodek będzie też połączeniem równoległym ich pojemności. Gdybyśmy pracowali z polaryzacją wsteczną rzędu 10 czy 20V to pewnie nie miałoby to znaczenia (choć wszystko jest kwestią pasma jakie chcemy uzyskać), ale tutaj mamy na katodzie diody tylko 2V. Pewnie 2 diody równolegle nie powalą projektu - i tak właśnie miałem zrobić w "radarze" skanującym kąt > 200° - ale połączenie 6 czy 7 to już trochę dużawo. Poza tym dochodzą pojemności połączeń. To naprawdę musi być spójny układ. Stopień wejściowy najlepiej zrobić wyłącznie z małych elementów SMD skupionych wokół obudowy wzmacniacza. Doprowadzenia diody powinny być krótkie a całość można ekranować. To trochę tak, jakbyś robił radio albo mikrofonowy wzmacniacz audio.

Pochyliłem się nad tym ograniczeniem pasma koniecznym do usuwania wpływu obcych czujników IR 36kHz. Kondensator 33pF włączony tak jak na poniższym schemacie ograniczył je do akceptowalnego jeszcze poziomu, ale nie wystarczył do stłumienia zakłóceń. Z drugiej strony pasmo toru nie może być za małe, bo sygnał nie zdąża przyjąć wartości ustalonej w czasie 100us trwania zapalenia/zgaszenia danej diody IR. Tak więc jedyną działającą metodą jest uśrednianie wielu skanów. Teraz mam zrobione liczenie z 64 kolejnych i jest OK. Świecenie pilotem TV wprost w oczy czujnika z odległości ok. 40cm nie powoduje istotnych zmian wskazań kanałów a jednocześnie mam 5000/6/64=13 całkiem stabilnych skanów na sekundę. Do robota jeżdżącego i omijającego przeszkody powinno wystarczyć.

Potencjometry do regulacji wzmocnienia można zastąpić opornikami stałymi, choć podczas pierwszych prób bardzo się przydają.

Z kondensatorem obcinającym pasmo (C8) przebieg na wyjściu narasta później i musiałem zwiększyć opóźnienie startu ADC z 10 do 40us względem zmiany stanu diody świecącej. Teraz rejestr OCR1B=40.

Do kompletu schemat nadajnika 6-kanałowego:

Tranzystory powinny mieć dobre wzmocnienia bo sterowane są ze słabego układu serii 74HC i wystarczające prądy kolektora. Za to ponieważ pracują z wypełnieniem tylko 1/6, mogą być małe, np. w SOT23.

Link do komentarza
Share on other sites

Marek:

1. Masz rację, że łączenie fotodiod zwiększy pojemność... tylko obecny projekt pracuje na tak niskich częstotliwościach, że kilka fotodiod nie powinno nic zmienić.

2. Przesadzasz też chyba trochę z zakłóceniami. Przy tych prądach i częstotliwościach ktoś musiałby się naprawdę starać, żeby poważnie zakłócić układ. O ile nie będzie masakry na zasilaniu to wg. mnie układ będzie śmigał dobrze nawet przy słabym ustawieniu elementów.

3. 13 skanów na sekundę to mało. Bez najmniejszego problemu możesz zbudować robota o prędkości 100cm/s, więc pomiędzy skanami przejedzie 8cm... i obróci się o przynajmniej kilka ładnych stopni, o ile nie kilkanaście...

Mój schemat wygląda tak:

Na dole schemat, u góry wynik połączenia sygnału 500Hz o mocy 100 jednostek z sygnałem 36kHz o mocy 1 jednostki - widać, że sygnał 100 krotnie większy jest ładnie wytłumiony i praktycznie nie przeszkadza. Na dole z lewej wykres FFT i to jest metoda o której myślę.

Ma ktoś może uwagi co do schematu itd. - co można usprawnić?

Szczerze powiem, że mierzyłem w jak najmniejszą ilość komponentów. Prawdopodobnie zrobię jeszcze docelowo masę pozorną, ale to już szczegół.

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.