Inhoudsopgave:

TV Commercial Volume Suppressor - Ajarnpa
TV Commercial Volume Suppressor - Ajarnpa

Video: TV Commercial Volume Suppressor - Ajarnpa

Video: TV Commercial Volume Suppressor - Ajarnpa
Video: TV Commercial Volume Suppressor 2024, Juli-
Anonim
TV commerciële volumeonderdrukker
TV commerciële volumeonderdrukker

Mijn vader zeurt constant over hoe vervelend het is als reclames aanzienlijk luider zijn dan het bijbehorende programma. Omdat zijn geklaag erger werd dan de eigenlijke reclames, besloot ik een klein gadget te maken dat beide problemen tegelijk zou oplossen. De gadget die ik heb gemaakt, verlaagt automatisch het volume van de tv wanneer deze te luid wordt, en kan worden geprogrammeerd om te werken op elk apparaat dat een IR-afstandsbediening gebruikt.

Stap 1: Componenten en gereedschappen

Componenten en gereedschappen
Componenten en gereedschappen

Gereedschappen en materialen

  • Soldeerbout
  • Soldeer
  • Breadboard
  • Aansluitdraad

Componenten

  • 1x 16x2 LCD-scherm
  • 1x Arduino Nano (ik gebruikte een goedkope kloon van Ebay)
  • 3x 12 mm kortstondige drukknoppen
  • 1x Electret Microfoon Breakout. Sprankelend. Adafruit.
  • 1x trimpot
  • 1x PN2222-transistor
  • 1x TSOP38238 IR-ontvanger
  • 1x IR-LED
  • 1x 100 ohm weerstand
  • 1x 220 ohm weerstand

Stap 2: Sluit het aan

Sluit het aan
Sluit het aan
Sluit het aan
Sluit het aan
Sluit het aan
Sluit het aan
Sluit het aan
Sluit het aan

Omdat ik dit aan mijn vader cadeau deed en wilde dat het er mooi uitzag, besloot ik om professioneel een PCB te laten maken. Ik heb Eagle gebruikt om het schema en bord te maken. Mijn breadboard zag er nogal rommelig uit, dus ik zou gewoon het schema gebruiken om je aansluitingsproces te begeleiden. Hier is een korte samenvatting van de pinout.

  • A0 gaat naar de microfoonuitgang
  • Pin 2 gaat naar de knop "Programmeren"
  • Pin 3 gaat naar de transistorpoort
  • Pin 4 gaat naar de uitgang van de IR-ontvanger
  • Pin 5 gaat naar de knop "Omlaag"
  • Pin 6 gaat naar de knop "Omhoog"
  • Pinnen 7, 8, 9, 10, 11 en 12 gaan naar het LCD-scherm.
  • Zet 3,3 volt over de microfoon
  • Zet 5 volt over de transistor/IR LED, potentiometer en LCD.

Stap 3: Hoe het te gebruiken?

Hoe te gebruiken
Hoe te gebruiken
Hoe te gebruiken
Hoe te gebruiken
Hoe te gebruiken
Hoe te gebruiken

Het zware deel van de code was eigenlijk geleend van andere dingen die ik online vond. Ik heb een IR-bibliotheek gebruikt om zowel de signalen van de tv-afstandsbediening te decoderen als om het signaal naar de tv te herhalen. Ik heb ook een ander codefragment geleend om de referentiespanning van de Arduino's ADC nauwkeurig te meten, omdat zelfs kleine fouten een groot verschil zouden maken in de volumemetingen van de microfoon. Vraag me niet hoe ze werken, want het gaat mij te boven. Ik kwam er net achter hoe ik ze moest gebruiken door middel van vallen en opstaan.

