Kelahiran konsep Remote Reality
Sejarah proyek "gila" kami dimulai tiga tahun lalu ketika, sambil memikirkan prospek masa depan pengembangan industri game, teman saya Lesha berkata: "Bayangkan masa depan di mana orang-orang dalam bentuk hiburan dari bagian dunia mana pun mengoperasikan robot nyata di tempat bermain seperti" avatar. "

Gagasan ini pada awalnya bagi kami cukup menarik dan tidak sulit untuk diimplementasikan. Kami segera duduk mencari proyek serupa dan terkejut menemukan bahwa tidak ada yang melakukan hal seperti ini. Rasanya aneh, karena idenya secara harfiah "di permukaan". Kami menemukan banyak jejak proyek prototipe amatir dalam bentuk sasis dengan kamera berbasis Arduino, tetapi tidak ada yang membawa proyek apa pun ke kesimpulan logisnya. Kemudian, mengatasi kesulitan dan masalah yang tampaknya tak ada habisnya, kami memahami alasan kurangnya analog, tetapi awalnya gagasan itu tampak sangat sederhana dan cepat diimplementasikan kepada kami.
Minggu berikutnya kami mengabdikan diri untuk pengembangan konsep. Kami membayangkan puluhan varietas robot dengan kemampuan berbeda dan ratusan rentang permainan, di antaranya para pemain dapat langsung berpindah melalui "teleport". Siapa pun yang ingin, berdasarkan "keputusan" kami, memiliki kesempatan untuk membangun tempat pelatihan permainan mereka sendiri dari berbagai skala.
Kami segera memutuskan bahwa pemikiran ini lebih cocok dengan konsep daya tarik hiburan, daripada permainan komputer. Orang-orang menyukai hiburan dan menginginkan sesuatu yang baru, dan kami tahu apa yang ditawarkan kepada mereka. Seperti dalam bisnis apa pun, masalah pengembalian segera muncul, karena sekilas tampaknya model fisik kita dibatasi oleh jumlah robot. Tetapi mengalikan robot dengan 24 jam dan harga satu jam 5-10 dolar, keraguan menghilang. Model keuangan itu bukan Klondike, tetapi itu terbayar bahkan pada beban 10%.
Sangat cepat, nama konsep baru muncul di kepala kita: Remote Reality, dengan analogi dengan Virtual Reality dan Augmented Reality.

Seperti para "peneliti" lainnya, pertama-tama, kami mengambil mesin itu di kontrol radio, meletakkan kamera Wi-Fi China di atasnya, memasang papan Arduino dan robot kami "pergi." Kami meminta teman kami dari AS untuk terhubung ke mesin tik melalui Internet. Dia bisa berkeliling kantor kami dan kami senang. Penundaan kontrol dan aliran video dalam beberapa detik bagi kami tampaknya bukan masalah.
Mulai saat ini, kami telah membagi pekerjaan kami menjadi dua area:
- pemodelan dan konstruksi tempat bermain
- pengembangan dan pembuatan robot dan sistem kontrol
Gullivers di kota Pripyat
Saya akan memulai kisah saya dengan tempat latihan. Kami mengerti bahwa orang harus bermain di suatu tempat. Tempat itu harus terkenal di dunia, “misterius” dan tidak rumit dalam implementasi teknis. Menelusuri banyak pilihan, kami tiba-tiba menemukan ide Chernobyl. Zona Chernobyl memenuhi semua persyaratan kami, dan yang paling penting, semua kemungkinan kerusakan di masa depan dan kerusakan pada arena bermain dapat dikaitkan dengan pos kiamat.
Setelah menemukan kamar dengan luas 200 meter persegi, kami mulai bekerja, yang akhirnya berlangsung dua tahun. Kami melukis jalan-jalan dan tekstur rumah, menciptakan model bangunan tiga dimensi, termasuk lantai internal. Kemudian mereka memotong semuanya dari papan partikel dan kayu lapis, mengumpulkan bangunan dari ratusan bagian yang berbeda.

