Final project writeup

This writeup reviews Navya and Diego’s final project

Concept: What was your project about? How did you use technology to accomplish this? What design principles did you apply?

Dwelling on the theme of space, we decided to work on a game that would combine travelling across outer space and also travelling an actual (but small) distance. For that reason, we decided to do a project that would allow the user to “travel” space by controlling a spaceship.

For that reason, we settled on creating a final project that was comprised of a) a spaceship, b) a controller and c) a playground.

The player controlled the spaceship (a) using a controller (b), and he or she moved it around a designated space (c) that represented the galaxy. On a monitor we displayed different tasks that the player had to complete by moving the spaceship to certain planets. We used sensors hidden beneath the playground to control the progress of the game.

To create these elements, we used different materials (electronic components, like motors and arduinos; and manmade and natural elements, like acrylic and wood). In terms of technology, we used electronic components (motors, XBees, shields, arduinos, and others) and software (arduino, processing) to achieve movement and communication.

We used XBees to communicate the movement of the joystick to the motors through arduino. By reading the joystick movement, we would return a “case” (1 = forward, 2 = left…) and that would be sent to the motors which then would act accordingly. That way, we controlled the movement of the spaceship.

Secondly, we used sensors to control the story line. These sensors were wired beneath the plywood and they sent information to arduino. Then, communication with processing ensured that the progress was recorded and it changed the story line displayed in the screen.

In short, we used electronic components and other materials, programs like arduino and processing to allow the player to drive a spaceship through space in a mission.

 

Hand drawn sketch, computer drawing, or a photograph of the overall project

 

Discuss the materials and construction techniques. Why did you chose these? Knowing what you know now, would you have chosen different materials or techniques?

To create this final project, we used several different materials and technologies.

For the spaceship we used an Arduino, an XBee, XBee and motor shields, two 9V batteries, two motors with wheels attached as well as a normal wheel. The components were mounted onto a piece of acrylic and on top of all, we had a Lego Star Wars spaceship. We mounted the components using screws and zip ties, ensuring that the motors and most of the wiring were hidden underneath the acrylic. Only the arduino and the shields were slightly visible, but they were mostly covered by the spaceship.

For the controller, we used a joystick that was connected to an Arduino, with its correspondent XBee and XBee shield. The controller was overall made out of laser-cut acrylic, using the website http://www.makercase.com. We mounted the joystick with screws, and had the arduino, XBee and batteries hidden inside the controller.

We wanted the project  to be as clean and straightforward as possible, keeping in mind that the simpler the interface, the better the user experience will be.

Lastly, the playground was a combination of hardwood, plywood and sensors. Eight sensors were hidden beneath a plywood platform that we painted black to recreate space. Over the edges of the playground, we built barriers that aimed at preventing the spaceship from falling as well as showing the player where each planet was. We had the sensors wired up beneath and connected to a breadboard and an arduino mega. The latter was directly connected to the computer, and it sent the information received by the sensors.

 

What did you have to learn in order to complete your project? How did you learn this? (Include links to any useful resources)

We had to learn a lot in terms of improving the quality of the materials and presentation of our project. With regards to hardware, we had to ask for help from both the wood and scene shop to gather the materials and build the playground. In terms of software and circuity, we had to learn how to use wireless communication to control the spaceship remotely. We had to learn how to use a MotorShield to control the movement of our spaceship. Furthermore, we also had to understand the circuitry and design of the spaceship.

There are a host of YouTube videos and online resources that explain how to establish wireless communication using XBee modules. After browsing through a few, we managed to get a brief understanding of how they function. We then approached Professor Shiloh and he helped us set up the communication between two XBees.

Adafruit has a comprehensive tutorial on how one can get started with using the MotorShield. After reading through this tutorial and running the example program on a motor, we could understand how to control the MotorShield to move as we needed. The library is pretty straightforward, and the tutorial gave us everything we needed to know.

Lastly, in terms of “hardware,” working with wood was a bit difficult due to the fact that none of us had the proper tool training. Using the jigsaw was challenging because we had to find materials of the right length, and finding nice surfaces to use the tool was very hard, but nonetheless we had a lot of fun. We really enjoyed building and painting the playground because it was a very practical, rewarding activity.

 

Describe the electronic and electrical part of your project

We had 3 main components in our project and there were electrical components in each of them.

  1. The Spaceship: The Spaceship consisted of an Arduino, a MotorShield, a XBee shield, a XBee, 2 DC motors, 2 wheels and 2 9V batteries. It moved according to the values sent by the joystick (b)
  2. The controller: The controller was made up of an analog Joystick that was connected to an Arduino with its correspondent XBee and Xbee shield, as well as a 9V battery.
  3. The playground: as stated before, the playground was made of wood but it had a set of sensors underneath. We had 8 sensors, a capacitor and an Arduino Mega. 

Overview, describing the general operation

The player controlled the spaceship with the joystick. He or she moved it around the playground and was asked to complete tasks (i.e. go to Mars). These tasks were completed by moving the spaceship to different locations. When the task was completed, the player was prompted to the next mission.

Schematic

Controller:

Spaceship:

Play area:

Describe the software part of your project

We had 4 sketches running at the same time, each taking care of different parts of the project:

 

  • Spaceship controller: records the movement of the joystick
  • Spaceship move: uses the information from the first sketch to move the spaceship
  • Play area Arduino: reads the position of the ship (has it been to each planet yet?) and send to processing
  • Play area Processing: displays the story line and prompts the player to each mission

 

Overview, describing the general operation

We had three different parts which required individual arduino sketches to run. With one sketch, we recorded the movement of the joystick. The second sketch transmitted this information to make the motors move.

A third sketch read the position of the spaceship, then transferred the information to processing. The processing sketch directed the user to different planets in the play area.

Upload your program(s)

Spaceship controller:

Spaceship move:

Play Area Arduino:

Play Area Processing:

Describe the mechanical part of your project

The playground was constructed of a 1,2 x 1,2 m plywood piece that was nailed to a frame that elevated it 2 inches. Lastly, 3 of the sides were protected with barriers that were made out of thin plywood. It was all painted black to simulate space.

What were the 3 most difficult parts of your project?

What we initially assumed to be the most difficult aspects of our project were not really that difficult. Learning how to work with XBees and the MotorShield took no time at all. The most difficult parts of the project were construction of the different components and getting them to work.

We had a lot of problems with the batteries, since they kept running out of juice. Furthermore, finding the materials for the playground was hard and we also required a lot of help from the Wood Shop people. Lastly, having the XBee inside the box of the controller made communication harder.

Knowing what you know now, what would you have done differently?

Definitely we would have started the project earlier. That would have given us room for improvement.

We would have liked to have a bigger joystick, and maybe instead of doing it wireless we could have a bigger box fixed to the table that was wired to ensure that there is no lag in the communication.

More pictures and videos

Available on this album

Leave a Reply

Your email address will not be published. Required fields are marked *