Daftar Isi:

Pengubah Dichoptic Bergantian dari Transmisi Stereoskopik [ATmega328P+HEF4053B VGA Superimposer]: 7 Langkah
Pengubah Dichoptic Bergantian dari Transmisi Stereoskopik [ATmega328P+HEF4053B VGA Superimposer]: 7 Langkah

Video: Pengubah Dichoptic Bergantian dari Transmisi Stereoskopik [ATmega328P+HEF4053B VGA Superimposer]: 7 Langkah

Video: Pengubah Dichoptic Bergantian dari Transmisi Stereoskopik [ATmega328P+HEF4053B VGA Superimposer]: 7 Langkah
Video: INAPOSS Sharing Session #7 2024, November
Anonim
Pengubah Dichoptic Bergantian dari Transmisi Stereoskopik [ATmega328P+HEF4053B VGA Superimposer]
Pengubah Dichoptic Bergantian dari Transmisi Stereoskopik [ATmega328P+HEF4053B VGA Superimposer]
Pengubah Dichoptic Bergantian dari Transmisi Stereoskopik [ATmega328P+HEF4053B VGA Superimposer]
Pengubah Dichoptic Bergantian dari Transmisi Stereoskopik [ATmega328P+HEF4053B VGA Superimposer]

Setelah eksperimen saya dengan kacamata kristal cair yang digunakan untuk menutup mata (di sana-sini), saya memutuskan untuk membuat sesuatu yang sedikit lebih canggih dan juga tidak memaksa pengguna untuk memakai PCB di dahinya (orang terkadang dapat berperilaku di sikap bermusuhan ketika melihat orang lain dengan elektronik mencuat dari tubuh mereka, cyborg tidak mudah hari ini). Perangkat yang saya rancang memodifikasi pengiriman sinyal VGA ke tampilan 3D (video harus dalam format Atas – Bawah atau Berdampingan), meningkatkan sinyal video dengan stimulasi dichoptic. Pustaka film dan game yang sangat banyak yang dapat ditonton dan dimainkan dalam format 3D yang kompatibel akan membuat setiap pengguna AODMoST senang dan terlibat. Ada penelitian yang menunjukkan, bahwa bentuk pengobatan yang mungkin dilakukan dengan AODMoST bermanfaat bagi penderita ambliopia.

Langkah 1: Penafian

Penggunaan perangkat tersebut dapat menyebabkan serangan epilepsi atau efek samping lainnya pada sebagian kecil pengguna perangkat. Konstruksi perangkat semacam itu memerlukan penggunaan alat yang cukup berbahaya dan dapat menyebabkan kerusakan atau kerusakan pada properti. Anda membuat dan menggunakan perangkat yang dijelaskan dengan risiko Anda sendiri

Langkah 2: Suku Cadang dan Alat

Bagian dan bahan:

  • Mikrokontroler ATmega328P-PU
  • Sakelar analog HEF4053BP
  • 7805 dalam regulator tegangan paket TO-220
  • 3x 2N2222 transistor
  • Transistor BS170
  • 2x LED 3mm biru menyebar
  • LED 3mm merah menyebar
  • 2x LED 3mm kuning menyebar
  • LED 3mm hijau menyebar
  • 20 MHz HC49/US kristal
  • Konektor laki-laki 10 pin AVR ISP (IDC)
  • 2-pin PCB sekrup terminal blok konektor 5.08mm
  • Tombol sakelar taktil 8x 6x6mm
  • 3x 1k ohm trimpot 6mm
  • 3x75 ohm 1/4W resistor
  • 3x 1k ohm 1/4W resistor
  • 3x 2k7 ohm 1/4W resistor
  • 3k3 ohm 1/4W resistor
  • 11x10k ohm 1/4W resistor
  • 2x 20pF kapasitor keramik
  • 3x 100nF kapasitor keramik
  • 2x 100uF kapasitor elektrolitik
  • perfboard (70mm x 90mm, min 24 x 31 lubang array)
  • beberapa potong kawat
  • pita isolasi
  • kertas
  • VGA male ke kabel VGA male
  • Catu daya 12V – 15V DC

