
Motywacją do wykonania sterownika przedstawionego w tym temacie była chęć doprowadzenia do ładu kilku starszych wzmacniaczy, które wykonałem a niektóre z nich także pokazywałem na elektrodzie. Są to m. in.:
- https://www.elektroda.pl/rtvforum/topic2924542.html
- https://www.elektroda.pl/rtvforum/topic3333747.html
Wzmacniaczom postanowiłem dodać selektory wejść oraz regulację głośności. Niby proste ale nie chciałem robić jeszcze większej "druciarni" od tej która w tych wzmacniaczach już jest.
Mam też trochę złych doświadczeń z przeciąganiem przewodów sygnałowych od tyłu do przodu wzmacniacza, w którym są duże transformatory. Dlatego sam potencjometr miał znaleźć się przy tyle obudowy tak aby maksymalnie skrócić drogę sygnału do końcówek mocy a kolejną motywacją było to, że takich potencjometrów mam jeszcze kilka sztuk.
Założenia ogólne
W założeniach nie stawiałem na jakość parametrów ani na audiofilskie brzmienie bo sterownik i tak miał trafić jedynie do wzmacniaczy „estradowo / imprezowych”. Ważne dla mnie natomiast były następujące kwestie:
- możliwość podłączenia do wzmacniacza bez konieczności budowania dodatkowych zasilaczy;
- czytelny z daleka widoczny wyświetlacz;
- zastosowanie potencjometru cyfrowego do regulacji głośności;
- sterowanie pilotem;
- możliwość wyboru sygnału z przynajmniej 2 źródeł;
- regulacja balansu;
- zapamiętywanie poziomu głośności dla poszczególnych wejść ( ostatecznie to głupi pomysł );
- umieszczenie selektora wyjść i potencjometru głośności najbliżej tyłu wzmacniacza i najdalej od cyfrowych części panelu;
- dla wzmacniaczy „mniejszej” mocy do 300W gotowa płytka zasilania z SoftStart;
- opóźnione załączanie głośników;
- odłączanie głośników w przypadku zaniku zasilania;
- funkcja MUTE;
- efekt „fade in” i „fade out” podczas przełączania w i z trybu MUTE oraz podczas włączania;
- choć spróbować dobrze poprowadzić wszystkie masy;
Krótka prezentacja
https://www.youtube.com/watch?v=rDRCilc3O7o
PROTOTYP BYŁ – choć działał to był daleki od oczekiwań
Najpierw powstał prostszy prototyp gdzie cała sekcja zasilania, selektora wejść, głośności była na jednej płytce a panel na drugiej. Każda z płytek miała swój uC i komunikowały się po porcie szeregowym. Niestety były problemy najprawdopodobniej z masą skutkujące przydźwiękiem, którego nie udało się ani dokładnie zlokalizować a tym bardziej wyeliminować. Godziny przepinania kabelków przecinania ścieżek łączenia masy na 100 sposobów i ekranowania kabli nic nie dały. Przypuszczam, że jednak błędem było robienie osobnego zasilacza 5V dla sekcji cyfrowej i potencjometru głośności a także złe rozdzielenie mas. To wszystko spowodowało, że prototyp musiał stać się „dawcą”. Inne wady prototypu to:
- za mała ilość diod ( tylko 9 ),
- konieczność doprowadzenia zasilania 5V,
- mniejsza uniwersalność.







Tym sposobem powyższe już nie istnieje …
Podejście drugie
W nowej koncepcji postanowiłem projekt podzielić na trzy części:
- zasilacz z soft-start ( opcjonalny bo w sumie każdy wzmacniacz ma swój );
- płytkę wykonawczą „SLAVE” zawierającą selektor wejść / odłączanie głośników, potencjometr;
- Panel „MASTER” zawierającą selektor wejść / odłączanie głośników, potencjometr;




Moduł panel - MASTER
W szufladzie ciągle mam jeszcze około 20 ATTiny4313 więc to właśnie ten uC musiał posłużyć za „jądro systemu”. W związku z tym do rozwiązania pozostało kilka kwestii kwestii:
1. Jak zrobić 5V z zasilania wzmacniacza ( największy mam +/-75V DC)?
2. Jak podłączyć do uC 19 diod i się przy tym nie narobić?
Zadania, które miał realizować Panel wypisane są już w założeniach. Jedyne co istotne to, że z modułem wykonawczym komunikuje za pośrednictwem sygnałów:
- stan przekaźnika selektora wejść;
- stan przekaźnika odłączenia głośników;
- komunikacja z potencjometrem cyfrowym (SCL/SDA).
Dodatkowo dostarcza do modułu wykonawczego napięcie oraz masę 5V dla przekaźników tak by masy i zasilania nie łączyły się z częścią analogową ( przynajmniej 5V bo masa i tak łączy się w zasilaczu ale już nie przewodem „komunikacyjnym” ).
Na płycie tego modułu znajduje się także złącze do programowania uC. Może być przydatne gdyby ktoś chciał zmienić w programie domyślne kody sterowania z pilota (RC5). Kody te można zmodyfikować w pliku classAmplifierDriver.cpp
Myśląc przyszłościowo piny sterujące wystawione do komunikacji ze SLAVE dobrałem tak aby były pośród nich RX i TX gdybym jednak w przyszłości chciał z SLAVE komunikować się po USART. To jednak daje spore możliwości i szkoda byłoby z nich rezygnować. W tym konkretnym projekcie jednak poszedłem łatwiejszą drogą.
Inne zastosowanie to np. programowanie kodów RC5. Ja zaszyłem je u siebie „na sztywno” bo już zaczęło się robić krucho z pamięcią programu a nie potrafiłem wymyślić sensownej komunikacji z użytkownikiem by te kody programować z poziomu samego panelu.
Zasilanie
Za wszelką cenę chciałem uniknąć konieczności tworzenia dodatkowych zasilaczy na niskie napięcia. Wszystkie chciałem wyprowadzić wykorzystując napięcia z głównego transformatora wzmacniacza. Udało się.
Do uzyskania napięcia 5V wykorzystałem przetwornicę MAX5033. Oczywiście wzbudziła ona we mnie masę obaw o to jak silne zakłócenia wygeneruje. Finalnie okazało się, że nie stanowią one poważnego problemu ( choć przypuszczam, że to właśnie ona jest głównym źródłem szumu ).
16 diod
Z początku chciałem wszystko robić na rejestrach przesuwnych jednak nie było łatwo znaleźć takiego co ma jednocześnie zatrzask i potrafi wysterować diody. Podczas poszukiwań natknąłem się na szczęście na układ TLC5925, który stworzony jest właśnie do takich zadań. Ma dodatkowo możliwość ustawiania jasności za pomocą rezystora (RBr).




Moduł wykonawczy - SLAVE
Ten moduł ma za zadanie obsługiwać przekaźnik selektora wejść, przekaźnik odłączania głośników, regulację głośności.
Do regulacji głośności użyłem chyba najtańszego na rynku chińskiej produkcji potencjometru FM62429. Sam producent w nocie katalogowej pisze o nim bardzo niewiele w szczególności jeśli chodzi o parametry audio więc było pewne ryzyko, że będzie „klapa”. Na szczęście okazało się inaczej. Układ mimo, że nie jest zasilany symetrycznie jak np. CS3310 czy PGA2311 a do tego zarówno na wejściach i wyjściach trzeba zastosować kondensatory to uważam, że jego parametry w zaimplementowanym układzie są bardzo przyzwoite (wszystko widać na pomiarach poniżej).
Przed potencjometrem cyfrowym znajduje się wzmacniacz operacyjny, którego zadaniem jest dostosować poziom sygnału wejściowego tak aby potencjometr pracował w jak najoptymalniejszych warunkach ( wg producenta 1,5V RMS ). Ja ustawiłem wzmocnienie na około 1,3 tak aby móc bezpiecznie podać na wejście sygnał rzędu 1V RMS. Wymieniając rezystory Rx, Ry można tą czułość wejściową dowolnie zmienić.
Zasilanie wzmacniacza operacyjnego zrealizowane jest poprzez prosty rezystor i stabilizator na diodach Zenera. Daje on napięcie +/- 15V.
Dodatkowo z gałęzi dodatniej +15V wyprowadzone jest napięcie 5V dla zasilania potencjometru cyfrowego ( osobne nie to samo co dla CPU i przekaźników ).




