半径5cmの急カーブを楽々曲がれる改造プラレールのレールをOpenSCADと3DプリンターでDIY
カテゴリー:3Dプリンター「3Dグレコ」でイロイロDIY(記事数:59)

2018.04.05

半径5cmの急カーブを楽々曲がれる改造プラレールのレールをOpenSCADと3DプリンターでDIY


改造レールですが、もちろん既存のプラレールのレールと連結出来る互換性は維持しています。

Youtuber修行のため動画も作りました↓

前回の検討↓で、内側のレールが無ければ半径5cmのレールも曲がれそうまで分かりましたが、さらに検討を続けました。
結論として
  • (1)レール内側の壁の高さを8mm→3mmに減らし車輪がひっかかるのを防ぐ
  • (2)レール外側の壁の高さを8mm→12mmに増やし脱輪防止
  • (3)他のレールと連結する部分の壁は8mm→6mmに減らす
  • (4)レール幅を38mm→42mmに広げる
ことで、半径5cmの急カーブも曲がれるようになりました。
また
  • (5)他のレールと連結する凸部分がハメにくいと思っていたら、本物のプラレールにあるフレキシブルさを高めるための溝を入れ忘れていたので、追加。
現在のレール作製のためのOpenSCADスクリプトは下記になります。内部変数の最適化が進んでおり大きく変更になっています。t2xy(進行方向のベクトル(x,y),進行方向への増分(mm)、垂直方向への増分(mm))という入力値です。また、OpenSCADに絶対値を求める「sign」という関数が実装されていることに気が付いたので、そちらの関数の利用に変更など色々。


------------------------------------------------------
$fn=10;

pitch=1/72;
wall_body=12; // normal=8
innerwall_body=3; //normal=8
wall=6; //normal=8
width=42; //normal=38

//main /////////////////////////////////////////////
for (t=[0:pitch:1-pitch]){
body(t2xy(t),t2xy(t+pitch),t2xy(t+pitch*2));
}
in(t2xy(1),t2xy(1+pitch));
out(t2xy(0),t2xy(0+pitch));

////////////////////////////////////////////////////
function t2xy(temp)=[50*sin(temp*300),50*cos(temp*300)];

function XY(angle,Ddis,Vdis)=[
sign(Ddis*angle[0])*sqrt(pow(Ddis,2)/(1+pow(angle[1]/angle[0],2)))+sign(Vdis*-angle[1])*sqrt(pow(Vdis,2)/(1+pow(angle[0]/angle[1],2))),
sign(Ddis)*angle[1]/abs(angle[0])*sqrt(pow(Ddis,2)/(1+pow(angle[1]/angle[0],2)))+sign(Vdis)*angle[0]/abs(angle[1])*sqrt(pow(Vdis,2)/(1+pow(angle[0]/angle[1],2)))];

// body
module body(pos1,pos2,pos3){
Dir1=pos2-pos1;
Dir2=pos3-pos2;
linear_extrude(height = 1.5,center=true){
polygon(points=[pos1+XY(Dir1,0,width/2),pos1+XY(Dir1,0,-width/2),pos2+XY(Dir2,0,-width/2),pos2+XY(Dir2,0,width/2)]);
}
linear_extrude(height = wall_body,center=true){
polygon(points=[pos1+XY(Dir1,0,width/2),pos1+XY(Dir1,0,width/2-1.5),pos2+XY(Dir2,0,width/2-1.5),pos2+XY(Dir2,0,width/2)]);
polygon(points=[pos1+XY(Dir1,0,-width/2),pos1+XY(Dir1,0,-width/2+1.5),pos2+XY(Dir2,0,-width/2+1.5),pos2+XY(Dir2,0,-width/2)]);
}
linear_extrude(height = innerwall_body,center=true){
polygon(points=[pos1+XY(Dir1,0,9.5),pos1+XY(Dir1,0,8),pos2+XY(Dir2,0,8),pos2+XY(Dir2,0,9.5)]);
polygon(points=[pos1+XY(Dir1,0,-9.5),pos1+XY(Dir1,0,-8),pos2+XY(Dir2,0,-8),pos2+XY(Dir2,0,-9.5)]);
}
}

module out (pos1,pos2){
//start out
Dir=pos2-pos1;
//hiraban
translate([pos1[0],pos1[1],0]){
linear_extrude(height = 1.5,center=true){
polygon(points=[XY(Dir,0,-3),XY(Dir,-7.5,-5),XY(Dir,-7.5,-1),XY(Dir,-3,-1),XY(Dir,-3,1),XY(Dir,-7.5,1),XY(Dir,-7.5,5),XY(Dir,0,3)]);
}
linear_extrude(height = wall,center=true){
polygon(points=[XY(Dir,0,3),XY(Dir,1.5,3),XY(Dir,1.5,8),XY(Dir,0,8),XY(Dir,0,4.5),XY(Dir,-9,6.5),XY(Dir,-9,1),XY(Dir,-7.5,1),XY(Dir,-7.5,5)]);
polygon(points=[XY(Dir,0,-3),XY(Dir,1.5,-3),XY(Dir,1.5,-8),XY(Dir,0,-8),XY(Dir,0,-4.5),XY(Dir,-9,-6.5),XY(Dir,-9,-1),XY(Dir,-7.5,-1),XY(Dir,-7.5,-5)]);
}}
}

module in (pos1,pos2){
//start in
Dir=pos2-pos1;

translate([pos1[0],pos1[1],0]){
linear_extrude(height = wall,center=true){
polygon(points=[XY(Dir,0,-8),XY(Dir,9,-4.5),XY(Dir,9,-9.5),XY(Dir,-1.5,-9.5),XY(Dir,-1.5,9.5),XY(Dir,9,9.5),XY(Dir,9,4.5),XY(Dir,0,8)]);
polygon(points=[XY(Dir,9,width/2-1.5),XY(Dir,9,width/2),XY(Dir,0,width/2),XY(Dir,0,width/2-1.5)]);
polygon(points=[XY(Dir,9,-width/2+1.5),XY(Dir,9,-width/2),XY(Dir,0,-width/2),XY(Dir,0,-width/2+1.5)]);
}
linear_extrude(height = 1.5,center=true){
polygon(points=[XY(Dir,0,11),XY(Dir,9,11),XY(Dir,9,width/2-1.5),XY(Dir,0,width/2-1.5)]);
polygon(points=[XY(Dir,0,-11),XY(Dir,9,-11),XY(Dir,9,-width/2+1.5),XY(Dir,0,-width/2+1.5)]);
}
}
}
------------------------------------------------------



Category:3Dプリンター「3Dグレコ」でイロイロDIY



■ ■ ■ コメント ■ ■ ■

いいっすね!=20
001 [04/05 12:38]ななしさそ★44:これを発展させてスパイラルにして無限プラレールをレール作る所からやれば、つべでもbuzzるかもw (10)

名前 ↑B

コメント(※改行は省略されます)

※3回以上の連続書き込み不可
この記事のアクセス数:


デルタ型3Dプリンター「3Dグレコ」でうまく印刷するためのTIPS

(1)印刷するためのコード「.gcode」ファイルはフリーソフトCuraで落ちているデータ「.stl」から作れる。
(2)Curaの設定でスタートアップコードにステージの高さをキャリブレーションするためのG29コードを追加する。
(3)ヒートベッドが搭載されていないのでABSは印刷しにくい、PLAの方が綺麗にゆがみなく出力可能。
(3)ABS樹脂でもPLA樹脂でも、ステージには「消え色ピット」をまんべんなく塗り、乾かして使用する。ゴミが溜まってきたらステージを取り外し、水につけると綺麗に取り除ける。マスキングテープをはり、その上に「消え色ピット」を塗るとステージを外して掃除する手間が省ける。
(4)ヘッドが変な動きをしたらモーターとベルトをつなぐイモネジがゆるんでいる可能性があるので締める。
(5)Initial Heightを0.2mmにするとしっかりステージに印刷するオブジェクトが固定される。


(6)印刷前にgcodeファイルをRepetier-Hostなどで確認すると良い、ポイントはきちんとステージに設置しているか、Brimは十分かなど。
ありとあらゆるノウハウがあるのでこのページに書かれている事を最初から最後まで熟読すると良い。

デルタ型3Dプリンター「3Dグレコ」 3DPRTRE2 ※日本語マニュアル付き サンコーレアモノショップ


→カテゴリー:3Dプリンター「3Dグレコ」でイロイロDIY(記事数:59) (コメント数)