Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Przeróbka tarczy telefonicznej na kontroler głośności dźwięku do komputera

ghost666 18 Aug 2020 15:03 20265 10
Nazwa.pl
  • Przeróbka tarczy telefonicznej na kontroler głośności dźwięku do komputera
    Zmienianie głośności na komputerze to często wykonywana czynność – oglądając filmy na YT czy innych portalach mamy często do czynienia z różnymi poziomami głośności w filmikach etc. Jeśli odbieramy telefon, to z pewnością chcemy szybko przyciszyć dźwięki z komputera i tak dalej.

    Część zestawów głośnikowych do komputerów PC posiada wbudowaną regulację głośności. Jeśli jednakże Twój takiego nie ma albo nie chcesz z niego korzystać, to istnieje wiele alternatyw. Jedną z nich jest samodzielne wykonanie regulatora, na przykład takiego jak opisany poniżej. Jest to prosty cyfrowy regulator głośności, wykonany z tarczy starego telefonu.

    Urządzenie to podłącza się do komputera przez port USB. System automatycznie ustawia głośność każdego otwartego programu na dowolny poziom, który wybierzesz. Jeśli wybierzesz „2”, głośność zostanie ustawiona na 20%. Wybierz „8”, a zostanie ustawione na 80%. Wybranie „0” ustawia ją na 0% - działa jak wyciszenie. Jest to szybkie, wygodne i znacznie przyjemniejsze niż klikanie regulatora głośności na pasku zadań.

    Potrzebne będą:
    * Stary telefon z obrotową tarczą,
    * Arduino Nano,
    * Wkładki gwintowane M3 oraz śrubki M3,
    * Oporniki 470 Ω i 10 kΩ,
    * Przewody połączeniowe,
    * Dostęp do drukarki 3D.





    Krok 1: Zasada działania

    Telefony z obrotową tarczą to w pełni analogowe urządzenia elektromechaniczne. Po obróceniu pokrętła sprężyna obraca pokrętło z powrotem do pierwotnego położenia. Przełącznik, gdy mija każdy numer, jest odłączany (lub podłączany) na krótką chwilę, tworząc impuls. Wystarczy policzyć te impulsy, aby ustalić, jaki numer został wybrany. Użytkownik guidomax stworzył bardzo ciekawy tutorial na portalu Instructables, który szczegółowo wyjaśnia, jak to dokładnie działa; można tam znaleźć więcej szczegółów.

    W tym projekcie autor wykorzystał Arduino Nano do liczenia impulsów. Następnie mikrokontroler przesyła wartość do komputera za pośrednictwem połączenia szeregowego. Autor napisał prosty skrypt w Pythonie, który działa w tle i monitoruje to połączenie. Kiedy odbiera bity, pobiera liczbę i używa biblioteki Python Core Audio Windows, aby ustawić odpowiednią głośność.

    Ze względu na ograniczenia systemu Windows i tej biblioteki skrypt nie ustawia całkowitej głośności systemu (główny suwak na pasku zadań). Zamiast tego ustawia indywidualną głośność dla każdego aktualnie uruchomionego programu. Efekt jest taki sam, z wyjątkiem tego, że nie można utrzymać różnych względnych poziomów głośności między programami.


    Przeróbka tarczy telefonicznej na kontroler głośności dźwięku do komputera
    Krok 2: Wymontuj tarczę z telefonu

    Ten krok jest prosty: wystarczy zdemontować telefon. W większości wypadków jest to samodzielny moduł, więc wystarczy go wykręcić z urządzenia. Autor do tego projektu wybrał model Trimline, ponieważ ten telefon jest popularny i często wybierany jako bardziej kompaktowy niż te, które można znaleźć w większości innych telefonów z tarczami obrotowymi.

    Jeśli wykonasz kilka próbnych obrotów tarczą, powinieneś usłyszeć kliknięcie przełącznika, gdy wraca do pozycji wyjściowej. Poniżej dokładnie omówimy zasadę działania tego rodzaju układu do wybierania numeru.

    Przeróbka tarczy telefonicznej na kontroler głośności dźwięku do komputera
    Krok 3: Wydrukuj obudowę

    Używając dwóch dostarczonych plików STL, należy wydrukować części obudowy. Można użyć do tego celu dowolnego materiału, autor użył PLA. Ustawienia drukarki nie są tak istotne, ale warto w części „Rotary_Top” zastosować podpory.

    Krok 4: Zaprogramuj Arduino

    Program, który należy przesłać do swojego Arduino Nano, pochodzi bezpośrednio z samouczka guidomax, linkowanego powyżej, ponieważ doskonale się sprawuje:

    Code: c
    Log in, to see the code


    Przeróbka tarczy telefonicznej na kontroler głośności dźwięku do komputera
    Krok 5: Połączenia elektryczne

    Okablowanie dla tego projektu jest naprawdę proste. Moduł tarczy powinien mieć z tyłu dwa sześciokątne słupki z wkrętami. To są połączenia przełączników. Ich polaryzacja nie ma znaczenia. Do jednego wyprowadzenia podłączamy masę (z Arduino Nano). Drugie wyprowadzenie podciągane jest do zasilania (przez opornik 10 kΩ) i podłączone przez rezystor 470 Ω do pinu 2 Arduino Nano.

    Przeróbka tarczy telefonicznej na kontroler głośności dźwięku do komputera
    Krok 6: Montaż

    Część obudowy Rotary_Top ma sześć małych otworów. Są one przeznaczone do wkładek gwintowanych osadzanych na ciepło. Trzy górne (na spodniej stronie górnej powierzchni) służą do zamontowania tarczy obrotowej. Trzy dolne służą do przykręcenia bazy (Rotary_Base) do tego elementu. Wkładki te można podgrzać lutownicą (lub dedykowanym narzędziem), a następnie wcisnąć w otwory. Ciepło spowoduje stopienie tworzywa sztucznego, które szybko stwardnieje, aby utrzymać wkładki na miejscu. Używanie wkładek termoutwardzalnych jest znacznie lepsze niż wkręcanie śrub bezpośrednio w tworzywo sztuczne.

    Należy na tym etapie umieścić sześć wkładek gwintowanych. Następnie używając kilku krótkich (około 10 mm) wkrętów M3 zamontować tarczę. Podczas montażu należy zwrócić uwagę na wycięcie, do którego trafia metalowy ogranicznik palców. Następnie ostrożnie umieść Arduino Nano - z podłączonym kablem USB - wewnątrz obudowy i przykręć podstawę na miejscu.

    Gotowe urządzenie można zamocować do biurka z wykorzystaniem rzepa czy dwustronnej taśmy klejącej. Ułatwi to obsługę tarczy i zapobiegnie jej przemieszczaniu po biurku.

    Krok 7: Skonfiguruj skrypt w Pythonie

    Najpierw należy upewnić się, że na docelowym komputerze jest zainstalowany Python (najlepiej Python 3, ponieważ Python 2 jest obecnie już wycofywany). Następnie należy musisz zainstalować dwie wymagane biblioteki: PyCAW i PySerial. W linii komend należy wpisać:

    Code: bash
    Log in, to see the code


    Następnie należy sprawdzić, do jakiego portu jest podłączone Arduino Nano. Można to sprawdzić z poziomu Arduino IDE. Po upewnieniu się, że mamy wybrany odpowiedni port szeregowy, należy uruchomić monitor portu szeregowego z prędkością ustawioną na 9600. Następnie można wybrać kilka numerów, aby upewnić się, że widoczne są na porcie szeregowym. Jeśli tak jest, należy edytować kod skryptu „rotary.py” (patrz poniżej), zmieniając numeru portu. Teraz, po uruchomieniu skryptu, wybierając na tarczy numer można zmieniać poziom głośności programów na komputerze.

    Code: python
    Log in, to see the code


    Ostatnim krokiem jest skonfigurowanie skryptu do automatycznego uruchamiania w tle po uruchomieniu komputera. Aby to zrobić, zmień „rotary.py” na „rotary.pyw”, co pozwoli mu działać w tle. Następnie umieść ten skrypt w następującym folderze: C:\Users\Użytkownik\AppData\Roaming\Microsoft\Windows\Menu Start\Programy\Startup\. Oczywiście trzeba wpisać rzeczywistą nazwę folderu użytkownika.

    Teraz za każdym razem, gdy komputer zostanie uruchomiony, skrypt Pythona zacznie działać. Będzie monitorować połączenie szeregowe z Arduino i ustawi wszystkie woluminy otwartych programów na zadany poziom głośności.

    Źródło: https://www.instructables.com/id/Vintage-Rotary-Phone-Dial-PC-Volume-Control/

    Cool? Ranking DIY
    Do you have a problem with Arduino? Ask question. Visit our forum Arduino.
    About Author
    ghost666
    Translator, editor
    Offline 
    Fizyk z wykształcenia. Po zrobieniu doktoratu i dwóch latach pracy na uczelni, przeszedł do sektora prywatnego, gdzie zajmuje się projektowaniem urządzeń elektronicznych i programowaniem. Od 2003 roku na forum Elektroda.pl, od 2008 roku członek zespołu redakcyjnego.
    ghost666 wrote 11695 posts with rating 9883, helped 157 times. Live in city Warszawa. Been with us since 2003 year.
  • Nazwa.pl
  • #2
    vodiczka
    Level 43  
    Ciekawe rozwiązanie ale mało praktyczne.
    ghost666 wrote:
    Jeśli odbieramy telefon, to z pewnością chcemy szybko przyciszyć dźwięki z komputera i tak dalej
    Tą tarczą nie ściszysz szybko "na zero", chyba że całkowite wyciszenie wybieramy jedynką zamiast zerem.
    Wolałbym potencjometr liniowy.
  • Nazwa.pl
  • #4
    fotomh-s
    Level 24  
    vodiczka wrote:
    Wolałbym potencjometr liniowy.

    Dokładnie o tym samym pomyślałem. Potencjometr jest nie tylko szybszy, ale zapewnia o wiele większą dokładność.

    Konsolety Neve serii 88 mają taką wielką czerwoną gałkę do regulacji głośności monitorów, takie coś by było całkiem niezłe. I jeszcze by się przydało aby działało bez skryptu w tle, może na STM-32 ze sprzętowym USB by się dało zrobić.

    A samą tarczę można np. wykorzystać do przeskakiwania utworów przy odtwarzaniu MP3, myślę że tam się lepiej sprawdzi. Tylko dodać przełącznik do wyboru przeskakiwania w przód/w tył. Da się zrobić emulując klawiaturę USB przy STM-32, bez skryptów.
  • #5
    vodiczka
    Level 43  
    vodiczka wrote:
    Wolałbym potencjometr liniowy.
    Przejęzyczyłem się. Miałem na myśli długi (100mm) potencjometr suwakowy a nie obrotowy o charakterystyce liniowej.
  • #6
    398216 Usunięty
    Level 43  
    vodiczka wrote:
    Ciekawe rozwiązanie ale mało praktyczne.
    Zgadza się. Można to traktować jako udowodnienie, że "Da się i tak to zrobić" ale sensu (praktycznego) w tym nie widzę.
    fotomh-s wrote:
    Potencjometr jest nie tylko szybszy, ale zapewnia o wiele większą dokładność.
    Cytując klasyka: "otóż to własnie, otóż to..."
  • #7
    kaczodp
    Level 14  
    ghost666 wrote:
    obrotową tarczą to w pełni analogowe urządzenia elektromechaniczne.

    Tarcza generuje sygnał cyfrowy.
  • #8
    Piottr242
    Level 23  
    ghost666 wrote:

    Urządzenie to podłącza się do komputera przez port USB. System automatycznie ustawia głośność każdego otwartego programu na dowolny poziom, który wybierzesz. Jeśli wybierzesz „2”, głośność zostanie ustawiona na 20%. Wybierz „8”, a zostanie ustawione na 80%. Wybranie „0” ustawia ją na 0% - działa jak wyciszenie.

    To jest tak bez sensu, że aż piękne.
    Zwłaszcza że żeby wykręcić zero czyli ściszyć całkowicie, tarcza musi wykonać najdłuższy ruch powrotny żeby nadać 10 impulsów.
  • #9
    mikolaj_1
    Level 6  
    Rewelacyjny pomysł. Takie pomysły od czapki ze sprzętem z innych czasów są super. Ja niestety jakoś nie mam takiej wyobraźni.

    Tak że kreatywność 100%
  • #10
    James596
    Level 22  
    A ja mam pytanie z innej beczki. Co to za klawiatura na zdjęciu głównym? Wygląda bardzo retro.
  • #11
    398216 Usunięty
    Level 43  
    vodiczka wrote:
    Tą tarczą nie ściszysz szybko "na zero", chyba że całkowite wyciszenie wybieramy jedynką zamiast zerem.
    Wolałbym potencjometr liniowy.
    Dokładnie - jako udowodnienie, że w ogóle da się zrobić takie sterowanie głośnością - tak jak pisałem wyżej - OK, ale jako praktyczne zastosowanie - moim skromnym zdaniem żadne.
    Ot- "Kupa solidnej zupełnie nikomu nie potrzebnej roboty".