Kilka słów o tej głupiej masie
Ech ta masa. Przyczyna tylu problemów i nieprzyjemnych chwil po ukończeniu projektu. Ile razy już miałem na stole poskręcane urządzenie takie jak wzmacniacz czy przedwzmacniacz. Niestety w oczekiwaniu na końcowy powalający efekt zamiast czystego pięknego brzmienia, które jest swego rodzaju „ukoronowaniem prac” nad urządzeniem to z głośników wydobywa się brum albo przydźwięk. Pięknie polutowane płytki i poukładane kable trzeba przecinać, przelutować, doklejać kondensatory i dławiki … Czasem daje to jakiś efekt ale mało kiedy jest idealnie. Niesmak jednak zawsze pozostaje.
Tym razem powiedziałem „nie” – masę przemyślę od początku do ostatniego pada na płytce. Nie będzie żadnej pętli masy ani globalnej ani lokalnej a urządzanie po uruchomieniu ma być cicho! Znaczy się ma grać tylko to co mu każę.
Temat masy rozciąga się także na poszczególne gałęzie zasilania ale tutaj także starałem się nie robić głupstw. I chyba było warto ten czas poświęcić. Choć mam świadomość, że tematyka doprowadzania zasilania i masy to temat potężny i zapewne jest się czego przyczepić to wierzę, że to co zrobiłem można nazwać „przyzwoitym” ( jeśli tak nie jest poproszę o wskazanie błędów ).





Program sterujący
Program sterujący został napisany w C++ i skompilowany w Microchip Studio ( dawniej Atmel Studio ). Poza pętlą główną i funkcją inicjującą wszystko zostało napisane obiektowo więc nie będzie problemu wykorzystać „gotowych klocków” w innych podobnych projektach.
Kod źródłowy zawiera dość obszerne komentarze więc dla każdego kto potrafi programować przerobienie programu do własnych potrzeb nie powinno stanowić dużego wyzwania.
Kod źródłowy dostępny jest na serwerze GIT: https://bitbucket.org/xksi/priv_amp_drv_2021.02/src/master/
Pomiary
Po zakończeniu lutowania przyszła pora na testy a ostatecznie na pomiary…
Jak wyszło? Wg mnie nie jest źle. Super też nie ale i tak lepiej niż oczekiwałem Do wzmacniaczy, których przeznaczeniem jest głośne granie na imprezach całkowicie wystarczy.
Szczegółowy raport z RMAA w załączniku.


Podsumowanie i wnioski
Jak już na samym początku napisałem, że rozwiązanie audiofilskie to to nie będzie. W ostatnich testach, które robiłem słychać, że do kolumn przedostaje się bardzo – bardzo cichy szum i jakieś „cyfrowe artefakty”. Na szczęście słyszalne są dopiero po przyłożeniu ucha do głośnika wysoko-tonowego. Być może znikną jak wszystko połączy się odpowiednio krótkimi przewodami a nie 1,5m. Ważne, że brum ani przydźwięk sieciowy nie są słyszalne.
Co do samego brzmienia... Wstępnie jest Ok

Niestety nie narysowałem sobie schematu i płytkę robiłem „z głowy”. Co było do przewidzenia, lenistwo po raz kolejny poskutkowało tym, ze na finalnym układzie pojawiły się niechciane kabelki. Kilka ścieżek zapomniałem, coś podłączyłem pod zły pin. Trudno tego się nie cofnie. Ważne jest to, że w załączniku są już płytki z naniesionymi poprawkami i kolejne, które będę zamawiał przyjdą już bez błędów.
Być może przed zamówieniem kolejnych PCB jeszcze przerobię układ wykrywania zasilania AC na jakąś wersję z izolacją optyczną - ale to jest do przemyślenia.
Cool? Ranking DIY