Peralatan:

  • pemotong diagonal
  • Tang
  • obeng pipih
  • obeng phillips kecil
  • kegunaan pisau
  • multimeter
  • stasiun solder
  • pateri
  • Programmer AVR (programmer mandiri seperti USBasp atau Anda dapat menggunakan ArduinoISP)

Langkah 3: Menyolder Komponen Elektronik

Solder Komponen Elektronik
Solder Komponen Elektronik
Solder Komponen Elektronik
Solder Komponen Elektronik
Solder Komponen Elektronik
Solder Komponen Elektronik
Solder Komponen Elektronik
Solder Komponen Elektronik

Jika Anda ingin memprogram ATmega sebelum menyolder, lakukanlah (Anda kemudian dapat meninggalkan CON1 dari PCB). Solder semua komponen elektronik ke prefboard. Gunakan kabel tembaga (yang diameter 0,5 mm dari kabel UTP harus sempurna) untuk membuat sambungan listrik antar komponen. Pastikan kabel tidak menyebabkan korsleting. Jika ada risiko korsleting (seperti yang disebabkan oleh salah satu kabel R21, kabel di bagian depan antara SW8 dan C7 dan kabel yang terletak di sisi depan di sebelah Y1), tutupi kabel dengan selotip atau panas -mengecilkan tabung.

Jika Anda suka, Anda dapat menggunakan masing-masing PCB, alih-alih menggunakan prefboard. Saya menjelaskan proses pembuatan PCB menggunakan metode transfer toner di proyek saya sebelumnya. Papan dalam file.svg harus memiliki 64.77mm x 83.82mm. File terlampir yang berisi tata letak trek akan sangat membantu bahkan jika Anda membuat sambungan di papan cetakan dengan kabel tembaga.

Langkah 4: Memasang Kabel VGA

Memasang Kabel VGA
Memasang Kabel VGA
Memasang Kabel VGA
Memasang Kabel VGA
Memasang Kabel VGA
Memasang Kabel VGA

Potong kabel VGA Anda menjadi dua dan lepaskan semua kabel dari isolasi. Tandai satu bagian kabel yang dipotong sebagai IN dan lainnya sebagai OUT. Solder kabel ke bantalan yang sesuai pada PCB. Untuk mengidentifikasi kabel mana yang terhubung ke pin mana di konektor, gunakan penguji kontinuitas di multimeter Anda dan kemudian lihat pin VGA untuk mengidentifikasi setiap tujuan kabel. Anda hanya perlu menyambungkan kabel yang mentransmisikan video Merah, Hijau, dan Biru serta pulsa sinkronisasi horizontal dan vertikal. Jika ada kabel lain di kabel Anda, cukup solder kembali, atau lebih baik lagi solder kembali melalui prefboard, seperti yang saya lakukan dengan kabel putih yang menghubungkan pin 11 di konektor VGA (koneksi sekarang terletak antara R7 dan R8). Kartu video mendeteksi bahwa layar VGA dicolokkan dengan merasakan resistansi dalam kisaran perkiraan 50 ohm hingga 150 ohm antara pin video R, G dan B dan ground (resistor penghentian 75 ohm di layar, AODMoST menambah resistansi itu), jadi I2C pin tidak benar-benar diperlukan dan kabel VGA dapat berfungsi tanpa terhubung (seperti pada kabel yang saya gunakan, tentu saja kekurangan I2C berarti monitor tidak akan dapat mengirim informasi mengenai resolusi yang didukung dan itu dapat menjadi masalah). Jika ada risiko korsleting, gunakan selotip isolasi atau tabung heat-shrink. Hubungkan pelindung di dua bagian kabel satu sama lain dan gunakan selotip untuk mengamankan kedua bagian kabel VGA bersama-sama dan untuk memasang kabel dengan kuat ke PCB. Letakkan beberapa lapis kertas di bagian belakang PCB, tempelkan dengan selotip.

Langkah 5: Pemrograman Mikrokontroler ATmega

Pemrograman Mikrokontroler ATmega
Pemrograman Mikrokontroler ATmega

Colokkan programmer AVR Anda ke CON1 dengan kabel pita yang sesuai atau kabel jumper female ke female. Saya menggunakan USBasp dan AVRDUDE, jadi mengunggah file.hex mengharuskan saya untuk menjalankan perintah berikut:

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

Saya juga perlu mengubah bit sekering menjadi E:FF, H:D9, L:F7, sehingga mikrokontroler akan menggunakan kristal 20MHz. Saya telah mempertahankan nilai byte sekering tinggi dan diperpanjang default, dan mengubah nilai byte sekering rendah dari L:62 ke L:F7 dengan menggunakan perintah berikut:

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

Jika Anda mendapatkan kesalahan saat mengunggah file.hex, Anda mungkin perlu mengubah nilai -B (bitclock) dari 8 menjadi lebih tinggi, seperti 16.

Langkah 6: Penggunaan AODMoST

Penggunaan AODMoST
Penggunaan AODMoST
Penggunaan AODMoST
Penggunaan AODMoST
Penggunaan AODMoST
Penggunaan AODMoST

Hubungkan catu daya DC 12V – 15V ke terminal sekrup (- lebih dekat ke tepi atas PCB). Pasang konektor VGA dari setengah kabel VGA IN ke kartu video, konektor dari setengah KELUAR ke tampilan 3D. Perangkat memiliki 4 mode, 3 di antaranya menggambar pasangan persegi panjang pada video. Ada 6 halaman stetting. Yang dengan angka 0 dan 3 berisi pengaturan frekuensi/periode, tingkat oklusi, persegi panjang yang aktif/nonaktif dan semacamnya. Halaman 1 dan 4 berisi pengaturan posisi sedangkan halaman 2 dan 5 berisi pengaturan ukuran. Dengan menekan tombol MODE + PAGE Anda mengembalikan pengaturan default di semua mode. Anda dapat membaca lebih lanjut tentang mengonfigurasi AODMoST di user_manual.pdf

Salah satu kemungkinan sumber konten 3D dalam format Atas – Bawah atau Berdampingan adalah game komputer. Jika Anda menggunakan kartu video GeForce, banyak game dari daftar ini dapat dimainkan dengan CustomShader3DVision2SBS dalam 3DMigoto diaktifkan. Anda dapat mempelajari cara mengaktifkannya dan cara mengatasi masalah warna yang ditampilkan pada layar dengan 3D Vision Temukan mode 3D anaglyph di sini (catatan: Saya menemukan bahwa Anda perlu menyetel "LeftAnaglyphFilter" ke "&HFF00FF00" dan "RightAnaglyphFilter" ke " "&HFFFF0000"” [kombinasi warna lain juga harus berfungsi, cukup buat satu warna komponen hilang] untuk menonaktifkan rona dalam mode Discover anaglyph). Pengguna Radeon dan GeForce harus dapat menggunakan perangkat lunak TriDef 3D. Ada game seperti GZ3Doom (ViveDoom) yang secara native mendukung 3D dan dapat dimainkan tanpa software khusus.

EDIT: Saya mengalami masalah dengan menonaktifkan warna 3D Vision Discover di versi driver NVIDIA yang lebih baru. Itu membawa saya pada penemuan SuperDepth3D, shader pasca-proses ReShade. Perangkat lunak ini kompatibel dengan setidaknya 20+ game, dan berfungsi dengan GPU dari berbagai produsen.

EDIT 2: Saya menemukan solusi untuk masalah tidak dapat menonaktifkan warna 3D Vision Discover di driver NVIDIA yang lebih baru. Anda perlu, seperti biasa, mengubah "StereoAnaglyphType" menjadi "0" di "HKLM\SOFTWARE\WOW6432Node\NVIDIA Corporation\Global\Stereo3D\" dan kemudian mengunci kunci registri. Untuk membuka Registry Editor, tekan WIN+R, lalu ketik regedit dan tekan ENTER. Mengunci kunci akan mengharuskan Anda untuk mengklik kanan padanya, pilih Izin, Lanjutan, Nonaktifkan warisan, konfirmasi penonaktifan warisan, kembali ke jendela Izin, dan terakhir centang kotak Tolak untuk semua pengguna dan grup yang dapat dicentang dan konfirmasikan dengan klik tombol OK. Perhatikan bahwa mungkin ada kebutuhan untuk mengubah nilai "LeftAnaglyphFilter" "RightAnaglyphFilter" juga. Jika Anda ingin membuat perubahan apa pun, Anda perlu membuka kunci registri dengan menghapus centang pada kotak penolakan tersebut atau mengaktifkan pewarisan.

Jika Anda mengalami masalah dengan mengaktifkan Visi 3D sejak awal, karena wizard pengaturan di Panel Kontrol NVIDIA mogok, Anda perlu mengubah "StereoVisionConfirmed" menjadi "1" di "HKLM\SOFTWARE\WOW6432Node\NVIDIA Corporation\Global\Stereo3D\”. Ini akan mengaktifkan 3D Vision dalam mode Discover (yang akan memungkinkan Anda untuk menggunakan mod/perbaikan berbasis 3DMigoto, yang memungkinkan Anda untuk menampilkan SBS/TB 3D ke tampilan apa pun setelah menghapus komentar “run = CustomShader3DVision2SBS” di konfigurasi mod/fix “d3dx.ini” mengajukan).

Perhatikan bahwa dalam 32 bit lokasi kunci Windows adalah “HKLM\SOFTWARE\NVIDIA Corporation\Global\Stereo3D\”. Juga HKLM mungkin diganti oleh HKEY_LOCAL_MACHINE.

EDIT 3: NVIDIA akan menghapus dukungan untuk Visi 3D pada April 2019 (mereka berbicara tentang Rilis 418 sebagai driver terbaru yang mendukungnya, tetapi Visi 3D masih didukung setidaknya di 425,31).

Langkah 7: Ikhtisar Desain

Ikhtisar Desain
Ikhtisar Desain

Sinyal VGA memiliki 3 komponen warna: Merah, Hijau dan Biru. Masing-masing dikirim melalui kabel terpisah, dengan intensitas kode warna komponen ke tingkat tegangan yang dapat bervariasi antara 0V dan 0,7V. AODMoST menggambar persegi panjang (overlay) dengan mengganti sinyal warna yang dihasilkan oleh kartu video dengan level tegangan yang disediakan oleh transistor Q1-Q3 dalam konfigurasi pengikut emitor, yang mengubah impedansi tegangan pada resistor 2k7 – pembagi tegangan trimpot 1k. Perpindahan sinyal dilakukan oleh multiplexer/demultiplexer analog HEF4053B, yang ditenagai dari catu daya 12V – 15V DC. Resistansi di seluruh HEF4053B terkait dengan tegangan suplainya (tegangan lebih tinggi – resistansi lebih rendah). Jika tegangan suplai yang lebih rendah akan digunakan, kartu video tidak akan dapat mendeteksi tampilan.

Sisa AODMoST ditenagai dari 5V DC yang disediakan oleh regulator tegangan 7805. Level sinyal dari mikrokontroler yang mengontrol switching HEF4053B diubah oleh fast BS170 MOSFET.

Pulsa sinkronisasi horizontal dan vertikal bervariasi dalam level tegangan antara 0V dan 5V dan kabel yang membawanya terhubung langsung ke pin interupsi ATmegas yang dikonfigurasi sebagai input impedansi tinggi.

Untuk beberapa alasan mikrokontroler ATmega328P-PU yang saya miliki (mereka memiliki nomor yang berbeda di atasnya), semua memiliki masalah dengan resistor pull-up internal, jadi saya menggunakan pull-up 10k eksternal. Satu-satunya alasan logis untuk perilaku ini yang saya temukan, adalah bahwa hukum dasar alam berubah dengan perluasan alam semesta dan itu membuat sirkuit terpadu tidak berfungsi (mungkin itu lelucon).

Perangkat mengkonsumsi sekitar 50 mA.