Thursday, November 15, 2012

On-Board The Nautilus: The Bridge

While we'd love to be able to make the bridge book-accurate, it'd require knocking down walls of the house, so we've had to make some compromises. Even so, there's some really, really cool things in the works.

First of all - we needed a 'view screen' window to allow us to see where the ship was going. Which meant we needed something to simulate being under the water. I did some searching and found a couple ocean games that were okay but not great. Gogas, as usual, then went out and found something perfect as well as insanely complicated to acquire.

Japan made a game called Aquanaut's Holiday, but it never had a US release. Gogas found the trailer and showed it to me, and we both agreed it was perfect.


Shame we didn't have it here, eh? So, Gogas ordered the game from Japan, then spent a whole weekend unlocking everything so that we could travel through it in sandbox mode. Undeterred by the fact that the game was in freakin' Japanese, he found a YouTube video that walked through the game step by step with someone translating it into English, and used that as a reference to play it.

With the sea now around us, we needed a way to sail the ship. Again, Gogas went over the deep end (hur), and decided to build a bridge that would be fully functional for our pilot.

That meant using rotary encoders to translate the PS3 controls to a mouse, then wiring THAT to bridge controls. Ultimately, it would allow the pilot to use a ship's wheel, ship's telegraph and dive gauge to actually control the game - he'd turn the wheel, shift the gauge, and the viewscreen would show the Nautilus diving, turning, speeding up and slowing down through the ocean.

The construction is still in-progress, but here's a look at one of the controls:


Along with the pilot's station, the bridge will have seating, map cubbies, and a gigantic map covering one entire wall. 

1 comment:

  1. Since Aquanaut's Holiday is a PS3 game, getting the game to recognize outside input sources was going to be a challenge. Fortunately, that path was already paved by other computer engineers with a project called GIMX that aims to control consoles using PC input devices (mouse and keyboard):

    http://blog.gimx.fr/

    GIMX is software running on a PC, but it needs hardware to get input into the PS3 or Xbox 360. For the PS3, it does this using a microcontroller (I used a Teensy, but there are others that can be used) to translate the PC input into PS3 input, and then a serial-to-TTL adapter (a $3 circuit board from China) to get that PS3 input into the PS3.

    So as long as a PC can recognize something as an input device, it can be sent into the PS3. There are other microcontrolers that can take data from various sensors (potentiometers, buttons, switches, encoders, anything you can think of) and translate those signals into PC mouse and keyboard input. For this, I decided to use an Arduino Leonardo.

    The ship wheel's rotation will be a rotary encoder - these can spin infinitely and send a signal when one of its 24 switches around its circle of movement is hit, and to send a mouse left or right movement message to a PC. The Leonardo will also take input from another dial mounted to that gray tube in the last photo (a potentiometer this time) and translate that into a forward or backward speed. There will finally be an accelerometer sensing direction on 3 axes inside the ship wheel stand that can sense being tilted forward or backwards, and that will be translated into depth or raising controls.

    So! Sensor input from ship wheel, speed handle, and accelerometer --> Arduino Leonardo translating into mouse and keyboard movements --> PC running GIMX mapping to keys on a PS3 controller --> USB to Teensy to translate into PS3 input --> serial-to-TTL to finally push that into the PS3.

    Hopefully it all works.

    ReplyDelete