Browse Source

Reader uses specs for laser pos. Holoview in holodisk. Improved side sliders. Added front plates.

master
Dejvino 3 years ago
parent
commit
dc84b366ab
3 changed files with 45 additions and 8 deletions
  1. +32
    -4
      holodisk.scad
  2. +4
    -2
      holodisk_spec.scad
  3. +9
    -2
      reader.scad

+ 32
- 4
holodisk.scad View File

@@ -112,11 +112,38 @@ module frame(size) {
module walls() {
walls_height=height-plate*2;
up(plate) linear_extrude(height=walls_height) {
//back_bumpers();
shell2d(thickness=-wall) {
square([width, depth]);
difference() {
up(plate) linear_extrude(height=walls_height) {
//back_bumpers();
shell2d(thickness=-wall) {
square([width, depth]);
}
}
translate(get_holodisk_laserwindow_pos_center()) cube(get_holodisk_laserwindow_size(), center=true);
}
}
module front_plates() {
th = get_holodisk_front_plate_thickness();
slide_pos = get_holodisk_slide_pos();
offset=4.5;
plate_len_side=slide_pos.y - offset/2;
plate_len_left=plate_len_side/2;
plate_len_right=plate_len_left*3;
// front
fwd(th) left(th) up(offset) {
cube([plate_len_left / 2 + th*2, th, height - offset*2]);
}
fwd(th) right(width-plate_len_right-th) up(offset) {
cube([plate_len_right + th*2, th, height - offset*2]);
}
// left
fwd(th) left(th) up(offset) {
cube([th, plate_len_side, height - offset*2]);
}
// right
fwd(th) right(width) up(offset) {
cube([th, plate_len_side, height - offset*2]);
}
}
@@ -169,6 +196,7 @@ module frame(size) {
color("grey") walls();
color("Silver") slides();
color("SaddleBrown") bottom_cover();
color("SaddleBrown") front_plates();
//color("silver") back_bolts();
//color("silver") front_bolts();
}


+ 4
- 2
holodisk_spec.scad View File

@@ -7,6 +7,8 @@

function get_holodisk_size() = [55, 100, 16];

function get_holodisk_front_plate_thickness() = 1;

// -- tape --

function get_holodisk_tape_height() = 5;
@@ -28,11 +30,11 @@ srx = 2;
srz = 2;
function get_holodisk_slide_slider_size() = [get_holodisk_slide_size().x + srx, 15, get_holodisk_slide_size().z + srz];

function get_holodisk_slide_slider_pos() = [get_holodisk_slide_sliding_pos().x, get_holodisk_slide_sliding_pos().y, get_holodisk_slide_sliding_pos().z - get_holodisk_slide_slider_size().z/2 + srz];
function get_holodisk_slide_slider_pos() = [get_holodisk_slide_sliding_pos().x, get_holodisk_slide_sliding_pos().y + 5, get_holodisk_slide_sliding_pos().z - get_holodisk_slide_slider_size().z/2 + srz];

// -- laser --

function get_holodisk_laser_cutout_size() = [15, 9, 20];
function get_holodisk_laser_cutout_size() = [12, 9, 20];

function get_holodisk_laser_cutout_pos() = [
get_holodisk_size().x/2 - get_holodisk_laser_cutout_size().x/2,


+ 9
- 2
reader.scad View File

@@ -43,6 +43,10 @@ module reader(disk_size) {
}
}
module laser_space() {
translate(get_holodisk_laser_cutout_pos_center()) cube(get_holodisk_laser_cutout_size(), center=true);
}
module head_space() {
/*stube=[head_size.x-head_frame*2, head_size.y+head_frame*3, head_size.z-head_frame*2];
up(head_size.z/4 + head_frame)
@@ -65,7 +69,7 @@ module reader(disk_size) {
}
}
head();
//head();
retraction=laser_tower_size.z;
down(retraction)
@@ -81,7 +85,10 @@ module reader(disk_size) {
fwd(frame) cube([width, frame, height]);
head_space();
}
fwd(frame) down(frame) cube([width, depth + frame, frame]);
down(frame) difference() {
fwd(frame) cube([width, depth + frame, frame]);
scale(1.01) down(0.01) laser_space();
}
}
}



Loading…
Cancel
Save