Analog Discovery 2 w praktyce (2). Generator funkcyjny - przykłady

Analog Discovery 2 w praktyce (2). Generator funkcyjny - przykłady
Pobierz PDF Download icon

W artykule opisano zaawansowaną konfigurację generatora funkcyjnego wbudowanego w płytkę Analog Discovery 2. Umożliwia on nie tylko generowanie przebiegów o podstawowych kształtach, ale również udostępnia zaawansowane metody ich tworzenia.

Jak wspomniano we wstępie, generator funkcyjny wbudowany w AD2 umożliwia nie tylko generowanie przebiegów o podstawowych kształtach, ale również udostępnia użytkownikowi zaawansowane metody umożliwiające uzyskanie niemal dowolnych sygnałów testowych:

  • Simple - tryb generowania przebiegów o podstawowych kształtach: sinusoidalnym, prostokątnym, trójkątnym, rampa, szum itd. Możliwe jest modyfikowanie najważniejszych parametrów, takich jak: amplituda, faza, częstotliwość, symetria.
  • Basic - rozszerzenie trybu simple. Modyfikowanie parametrów odbywa się za pomocą suwaków, ułatwiając uzyskanie przebiegu o pożądanym kształcie.
  • Custom - generowanie przebiegu o dowolnym kształcie, tworzonego na podstawie skryptu.
  • Play - generowanie przebiegu na podstawie pliku: tekstowego (*.txt), arkusza kalkulacyjnego (*.csv) lub dźwięku (*.wav).
  • Sweep - przemiatanie częstotliwości (na przykład, do pomiaru charakterystyk).
  • Modulation - przebieg zmodulowany amplitudowo (AM) lub częstotliwościowo (FM). Sygnał nośnej oraz informacji może być dowolnym przebiegiem generowanym w trybie simple.

Na rysunku 1 pokazano interfejs globalnych ustawień generatora funkcyjnego. Etykieta zakładki (1) zawiera przycisk globalnego włączenia generatora zsynchronizowany z przyciskiem Run All (2). Liczbę ustawianych kanałów można wybrać w polu Channels (w AD2 są dostępne dwa niezależne kanały generatora).

Rysunek 1. Globalne ustawienia generatora

Pole Na rysunku 2 pokazano globalne ustawienia kanału. Pole (1) umożliwia włączenie pojedynczego kanału. Znacznik Enable (2) na stałe włącza lub wyłącza kanał. Pole (3) umożliwia wybranie trybu. Ikona zębatki (4) służy ustawieniu poziomu napięcia, kiedy kanał jest wyłączony: napięcie proporcjonalne do wartości pierwszej próbki lub wartości składowej stałej.

Rysunek 2. Globalne ustawienia kanału

Na rysunku 3 zilustrowano interfejs trybu simple generatora. Znaczenie poszczególnych pól:

  • Type - kształt przebiegu (np. sinusoidalny, prostokątny).
  • Frequency - częstotliwość przebiegu.
  • Amplitude - amplituda przebiegu.
  • Offset - składowa stała sygnału.
  • Symmetry - symetria przebiegu.
  • Phase - przesunięcie fazy przebiegu.

Symbol koła zębatego w prawym górnym rogu umożliwia dodanie kształtu przebiegu przez zastosowanie trybu custom, import z pliku lub edycję istniejącego przebiegu.

Rysunek 3. Tryb „simple” generatora

Tryb "basic" pokazano na rysunku 4. Jest to tryb "simple" wzbogacony o możliwość dostosowania parametrów przebiegu przez suwak o charakterystyce logarytmicznej. Pole (1) umożliwia (od lewej) dodanie nowego przebiegu przez tryb "custom", import przebiegu z pliku, edycję lub usunięcie istniejącego przebiegu. W polu (2) są wyświetlane istniejące kształty przebiegów.

Rysunek 4. Tryb „basic” generatora

Pole (3) jest interfejsem graficznym służącym do modyfikowania jednego z parametrów (częstotliwość, amplituda, składowa stała, symetria, faza). Znacznik umieszczony w górnym lewym rogu umożliwia ustawienie na stałe domyślnej wartości lub "odblokowanie" możliwości dostosowania parametru. Wartość (4) określa górny zakres parametru, a (7) dolny zakres. Poruszenie suwakiem (6) powoduje logarytmiczną zmianę wartości parametru (5). 

Rysunek 5. Tryb „custom” generatora

Na rysunku 5 zilustrowano interfejs trybu "custom" generatora. Przycisk "New" umożliwia dodanie nowego przebiegu - otwiera okno pokazane na rysunku 6.

Rysunek 6. Okno edycji nowego kształtu przebiegu

Przycisk "Import" pozwala na wczytanie przebiegu z pliku (dźwięk, tekst, arkusz kalkulacyjny), "Edit" umożliwia edycję istniejącego przebiegu a znak "-" usuwa istniejący przebieg.