Kortom, de Arduino controleert constant de status van de drie knoppen en het volume. Als een van de knoppen Omhoog of Omlaag wordt ingedrukt, wordt de volumedrempel of het maximale volume voordat het systeem wordt geactiveerd om het volume van de tv te verlagen, verhoogd of verlaagd. Om de IR-code in te stellen die wordt verzonden wanneer de drempel wordt overschreden, drukt u op de programmeerknop en vervolgens op de omhoog-knop. Wanneer het scherm u vraagt om op de -Volume-knop te drukken, richt u de afstandsbediening van uw tv op de IR-ontvanger en drukt u op de -Volume-knop totdat het scherm u een hexadecimale waarde toont die overeenkomt met de -Volume-opdracht van uw tv. (Ik heb dat toegevoegd als een sanity check). Het duurt soms een paar pogingen om het werkend te krijgen, ik weet echter niet waarom.

Als wordt gemeten dat het volume boven de drempel ligt, stuurt de Arduino het -Volume-commando. U kunt de "burst-lengte", of hoeveel -Volume-commando's worden verzonden wanneer de drempel wordt overschreden, wijzigen door op de Program-knop en vervolgens op de Down-knop te drukken. Het scherm toont u de huidige burst-lengte, die kan worden gewijzigd met de knoppen Omhoog en Omlaag en vervolgens worden opgeslagen door nogmaals op de Programmaknop te drukken.

Al deze informatie wordt opgeslagen in de EEPROM, zodat het systeem uw voorinstellingen onthoudt, zelfs wanneer u de stekker uit het stopcontact haalt.

Als een andere sanity-test zal de Arduino elke keer dat hij opstart een -Volume-commando sturen. Op deze manier kun je gewoon op de resetknop van de Arduino drukken om te testen of het apparaat werkt.

Stap 4: Test het

Image
Image

Het werkt!

Stap 5: Zet het allemaal bij elkaar

Voeg het allemaal samen
Voeg het allemaal samen
Voeg het allemaal samen
Voeg het allemaal samen

Toen ik bevestigde dat het werkte, bestelde ik de PCB en soldeerde toen alles erop. Ik heb ook de lasersnijders van mijn universiteit gebruikt om een kleine MDF-doos te maken om het te huisvesten, maar dit zijn beide extra stappen die niet helemaal nodig zijn. Toen deze klaar waren, was het project voltooid! Ik heb dit allemaal samengebracht tijdens de finaleweek en heb mogelijk enkele details verwaarloosd, dus laat het me weten als ik iets heb gemist!

Stap 6: fouten

Deze extra stap heb ik als bijlage toegevoegd. Aangezien dit de eerste keer was dat ik Eagle gebruikte en een PCB maakte, maakte ik uiteindelijk een paar fouten.

Ten eerste: sinds ik een kloon van de Arduino Nano heb gebruikt, heeft de PCB eigenlijk vier extra pinnen voor de controller. Het bord werkt echter nog steeds zolang je de controller op de juiste pinnen soldeert.

Ten tweede: de potentiometer die bij het LCD-scherm werd geleverd, kwam niet overeen met degene die ik gebruikte om het bord te ontwerpen. Je kunt de draden buigen om het passend te maken, maar het ziet er niet zo mooi uit of voelt niet zo veilig als de juiste pot was gebruikt.

Er zijn ook een paar dingen die ik in de toekomst anders zou doen. Ten eerste, als ik een LCD met achtergrondverlichting had gebruikt, zou ik een manier hebben toegevoegd om de stroom naar de LCD uit te schakelen nadat het scherm een tijdje niet was bijgewerkt om energie te besparen. Ten tweede kunt u mogelijk de weerstand van 100 ohm voor de IR-led verwijderen of verminderen om deze helderder te maken. Aangezien de LED alleen voor korte bursts brandt, zou deze waarschijnlijk niet doorbranden. Dit moet ik echter nog testen. Ik raad ook aan om een microfoon te gebruiken met een instelbare versterking. Ik gebruikte de Sparkfun-microfoon en die was niet zo gevoelig als ik had gewild.

Afstandsbediening Wedstrijd 2017
Afstandsbediening Wedstrijd 2017
Afstandsbediening Wedstrijd 2017
Afstandsbediening Wedstrijd 2017

Tweede prijs in de Remote Control Contest 2017

Aanbevolen: