Science Hardware For Children - Incline Plane and Pulleys
Science Hardware For Children - Incline Plane and Pulleys
Published 2020-10-08T09:15:27+00:00
This is my design of a toy meant to teach children about the effects of an inclined plane on a rope/pulley system and the forces involved.
There are 4 3D printed parts in total and 7 externally sourced common hardware materials.
OpenSCAD Source Code
NOTE: Each part is a separate file
Slotted Lever:
L1=175; //Total Length
W1=75;
H1=10;
R1=H1/2-2;
L3=L1-4*H1;
W3=H1-4;
scale([0.6,0.6,0.6])
translate([0,0,H1])
rotate([90,0,0])
union(){
difference(){
union(){
cube([L1-R1,H1,W1-2*H1],center=false);
translate([0,H1/2,0])
cylinder(h=W1-2*H1, r=H1/2,center=false, $fn=100);
translate([L1-R1,H1/2,0])
cylinder(h=W1-2*H1, r=H1/2,center=false);
};
// translate([0,H1/2,-1])
// cylinder(h=W1-2*H1+2, r=R1,center=false);
translate([L1-R1,H1/2,-1])
cylinder(h=W1-2*H1+2, r=R1,center=false);
translate([2*H1,-1,W1/2-1.5*H1])
cube([L3,H1+2,H1],center=false);
translate([2*H1,H1/2,W1/2-H1])
rotate([90,0,0])
cylinder(h=H1+2,r=H1/2,center=true);
translate([2*H1+L3,H1/2,W1/2-H1])
rotate([90,0,0])
cylinder(h=H1+2,r=H1/2,center=true);
translate([-R1-7,-1,W1/2-1.5*H1])
cube([H1+2,H1+2,H1],center=false);
};
translate([2,H1/2,1.5*H1])
cylinder(h=2*H1, r=H1/2,center=false);
};
Base:
L1=150; //length of the large cube/base
W1=75; //width " " " " "
H1=10; //Height " " " " "
R1=H1/2-2; //Radius of the hole
//BASE
scale([0.6,0.6,0.6])
difference(){
difference(){
union(){ //1
union(){ //2
difference(){ //1
difference(){ //2
translate([0,-W1/2,0])
union(){ //3
cube([L1,W1,H1],center=false);
translate([L1-H1,0,H1]) cube([H1,W1,H1],center=false);
}; //union 3
translate([L1-1.5*R1,W1/2+1,H1*1.5])
rotate([90,0,0])
cylinder(h=W1+5,r=R1);
}; //difference 2
translate([L1-H1-.5,-W1/2+H1,H1])
cube([H1+1,W1-2*H1,H1+1],center=false);
}; //difference 1
translate([0,-W1/2-H1,0])
cube([L1,H1,H1], center=false);
}; //union 2
translate([L1,-W1/2-H1,0])
cube([50,W1+H1,H1],center=false);
}; //union 1
translate([L1-60,0,-1])
cylinder(h=H1+2,r=4.5,center=false);
translate([L1-60,0,-1])
cylinder(h=20,r=8,center=false);
};
//translate([0,-5,0])
//cube([150,60,40],center=true);
//translate([120,0,0])
//cube([35,60,40],center=true);
//translate([200,0,0])
//cube([
};
//ARM
//L3=L1-4*H1;
//W3=H1-4;
//translate([0,25,H1])
//rotate([90,0,0])
//union(){
//difference(){
// union(){
// cube([L1-R1,H1,W1-2*H1-4],center=false);
// translate([0,H1/2,0])
// cylinder(h=W1-2*H1-4, r=H1/2,center=false, $fn=100);
// translate([L1-R1,H1/2,0])
// cylinder(h=W1-2*H1-4, r=H1/2,center=false);
// }; //union
// translate([0,H1/2,-1])
// cylinder(h=W1-2*H1+2, r=R1,center=false); //opposite end screw hole
// translate([L1-R1,H1/2,-1])
// cylinder(h=W1-2*H1+2, r=R1,center=false); //slot
// translate([2*H1,-1,W1/2-1.5*H1])
// cube([L3,H1+2,H1],center=false); //slot
// translate([L1/2*H1,-1,W1/2-1.5*H1])
// cube([H1,H1+2,3*H1],center=false);
// translate([2*H1,H1/2,W1/2-H1]) //slot
// rotate([90,0,0])
// cylinder(h=H1+2,r=H1/2,center=true);
// translate([2*H1+L3,H1/2,W1/2-H1])
// rotate([90,0,0])
//cylinder(h=H1+2,r=H1/2,center=true); //string guide
// translate([-R1-7,-1,W1/2-1.5*H1])
// cube([H1+2,H1+2,H1],center=false); //string guide
// }; //difference
//translate([2,H1/2,1.5*H1])
//cylinder(h=2*H1, r=H1/2,center=false); //string guide
//}; //union
Crank Catch:
L1=150; //length of the large cube/base
W1=75; //width " " " " "
H1=10; //Height " " " " "
R1=H1/2-2; //Radius of the hole
//BASE
scale([0.6,0.6,0.6])
difference(){
difference(){
union(){ //1
union(){ //2
difference(){ //1
difference(){ //2
translate([0,-W1/2,0])
union(){ //3
cube([L1,W1,H1],center=false);
translate([L1-H1,0,H1]) cube([H1,W1,H1],center=false);
}; //union 3
translate([L1-1.5*R1,W1/2+1,H1*1.5])
rotate([90,0,0])
cylinder(h=W1+5,r=R1);
}; //difference 2
translate([L1-H1-.5,-W1/2+H1,H1])
cube([H1+1,W1-2*H1,H1+1],center=false);
}; //difference 1
translate([0,-W1/2-H1,0])
cube([L1,H1,H1], center=false);
}; //union 2
translate([L1,-W1/2-H1,0])
cube([50,W1+H1,H1],center=false);
}; //union 1
translate([L1-60,0,-1])
cylinder(h=H1+2,r=4.5,center=false);
translate([L1-60,0,-1])
cylinder(h=20,r=8,center=false);
};
//translate([0,-5,0])
//cube([150,60,40],center=true);
//translate([120,0,0])
//cube([35,60,40],center=true);
//translate([200,0,0])
//cube([
};
//ARM
//L3=L1-4*H1;
//W3=H1-4;
//translate([0,25,H1])
//rotate([90,0,0])
//union(){
//difference(){
// union(){
// cube([L1-R1,H1,W1-2*H1-4],center=false);
// translate([0,H1/2,0])
// cylinder(h=W1-2*H1-4, r=H1/2,center=false, $fn=100);
// translate([L1-R1,H1/2,0])
// cylinder(h=W1-2*H1-4, r=H1/2,center=false);
// }; //union
// translate([0,H1/2,-1])
// cylinder(h=W1-2*H1+2, r=R1,center=false); //opposite end screw hole
// translate([L1-R1,H1/2,-1])
// cylinder(h=W1-2*H1+2, r=R1,center=false); //slot
// translate([2*H1,-1,W1/2-1.5*H1])
// cube([L3,H1+2,H1],center=false); //slot
// translate([L1/2*H1,-1,W1/2-1.5*H1])
// cube([H1,H1+2,3*H1],center=false);
// translate([2*H1,H1/2,W1/2-H1]) //slot
// rotate([90,0,0])
// cylinder(h=H1+2,r=H1/2,center=true);
// translate([2*H1+L3,H1/2,W1/2-H1])
// rotate([90,0,0])
//cylinder(h=H1+2,r=H1/2,center=true); //string guide
// translate([-R1-7,-1,W1/2-1.5*H1])
// cube([H1+2,H1+2,H1],center=false); //string guide
// }; //difference
//translate([2,H1/2,1.5*H1])
//cylinder(h=2*H1, r=H1/2,center=false); //string guide
//}; //union
Crank Housing
H4=25; //height of pivot cylinder
R4=25/2; //Radius " " "
R5=5; //carriage bolt radius
L4=50-R4; //Length of pivot cylinder minus Radius
T4=3; //Thickness of the walls
difference(){ //2
union(){ //2
difference(){ // 1
union(){ // 1
cylinder(h=H4,r=R4,center=false);
translate([0,-R4,0])
cube([L4,2*R4,H4],center=false);
}; // Union 1 end
translate([10,-R4+T4,T4])
cube([L4+2,2*R4-2*T4,H4-T4+2],center=false);
translate([-7,0,H4/2])
rotate([0,90,0])
cylinder(h=R4+5,r=R5+T4,center=false); //carriage bolt counterbore
translate([10,-R4-1,T4])
cube([5,T4+2,H4+2-T4],center=false); //string slot
}; //difference 1 end
//translate([-7,0,H4/2])
//rotate([0,90,0])
//cylinder(h=L4+6,r=R5+T4-1,center=false);
}; //union 2 end
translate([-7,0,H4/2])
rotate([0,90,0])
cylinder(h=L4+6,r=R5+T4-1,center=false);
translate([-R4-1,0,H4/2])
rotate([0,90,0])
cylinder(h=R4+L4+5,r=R5,center=false); //carriage bolt hole
}; //diff 2 end
Lever:
T4=3;
difference(){
union(){
cylinder(h=T4,r=7,center=false);
translate([0,-7,0])
cube([50,14,T4],center=false);
translate([-T4/2+.25,-8,0])
cube([T4-.5,16,15],center=false);
};
translate([0,0,-1])
cylinder(h=50,r=4.5,center=false);
};
Assembly Instructions:
To Assemble, attach the slotted lever(1) to the base(4) at the hinging joint using the aluminum pipe cleaner(9) as a hinge pin. the pipe cleaner can be replaced by a nail of the appropriate size, or any other material that will fit. 2 Pennies(10) are placed at the bottom side of each corner of the base to offset the base and leave room for the head of the carriage bolt(5), The carriage bolt(5) is then fed through the bottom of the hole at the center of the base(4). One of the wing nuts(6) is then placed upside down and threaded onto the carriage bolt(5), such that the "wings" secure the carriage bolt(5) to the base(4). The thread end of the carriage bolt is then fed into the slot of the slotted lever(1). The carriage bolt will fit very snugly within the slot of the slotted lever(1), so some force should get it in there. Once the carriage bolt(5) is fed through the slotted lever(1), it should stand on its own with no need for support, and adjustment should be as simple as moving it with your hand and it should stay in place on its own after adjustment.
A slip knot(in this case, a clove hitch) is then tied into the string(8) and placed onto one of the halves of the crank catch(3), such that part of the loop is in the gap between the halves of the crank catch(3). Wrap the string around the crank catch a few times below the knot you just tied, leaving a hole to feed the other end of the string through underneath and feed it through. Tie the loose end of the string to the large hex nut(7) using a slip knot. The purpose of the large hex nut is to simply add enough weight to make the difference between the forces required at each angle more noticable when cranking by hand. Insert the Lever(2) into the slot of the crank catch(3). This should be a press fit, however, depending on the printer and chosen resolution, if it is not, it is recommended that this is taped in place.
The other wing nut(6) is then threaded onto the carriage bolt in the same orientation as the first, placing it above the slotted lever.The Crank Catch(3), Lever(2), String(8), and Hex Nut(7) subassembly is then fed onto the end of the carriage bolt. You may need to use something long and thin to push some of the string aside and make room to feed the bolt through. The second wing nut(6) acts as a stopper so that the height of the crank subassembly can be adjusted independant of the height of the slotted lever(1) if need be.
Finally, 6 Pennies(10) and a Nickle(11) were glued to the base(4) to counterbalance the Hex Nut(7).
To Use:
Turn the crank to lift the hex nut. Then, adjust the angle of the slotted lever, adjust the height of the wing nut, and turn the crank again. There should be a noticeable difference in the amount of force required to turn it and the ability of the assembly to remain balanced. The weight of the coins should keep it from tipping over, however, it is noticably less balanced.
Date published | 08/10/2020 |