W polu po lewej stronie są umieszczone istniejące przebiegi użytkownika, a po prawej stronie wypisane są parametry syntezy: częstotliwość sygnału, częstotliwość próbkowania, amplituda, składowa stała, przesunięcie fazy.

Tworzenie przebiegu o pożądanym kształcie może odbywać się na różne sposoby:

  • Func - użycie zdefiniowanych kształtów przebiegów.
  • Math - sygnał z definiowany przez równania matematyczne (skrypt użytkownika).
  • Values - podanie wartości poszczególnych próbek sygnału.
  • File - wczytanie pliku tekstowego, dźwiękowego lub arkusza kalkulacyjnego.
  • Alter - synteza kształtu przebiegu przez dodanie, odjęcie, mnożenie lub dzielenie dwóch przebiegów.

Po lewej stronie jest umieszczony interfejs tekstowy syntezy kształtu przebiegu. Na środku znajduje się wykres przedstawiający kształt przebiegu. Przycisk "Normalize" umożliwia dostosowanie amplitudy do największej możliwej wartości. Po prawej stronie jest wyświetlana tabela z wartościami poszczególnych próbek.

Rysunek 7. Tryb „play” generatora

Tryb "play" umożliwia odtwarzanie pliku dźwiękowego. Przycisk "Import" (rysunek 7) służy do wczytania pliku, natomiast "-" usuwa plik. Lista wczytanych plików jest pokazywana poniżej przycisku "Import". Parametry dźwięku znajdują się w dolnej części interfejsu:

  • Frequency - częstotliwość próbkowania.
  • Amplitude - amplituda sygnału.
  • Offset - składowa stała.
  • Samples - liczba próbek.
  • Span - czas trwania pliku dźwiękowego.

Tryb "sweep" (rysunek 8) umożliwia zmianę częstotliwości oraz amplitudy przebiegu w czasie. Przemiatanie częstotliwości znajduje zastosowanie przy pomiarach charakterystyk i zostało opisane w poprzedniej części kursu. Wybór przebiegu odbywa się podobnie jak w trybie "simple", jednak dostępne są dodatkowe parametry:

  • Sweep to X [Hz] in Y [ms] - przemiatanie częstotliwości z bazowej do częstotliwości X w czasie Y.
  • Damp to X [V] in Y [ms] - tłumienie amplitudy z bazowej do X [V] w czasie Y [ms].
Rysunek 8. Tryb „sweep” generatora

Na rysunku 9 pokazano ostatni tryb generatora - modulacja AM i FM. Nośna oraz przebieg modulujący amplitudę lub częstotliwość są wybierane jak w trybie "simple". Po prawej stronie znajduje się wykres modulacji - dla danego przykładu jest to modulacja AM.

Rysunek 9. Tryb modulacji – w tym wypadku jest używana modulacja AM. Na wykresie pokazano nośną (przebieg zielony, Carrier), sygnał modulujący (niebieski, AM) oraz wynikowy (żółty, Output)

Przykład 1: tworzenie przebiegu użytkownika

W tym przykładzie zostanie przedstawiony sposób tworzenia przebiegu użytkownika (custom). Będzie on miał charakter generatora addytywnego - synteza kształtu za pomocą sumy 10 przebiegów sinusoidalnych o częstotliwościach będących wielokrotnościami częstotliwości podstawowej (harmoniczne).

Rysunek 10. Skrypt generatora addytywnego

Aby uzyskać dostęp do okna tworzenia przbiegu, należy uruchomić generator funkcyjny, a następnie przejść do trybu "custom" (rysunek 2, punkt 3). Po kliknięciu na przycisk "New" (rysunek 5) zostanie wywołane okno edycji kształtu przebiegu (rysunek 6). Należy ustawić matematyczny tryb syntezy sygnału (zakładka "Math"). Skrypt generatora addytywnego zamieszczono na rysunku 10.

Dzięki zmianom wartości w tablicach "amp" (amplituda) i "ph" (faza) można uzyskać różne przebiegi, na przykład prostokątny, jak pokazano na rysunku 11. Po uzyskaniu pożądanego kształtu należy kliknąć przycisk "OK”"- zaprogramowany wzorzec kształtu powinien pojawić się na liście pokazywanej w trybie "custom" (rysunek 12).

Rysunek 11. Generowanie addytywnego sygnału prostokątnego
Rysunek 12. Poprawnie zaimportowany przebieg użytkownika

Przykład 2: generowanie przebiegu metodą Alter

W tym przykładzie zostanie przedstawiony sposób generowania przebiegu za pomocą metody "Alter" polegającej na dodaniu, odjęciu, mnożeniu lub dzieleniu dwóch przebiegów. Aby uzyskać dostęp do okna tworzenia sygnału, należy uruchomić generator funkcyjny, następnie przejść do trybu "custom" (rysunek 2, punkt 3). Po kliknięciu na przycisk "New" (rysunek 5) zostanie wywołane okno edycji kształtu przebiegu (rysunek 6). Należy wybrać tryb "Alter" (zakładka "Alter").

Rysunek 13. Generowanie przebiegu, który będzie dodany do przebiegu wyjściowego

Na początku przebieg zawiera same zera, więc pierwszą operacją będzie dodanie pierwszego przebiegu. Należy kliknąć przycisk "Alter with" i wybrać żądany przebieg, jak na rysunku 13. Przebieg wyjściowy po operacji dodawania pokazano na rysunku 14. Ma on kształt sinusoidalny, więc teraz można pomnożyć go, na przykład, przez przebieg trójkątny. W tym celu należy zaznaczyć opcję "X Multiply", kliknąć przycisk "Alter with" i wybrać przebieg trójkątny. Okno edycji przebiegu po wykonaniu operacji mnożenia pokazano na rysunku 15.

Rysunek 14. Widok okna edycji przebiegu po dodaniu pierwszego przebiegu (sinusoidalnego)
Rysunek 15. Sygnał wynikowy - iloczyn przebiegu sinusoidalnego o dużej częstotliwości z przebiegiem trójkątnym

Przykład 3: obserwowanie przebiegów na oscyloskopie

W tym przykładzie zostanie opisany sposób dołączenia generatora do oscyloskopu w celu obserwacji przebiegów zdefiniowanych w poprzednich przykładach.

Okno generatora z uprzednio utworzonymi sygnałami zamieszczono na rysunku 16. Użyte będą dwa kanały – pierwszy kanał generuje przebieg z przykładu 1, natomiast drugi z przykładu 2.

Rysunek 16. Ustawienie generatora funkcyjnego

Generator funkcyjny jest już skonfigurowany i generuje uprzednio zdefiniowane przebiegi dostępne w dwóch niezależnych kanałach. Kolejnym krokiem jest dołączone wyjść generatora do różnicowych wejść oscyloskopu (rysunek 17):

  • "1+" do "W1" (dodatnie wejście różnicowe oscyloskopu do pierwszego kanału generatora).
  • "2+" do "W2" (dodatnie wejście różnicowe oscyloskopu do drugiego kanału).
  • "1-" oraz "2-" do masy (przewód czarny).
Rysunek 17. Wyprowadzenia Analog Discovery 2

Sygnały wyjściowe z generatora są doprowadzone do wejścia oscyloskopu, więc pozostaje jedynie skonfigurowanie oscyloskopu. Aby uruchomić oscyloskop, należy w menu głównym AD2 kliknąć przycisk "Scope".

Podstawowa konfiguracja oscyloskopu odbywa się w 4 krokach:

  1. Wybranie trybu akwizycji danych (Repeated, Screen, Shift, Record).
  2. Konfigurowanie wyzwalania podstawy czasu (trigger) - wybór źródła wyzwalania oraz jego poziomu.
  3. Konfigurowanie generatora podstawy czasu (przesunięcie oraz skala).
  4. Konfigurowanie poszczególnych kanałów (przesunięcie oraz skala).

Uruchomienie pomiarów odbywa się za pomocą przycisku 'Single" (pojedynczy pomiar) lub "Run" (pomiar w trybie ciągłym). Na rysunku 18 pokazano skonfigurowany oscyloskop, na którym są obserwowane sygnały z generatora. Widać, że kształt zmierzonych sygnałów odpowiada przebiegom zaprojektowanym w trybie "custom" generatora funkcyjnego.

Rysunek 18. Pomiar sygnałów z generatora

Pomiar jest wyzwalany w momencie, gdy narasta napięcie w pierwszym kanale oscyloskopu i jego wartość osiągnie 5 mV (ustawienie wyzwalania w górnym panelu). Konfigurowanie skali i przesunięć odbywa się w panelu po prawej stronie. Aby dwa kanały mogły być wyświetlane niezależnie, należy je przesunąć względem siebie (przesunięcie pierwszego kanału o +1 V, a drugiego kanału o -1 V).

Autor artykułu zdobył jedną z czterech głównych nagród w międzynarodowym konkursie inżynierskim Digilent Design Contest 2018, który odbył się w Rumunii. Przedmiotem konkursu było zaprojektowanie i skonstruowanie urządzenia na bazie sprzętu dostarczonego przez organizatora, w tym przypadku przyrządu Analog Discovery 2. Projekt Jakuba Wiczyńskiego o nazwie Additive Synthesizer otrzymał nagrodę specjalną Digilent Instrumentation Prize, przyznawaną za najlepsze wykorzystanie zasobów sprzętowych.

Jakub Wiczyński

Artykuł ukazał się w
Elektronika Praktyczna
marzec 2019
DO POBRANIA
Pobierz PDF Download icon
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik listopad 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio listopad - grudzień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje październik 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna listopad 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich listopad 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów