Final Project
My Project is called surprise Box and it’s aim to teach younger kids ordering skills. When the child arranged the puzzle pieces correctly the box will open and the child will get a gift. Otherwise the box will be close until figure it out correctly.
It has 3 resistors with values 4,7k - 10k and 1k, so each of them so programmed the Attiny 44 such a way that when it comes it certain order() then only it will open the lock..which is helpful students to learn several thing,may be as a further improvement can make puzzles in such a way when they fix in the right order the lock will get open and they are free to take the gift inside the box
my final project is usually inspired by my kids who both love games and surprises. So I came to an idea in which can offer both, I call this as surprise box. From the name it self, this toy will help boost their mental ability and skills in solving puzzles. surprise box is a box with an opening which is equipped with a smart lock in which will open and unveiled the prize inside if they were able to solved the puzzle correctly, and a top side where the puzzle pad is to be placed. what is best is that the pad is changeable depending on the age of the player. It is also equipped with a timer and music. I'm pretty sure that parents and their children would love this.
The Main processes involved in my Projects are
1-Electronics designing,Production and programming
2-3D designing and printing
3-CNC machining and assembling(Painting for finishing look)
4-Vinyl cutting
4-Laser cutting for the transparent top
ELECTRONICS PART
In electronics section,there are
input:Resistance(A puzzle block works based on resistivity)
Out put:Servo motor will unlock the locking mechanism. when the resistivity of each puzzle blocks are placed correctly servo motor head position moves to unlocking position and viceversa.
Components and bill of materials:
1.Attiny 44 .
2.Motor driver.
3.LEDs.
4.Acrylic sheet for Cover
5.3 resistors.
6.Board copper sheet.
7.Servo.
8.paper for stickers.
DESIGN
This is the schematic design of the project where I used different set of resistors where each of the resistor is for specific purpose in my project resistor are the main component since I am making use of resistance value of the resistors that is attached to puzzle pieces so will program the micro controller such a way that if all the resistance value is in a particular order only ,then will stimulate a servo motor which can be used as a locking mechanism.
The image below showing the board file of the same which I manually routed ,this was the first time I managed to try manual routing with customized trace width ,first of all used a trace width of 17 mil and then manually changed based on the placement of the net in the design that varied from 16 mil to 24 mil,
This is how it looks after all these.
Once I am done as did before need to convert to the Gerber files suing cam processor to .cmp file which we will use to mill the board.
I milled the board and as I used to do for other weeks and soldered it then tested
After milling the board, I started to solder the thing with the required components
Program
what it does do?
This is the code uploaded in the micro controller board where there is a servo and 3 resistors attached to puzzles pieces which is assigned to variables s1,s2 and s3 respectively so each time the attiny checks the analogue value of the puzzle pieces and if it comes in the specified order which is checked by just a analog read of respective pins then the servo is turned in 90 Degrees
#include "SoftwareServo.h"
#define RED 10
#define GREEN 9
#define SERVO 8
#define se1 0
#define se2 1
#define se3 2
int s1, s2, s3;
/* s1= 10K => 512
s2= 1K => 93
s3=4.7k => 327
*/
int pos;
SoftwareServo myservo;
void setup() {
pinMode(RED, OUTPUT);
pinMode(GREEN, OUTPUT);
myservo.attach(SERVO);
////////close/////////////////////
for (pos = 90; pos > 0; pos -= 2)
{
myservo.write(pos);
delay(15);
SoftwareServo::refresh();
}
digitalWrite(RED, HIGH);
digitalWrite(GREEN, LOW);
}
void loop() { // run over and over
s1 = analogRead(se1);
s2 = analogRead(se2);
s3 = analogRead(se3);
if ((s1 > 500) && (s1 < 700) && (s2 > 50) && (s2 < 200) && (s3 > 250) && (s3 < 400)) {
digitalWrite(RED, LOW);
digitalWrite(GREEN, HIGH);
////////////////open//////////////////
for (pos = 0; pos < 90; pos += 2)
{
myservo.write(pos);
delay(15);
SoftwareServo::refresh();
}
delay(100000);
}
}
So the idea is once the puzzle is done ,champs will get the gift as an appreciation . According to my view this a really useful one in budding students for making learning in a fun way and in this way they will be self motivated and inspired automatically in a urge to grab the next gift which can build their thought process strong and sharp.
Project 3D design
On shape is used for design
I used On-shape for my final project design , so the basic idea is a fun box where there will be puzzle of 3 small magnetic boxes where its attatched to the main box in a specific order then only the box will open.
I managed to draw a press-fit design with 6 sides and each side is interlocked with each-other
and the main part is that there will be small 3 pieces so, I have to design the slots for the small attaching structures and as well as to cut the pieces for the slots.
Firstly I drawn the two sides. There is extrude tool which allows me to create 3Dshape.
Like that I drawn the other parts in the design.
Biggest problem was the designing these things and then how to assemble the things together. I had seeked the help from my colleagues to know I can do and also any you tube videos for the different techniques in assembling.
Then I rendered my design and saw how it looks.
My 3D designing took more time than what I expected.
I 3D printed a part to test the compatibility. As well as some miscellaneous shapes on the box to keep it attractive. Which you can seen in the result picture
3d printed for testing copatibility
3D printed shapes for sticking on puzzle blocks
CNC Machining and Assembling
After that I converted my design in dxf files in to machine code(CNC machine).
I used ArtCAM application to convert My dxf file in to machine code
Firstly I loaded y vectors (dxf) files in to ArtCAm and placed as follows.
I choosed the areas need to be cleared and simulated the corresponding in it.
Then Choosed the profile for the cut and created outside cut. The details of the milling bits are as follows
Then I saved the the towpaths.
Then I loaded the machine file in to controller. Then I started to cut
Assembling of mechanical structure is carried out as shown above.
Later I will paint and make it look beautiful.
Laser cutting and vinyl cutting
For Laser cutting of the top in acrylic,I designed in onshape.The file is here
For Laser cutting of the top in acrylic,I designed in Onshape .I downloaded the dxf file and loaded in laser cutting machine to laser cut. I adjusted the power and speed of the machine before cutting.
I cut the Company logo(KGOC Logo) in vinyl using the silhouette cameo cutter by Converting the logo image to trace and then after cutting, I n the box in yellow vinyl material and placed on the corners.
Result
AS you can see I painted well with some glazing effect paint. So that it will be more attractive for kids.
Finally my project is done with almost perfection what I expected
Main problem I faced is 3D Designing of box. Since I a weak in 3D designing, It took me much time to do. But instructors,My colleagues guided me how to do it.
Licensing:
As I mentioned in the licensing week,I choosed Creative Common License non commercial no derivatives. So that my rights are protected and I can guarantee that any commercial benefits of my Project will be for me.
ElectronicsFiles>
Program code
Eagle schematic design
Eagle board design
Machine file
DXF Files (CNC and LASER cutting):>
front
back
base
part
side1
side2
Top2
Top3
Final presentation video: