Group 6:User-interactive Theatrical Props, Iron Man Mask
Why was this project chosen?
Initially, our group decided on this project because we are all fans of superhero movies. We all decided on Iron man’s helmet, because it has the most advanced technological features. There is a vast market for superhero merchandises and outfits, our mask in the future can be developed and presented to the film studios as a business idea where it can be released to the public to be sold as a movie prop.
Design Blog and Project Development
We created sketches on how the helmet would look, there were changes in our decisions about if the prop should be wearable or for display purposes, this pushed us as a group to search the market in heavier matters to find out if which one would make the helmet more luxurious/expensive. After our research, we came into conclusion that props for display only sells for higher prices because they look professional, which is also a better business strategy for our prop in the future. Research on the Iron Man design was made and hand drawn.
After we decided on a design idea we started researching materials and ideas on how to assemble the mask. A major milestone for us was hooking up the arduino and the mask. We decided the mask to have 2 abilities, the first one is to rotate the mask inside the display platform up and down and the other one is to add LEDs in both eyes of the mask to make it look like it turns on.
When the actual building process was distributed roles for everyone, Engin doing the coding and how the whole systems would work together with the mask, Idrees working on the mask design and building together with Israel also hooking up the arduino on the mask. There was miscommunication during the building decisions at times because Engin had personal reasons he had to go back for his family in Turkey. However we overcame everything and everyone did their part of the group perfectly. Once we overcame this milestone the building of the mask started.
These 2 photos are from the very beginning of the design process where we assembled the basic design aspects of the mask and the display platform. Also a few tries on hooking up the Arduino.
After building the basic design aspects we moved on to creating the systematic part of our design where we added springs to work with servo and make adjustments to the platform. Also we added clear acrylic for the eyes.
Then added arduino, servo, LEDs, painted the whole mask with spray paint. We had errors like the servo getting broken, making the breadboard layout and the code wrong.
Here are two videos for the testing of our product:
We were able to finish the design early by following our action plan, which will be provided in the Project Task Lists section of this document.
Project Task List
As a group, we started the project development by creating an action plan which would help us to achieve our final product at the right time. Here is the task distribution between the group members:
Engin: Project time and plan managing, design research, developing the code for the prop, sketches and design documentation.
Idrees: Project design planning and building the physical prop, design research, sketches and major designs, documentation.
Israel: Building the physical prop, preparing the presentation ppt, design research, documentation, building design aspects.
Maker Manual
These are the final products images and videos (videos will be sent through via Email because CIO site is down) The Iron Man Helmet is a future professional movie prop. It is made for display purposes but has two functions, when holding down the button on the Arduino, the Eyes of the mask light up to red, the second function is when the second button is pressed in arduino the mask rotates 180 degrees vertically.
Materials:
- 3mm MDF
- 6mm MDF
- Springs
- Servo
- Wires
- 5mm red LED’s
- 3mm clear Acrylic
- Screws
Tools:
- Scroll saw
- Disc sander
- Sand paper
- Glue gun
- Matte black spray paint
- Solder Iron
- Pencil
- 30cm ruler
- Masking tape
Task | Tools required | Health and Safety | |
1 | Drew each piece for the faceplate onto the 3mm MDF using a pencil and ruler. | PencilRuler | N/A |
2 | I cut each of these pieces using a scroll saw. | Scroll saw | Wear goggles and and apron.Keep fingers a safe distance from the blade while maintaining stability. |
3 | Using a disc sander, I adjusted the table to the necessary angle and sanded the specified sides to the correct angle. | DIsc sander | Wear goggles and and apron.Keep fingers a safe distance from the blade while maintaining stability. |
4 | Sanded all pieces down to remove any imperfections using sand paper. | Sand paper | N/A |
5 | Glued the faceplate together using a hot glue gun | Glue gun | Do not touch hot glue. |
6 | Drew the eye pieces onto the clear acrylic and cut these out using a scroll saw. | PencilRulerScroll saw | Wear goggles and and apron.Keep fingers a safe distance from the blade while maintaining stability. |
7 | Sanded the clear acrylic under running water with the sand paper to create a misty effect for the eyes, and glued them onto the faceplate using a glue gun. | Sand paperHot glue gun | Do not touch hot glue. |
8 | Drew and cut out the pieces for the rest of the helmet using a scroll saw, and sanded down any necessary angles using the disc sander. | PencilRulerScroll sawDisc sander | Wear goggles and and apron.Keep fingers a safe distance from the blade while maintaining stability. |
9 | Glued the servo onto the helmet, ensuring the rod between the servo and faceplate was secured to both components. | Glue gun | Do not touch hot glue. |
10 | Secured screws into the faceplate and helmet using a screwdriver, and attached springs between both parts. | Screwdriver | N/A |
11 | Used masking tape to cover up the acrylic eyes, servo, and springs before sanding down the MDF and then spray painting everything using matte black spray paint. | Masking tapeSand paperMatte black spray paint | Ensure spray painting is only done in a well ventilated area. |
12 | Using a solder iron, I soldered extra wires onto the LED’s and Servo so they can reach the breadboard of the arduino uno board. | Solder Iron | Ensure soldering is done in well ventilated conditions.Wear goggles and an apron.Do not touch hot solder iron when it is on. |
13 | Attach LED’s to the faceplate using masking tape, and finally attach all wiring to the arduino uno breadboard. | Masking tape | N/A |
Testing:
Test | Outcome | Solution |
Tested the servo working with the faceplate using example servo code. | Faceplate was too heavy for the servo to pull up. | Added springs to reduce work done by servo and create a smooth function. |
Tested the end product using our final code. | LED’s worked perfectly.Servo worked perfectly for the first 3 tests, then malfunctioned, resulting in the servo being damaged. | There was no available immediate solution, however one adjustment to our design would be to work on making every component easily replaceable, in case of any malfunctions or damage. |
The Breadboard Layout
The Code
#include <Servo.h>;
// pushbutton pins
const int buttonPin = 9; // servobutton pin
const int buttonPin2 = 2; // ledbutton pin
int buttonState = 0;
int buttonState2 = 0;
int buttonState3 = 0;
//led pins
const int LED1 = 13; //ledpin1
const int LED2 = 12; //ledpin2
// servo pin
const int servoPin = 4; //servo pin
Servo servo; //int servo
/// input and outputs
int counter = 0;
void setup()
{
servo.attach (servoPin);// Initialising that the servo is attached
pinMode(LED1,OUTPUT); //LEDs as output
pinMode(LED2,OUTPUT);
pinMode(buttonPin2,INPUT);// LED Buttons to work as an input
pinMode(buttonPin, INPUT); // Servo button to work as an input
}
void loop()
{
///////////////////////// servo code
buttonState = digitalRead(buttonPin);// reading the
if (buttonState == LOW)
{
counter++;
delay(150); //delaying the movement
}
if(counter == 0)
servo.write (0); // starts at zero degrees
else if(counter == 1)
servo.write(100); // turns to 100 degrees
else
counter = 0;// back to the beginning if pressed again
//////////////////////////////////// LED code
buttonState2 = (digitalRead(buttonPin2));
if (buttonState2 == HIGH)
{
digitalWrite(LED1, HIGH);
}
else{
digitalWrite(LED1, LOW);
}
buttonState3 = digitalRead(buttonPin2);
if (buttonState3 == HIGH)
{
digitalWrite(LED2, HIGH);
}
else{
digitalWrite(LED2, LOW);
}
}
You must be logged in to post a comment.