Ogłoszenie

Collapse
No announcement yet.

Sterowniko-zasilacz do streamerów/playerów z CD opartych o RPi

Collapse
X
 
  • Filtr
  • Czas
  • Pokaż
Clear All
new posts

    [inna] Sterowniko-zasilacz do streamerów/playerów z CD opartych o RPi

    Z racji, że chciałem w swoim systemie mieć wszystko sterowane z jednego pilota, postanowiłem zaprojektować PCB oraz napisać soft do sterowniko-zasilacza dla playera opartego o RaspberryPi.
    Dodatkiem jest możliwość zrobienia playera wraz z napędem CD obsługiwanym bezpośrednio z playera - wychodzi nam wszystko mające urządzenie, gdzie nie jesteśmy zależni od jakości DACa wbudowanego w player CD.

    Kilka słów o elektronice:
    - separowane galwanicznie wejście trigger aby dało się to ustrojstwo włączyć z innego urządzenia z wyjściem trigger,
    - wyjście trigger aby dało się za pomocą tego urządzenia włączyć jakiekolwiek inne urządzenie z wejściem trigger (np. wzmacniacz)
    - dwa stabilizowane zasilacze 5V/3 (oparte na LM1085) - wspólna masa, ale zasilane z dwóch oddzielnych uzwojeń transformatora, mostki Graetza obłożone kondensatorami 100 nF.
    - wejście na przycisk,
    - wyjście na diodę sygnalizacyjną z rezystorem ograniczającym prąd diody,
    - wejście na odbiornik podczerwieni z filtrem na zasilaniu odbiornika - możliwość sterowania pilotem Apple,
    - 6 wyjść sterujących impulsowo wejściami w RPi (power down, volume up, volume down, play/pause, next, prev),
    - trafko standby 9 Vac, 1,5VA,
    - trafko zasilacza RPi 2 x 6 Vac, 30VA,
    - układ załączający trafko główne z gasikiem,
    - wyjścia zasilaczy 5V jako zwykłe skręcane lub jako gniazda USB (w przypadku użycia gniazda USB możliwe jest podłączenie odbiorników o wyższym poborze prądu niż RPi jest w stanie dostarczyć, np. do zasilania napędu CD, linie danych USB dalej działają i napęd CD jest rozpoznawany w systemie RPi ale nie pobiera z RPi prądu),
    - zworka do wyboru trybu pracy działania pilota.



    Idea stojąca za powstaniem tego urządzenia:
    - oddzielne zasilanie dla maliny oraz oddzielne zasilanie dla dotykowego wyświetlacza 7 cali oraz napędu CD,
    - możliwość sterowania funkcjami playera za pomocą pilota, zworką wybiera się czy player ma mieć możliwość włączenia i wyłączenia za pomocą pilota,
    - sekwencje włączania i wyłączania zasilania z możliwością programowania czasów włączenia oraz wyłączenia.

    Jak działają sekwencje zasilania:
    - po otrzymaniu sygnału włączenia (przycisk, pilot lub pojawienie się napięcie na wejściu trigger) załączany jest przekaźnik włączający zasilanie RPi - urządzenia się włącza, dioda sygnalizacyjna miga powoli sygnalizując włączanie się urządzenia,
    - po włączeniu się urządzenia (czyli po odliczeniu zaprogramowanego czasu włączenia) dioda przechodzi w tryb ciągłego świecenia co oznacza, że urządzenie działa w trybie normalnego używania,
    - po otrzymaniu sygnału wyłączenia (przycisk, pilot lub zanik napięcia na wejściu trigger) wysyłany jest impuls na wejście w RPi dzięki czemu system jest bezpiecznie zamykany a następnie po wcześniej zaprogramowanym czasie wyłączany jest zasilacz dla RPi, stan ten jest sygnalizowany szybkim miganiem diody,
    - jeśli w trakcie włączania zachcemy jednak wyłączyć player - sekwencja włączania zostanie doprowadzona do końca (przez pozostały do pełnego włączenia czas dioda sygnalizuje zmienionym miganiem, że po włączeniu ma nastąpić wyłączenie) a następnie zostanie przeprowadzona sekwencja wyłączania z bezpiecznym wyłączeniem systemu operacyjnego,
    - jeśli urządzenie jest w trakcie włączania, po którym ma nastąpić wyłączenie (czyli poprzedni punkt) ale jednak zdecydujemy, że chcemy aby urządzenie się normalnie włączyło - wystarczy ponownie kliknąć przycisk lub użyć pilota lub włączyć napięcie na wejściu trigger.

    Wejście trigger jest nadrzędne - oznacza to, że jeśli na wejściu trigger jest podane napięcie to urządzenia nie da się wyłączyć przyciskiem lub pilotem.

    Istnieje opcja samodzielnego zaprogramowania czasów trwania sekwencji włączania i wyłączania urządzenia:
    - jeśli przy podłączaniu urządzenia do zasilania z sieci energetycznej będzie wciśnięty przycisk, urządzenie uruchomi się w trybie programowania czasów co zostanie potwierdzone trójkrotnym mignięciem diodą,
    - klikamy przyciskiem w celu ustalenia czasu włączania - 1 klik to 5 sekund, każde kliknięcie jest potwierdzane krótkim zapaleniem się diody,
    - po ustawieniu odpowiedniego czasu włączania, poprzez długie naciśnięcie przycisku przechodzimy do programowania czasu wyłączania co potwierdzone zostaje dwukrotnym mignięciem diodą,
    - klikamy przyciskiem w celu ustalenia czasu wyłączania - 1 klik to 5 sekund, każde kliknięcie jest potwierdzane krótkim zapaleniem się diody,
    - zatwierdzamy ustawienia za pomocą długiego wciśnięcia przycisku, co zostaje potwierdzone pojedynczym mrugnięciem diody,
    - ustawienia są zapisywane w nieulotnej pamięci eeprom, urządzenie przechodzi w tryb standby.

    Jak wygląda obsługa z pilota:
    - po naciśnięciu na pilocie przycisku PLAY/PAUSE na jednym z wyjść generowany jest impuls o czasie trwania 30 ms, który należy podłączyć na wejście RPi skonfigurowane jako wejście PLAY/PAUSE w playerze,
    - po naciśnięciu na pilocie przycisku RIGHT na jednym z wyjść generowany jest impuls o czasie trwania 30 ms, który należy podłączyć na wejście RPi skonfigurowane jako wejście NEXT w playerze,
    - po naciśnięciu na pilocie przycisku LEFT na jednym z wyjść generowany jest impuls o czasie trwania 30 ms, który należy podłączyć na wejście RPi skonfigurowane jako wejście PREV w playerze,
    - po naciśnięciu na pilocie przycisku UP na jednym z wyjść generowany jest impuls o czasie trwania 30 ms, który należy podłączyć na wejście RPi skonfigurowane jako wejście VOLUME UP w playerze,
    - po naciśnięciu na pilocie przycisku DOWN na jednym z wyjść generowany jest impuls o czasie trwania 30 ms, który należy podłączyć na wejście RPi skonfigurowane jako wejście VOLUME DOWN w playerze,
    - po naciśnięciu na pilocie przycisku MENU, jeśli urządzenie jest wyłączone - następuje sekwencja włączania, jeśli urządzenia jest włączone - następuje sekwencja wyłączania, WAŻNA UWAGA: jeśli wiemy, że nasz player będzie włączany przez wejście trigger a przycisk MENU na pilocie będzie używany przez coś innego, możliwe jest deaktywowanie reakcji na przycisk MENU poprzez założenie zworki w odpowiednie miejsce.

    Tak wygląda konfiguracja u mnie.


    Możliwości wykorzystania:
    - jako samodzielny player sterowany pilotem, z możliwością sterowania pilotem (włączanie, wyłączanie, play, pause, vol up, vol down, next song, prev song) i sekwencjami włączania i wyłączania, z dodatkowym zasilaniem dla napędów CD, di
    - jako zasilacz sterowany wejściem trigger, przyciskiem lub pilotem,
    - jako część całego systemu sterowanego z jednego pilota (tak jak jest to u mnie :P)

    Jak to działa u mnie:
    - Dystrybucja, którą używam do stworzenia playera to Volumio, które ma możliwość łatwego (za pomocą interfejsu użytkownika wewnątrz Volumio) doinstalowania wtyczki GPIO Buttons autorstwa tomatpasser.
    - wtyczka ta została skonfigurowana w następujący sposób, przy czym piny Volume Up and Volume Down w moim systemie nie są podłączone ponieważ tego samego pilota nasłuchuje mój preamp i to on realizuje regulację głośności,
    - preamp obsługuje również wybór wejść (analogowych oraz cyfrowych) i nasłuchuje tych samych ramek z pilota, czyli:
    - po włączeniu preampu za pomocą pilota lub przycisku na preampie, preamp za pomocą swojego wyjścia trigger włącza player podając napięcie na jego wejście trigger,
    - przyciski RIGHT i LEFT na pilocie zmieniają piosenki na playerze jeśli naciśnie się je krótko, jeśli długo - zmieniają aktywne wejście na preampie,
    - przyciski UP i DOWN na pilocie sterują głośnością jednocześnie na preampie i na playerze, dlatego u mnie piny sterujące głośnością na playerze nie są podłączone,
    - przycisk PLAY/PAUSE na pilocie jest obsługiwany tylko przez player i służy sterowania odtwarzaniem,
    - przycisk MENU jest obsługiwany tylko przez preamp, krótkie naciśnięcie to zmiana jasności wyświetlacza, długie naciśnięcie to wejście w menu preampu,
    - przycisk CENTRAL jest obsługiwany tylko przez preamp - krótkie naciśnięcie to MUTE, długie to włączanie lub wyłączanie systemu.

    Jak widać, cały system audio steruje się jednym pilotem i jest to mega wygodne.


    Tak, wiem - nie ma obudowy :P Jak to u mnie - faza wiecznego prototypu :P Ale za to gra bardzo dobrze i ma mega użyteczność :)

    Dzięki możliwości zasilania napędu CD z zasilacza, mój player bez problemu obsługuje płyty:


    W razie pytań pisać, będę w miarę możliwości odpowiadał :)
    Asustor AS-5002T z MPD + konwerter USB .3lite + DAC PCM1704 by olog + autorskie PRE z PVC + Monobloki Ravlus Amplifilo + kolumny Tatami Audio Hudba

    #2
    No no… wysłałem priv

    Skomentuj


      #3
      Ok a mam pytanie. W drugą stronę komunikacji nie ma pewnie ? Mam na myśli wyłączenie komputera z poziomu aplikacji - nie spowoduje pewnie wyłączenia zasilacza ? Oraz małe trafo jest podpięte na stałe do sieci, rozumiem że gdyby zastosować przed nie włącznik (główny) po podanie napięcia na małe trafo nie powoduje od razu startu systemu ? Trzeba podać sygnał włącznikiem sterownika ?
      Last edited by daniel69; 17.11.2022, 23:15.

      Skomentuj


        #4
        Tak, w drugą stronę nie ma komunikacji, czyli z RPi do zasilacza. Nie można tego łatwo zrobić z poziomu wtyczek do volumio. Da się pewnie to na piechotę oskryptować ale to trochę nie o to chodzi żeby hackować Volumio.
        Tak, po załączeniu napięcia na małe trafko nic się wydarzy, ale w zasadzie może się wydarzać jeśli jest taka potrzeba. To tylko zmiana paru linijek w kodzie. Mam jedną luźną zworkę na pokładzie to można by to nawet warunkować i mieć uniwersalny kod.
        Asustor AS-5002T z MPD + konwerter USB .3lite + DAC PCM1704 by olog + autorskie PRE z PVC + Monobloki Ravlus Amplifilo + kolumny Tatami Audio Hudba

        Skomentuj


          #5
          A trigger out zanika dopiero gdy wyłączone zostanie trafo duże czy od razu po rozpoczęciu sekwencji zamykania systemu ?
          Last edited by daniel69; 17.11.2022, 23:49.

          Skomentuj


            #6
            Teraz wyłącza wyjście trigger po wyłączeniu trafa zasilania. Można zrobić jak się chce.
            Asustor AS-5002T z MPD + konwerter USB .3lite + DAC PCM1704 by olog + autorskie PRE z PVC + Monobloki Ravlus Amplifilo + kolumny Tatami Audio Hudba

            Skomentuj


              #7
              Zamieszczone przez LuSzTi Zobacz posta
              Teraz wyłącza wyjście trigger po wyłączeniu trafa zasilania. Można zrobić jak się chce.
              No to ja chcę właśnie tak jak jest :p bo planuję ten Twój zasilacz wykorzystać z tytułu sterownika a obecny na pcb zasilacz skoro już jest użyć do zasilenia innych zabawek wewnątrz. A trigger out skoro działa tak samo i w tym samym czasie jak przełącznik załączający na pcb duże trafo to będzie on(trigger) sterował drugim przekaźnikiem który załączał będzie lepszy zasilacz do raspberry. Te wyjścia na Twoim zasilaczu zasilą np dvd i wyświetlacz.

              Skomentuj


                #8
                Tak sobie czytam i czytam po raz enty i zastanawiam się nad jednym. Piszesz że krótkie naciśnięcie np przycisków prawo lewo realizuje zmianę utworu a długie zmienia wejście w pre. Ciekawe. To pilot nadaje dwa różne sygnały w zależności od długości naciśnięcia ? Czy nie dzieje się tak że przy długim naciśnięciu w pre zmienia się wejście a w playerze przeskakują utwory w tym samym czasie ?

                Skomentuj


                  #9
                  Bardzo ładnie LuSzTi, czekamy na obudowę

                  Skomentuj


                    #10
                    Zamieszczone przez daniel69 Zobacz posta
                    Tak sobie czytam i czytam po raz enty i zastanawiam się nad jednym. Piszesz że krótkie naciśnięcie np przycisków prawo lewo realizuje zmianę utworu a długie zmienia wejście w pre. Ciekawe. To pilot nadaje dwa różne sygnały w zależności od długości naciśnięcia ? Czy nie dzieje się tak że przy długim naciśnięciu w pre zmienia się wejście a w playerze przeskakują utwory w tym samym czasie ?
                    Dzieje się tak jak napisałem :) Pilot nadaje te same ramki, ale to ja już sobie ogarnąłem w sofcie, że potrafię rozróżnić czy to krótkie czy długie naciśnięcie :)
                    Asustor AS-5002T z MPD + konwerter USB .3lite + DAC PCM1704 by olog + autorskie PRE z PVC + Monobloki Ravlus Amplifilo + kolumny Tatami Audio Hudba

                    Skomentuj


                      #11
                      Czyli jeśli u siebie w drugim sprzęcie dodam tak jak Ty np prawo lewo długo to Twój sterownik nie zareaguje podczas tego przypadkowo ? Jako na krótkie naciśnięcie.

                      trigger rozumiem standardowo in i out 12v ?
                      Last edited by daniel69; 30.11.2022, 11:34.

                      Skomentuj


                        #12
                        Ten sterownik reaguje na krótkie naciśnięcie przycisków prawo i lewo na pilota apple. Moje pre reaguje na długie naciśnięcie. Jeśli pojawi się krótkie naciśnięcie na pilocie to sterownik zareaguje.
                        Trigger działa od 5V do ok 17V.
                        Asustor AS-5002T z MPD + konwerter USB .3lite + DAC PCM1704 by olog + autorskie PRE z PVC + Monobloki Ravlus Amplifilo + kolumny Tatami Audio Hudba

                        Skomentuj


                          #13
                          O to właśnie pytam. Też chcę pre zrobić na długie naciśnięcia i chodzi mi o to czy przy długim naciśnięciu przycisku, Twój sterownik przypadkiem nie zareaguje ?

                          Skomentuj


                            #14
                            Nie zareaguje :)
                            Asustor AS-5002T z MPD + konwerter USB .3lite + DAC PCM1704 by olog + autorskie PRE z PVC + Monobloki Ravlus Amplifilo + kolumny Tatami Audio Hudba

                            Skomentuj


                              #15
                              Pod podświetlenie włącznika wychodzi napięcie z układu następnie rezystor 1k. Jakie napięcie wychodzi ze sterownika ? Nie chcę mi się teraz znowu podłączać tego i mierzyć ale wiem że za rezystorem 1k kiepsko świeci przycisk więc rezystor do zmiany na mniejszy ewentualnie wywalenia.

                              Skomentuj


                                #16
                                Napięcie przed rezystorem to 5V. Jeśli usuniesz rezystor to uwalisz wyjście z procka. Możesz go zmniejszyć ale też w pewnych zakresach wartości ponieważ z wyjścia procka nie można pobrać za dużo prądu.
                                Jeśli słabo Ci świeci to być może masz przycisk z wbudowanym rezystorem i przystosowany do zasilania diody wyższym napięciem.
                                Asustor AS-5002T z MPD + konwerter USB .3lite + DAC PCM1704 by olog + autorskie PRE z PVC + Monobloki Ravlus Amplifilo + kolumny Tatami Audio Hudba

                                Skomentuj


                                  #17
                                  Zamieszczone przez LuSzTi Zobacz posta
                                  Napięcie przed rezystorem to 5V. Jeśli usuniesz rezystor to uwalisz wyjście z procka. Możesz go zmniejszyć ale też w pewnych zakresach wartości ponieważ z wyjścia procka nie można pobrać za dużo prądu.
                                  Jeśli słabo Ci świeci to być może masz przycisk z wbudowanym rezystorem i przystosowany do zasilania diody wyższym napięciem.
                                  Mam przycisk na napięcie 12v, właśnie go rozłożyłem. Wewnątrz rezystora nie ma, niemniej jest zwykła dioda 3mm więc wymienię ją na mniejsze napięcie :)
                                  Last edited by daniel69; 01.12.2022, 09:57.

                                  Skomentuj


                                    #18
                                    Zamieszczone przez daniel69 Zobacz posta

                                    Mam przycisk na napięcie 12v, właśnie go rozłożyłem. Wewnątrz rezystora nie ma, niemniej jest zwykła dioda 3mm więc wymienię ją na mniejsze napięcie :)
                                    Poprawka. Rezystor był ale był schowany w plastikowej tulei w którą wsadzona była dioda. Po usunięciu go, jest w miarę ok. W zasadzie prawie wcale słabiej nie świeci. Na prawdę leciutko.

                                    Ale za to trigger out nie jest w stanie uciągnąć jednego przekaźnika. W zasadzie nic nie jest w stanie uciągnąć gdyż pod obciążeniem go przekaźnikiem napięcie spada poniżej 4v.
                                    Last edited by daniel69; 03.03.2023, 17:08.

                                    Skomentuj


                                      #19
                                      Dzisiaj zajmę się drobnymi zmianami zasugerowanymi przez kogoś doświadczonego :) być może uda się wyzwolić ten przekaźnik z wyjścia trigger a przy okazji poprawić też zasilenie przekaźnika znajdującego się na pcb
                                      Last edited by daniel69; 03.03.2023, 17:10.

                                      Skomentuj


                                        #20
                                        - po naciśnięciu na pilocie przycisku PLAY/PAUSE na jednym z wyjść generowany jest impuls o czasie trwania 30 ms, który należy podłączyć na wejście RPi skonfigurowane jako wejście PLAY/PAUSE w playerze,
                                        Przerabiałem ostatnio podobny temat, ale podszedłem do tego z goła inaczej, uC zajmuje się obsługą selektora, enkodera, regulacją głośności, układem st-by dla wzmacniacza i wyświetlaczem LCD, a wymiana danych z Orange Pi odbywa się za pomocą UARTa.
                                        Na OPi pracuje w tle kawałek prostego programu, który parsuje dane z MPD by puścić na wyświetlacz i w drugą stronę, czyli pozwala na zmianę utworu, itd., testy na razie były z UARTem na USB oraz RS485, plus jest taki, że nie potrzebne są żadne GPIO i zamiast RPi czy innej płytki można zastosować terminal sieciowy albo nawet zwykły komp.

                                        Skomentuj

                                        Czaruję...
                                        X