〇LEGO互換の2x4ブロックの写真
※真ん中の白色ブロックが今回作った物、赤と黄色のブロックは純正のLEGOブロックです。
作成手順
1. OpenSCADで以下のコードを実行して形状を調整し、STLファイルにエクスポートします。穴の半径など3Dプリンタや設定によって微調整してください。
・LEGO互換の2x4ブロックのソース
NUM_HOLE_W,NUM_HOLE_Dパラメータでブロックのサイズを変えることができます(2以上を指定してください)。
// プレートの厚さ
PLATE_THICK=7;
// LEGOの1ブロック
LEGO_SQUARE=7.95;
// 突起の直径
LEGO_PEG=4.8;
LEGO_PEG_R=LEGO_PEG/2;
LEGO_PEG_H=1.8;
// LEGOの側面の厚さ
LEGO_WALL=1.5;
// LEGOの底面の円の直径
LEGO_BOTTOM_CIRCLE=6.4;
// 底の側面の高さ
LEGO_BOTTOM_H=2.6;
// プレートのサイズ(ブロック単位)
NUM_HOLE_W=4;
NUM_HOLE_D=2;
// 上面プレート
translate([0, 0, 0])
linear_extrude(height=PLATE_THICK){
square([LEGO_SQUARE*NUM_HOLE_W, LEGO_SQUARE*NUM_HOLE_D]);
}
// 突起
for( lw = [0 : NUM_HOLE_W-1] ){
for( ld = [0 : NUM_HOLE_D-1] ){
translate([LEGO_SQUARE*lw+LEGO_SQUARE/2, LEGO_SQUARE*ld+LEGO_SQUARE/2, PLATE_THICK])
linear_extrude(height=LEGO_PEG_H){
circle(LEGO_PEG_R, $fn=50);
}
}
}
// 側面
translate([0, 0, -LEGO_BOTTOM_H])
linear_extrude(height=LEGO_BOTTOM_H){
square([LEGO_SQUARE*NUM_HOLE_W, LEGO_WALL]);
}
translate([0, LEGO_SQUARE*NUM_HOLE_D-LEGO_WALL, -LEGO_BOTTOM_H])
linear_extrude(height=LEGO_BOTTOM_H){
square([LEGO_SQUARE*NUM_HOLE_W, LEGO_WALL]);
}
translate([0, 0, -LEGO_BOTTOM_H])
linear_extrude(height=LEGO_BOTTOM_H){
square([LEGO_WALL, LEGO_SQUARE*NUM_HOLE_D]);
}
translate([LEGO_SQUARE*NUM_HOLE_W-LEGO_WALL, 0, -LEGO_BOTTOM_H])
linear_extrude(height=LEGO_BOTTOM_H){
square([LEGO_WALL, LEGO_SQUARE*NUM_HOLE_D]);
}
// 下の円柱
for( lw = [0 : NUM_HOLE_W-2] ){
for( ld = [0 : NUM_HOLE_D-2] ){
translate([LEGO_SQUARE*(lw+1), LEGO_SQUARE*(ld+1), -LEGO_BOTTOM_H])
linear_extrude(height=LEGO_BOTTOM_H){
circle(LEGO_BOTTOM_CIRCLE/2, $fn=50);
}
}
}
・OpenSCADの画面
2. Ultimaker CuraでSTLファイルを読み込み、スライスしてgcodeを保存します。
3. 3Dプリンターで印刷します
関連情報
・OpenSCADまとめ・LEGOに関する他の記事は、こちらを参照してください。
・OpenSCADとUltimaker Curaを使用して、LEGOブロック上に固定できるLEDキューブを作成する
・OpenSCADとUltimaker Curaを使用して、LEGO互換の凹みがついたサーボモーター固定台を作る
0 件のコメント:
コメントを投稿