İçindekiler:
- 1. Adım: Sorumluluk Reddi
- Adım 2: Parçalar ve Araçlar
- Adım 3: Elektronik Bileşenleri Lehimleme
- Adım 4: VGA Kablosunu Takma
- Adım 5: ATmega Mikrodenetleyicinin Programlanması
- Adım 6: AODMoST Kullanımı
- 7. Adım: Tasarıma Genel Bakış
Video: Stereoskopik İletimin Dönüşümlü Okluptik Değiştiricisi [ATmega328P+HEF4053B VGA Superimposer]: 7 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:16
Gözleri (burada ve orada) kapatmak için kullanılan sıvı kristal gözlüklerle yaptığım deneylerden sonra, biraz daha karmaşık ve kullanıcıyı alnına PCB takmaya zorlamayan bir şey yapmaya karar verdim (insanlar bazen Başkalarının vücutlarından elektronik cihazlar çıkardığını görünce düşmanca tavırlar sergileyen siborglar bu günlerde pek kolay olmuyor). Tasarladığım cihaz, VGA sinyalinin 3D ekrana gönderilmesini değiştirir (video Üst – Alt veya Yan Yana formatında olmalıdır), dikoptik stimülasyon ile video sinyalini geliştirir. Uyumlu 3D formatlarda izlenebilen ve oynanabilen muazzam film ve oyun kütüphanesi, herhangi bir AODMoST kullanıcısını mutlu ve etkileşimli hale getirmelidir. AODMoST ile mümkün olan tedavi biçimlerinin ambliyopi hastalarına faydalı olduğunu gösteren çalışmalar mevcuttur.
1. Adım: Sorumluluk Reddi
Böyle bir cihazın kullanımı, cihaz kullanıcılarının küçük bir kısmında epileptik nöbetlere veya başka olumsuz etkilere neden olabilir. Böyle bir cihazın yapımı, orta derecede tehlikeli aletlerin kullanılmasını gerektirir ve maddi hasara veya hasara neden olabilir. Tanımlanan cihazı kendi sorumluluğunuzda kurar ve kullanırsınız
Adım 2: Parçalar ve Araçlar
Parçalar ve malzemeler:
- ATmega328P-PU mikrodenetleyici
- HEF4053BP analog anahtar
- 7805, TO-220 paket voltaj regülatöründe
- 3 adet 2N2222 transistör
- BS170 transistör
- 2 adet dağınık mavi 3 mm LED
- dağınık kırmızı 3mm LED
- 2 adet dağınık sarı 3 mm LED
- dağınık yeşil 3mm LED
- 20 MHz HC49/ABD kristali
- 10 pinli AVR ISP (IDC) erkek konnektör
- 2 pimli PCB vidalı terminal bloğu 5.08 mm konektör
- 8x 6x6mm dokunsal geçiş butonları
- 3x 1k ohm trimpot 6mm
- 3x 75 ohm 1/4W direnç
- 3x 1k ohm 1/4W direnç
- 3x 2k7 ohm 1/4W direnç
- 3k3 ohm 1/4W direnç
- 11x 10k ohm 1/4W direnç
- 2x 20pF seramik kapasitörler
- 3x 100nF seramik kapasitörler
- 2x 100uF elektrolitik kapasitörler
- perfboard (70mm x 90mm, min 24 x 31 delik dizisi)
- birkaç parça tel
- yalıtım bandı
- kağıt
- VGA erkek - VGA erkek kablosu
- 12V – 15V DC güç kaynağı
Aletler:
- diyagonal kesici
- pense
- düz uçlu tornavida
- küçük yıldız tornavida
- maket bıçağı
- multimetre
- Lehimleme istasyonu
- lehim
- AVR programcısı (USBasp gibi bağımsız programcı veya ArduinoISP kullanabilirsiniz)
Adım 3: Elektronik Bileşenleri Lehimleme
ATmega'yı lehimlemeden önce programlamak istiyorsanız, yapın (daha sonra CON1'i PCB'nin dışında bırakabilirsiniz). Tüm elektronik bileşenleri prefboard'a lehimleyin. Bileşenler arasında elektrik bağlantıları yapmak için bakır teller (UTP kablosundan 0,5 mm çapında olanlar mükemmel olmalıdır) kullanın. Kabloların kısa devreye neden olmadığından emin olun. Kısa devre riski varsa (nedeni R21'in uçlarından birinde, ön tarafta SW8 ile C7 arasında ve ön tarafta Y1'in yanında bulunan telde olduğu için), kabloyu yalıtım bandı veya ısı ile kapatın. - shrink boru.
İsterseniz, prefboard kullanmak yerine her bir PCB'yi kullanabilirsiniz. Bir önceki projemde toner transfer yöntemi ile PCB yapma işlemlerini anlatmıştım..svg dosyalarındaki pano 64.77mm x 83.82mm olmalıdır. Bakır teller ile ön panoda bağlantılar yapıyor olsanız bile, ray düzenlerini içeren ekli dosyalar çok yardımcı olacaktır.
Adım 4: VGA Kablosunu Takma
VGA kablonuzu ikiye kesin ve tüm kabloları yalıtımdan çıkarın. Kesilen kablonun bir kısmını IN ve diğer kısmını OUT olarak işaretleyin. Kabloları PCB üzerindeki uygun pedlere lehimleyin. Konektörde hangi kablonun hangi pime bağlı olduğunu belirlemek için multimetrenizde süreklilik test cihazı kullanın ve ardından her bir kablo amacını belirlemek için VGA pim çıkışına danışın. Yalnızca Kırmızı, Yeşil ve Mavi video ile yatay ve dikey senkronizasyon darbeleri ileten kabloları bağlamanız gerekir. Kablonuzda başka teller varsa, bunları tekrar lehimleyin veya daha iyisi, VGA konektörlerindeki 11 numaralı pinleri bağlayan beyaz telde yaptığım gibi ön panodan tekrar lehimleyin (bağlantı artık R7 ile R8 arasında yer almaktadır). Video kartı, R, G ve B video pinleri ve toprak arasında yaklaşık 50 ohm ila 150 ohm aralığında direnç algılayarak bir VGA ekranın takılı olduğunu algılar (ekranda 75 ohm sonlandırma dirençleri, AODMoST bu dirence eklenir), bu nedenle I2C pinler gerçekten gerekli değildir ve VGA kablosu bağlanmadan çalışabilir (kullandığım kabloda olduğu gibi, elbette I2C eksikliği, monitörün desteklenen çözünürlüklerle ilgili bilgi gönderemeyeceği ve sorunlu olabileceği anlamına gelir). Atım devresi riski varsa, yalıtım bandı veya ısıyla daralan makaron kullanın. Telin iki parçasındaki koruyucuyu birbirine bağlayın ve VGA kablosunun her iki parçasını birbirine sabitlemek ve kabloyu PCB'ye sıkıca tutturmak için yalıtım bandı kullanın. PCB'nin arkasına birkaç kat kağıt koyun, yalıtım bandıyla yapıştırın.
Adım 5: ATmega Mikrodenetleyicinin Programlanması
AVR programlayıcınızı uygun şerit kablo veya dişiden dişiye jumper kablolarla CON1'e bağlayın. USBasp ve AVRDUDE kullandım, bu nedenle.hex dosyasını yüklemek aşağıdaki komutu uygulamamı gerektiriyordu:
avrdude -c usbasp -p m328p -B 8 -U flash:w:aodmost.hex
Ayrıca sigorta bitlerini E:FF, H:D9, L:F7 olarak değiştirmem gerekiyordu, böylece mikrodenetleyici 20MHz kristal kullanacak. Varsayılan genişletilmiş ve yüksek sigorta bayt değerlerini korudum ve aşağıdaki komutu kullanarak düşük sigorta bayt değerini L:62'den L:F7'ye değiştirdim:
avrdude -c usbasp -p m328p -B 8 -U lfuse:w:0xF7:m
.hex dosyasını yüklerken bir hata alırsanız, -B (bitclock) değerini 8'den 16 gibi daha yüksek bir değere değiştirmeniz gerekebilir.
Adım 6: AODMoST Kullanımı
12V – 15V DC güç kaynağını vidalı terminallere bağlayın (- PCB'nin üst kenarına daha yakındır). VGA konektörünü VGA kablosunun IN yarısından video kartına, konektörü OUT yarısından 3D ekrana takın. Cihazın 4 modu vardır, 3 tanesi video üzerine çift dikdörtgen çizer. 6 sayfa stetting var. 0 ve 3 numaralı olanlar frekans/periyot, kapama oranı, dikdörtgenin açık/kapalı olması vb. ayarları içerir. 1. ve 4. sayfalar konum ayarlarını içerirken 2. ve 5. sayfalar boyut ayarlarını içerir. MOD + SAYFA düğmelerine basarak tüm modlarda varsayılan ayarları geri yüklersiniz. AODMoST'u yapılandırma hakkında daha fazla bilgiyi user_manual.pdf dosyasında okuyabilirsiniz.
Üst – Alt veya Yan Yana biçiminde olası bir 3B içerik kaynağı bilgisayar oyunlarıdır. GeForce ekran kartı kullanıyorsanız, bu listedeki birçok oyun 3DMigoto etkinleştirilmiş CustomShader3DVision2SBS ile oynanabilir. Bunu nasıl etkinleştireceğinizi ve 3D Vision tarafından ekrana koyulan renk tonu sorununu nasıl çözeceğinizi buradan öğrenebilirsiniz anaglif 3D modunu keşfedin (not: "LeftAnaglyphFilter" öğesini "&HFF00FF00" ve "RightAnaglyphFilter" öğesini " olarak ayarlamanız gerektiğini öğrendim "&HFFFF0000"” [diğer renk kombinasyonları da çalışmalıdır, anaglif Keşfet modunda renk tonunu devre dışı bırakmak için yalnızca bir bileşen rengini eksik yapın]). Radeon ve GeForce kullanıcıları TriDef 3D yazılımını kullanabilmelidir. Doğal olarak 3D'yi destekleyen ve herhangi bir özel yazılım olmadan oynanabilen GZ3Doom (ViveDoom) gibi oyunlar var.
EDIT: NVIDIA sürücülerinin daha yeni sürümünde 3D Vision Discover renk tonunu devre dışı bırakmakla ilgili sorunlar yaşadım. Bu beni bir ReShade işlem sonrası gölgelendirici olan SuperDepth3D'nin keşfine götürdü. Bu yazılım en az 20'den fazla oyunla uyumludur ve farklı üreticilerin GPU'ları ile çalışır.
EDIT 2: Yeni NVIDIA sürücülerinde 3D Vision Discover renk tonunu devre dışı bırakamama sorununun çözümünü buldum. Her zaman olduğu gibi, “HKLM\SOFTWARE\WOW6432Node\NVIDIA Corporation\Global\Stereo3D\” içinde “StereoAnaglyphType” öğesini “0” olarak değiştirmeniz ve ardından kayıt defteri anahtarını kilitlemeniz gerekir. Kayıt Defteri Düzenleyicisi'ni açmak için WIN+R'ye basın, ardından regedit yazın ve ENTER'a basın. Bir anahtarı kilitlemek, üzerine sağ tıklamanızı, İzinler, Gelişmiş, Devralmayı devre dışı bırakma, mirasın devre dışı bırakılmasını onaylamanızı, İzinler penceresine geri dönmenizi ve son olarak işaretlenebilecek tüm kullanıcılar ve gruplar için Reddet kutularını işaretlemenizi ve bir ile onaylamanızı gerektirir. tamam düğmesine tıklayın. "LeftAnaglyphFilter" "RightAnaglyphFilter" değerlerinin de değiştirilmesi gerekebileceğini unutmayın. Herhangi bir değişiklik yapmak istiyorsanız, bu reddetme kutularının işaretini kaldırarak veya devralmayı etkinleştirerek kayıt defteri anahtarının kilidini açmanız gerekir.
NVIDIA Kontrol Panelindeki kurulum sihirbazı çöktüğü için ilk etapta 3D Vision'ı etkinleştirme konusunda sorun yaşıyorsanız, “HKLM\SOFTWARE\WOW6432Node\NVIDIA Corporation\Global\Stereo3D\ içindeki “StereoVisionConfirmed” öğesini “1” olarak değiştirmeniz gerekir.”. Bu, Discover modunda 3D Vision'ı etkinleştirir (bu, "d3dx.ini" mod/fix yapılandırmasında "run = CustomShader3DVision2SBS" ifadesini kaldırdıktan sonra herhangi bir ekrana SBS/TB 3D çıktısı almanıza olanak tanıyan 3DMigoto tabanlı modları/düzelmeleri kullanmanıza olanak tanır dosya).
32 bit Windows anahtar konumunun “HKLM\SOFTWARE\NVIDIA Corporation\Global\Stereo3D\” olduğunu unutmayın. Ayrıca HKLM, HKEY_LOCAL_MACHINE ile değiştirilebilir.
EDIT 3: NVIDIA, Nisan 2019'da 3D Vision desteğini kaldıracak (Sürüm 418'den onu destekleyen en yeni sürücü olarak bahsediyorlar, ancak 3D Vision hala en az 425.31'de destekleniyor).
7. Adım: Tasarıma Genel Bakış
VGA sinyalinin 3 bileşen rengi vardır: Kırmızı, Yeşil ve Mavi. Her biri, 0V ile 0.7V arasında değişebilen voltaj seviyesine kodlanmış bileşen renk yoğunluğu ile ayrı kablo aracılığıyla gönderilir. AODMoST, video kartı tarafından üretilen renk sinyalini, 2k7 rezistör – 1k trimpot voltaj bölücü üzerindeki voltajın empedansını dönüştüren emitör takipçi konfigürasyonunda Q1-Q3 transistörleri tarafından sağlanan voltaj seviyesiyle değiştirerek dikdörtgenler (bindirme) çizer. Sinyallerin geçişi, 12V – 15V DC güç kaynağından beslenen HEF4053B analog çoklayıcı/demultiplexer tarafından yapılır. HEF4053B'deki direnç, besleme voltajına bağlıdır (daha yüksek voltaj - daha düşük direnç). Daha düşük besleme voltajı kullanılırsa, ekran kartı ekranı algılayamaz.
AODMoST'un geri kalanı, 7805 voltaj regülatörü tarafından sağlanan 5V DC'den güç alır. HEF4053B'nin anahtarlanmasını kontrol eden mikrodenetleyiciden gelen sinyal seviyesi, hızlı BS170 MOSFET tarafından dönüştürülür.
Yatay ve dikey senkronizasyon darbeleri, 0V ile 5V arasında değişen voltaj seviyelerindedir ve bunları taşıyan teller, yüksek empedans girişleri olarak yapılandırılmış ATmegas kesme pinlerine doğrudan bağlıdır.
Bazı nedenlerden dolayı sahip olduğum ATmega328P-PU mikrodenetleyicileri (üstlerinde farklı sayılar var), hepsinin dahili pull-up dirençleriyle sorunları var, bu yüzden harici 10k pull-up'lar kullandım. Bulduğum bu davranışın tek mantıklı nedeni, evrenin genişlemesiyle birlikte temel doğa yasalarının değişmesi ve bu da entegre devrelerin arızalanmasına yol açması (muhtemelen şakaydı).
Cihaz yaklaşık 50 mA tüketir.