Kami mencoba membuat ulang, seakurat mungkin, semua tekstur Pripyat, "memata-matai" di peta Google. Tentu saja, ukuran ruangan tidak memungkinkan kami untuk membuat semuanya dengan tepat, dan kami tidak ingin ketinggalan detailnya, oleh karena itu, misalnya, kami harus memindahkan NPP Chernobyl lebih dekat ke Pripyat.
Sulit untuk menghitung berapa ratusan papan, puluhan lembar kayu lapis, papan serat dan "barang habis pakai" lainnya yang kami habiskan. Selama tiga bulan terakhir, kami merangkak merangkak dengan kuas dan cat, mendekorasi rumah dan lantai. Kami menginginkan detail maksimal. Skala kota itu ternyata 1:16 dan rumah-rumah setinggi 9 lantai kira-kira setinggi dada orang dewasa. Berada di kota ini kami merasa seperti raksasa nyata.

Sedikit tentang kita
Maka mungkin inilah saatnya untuk berbicara tentang tim kami. Awalnya, kami hanya memiliki dua teman insinyur. Berpikir tentang proyek ini, kami memahami bahwa akan sulit untuk menemukan investor untuk ide "petualangan" seperti itu dan kami memutuskan untuk melakukan segalanya untuk uang kami. Selama bekerja, banyak orang membantu kami. Seseorang gratis, seseorang yang kami sewa untuk membantu.

Contoh kerja tim yang bagus adalah kisah pencetakan 3D. Kami merakit printer kami dan mencetak bagian-bagian untuk pertama kalinya pada kami sendiri, sampai kami menyimpulkan bahwa Anda tidak bisa menjadi spesialis dalam segala hal. Pencetakan membutuhkan banyak waktu, bagian-bagiannya besar dan pernikahan yang tidak terduga pada akhir pencetakan bagian merusak semua rencana kami. Hasilnya, kami menemukan spesialis pencetakan 3D "sempit" yang kemudian menjadi bagian dari tim kami. Setelah berbagi impian kami, ia membantu kami membuat tubuh robot hanya dengan biaya plastik.
Mengumpulkan robot, tidak bisa kami lakukan tanpa bantuan turner. Salah satu teman kami membantu kami dalam hal ini. Pekerjaan konstruksi di TPA sering membutuhkan solusi yang tidak standar dan kompleks, kami sangat beruntung bertemu dengan orang-orang yang juga secara aktif membantu kami dalam masalah ini.
Proyek ini sangat beruntung dengan perancang, artis, bakatnya sangat berharga.



Untuk menghemat sebanyak mungkin pada pembangunan arena permainan, kami harus melakukan hampir semuanya sendiri. Tetapi selain tempat pelatihan yang besar, ada juga bagian teknis ...
Mengalahkan Penundaan Video
Tentunya pertanyaan tentang implementasi rekayasa proyek akan lebih menarik bagi Anda daripada deskripsi "perencanaan kota" kami.
Mari kita kembali ke momen ketika, seperti yang Anda ingat, kami meletakkan kamera di "gerobak" dan dapat mengendalikannya. Setelah ini, sudah waktunya untuk memilih perangkat keras dan teknologi untuk membuat robot kami. Di sini kejutan pertama sedang menunggu kami: setelah melewati selusin kamera, kami tidak dapat mencapai penundaan sinyal di mana mengendalikan robot melalui Internet akan nyaman. Semuanya menjadi rumit pada saat diperlukan untuk memesan sampel kamera di Cina dan mengujinya.

Kami ingin membuat sistem kontrol robot sepenuhnya di browser tanpa "unduh klien kami yang luar biasa" dan pemutar Flash yang ketinggalan zaman. Ini secara signifikan mempersempit daftar teknologi dan kamera yang mendukungnya. Kami bereksperimen untuk waktu yang lama dengan transmisi aliran video dalam format MJPEG, tetapi pada akhirnya kami meninggalkan ide ini. Percobaan ini menghabiskan biaya enam bulan untuk kita. Kami bahkan sepenuhnya merakit lima robot pertama dan meluncurkan pengujian terbuka untuk semua orang, tetapi ...
Tes langsung menunjukkan ketidakmampuan router untuk memproses streaming video besar melalui udara dari beberapa robot dalam format MJPEG, segera setelah kami mencoba mengoptimalkan resolusi gambar. Aliran video dari satu robot tidak dapat dibuat kurang dari 20-30 Mbit, yang membuatnya mustahil untuk operasi simultan yang stabil dari 20 robot yang direncanakan oleh kami. Selain itu, kami tidak dapat menemukan solusi transmisi suara yang siap pakai tanpa penundaan. Ini mengarah pada fakta bahwa kami harus mencari lagi teknologi yang sesuai untuk tugas kami.
Akibatnya, pilihan kami ditentukan di WebRTC. Ini memastikan kami mentransmisikan gambar dan suara video dengan penundaan hanya 0,2 detik.

