Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[Konkurs] ELEKTRODA.PL na oscyloskopie.

Pudz_An 05 Sie 2008 17:49 6283 7
  • [Konkurs] ELEKTRODA.PL na oscyloskopie.
    Droga rachunkowa. Głównie w arkuszu kalkulacyjnym.
    W załączeniu plik .xls (135kB) z danymi i wykresami.

    Aby wyświetlić na ekranie wcześniej ustalony obraz wystarczy trochę logicznego myślenia i podstawowa znajomość używania arkusza kalkulacyjnego.
    Pomocny jest też program do edycji dźwięku, który zapewnia zapis/odczyt plików dźwiękowych w formacie .txt.

    Położenie plamki na ekranie można opisać ciągiem wektorów w czasie.
    Każdy wektor opisany jest dwoma liczbami.
    Wartość jednej liczby wektora to położenie plamki w płaszczyźnie X, a drugiej w płaszczyźnie Y.
    Wartości: X=0 i Y=0 to środek ekranu.

    Przykład: - w oparciu o założenie, że tworzę plik .wav o jakości: 44,1kHz/16 bit stereo.

    Liczymy:
    2^16=65536. Jest to wartość, która opisuje możliwości rejestrowania sygnału. pp (pik-pik)
    Jest to liczba opisująca, że mamy tyle możliwości (stanów), aby plamka oscyloskopu przemieściła się od lewego do prawego krańca ekranu,
    i odpowiednio tyle samo w drugim kanale (góra/dół)

    Karta dźwiękowa na wyjściu daje sygnał zmienny mcz.
    Z logiki wynika, że zerowy punkt chwilowy sygnału to połowa wartości liczby 65536. Czyli: 65536/2=32768.
    Wartość 32768 to zero sygnału na wyjściu karty dźwiękowej. Czyli środek ekranu oscyloskopu.
    Oznacza to, że wartości opisujące wektory (dla pliku .wav o rozdzielczości 16 bit) muszą się zawierać w granicach od -32768 poprzez 0 (zero) do +32768.
    Wartości: X=0 i Y=0 to chwilowe wartości zerowe sygnału mcz.na wyjściu karty dźwiękowej czyli środek ekranu oscyloskopu.

    Trzeba trochę zabiegów, aby ciąg wektorów (danych) przedstawiał jakiś logiczny obraz, (np. napis: ELEKTRODA.PL)
    Dla ułatwienia napis zrobiłem w programie o możliwościach CAD, bo środek pola pracy ma współrzędne: zero/zero,
    a wskaźnik myszy pokazuje wartości współrzędnych +/- czyli „co - gdzie - jest".
    Użyłem gotowej trzcionki z programu.
    Przy dogodnej wielkości czcionki, przy właściwym ustawieniu pola pracy potrzebne dane "same cisną się do oczu".
    Wystarczy czytać wskazania myszy.

    Odczytałem główne wartości obrysu liter.
    Naniosłem je do arkusza kalkulacyjnego do dwóch kolumn.
    W jednej kolumnie wartości X, a w drugiej wartości Y.
    Wartości nie było dużo. Dla napisu ELEKTRODA .PL tylko 94 (punkty) - wektory.

    Z tych wyjściowych wartości stworzyłem w arkuszu wykres kontrolny. Wykres X/Y.
    Na tym wykresie można obejrzeć "efekt zgrubny".
    Wykres pokazuje, że jestem "na dobrej drodze".
    Wartości nie mogą przekraczać zakresu +/- 32768.

    Dlaczego efekt zgrubny?
    Dlatego że ten wykres nie uwzględnia upływu czasu.
    Aby obraz zobaczyć na ekranie potrzebny jest CZAS.
    Dla wykresu jest "wszystko jedno”, jaki jest czas zmian wartości.
    Dla oscyloskopu - NIE jest wszystko jedno.

    Do finalnego efektu należy "spowolnić" plamkę tam gdzie rysowana jest litera i szybko przemieścić ją w miejscach niepożądanych.
    Na połączeniu liter, gdzie linia nie jest potrzebna, oraz w czasie powrotu cyklu kreślenia - należy "jechać szybko".
    Minimalizuje to efekty niepożądane.

    Aby "spowolnić" szybkość plamki należy wytworzyć szereg dodatkowych punktów pośrednich pomiędzy głównymi punktami rysującymi litery.

    Można je generować automatycznie za pomocą arkusza kalkulacyjnego przez dobór odpowiedniego kroku wartości zmian w miejscach gdzie rysowana jest litera.
    Punktów po tym zabiegu będzie dużo więcej. W przykładowym pliku .xls jest ich 975.
    975 punktów (wektorów), to 975 próbek sygnału (stereo).
    Plik audio (o próbkowaniu 44.1kHz) z tej ilości próbek jest krótki.

    Liczymy jego czas trwania:
    975 * 1 / 44100 = 0,022108844 sekundy. - Krótki - nie zauważymy na oscyloskopie. Chyba, że zapętlimy.
    Długość to nie problem. Można dane wydłużyć przez kopiuj/wklej, uzyskując długość pliku kilka sekund.
    Wystarcza to do wygenerowania na ekranie stabilnego napisu nawet bez zapętlenia.

    Z powiększonej ilości danych w arkuszu kalkulacyjnym tworzymy wykres X/Y. Wykresem sprawdzamy czy nie ma błędów.

    Z arkusza skopiowałem dane do notatnika.
    Dodałem nagłówek, aby plik .txt był czytany programem do edycji dźwięku (w formacie 44.1kHz/16 bit).
    Programem do edycji dźwięku otwieram plik .txt.
    Zapisuję jako .wav i .....GOTOWE!
    Można podłączyć oscyloskop i sprawdzać.
    Litery można pogrubić przez zmiksowanie sygnału podstawowego .wav z sygnałem kilkanaście kHz o małej amplitudzie.
    Nie wszystkie niuanse w tym opisie są uwzględnione. Opis i tak jest za długi.

    Pozdrawiam.
    Pudz_An


    Fajne!
  • #3 05 Sie 2008 18:15
    -RoMan-
    Poziom 42  

    Masz tam wypowiedź moderatora - wystarczyło się poprawić i umieścić we właściwym temacie...

  • #4 05 Sie 2008 18:25
    Pudz_An
    Poziom 13  

    Masz rację.
    Zauważyłem po rozpoczęciu głosowania

  • #5 05 Sie 2008 18:31
    And!
    Admin grupy Projektowanie

    Muszę przyznać że wykorzystania exela do generowania obrazu nie spodziewałem się,
    każdy z uczestników użył innej metody do uzyskania efektu finalnego.

    Osoby które jeszcze nie głosowały w konkursie zapraszam do oceny wyników prac i oddania głosu w ankiecie:
    elektroda.pl na oscyloskopie - Głosowanie

  • #6 08 Sie 2008 20:28
    pioles1
    Poziom 1  

    Promowanie komercyjnej firmy (MS) uważam za chybine - to samo można zrobić w open source OpenOffice Calc - może byłoby bardziej elegancko?

  • #7 08 Sie 2008 20:38
    And!
    Admin grupy Projektowanie
  • #8 08 Sie 2008 20:42
    Pudz_An
    Poziom 13  

    Pewnie że można zrobić w open source OpenOffice Calc.
    Z mojej klawiatury wyszło coś o firmie komercyjnej w tym temacie?
    Gdzie?