Innholdsfortegnelse:

Alternativt okkludert dikoptisk modifikator for stereoskopisk overføring [ATmega328P+HEF4053B VGA Superimposer]: 7 trinn
Alternativt okkludert dikoptisk modifikator for stereoskopisk overføring [ATmega328P+HEF4053B VGA Superimposer]: 7 trinn

Video: Alternativt okkludert dikoptisk modifikator for stereoskopisk overføring [ATmega328P+HEF4053B VGA Superimposer]: 7 trinn

Video: Alternativt okkludert dikoptisk modifikator for stereoskopisk overføring [ATmega328P+HEF4053B VGA Superimposer]: 7 trinn
Video: The Real KING?! 👑 Denon PerL Pro Review (vs Technics, Sony, Jabra, Devialet, B&W) 2024, Juli
Anonim
Alternativt okkludert dikoptisk modifikator for stereoskopisk overføring [ATmega328P+HEF4053B VGA Superimposer]
Alternativt okkludert dikoptisk modifikator for stereoskopisk overføring [ATmega328P+HEF4053B VGA Superimposer]
Alternativt okkludert dikoptisk modifikator for stereoskopisk overføring [ATmega328P+HEF4053B VGA Superimposer]
Alternativt okkludert dikoptisk modifikator for stereoskopisk overføring [ATmega328P+HEF4053B VGA Superimposer]

Etter mine eksperimenter med flytende krystallglass som ble brukt for å stenge øynene (her og der), bestemte jeg meg for å bygge noe som er litt mer sofistikert og som heller ikke tvinger brukeren til å bruke PCB på pannen (noen ganger kan folk oppføre seg i en på en fiendtlig måte når de ser andre med elektronikk stikke ut av kroppen, har cyborgs det bare ikke lett i disse dager). Enhet jeg designet endrer VGA -signal som sendes til 3D -skjerm (videoen må være i formatet Top - Bottom eller Side By Side), og forbedrer videosignalet med dikoptisk stimulering. Enormt bibliotek med filmer og spill som kan sees og spilles i kompatible 3D -formater, bør gjøre enhver AODMoST -bruker glad og engasjert. Det er studier som indikerer at behandlingsformer som er mulige med AODMoST er gunstige for mennesker med amblyopi.

Trinn 1: Ansvarsfraskrivelse

Bruk av en slik enhet kan forårsake epileptiske anfall eller andre negative effekter hos en liten del av brukerne. Konstruksjon av en slik enhet krever bruk av moderat farlige verktøy og kan forårsake skade eller skade på eiendom. Du bygger og bruker beskrevet enhet på egen risiko

Trinn 2: Deler og verktøy

Deler og materialer:

  • ATmega328P-PU mikrokontroller
  • HEF4053BP analog bryter
  • 7805 i TO-220 pakke spenningsregulator
  • 3x 2N2222 transistorer
  • BS170 transistor
  • 2x diffus blå 3 mm lysdioder
  • diffus rød 3 mm LED
  • 2x diffus gule 3 mm lysdioder
  • diffus grønn 3 mm LED
  • 20 MHz HC49/US krystall
  • 10 -pinners AVR ISP (IDC) hannkontakt
  • 2-pinners PCB skrueklemme 5,08 mm kontakt
  • 8x 6x6mm taktile bryterknapper
  • 3x 1k ohm trimpot 6mm
  • 3x 75 ohm 1/4W motstand
  • 3x 1k ohm 1/4W motstand
  • 3x 2k7 ohm 1/4W motstand
  • 3k3 ohm 1/4W motstand
  • 11x 10k ohm 1/4W motstand
  • 2x 20pF keramiske kondensatorer
  • 3x 100nF keramiske kondensatorer
  • 2x 100uF elektrolytiske kondensatorer
  • perfboard (70mm x 90mm, min 24 x 31 hulls array)
  • noen biter av ledning
  • isoleringstape
  • papir
  • VGA hann til VGA hann kabel
  • 12V - 15V DC strømforsyning

Verktøy:

  • diagonal kutter
  • tang
  • flat skrutrekker
  • liten Phillips skrutrekker
  • verktøykniv
  • multimeter
  • loddestasjon
  • loddetinn
  • AVR -programmerer (frittstående programmerer som USBasp eller du kan bruke ArduinoISP)

Trinn 3: Lodding av elektroniske komponenter

Lodding av elektroniske komponenter
Lodding av elektroniske komponenter
Lodding av elektroniske komponenter
Lodding av elektroniske komponenter
Lodding av elektroniske komponenter
Lodding av elektroniske komponenter
Lodding av elektroniske komponenter
Lodding av elektroniske komponenter

Hvis du vil programmere ATmega før lodding, gjør du det (du kan deretter la CON1 stå uten PCB). Lodd alle elektroniske komponenter til prefboard. Bruk kobbertråder (0,5 mm diameter fra UTP -kabelen bør være perfekte) for å lage elektriske forbindelser mellom komponenter. Pass på at ledninger ikke forårsaker kortslutning. Hvis det er fare for kortslutning (ettersom det er årsaken til en av ledningene til R21, ledningen på forsiden mellom SW8 og C7 og ledningen på forsiden ved siden av Y1), dekk ledningen med isolasjonstape eller varme -krympeslange.

Hvis du vil, kan du hver en PCB, i stedet for å bruke prefboard. Jeg beskrev prosesser for å lage PCB ved hjelp av toneroverføringsmetode i mitt forrige prosjekt. Board i.svg -filer skal ha 64,77 mm x 83,82 mm. Vedlagte filer som inneholder sporoppsett bør være til stor hjelp selv om du gjør tilkoblinger på prefabrikk med kobbertråder.

Trinn 4: Fest VGA -kabel

Fest VGA -kabel
Fest VGA -kabel
Fest VGA -kabel
Fest VGA -kabel
Fest VGA -kabel
Fest VGA -kabel

Klipp VGA -kabelen i to og fjern alle ledninger fra isolasjon. Merk den ene delen av kuttet kabel som IN og den andre som OUT. Loddetråder til passende pads på PCB. For å identifisere hvilken ledning som er koblet til hvilken pinne i kontakten, bruk kontinuitetstester i multimeteret ditt og konsulter deretter VGA -pinnen for å identifisere hvert ledningsformål. Du trenger bare å koble til ledninger som sender rød, grønn og blå video og horisontale og vertikale synkroniseringspulser. Hvis det er andre ledninger i kabelen din, bare lodd dem sammen igjen, eller enda bedre lodde dem tilbake gjennom prefboard, slik jeg gjorde med hvit ledning som forbinder pinnene 11 i VGA -kontaktene (tilkoblingen er nå plassert mellom R7 og R8). Skjermkort oppdager at en VGA -skjerm er plugget inn ved å føle motstand i omtrentlig område på 50 ohm til 150 ohm mellom R, G og B videopinner og jord (75 ohm termineringsmotstander i displayet, AODMoST legger til den motstanden), så I2C pins er egentlig ikke nødvendig, og VGA -kabel kan fungere uten at de er koblet til (som i kabelen jeg brukte, betyr selvfølgelig mangel på I2C at skjermen ikke vil kunne sende informasjon om støttede oppløsninger, og det kan være problematisk). Hvis det er fare for slagkrets, bruk isolasjonstape eller varmekrympeslange. Koble skjerming i to deler av ledningen til hverandre og bruk isolasjonstape til å feste begge deler av VGA -kabelen sammen og feste kabelen godt til kretskortet. Legg noen få lag papir på baksiden av kretskortet, fest det med isolasjonstape.

Trinn 5: Programmering av ATmega Microcontroller

Programmering av ATmega Microcontroller
Programmering av ATmega Microcontroller

Koble AVR -programmereren din til CON1 med passende båndkabel eller hun til hunstikkledninger. Jeg brukte USBasp og AVRDUDE, så opplasting av.hex -fil krevde at jeg utførte følgende kommando:

avrdude -c usbasp -p m328p -B 8 -U flash: w: aodmost.hex

Jeg trengte også å bytte sikringsbiter til E: FF, H: D9, L: F7, slik at mikrokontrolleren bruker 20MHz krystall. Jeg har beholdt standard utvidede og høye sikringsbyteverdier, og endret byteverdi for lav sikring fra L: 62 til L: F7 med bruk av følgende kommando:

avrdude -c usbasp -p m328p -B 8 -U lfuse: w: 0xF7: m

Hvis du får en feil under opplasting av.hex -fil, må du kanskje endre -B (bitklokke) verdi fra 8 til noe høyere, for eksempel 16.

Trinn 6: Bruk av AODMoST

Bruk av AODMoST
Bruk av AODMoST
Bruk av AODMoST
Bruk av AODMoST
Bruk av AODMoST
Bruk av AODMoST

Koble 12V- 15V DC strømforsyning til skrueterminaler (- er nærmere en toppkant av kretskortet). Plugg VGA -kontakten fra IN halvparten av VGA -kabelen til skjermkortet, kontakten fra OUT halvparten til 3D -skjermen. Enheten har 4 moduser, 3 av dem tegner par med rektangler på video. Det er 6 sider med stetting. De med tall 0 og 3 inneholder innstillinger for frekvens/periode, okklusjonshastighet, rektangel som er på/av og slikt. Sidene 1 og 4 inneholder posisjonsinnstillinger mens sidene 2 og 5 inneholder størrelsesinnstillinger. Ved å trykke på MODE + PAGE -knappene gjenoppretter du standardinnstillingene i alle moduser. Du kan lese mer om hvordan du konfigurerer AODMoST i user_manual.pdf

En mulig kilde til 3D -innhold i Top - Bottom eller Side By Side -format er dataspill. Hvis du bruker GeForce -skjermkort, kan mange spill fra denne listen spilles med CustomShader3DVision2SBS i 3DMigoto aktivert. Du kan lære hvordan du aktiverer det og hvordan du løser fargeproblemet på skjermen med 3D Vision Oppdag anaglyph 3D -modus her (merk: Jeg har funnet ut at du må sette "LeftAnaglyphFilter" til "& HFF00FF00" og "RightAnaglyphFilter" til " "& HFFFF0000" "[andre fargekombinasjoner bør også fungere, bare mangel en komponentfarge] for å deaktivere fargetone i Discover anaglyph -modus). Radeon- og GeForce -brukere skal kunne bruke TriDef 3D -programvare. Det er spill som GZ3Doom (ViveDoom) som innebygd støtter 3D og kan spilles uten spesiell programvare.

EDIT: Jeg hadde problemer med å deaktivere fargen på 3D Vision Discover i en nyere versjon av NVIDIA -drivere. Det førte meg til oppdagelsen av SuperDepth3D, en ReShade-prosess-shader. Denne programvaren er kompatibel med minst 20+ spill, og fungerer med GPUer fra forskjellige produsenter.

EDIT 2: Jeg fant løsningen på et problem med å ikke kunne deaktivere 3D Vision Discover -fargetone i nyere NVIDIA -drivere. Du må som alltid endre "StereoAnaglyphType" til "0" i "HKLM / SOFTWARE / WOW6432Node / NVIDIA Corporation / Global / Stereo3D \" og deretter låse registernøkkelen. For å åpne Registerredigering, trykk WIN+R, skriv deretter regedit og trykk ENTER. Hvis du låser en nøkkel, må du høyreklikke på den, velge Tillatelser, Avansert, Deaktiver arv, bekrefte deaktivering av arv, gå tilbake til Tillatelsesvindu og til slutt krysse Avslag -bokser for alle brukere og grupper som kan krysses av og bekrefte det med et klikk på OK -knappen. Vær oppmerksom på at det kan være behov for å endre verdiene for "LeftAnaglyphFilter" "RightAnaglyphFilter" også. Hvis du vil gjøre noen endringer, må du låse opp registernøkkelen ved å fjerne merket for avvisningsboksene eller aktivere arv.

Hvis du har problemer med å aktivere 3D Vision i utgangspunktet, fordi oppsettveiviseren i NVIDIA Kontrollpanel krasjer, må du endre "StereoVisionConfirmed" til "1" i "HKLM / SOFTWARE / WOW6432Node / NVIDIA Corporation / Global / Stereo3D \”. Dette vil aktivere 3D Vision i Discover -modus (som lar deg bruke 3DMigoto -baserte mods/reparasjoner, som lar deg sende SBS/TB 3D til en hvilken som helst skjerm etter at du ikke har kommentert "run = CustomShader3DVision2SBS" i "d3dx.ini" mod/fix -konfigurasjon fil).

Vær oppmerksom på at i 32 -biters Windows -nøkkelplassering er "HKLM / SOFTWARE / NVIDIA Corporation / Global / Stereo3D \". Også HKLM kan erstattes av HKEY_LOCAL_MACHINE.

EDIT 3: NVIDIA kommer til å fjerne støtte for 3D Vision i april 2019 (de snakker om Release 418 som den nyeste driveren som støtter den, men 3D Vision støttes fortsatt i minst 425,31).

Trinn 7: Designoversikt

Designoversikt
Designoversikt

VGA -signalet har tre komponentfarger: rød, grønn og blå. Hver av dem sendes gjennom separat ledning, med intensiteten til komponentfarge kodet til spenningsnivå som kan variere mellom 0V og 0,7V. AODMoST tegner rektangler (overlegg) ved å erstatte fargesignal generert av skjermkort med spenningsnivå levert av transistorer Q1-Q3 i emitterfølge-konfigurasjon, som konverterer spenningsimpedans på en 2k7 motstand-1k trimpot spenningsdeler. Bytte av signaler utføres av HEF4053B analog multiplexer/demultiplexer, drevet fra 12V - 15V DC strømforsyning. Motstand over HEF4053B er knyttet til forsyningsspenningen (høyere spenning - lavere motstand). Hvis lavere forsyningsspenning ville bli brukt, ville skjermkortet ikke kunne oppdage skjermen.

Resten av AODMoST drives fra 5V DC levert av 7805 spenningsregulator. Signalnivå fra mikrokontroller som styrer bytte av HEF4053B konverteres av rask BS170 MOSFET.

Horisontale og vertikale synkroniseringspulser varierer i spenningsnivå mellom 0V og 5V, og ledninger som bærer dem er direkte koblet til ATmegas avbryterpinner konfigurert som innganger med høy impedans.

Av en eller annen grunn ATmega328P-PU mikrokontrollere som jeg hadde (de har forskjellige tall på toppen av dem), har alle problemer med interne pull-up-motstander, så jeg brukte eksterne 10k pull-ups. Den eneste logiske årsaken til denne oppførselen som jeg fant, er at grunnleggende naturlover endrer seg med utvidelsen av universet og som gjør at integrerte kretser ikke fungerer (det var sannsynligvis en spøk).

Enheten bruker omtrent 50 mA.