Serwisy partnerskie:
Close icon
Serwisy partnerskie

Generator funkcyjny na Raspberry Pi

Article Image
Elmax
Generatory funkcyjne należą do przyrządów pomiarowych powszechnie używanych w pracowniach elektronicznych. Wytwarzają przebiegi okresowe o różnych kształtach, częstotliwościach i amplitudach, przydatne do testowania szerokiej klasy układów. I chociaż prezentowany tu układ ustępuje parametrami przyrządom wysokiej klasy, tym niemniej doskonale się sprawdzi w każdej pracowni jako generator typowych przebiegów – sinusoidalnego, prostokątnego, trójkątnego i piłokształtnego. A ponieważ jest sterowany w pełni programowo, oferuje dodatkową funkcję „generatora przebiegów arbitralnych”, umożliwiając użytkownikowi definiowanie i wytwarzanie przebiegów o nietypowym kształcie.

Układ wykorzystuje popularny sterownik Raspberry Pi SBC oraz kilka innych łatwo dostępnych i niedrogich elementów. Zbuduje go bez problemu zarówno hobbysta jak i profesjonalista. Oprogramowanie zostało napisane w języku Python dla Raspberry Pi.

Układ i działanie

Jest on zbudowany z wykorzystaniem mikrokomputera Raspberry Pi, 8-bitowego szeregowo-równoległego rejestru przesuwającego 74AHC595 i kilku innych elementów.

Działanie układu jest proste. Centralną częścią generatora jest przetwornik cyfrowo-analogowy w formie drabinki R-2R z wyjściem napięciowym, składający się z rezystorów R2...R17. Przetwornik dostaje na wejściu słowo cyfrowe i zamienia je bezpośrednio na napięcie wyjściowe. Przetwornik cyfrowo-analogowy z wyjściem prądowym wymagałby zastosowania wzmacniacza operacyjnego w celu konwersji prądu na napięcie. Zamiast tego został użyty prosty układ napięciowy, nie wymagający dodatkowego zasilania. Szczegóły dotyczące pracy i działania przetwornika cyfrowo-analogowego R-2R można znaleźć np. w numerze „Electronics For You” z października 2000 r. w artykule „R-2R DAC Based Waveform Generator Using PIC16C84 Microcontroller”. Wyjście przetwornika cyfrowo-analogowego wyprowadzono na złącze J1, oznaczone jako „DAC_OUT”.

Słowa cyfrowe dla DAC-a pochodzą z układu scalonego 74AHC595: 8-bitowego szeregowo-równoległego rejestru przesuwnego. Przypis redaktora: układ ten, szeroko stosowany w technice mikroprocesorowej, składa się z rejestru przesuwnego z wejściem szeregowym oraz wyjściowego rejestru równoległego. Dane z Raspberry Pi są wysyłane przez wbudowany interfejs szeregowy SPI. Interfejs używa linii zegara (SCLK) na pinie GPIO 11 oraz linii danych (SDATA) na pinie GPIO 10, który jest „wyjściem układu nadrzędnego i wejściem podrzędnego” (MOSI). Oprócz tych dwóch głównych sygnałów transmisji szeregowej, do obsługi 74AHC595 potrzebne są jeszcze dwa sygnały. Jeden z nich to „strobe”, który szeregowe dane wprowadzone do rejestru przesuwającego zatrzaskuje w rejestrze wyjściowym. Dane te (linie D7...D0) stanowią 8-bitowe słowo wejściowe przetwornika DAC. Sygnał strobujący jest wytwarzany programowo na pinie GPIO 22. Drugi sygnał to „reset”, który zeruje rejestr przesuwający w 74AHC595. „Reset” jest wytwarzany na pinie GPIO 4 i aktywowany tylko na początku.

Aby przeczytać ten artykuł kup e-wydanie
Kup teraz
Wideo
Firma:
Źródło
Elektronika dla Wszystkich luty 2026
Udostępnij
Zobacz wszystkie quizy
Quiz weekendowy
Poziomy logiczne
1/10 Jakie rodziny układów logicznych są najczęściej stosowane współcześnie?
UK Logo
Elektronika dla Wszystkich
Zapisując się na nasz newsletter możesz otrzymać GRATIS
najnowsze e-wydanie magazynu "Elektronika dla Wszystkich"