Maka sudah waktunya untuk mensimulasikan dan merakit robot. Agar tidak terlalu bergantung pada pemasok eksternal, kami mencetak semua detail bot kami pada printer 3D. Ini memungkinkan kami untuk membuat model robot yang paling ringkas, dan secara optimal menempatkan semua elektronik dan baterai yang kuat di dalamnya.
Sistem tenaga
Pertanyaan selanjutnya terkait dengan catu daya, karena kami benar-benar ingin mengganti baterai sesedikit mungkin. Setelah melalui banyak opsi yang sudah jadi, kami memilih baterai kami sendiri, yang dirangkai dari elemen-elemen dari Panasonic 18650B. Tegangan baterai 17 volt dan kapasitas 6800 mAh memungkinkan robot kami bepergian selama 10-12 jam dengan sekali pengisian daya.

Selama percobaan, kami berhasil "membunuh" seratus elemen, karena kami ingin menggunakan kapasitansi elemen secara maksimal, dan tegangan pada akhir pembuangan turun sangat cepat dan indikator voltase sederhana kami, yang dipasang pada pembagi, tidak selalu memberikan pembacaan yang akurat. Tetapi pada akhirnya, kami menaikkan ambang batas untuk voltase minimum yang diijinkan dari 2,5 volt menjadi 3,2, ditambah kami menetapkan sirkuit mikro untuk kontrol tegangan yang tepat dan kasing Panasonic “mati” berhenti.
Sebagai pengisi daya, kami memilih perangkat iMax B6, yang populer di kalangan pemodel, dengan opsi pengisian daya dalam mode elemen balancing. Kami "membunuh" beberapa baterai karena kalibrasi yang tidak benar dari salinan Cina dari iMax B6. Kami menghubungkan lima kaleng dan menagihnya dalam mode balancing. Pada akhir pengisian, tegangan total baterai diperiksa tanpa memecahnya menjadi sel, tetapi kenyataannya satu bank tidak terisi penuh dan "mati" terlebih dahulu.
Motor untuk robot
Tentunya banyak dari Anda telah bertanya pada diri sendiri pertanyaan: mengapa 17 volt? Jawabannya ada pada motornya. Motor adalah bagian kedua dari "siksaan Cina" kami setelah memilih kamera. Kami membahas banyak mesin yang berbeda. Yang mengejutkan kami, hampir semua dari mereka memiliki sumber daya yang kecil dan dengan cepat gagal. Setelah 3-4 bulan, selama percobaan, kami berhasil menemukan pabrikan motor "normal" dalam hal keandalan, tetapi masih belum ada solusi final.

Pada mesin konvensional, transmisi memainkan peran kunci dalam mentransfer daya dari mesin ke roda. Kami tidak memilikinya. Dengan mengurangi tegangan pada motor, kami berhasil mengurangi kecepatan robot, tetapi pada saat yang sama kekuatannya hilang dan "tank" kami tidak bisa perlahan berbalik. Kami segera memecahkan masalah ini.
Oh, aku mengatakan kata itu "tanchiki."
Mengapa "tank-tank" itu?
Kenapa tepatnya "tank"? Jawabannya sederhana. Jika kita menambahkan penundaan kamera ke saluran Internet yang tidak dikenal, maka beberapa penduduk Australia akan dapat dengan nyaman mengontrol hanya sesuatu yang relatif lambat. Ini adalah argumen pertama yang mendukung pemilihan tank, dan argumen kedua, yang akhirnya meyakinkan kami, terdiri dari kontrol nyaman robot. Seseorang terbiasa dengan mengklik "panah" di sebelah kanan untuk menunggu robot berbelok ke kanan, dan tanpa ulat, itu tidak mungkin dilakukan, karena hanya tank yang berputar "di tempat". Kami juga senang dengan "kemampuan lintas negara super" yang diharapkan. Setelah memesan sekotak rel karet di Cina, kami mulai mencetak "roda-rol" di bawah rel.

Tes pertama menghancurkan impian kami untuk berkeping-keping, ulat sering terbang dari tangki ketika menabrak rintangan rendah. Setelah mempelajari dasar-dasar mekanika tangki dan telah mencoba berbagai tensioner dan roda bantu, kami masih belum menyelesaikan masalah ini. Saya harus berpisah dengan ulat. Karena robot sudah dicetak dan dirakit, kami harus mencari solusi cepat dan tidak rumit, tapi itu satu hal - roda yang bagus dengan tapak karet. Dan bagaimana Anda menghidupkan tempat yang Anda tanyakan? Kami "keluar" dengan menghubungkan kedua sumbu bersama-sama dengan tali tipis dari printer 3D. Secara umum, kami mendapat robot beroda dengan penggerak semua roda dan rotasi di tempatnya.

Robot jantung
Kami telah berbicara tentang sebagian besar elemen robot kami dan tidak mengatakan apa-apa tentang komponen yang paling penting.

Bot kami didasarkan pada komputer mini Raspberry Pi di Linux OS dan perangkat lunak yang dikembangkan khusus yang memungkinkan robot untuk berkomunikasi dengan server. Raspberry Pi bekerja bersama dengan papan kontrol dan pemantauan kami. Papan termasuk mikrokontroler, driver motor, chip pemrosesan sinyal dari berbagai sensor, dan modul untuk kontrol yang tepat dari tegangan baterai. Untuk kemudahan perakitan, kami telah menerapkan sepenuhnya semua koneksi periferal pada konektor terpisah.

Seperti yang saya sebutkan sebelumnya, kita sering harus mengganti komponen ketika kita dihadapkan dengan masalah yang tidak terduga. Itu terjadi kali ini juga. Awalnya, kami merakit robot pertama di Orange Pi, untuk menghemat uang. Di masa depan, kami harus menggantinya dengan Raspberry Pi 2 B. Tapi ini bukan akhir. Kami segera lagi harus mengganti komputer mini ini dengan versi Raspberry Pi 3 B + yang memiliki modul 5 GHz di papan WiFi. Tetapi lebih lanjut tentang itu nanti.
Penyiapan Wi-Fi
Masalah berikutnya yang menunggu kami adalah saluran radio Wi-Fi. Kami mempelajarinya hanya dengan memulai tes dengan segera 10 robot bergerak. Tempat pembuangan sampah kami terletak di ruang bawah tanah tertutup dan "refleksi ulang" dinding beton bertulang sangat mengerikan. Perintah kontrol berjalan dengan baik, tetapi streaming video dengan liar “melambat”, ketika salah satu robot pergi ke ujung ruangan.
Transisi dari 2,4 GHz ke 5 GHz membantu kami mengatasi pemuatan saluran. Tetapi kesulitan tidak berakhir di sana. Jika robot melaju di sudut, sinyal turun di bawah -80 dBm dan rem dimulai. Akhirnya, kami memecahkan masalah dengan memasang antena sektor dengan penerimaan keragaman dan meningkatkan daya pemancar hingga setengah watt. Tentu saja, router harus "diambil" dari segmen solusi bisnis dengan prosesor yang kuat.
Perlu disebutkan bahwa alih-alih meningkatkan daya, kami mencoba untuk waktu yang lama untuk mengkonfigurasi mode roaming "mulus" berdasarkan solusi Ubiquity, tetapi sayangnya, modul Wi-Fi yang kami butuhkan "menolak" untuk mendukungnya, tetapi iPhone bekerja dengan sempurna, bergerak di antara beberapa titik akses.


Setelah mengumpulkan "sepuluh" robot dan meluncurkan server pemantauan dan kontrol, pada November 2018 kami pergi ke Kickstarter dengan proyek Isotopium Chernobyl . Kami bahkan tidak menyadari bahwa puluhan ribu orang akan segera mencoba permainan kami.
Baca tentang artikel kami di masa depan dan mengapa kami hampir menutup proyek di artikel kami berikutnya: Game online dengan model RC yang dikendalikan melalui Internet
