00:52
hyperair has joined #openscad
01:06
J25K62 has joined #openscad
01:09
J25K41 has quit [Ping timeout: 250 seconds]
01:11
mmu_man has quit [Ping timeout: 256 seconds]
01:17
mmu_man has joined #openscad
01:29
J25K42 has joined #openscad
01:33
J25K62 has quit [Ping timeout: 250 seconds]
01:35
hyperair has quit [Read error: Connection reset by peer]
02:00
J25K93 has joined #openscad
02:04
J25K42 has quit [Ping timeout: 250 seconds]
02:05
val has joined #openscad
02:44
mmu_man has quit [Ping timeout: 258 seconds]
02:54
JoelJoel is now known as Joel
02:56
hyperair has joined #openscad
03:09
jbd has quit [Ping timeout: 260 seconds]
03:49
ashafq has joined #openscad
03:49
ashafq has quit [Changing host]
03:49
ashafq has joined #openscad
03:52
Guest28 has joined #openscad
03:52
<
Guest28 >
/ Necklace Separator – Parametric
03:52
<
Guest28 >
/ Tweak these:
03:52
<
Guest28 >
necklaces = 3; // 2–4
03:52
<
Guest28 >
bar_width = 38; // mm
03:52
<
Guest28 >
bar_height = 9; // mm
03:52
<
Guest28 >
bar_thickness = 3.2; // mm
03:52
<
Guest28 >
curve_radius = 12; // mm neck contour
03:52
<
Guest28 >
eyelet_id = 3.0; // inner diameter
03:52
<
Guest28 >
eyelet_od = 6.0; // outer diameter
03:52
<
Guest28 >
eyelet_spacing = 12; // center-to-center
03:52
<
Guest28 >
edge_fillet = 1.2; // visual fillet via minkowski
03:52
<
Guest28 >
back_flat = 0.8; // back flattening (comfort)
03:52
<
Guest28 >
/ ---------- geometry ----------
03:52
<
Guest28 >
/ base curved bar
03:52
<
Guest28 >
module curved_bar(){
03:52
<
Guest28 >
translate([0,0,bar_thickness/2])
03:52
<
Guest28 >
minkowski(){
03:52
<
Guest28 >
translate([0,0,-1]) cylinder(h=bar_thickness+2, r=eyelet_id/2);
03:52
<
Guest28 >
difference(){
03:52
<
Guest28 >
curved_bar();
03:52
<
Guest28 >
// carve neck arc
03:52
<
Guest28 >
neck_arc_cut();
03:52
<
Guest28 >
// carve through-holes for eyelets
03:52
<
Guest28 >
for(i=[-(necklaces-1)/2:(necklaces-1)/2]){
03:52
<
Guest28 >
eyelet(i*eyelet_spacing);
03:52
Guest28 has quit [Client Quit]
03:54
JordanBrown has joined #openscad
04:32
sculptor2 has quit [Ping timeout: 260 seconds]
05:29
t4nk_freenode has joined #openscad
05:35
_whitelogger has joined #openscad
06:07
Kehet has quit [Quit: rebooting.. (up 4 weeks, 3 days, 22 hours, 30 minutes)]
06:08
Kehet has joined #openscad
07:45
JordanBrown has quit [Ping timeout: 260 seconds]
08:43
Guest39 has joined #openscad
08:43
Guest39 has quit [Client Quit]
10:48
Guest87 has joined #openscad
10:56
Guest87 has quit [Quit: Client closed]
11:35
mmu_man has joined #openscad
11:52
snaked has quit [Quit: Leaving]
11:53
jbd has joined #openscad
12:43
kdc has joined #openscad
13:21
rogeliodh7 has joined #openscad
13:22
deklund has joined #openscad
13:24
dTal_ has joined #openscad
13:27
bozo16 has quit [Quit: Leaving]
13:27
deklund has quit [Ping timeout: 250 seconds]
13:29
lostapathy has quit [*.net *.split]
13:29
LordOfBikes has quit [*.net *.split]
13:29
dTal has quit [*.net *.split]
13:29
rogeliodh has quit [*.net *.split]
13:29
rapha has quit [*.net *.split]
13:29
rogeliodh7 is now known as rogeliodh
13:36
lostapathy has joined #openscad
13:37
LordOfBikes has joined #openscad
13:37
rapha has joined #openscad
13:37
rapha has joined #openscad
13:37
rapha has quit [Changing host]
13:55
sculptor2 has joined #openscad
13:57
L29Ah has quit [Read error: Connection reset by peer]
14:01
L29Ah has joined #openscad
14:21
califax has quit [Remote host closed the connection]
14:21
califax_ has joined #openscad
14:23
califax_ is now known as califax
14:28
sculptor__ has joined #openscad
14:32
sculptor2 has quit [Ping timeout: 258 seconds]
14:40
sculptor__ has quit [Ping timeout: 260 seconds]
15:10
mmu_man has quit [Ping timeout: 250 seconds]
15:26
mmu_man has joined #openscad
15:54
mmu_man has quit [Ping timeout: 258 seconds]
15:55
J25K93 has quit [Quit: Client closed]
15:55
J25K93 has joined #openscad
15:56
mmu_man has joined #openscad
16:52
Guest10 has joined #openscad
16:53
<
Guest10 >
/===============================================
16:53
<
Guest10 >
/ Self-Balancing Gyroscope Platform - OpenSCAD Model
16:53
<
Guest10 >
/ Dimensions in millimeters
16:53
<
Guest10 >
/===============================================
16:53
<
Guest10 >
/ --- User Parameters - Adjust these! ---
16:53
<
Guest10 >
/ Base Dimensions
16:53
<
Guest10 >
base_length = 200;
16:53
<
Guest10 >
base_width = 150;
16:53
<
Guest10 >
base_thickness = 12;
16:53
<
Guest10 >
/ Side Support Dimensions
16:53
<
Guest10 >
support_height = 150;
16:53
<
Guest10 >
support_width = 50;
16:53
<
Guest10 >
support_thickness = 12;
16:53
<
Guest10 >
bearing_od = 22; // 608ZZ Bearing Outer Diameter
16:53
<
Guest10 >
bearing_thickness = 7;
16:53
<
Guest10 >
axle_diameter = 6;
16:53
<
Guest10 >
/ Platform & Gimbal Dimensions
16:53
<
Guest10 >
platform_size = 120;
16:53
<
Guest10 >
cube([base_length, base_width, base_thickness], center=true);
16:53
<
Guest10 >
// Left Support
16:53
<
Guest10 >
translate([0, (base_width/2 - support_width/2), support_height/2])
16:53
<
Guest10 >
side_support();
16:53
<
Guest10 >
// Right Support (Mirrored)
16:53
<
Guest10 >
translate([0, -(base_width/2 - support_width/2), support_height/2])
16:53
<
Guest10 >
mirror([0,1,0]) side_support();
16:53
<
Guest10 >
module side_support() {
16:53
<
Guest10 >
difference() {
16:53
<
Guest10 >
// Support Block
16:53
<
Guest10 >
cube([support_thickness, support_width, support_height], center=true);
16:53
<
Guest10 >
// Bearing Hole
16:53
<
Guest10 >
translate([0, 0, 0])
16:53
<
Guest10 >
rotate([0, 90, 0])
16:53
<
Guest10 >
cylinder(h=support_thickness+2, d=bearing_od, center=true, $fn=60);
16:53
<
Guest10 >
// Chamfer top edges (optional)
16:53
<
Guest10 >
translate([0, 0, support_height/2 - 10])
16:53
<
Guest10 >
translate([motor_length/2, 0, 0])
16:53
<
Guest10 >
color("grey")
16:53
<
Guest10 >
rotate([0, 90, 0])
16:53
<
Guest10 >
cylinder(h=motor_shaft_length, d=motor_shaft_diameter, center=false, $fn=30);
16:53
<
Guest10 >
// Flywheel
16:53
<
Guest10 >
translate([motor_length/2 + motor_shaft_length + flywheel_thickness/2, 0, 0])
16:53
<
Guest10 >
rotate([0, 90, 0])
16:53
<
Guest10 >
difference() {
16:53
<
Guest10 >
// Main Flywheel Disc
16:53
<
Guest10 >
color("goldenrod")
16:53
<
Guest10 >
cylinder(h=flywheel_thickness, d=flywheel_diameter, center=true, $fn=80);
16:53
<
Guest10 >
// Central Hole for Shaft
16:53
<
Guest10 >
cylinder(h=flywheel_thickness+2, d=flywheel_center_diameter, center=true, $fn=40);
16:53
<
Guest10 >
/===============================================
16:53
<
Guest10 >
/ Self-Balancing Gyroscope Platform - OpenSCAD Model
16:53
<
Guest10 >
/ Dimensions in millimeters
16:54
<
Guest10 >
/ Motor Dimensions (Approx. for 37D Motor)
16:54
<
Guest10 >
motor_length = 50;
16:54
<
Guest10 >
motor_width = 25;
16:54
<
Guest10 >
motor_height = 25;
16:54
<
Guest10 >
motor_shaft_diameter = 6;
16:54
<
Guest10 >
motor_shaft_length = 15;
16:54
<
Guest10 >
/ --- Render the full assembly ---
16:54
<
Guest10 >
full_assembly();
16:54
<
Guest10 >
/ --- Modules (Building Blocks) ---
16:54
<
Guest10 >
module full_assembly() {
16:54
<
Guest10 >
color("tan") assemble_base();
16:54
<
Guest10 >
translate([0, 0, support_height/2 + base_thickness]) rotate([0, 0, $t*45]) assemble_gimbal(); // Animated
16:54
<
Guest10 >
module assemble_base() {
16:54
<
Guest10 >
// Base Plate
16:54
<
Guest10 >
cube([base_length, base_width, base_thickness], center=true);
16:54
<
Guest10 >
// Left Support
16:54
<
Guest10 >
translate([0, (base_width/2 - support_width/2), support_height/2])
16:54
<
Guest10 >
rotate([0, 90, 0])
16:54
<
Guest10 >
cylinder(h=axle_length, d=axle_diameter, center=true, $fn=40);
16:54
<
Guest10 >
// Tilting Platform
16:54
<
Guest10 >
translate([0, 0, -platform_thickness/2])
16:54
<
Guest10 >
color("lightblue")
16:54
<
Guest10 >
cube([platform_size, platform_size, platform_thickness], center=true);
16:54
<
Guest10 >
// Motor & Flywheel Assembly
16:54
<
Guest10 >
translate([platform_size/2 - motor_width, 0, motor_height/2])
16:54
<
Guest10 >
assemble_motor_flywheel();
16:54
<
Guest10 >
module assemble_motor_flywheel() {
16:54
<
Guest10 >
// Motor Body
16:54
<
Guest10 >
color("black")
16:54
<
Guest10 >
cube([motor_length, motor_width, motor_height], center=true);
16:54
<
Guest10 >
// Motor Shaft
16:54
<
Guest10 >
translate([motor_length/2, 0, 0])
16:54
<
Guest10 >
color("grey")
16:54
<
Guest10 >
rotate([0, 90, 0])
16:55
Guest10 has quit [Client Quit]
16:59
<
InPhase >
Why, world. Why.
17:02
sculptor__ has joined #openscad
17:32
howiemnt has quit [Ping timeout: 248 seconds]
17:33
howiemnt has joined #openscad
17:39
<
J25K93 >
I think that we live in a world were people adapt that try and error ist easier than thinking
17:43
<
J25K93 >
maybe we make a landing page so people can select if they want IRC or Playground
17:44
<
J25K93 >
"you are sure you want to talk to humanz? or Test your code here"
17:57
sculptor__ is now known as sculpto
17:57
sculpto is now known as sculptor
18:34
kdc has quit [Quit: kdc]
19:11
mmu_man has quit [Ping timeout: 248 seconds]
19:13
mmu_man has joined #openscad
20:15
bozo16 has joined #openscad
20:15
bozo16 has quit [Remote host closed the connection]
20:16
JordanBrown has joined #openscad
20:21
bozo16 has joined #openscad
20:51
kintel has joined #openscad
20:52
<
kintel >
J25K93 ..or launch chat.openscad.org where we redirect the submit button directly to OpenAI (or whatever), and offer a small "IRC: Talk to humans" buttons which people need to consciously click on.
21:01
mmu_man has quit [Ping timeout: 250 seconds]
21:01
kintel has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
21:09
mmu_man has joined #openscad
21:33
howiemnt1 has joined #openscad
21:35
howiemnt has quit [Ping timeout: 260 seconds]
21:38
JoelJoel is now known as Joel
21:55
gunnbr_ has joined #openscad
21:58
gunnbr has quit [Ping timeout: 260 seconds]
22:28
snaked has joined #openscad