Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 5 kwi 2025, o 01:33


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
    Autor Wiadomość
    PostNapisane: 12 lut 2019, o 21:30 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 sty 2015
    Posty: 190
    Pomógł: 11

    Witam Was kochani, mam na imię Grzegorz i pragnę zabrać Was w świat cyfrowego przetwarzania sygnałów (ang. digital signal processing). Dziedzina ta jest szaleni istotna we współczesnej elektronice cyfrowej. W publikacji tej przedstawię w skrócie zaprojektowaną, wykonaną i oprogramowaną platformę do pracy z sygnałami analogowymi przetwarzanymi w sposób cyfrowy. To wszystko dla potomnych! Projekt wykonany w całości przez autora tego post, wykorzystuje procesor sygnałowy pochodzący z telefonu komórkowego Nokia 5510. Z takiego cuda dokładnie:

    ObrazekObrazek

    Pracę nad projektem rozpoczęto od narysowanie schematu blokowego, który przedstawiono poniżej. Można wyróżnić cztery bloki. Blok PSU (ang. Power Supply Unit) odpowiada za zasilanie układów. Dostarcza napięć +3V3A, +3V3D oraz 1V6. Napięcia 3V3 analogowe (A) oraz cyfrowe (D) zasila peryferia procesora DSP oraz pozostałe układy. Napięcie 1V6 wykorzystano do zasilenia rdzenia (ang. core) procesora. Blok AUDIO I/O to wejścia oraz wyjścia sygnału analogowego. Płyta posiada wejścia LINE-IN i mikrofon oraz wyjścia LINE-OUT i słuchawki. Blok CODEC to układ kodeka, który został pozyskany ze wspomnianego telefonu komórkowego. Układ ten to TLV320AIC23 posiadający przetwornik ADC oraz DAC o rozdzielczości do 32 bitów (długość słowa). Blok DSP przedstawia procesor sygnałowy TMS320VC5416.

    Obrazek

    Ogólnie, tor cyfrowego przetwarzania sygnału analogowego przedstawia poniższy rysunek. Procesor sygnałowy operuje na sygnale cyfrowym a ściśle mówiąc na próbkach pobranych w dyskretnych momentach czasu z sygnału analogowego. Jak zapewne domyślacie się, w świecie cyfrowym nie jest możliwa operowanie na sygnałach ciągłych, gdzie dana wartość reprezentowana jest przez nieskończoną ilość "próbek". Filtry przedstawione na poniższym rysunku, ogólnie mówiąc wpływają na jakość sygnału i nie zostaną tutaj omówione.
    Aby było możliwe wierne odtworzenie spróbowanego sygnału z postaci cyfrowej do analogowej (DAC) należy sygnał analogowy próbkować z częstotliwością fs=1/Ts minimum dwukrotnie większą od najwyższej częstotliwości składowej (harmonicznej) w sygnale, który poddano operacji próbkowania (ADC).

    Obrazek

    Schematy ideowe
    Schematy układów zostały zaprojektowane w oparciu o dostępną dokumentację oraz przykładowe rozwiązania udostępnione przez producenta procesora oraz układu kodeka. Jest to pierwsza wersja schematów nie pozbawiona błędów.

    ObrazekObrazekObrazek

    Płyta PCB
    Płyta o wymiarach (100x100+/-0.01)mm zaprojektowano w oparciu o dwie warstwy dolną oraz górną, które są rozdzielone dielektrykiem.

    ObrazekObrazek

    Zmontowany układ
    Montażu dokonano w sposób manualny. Wykorzystano technologię hot-air oraz zwykłą lutownicę z odpowiednim grotem do montażu elementów THT. Montażu dokonano sekcjami. W pierwszej kolejnością zmontowano obwody odpowiedzialne za zasilania. Po wykonaniu pomiarów napięć/prądów na wyjściu przystąpiono do montażu pozostałych sekcji.

    Obrazek

    Oprogramowanie
    Wykorzystany procesor sygnałowy TMS320VC5416 należy odpowiednio skonfigurować aby było możliwe wgranie programu. Szczegóły znajdują się w dokumentacji udostępnionej przez producenta. W projekcie nie wykorzystano zewnętrznej pamięci na program. Argumenty jakie za tym stoją to wysoka cena pamięci (zwłaszcza produkcja seryjna), podczas pisania i testowania oprogramowania platforma podłączona jest do zasilania a program wgrywamy niekiedy setki razy. Dlatego postanowiono wykorzystać ulotną pamięć SARAM (single-access random access memory), która jest dostępna w procesorze. Należy liczyć się z tym, że po odłączeniu zasilania zapisane dane we wskazanych obszarach panięciu zostaną utracone.
    Oprogramowanie napisano w środowisku Code Composer Studio 5.5.0. Jest to ostatnia wersja CCS, która wspiera rodziną C54xx. Komunikację między komputerem a płytą ewaluacyjną zestawia JTAG XDS100v2.

    "Hello World!" w świecie DSP to przepisanie sygnału wejściowego na wyjście procesora sygnałowego, czyli prosta operacja przypisania wartości jednej zmiennej do drugiej kanał_lewy_out = kanał_lewy_in. Do napisania oprogramowania wykorzystano biblioteki CSL (Chip Support Library dla C54xx) oraz przykładowe projekty udostępnione przez producenta.

    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Dwie zdefiniowane w programie struktury odpowiedzialne są za konfigurację potów McBSP. Układ kodeka wysterowany jest z poziomu procesora DSP po magistrali SPI. Przesyłanie próbek sygnału cyfrowego pomiędzy procesorem a układem kodeka zrealizowano w oparciu o szybką magistralę McBSP (DSP mode). Schemat blokowy aplikacji przedstawiono na poniższym rysunku.

    Obrazek

    Rezultat
    W efekcie otrzymano platformę, która daje możliwość cyfrowej obróbki sygnałów analogowych, operując na ich cyfrowych reprezentacjach. Na poniższym rysunku przedstawiono działanie programu.

    Obrazek

    Jednak to tylko malutki fragment możliwości jakie oferuje platforma. Uruchomiłem już na tej platformie filtr cyfrowy FIR górno/dolno przepustowy. Działa pięknie! Kolejny projekt z wykorzystaniem zaprezentowanej platformy to implementacja szybkiej transformaty Fouriera FFT (fast Fourier transform).



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lut 2019, o 07:01 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2595
    Pomógł: 128

    Ciekawe wykorzystanie. Gratuluję! Czy pierwotnie ten projekt robiłeś w jakimś konkretnym celu czy wyłącznie jako platforma szkoleniowa?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lut 2019, o 12:25 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 sty 2015
    Posty: 190
    Pomógł: 11

    micky napisał(a):
    Ciekawe wykorzystanie. Gratuluję! Czy pierwotnie ten projekt robiłeś w jakimś konkretnym celu czy wyłącznie jako platforma szkoleniowa?

    Dziękuję. Celem było przygotowanie zestawu ewaluacyjnego, który umożliwi implementację algorytmów DSP.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO