試験管立てジェネレータ
研究室で使う試験管立てを、ブラウザ上で寸法を決めるだけで設計できるツールです。

試験管の外径・本数(列×行)・穴の間隔などを変えると3Dプレビューがその場で更新され、「STLをダウンロード」を押すとそのまま3Dプリンタのスライサに読み込める STL(3Dプリント用の標準的なメッシュ形式)が保存されます。構造は天板・底板・支柱だけの「開放2段式」で、天板の穴が試験管を支え、丸底の試験管も底板の水抜き穴の縁に安定して座ります。設計データはブラウザ内だけで処理され、サーバーには送信されません。
使い方
-
開いて寸法を決める
開くと既定値(試験管Ø20mm・4列×7行=28穴)のラックが表示されます。左パネルのスライダー/数値入力で試験管外径・列数・行数・穴ピッチなどを調整すると、3Dプレビューが即座に追従します。
-
サイズ情報で印刷可否を確認する
パネル下部の「サイズ情報」に、フットプリント(設置面の縦×横)・全高・穴径・穴間の壁厚・穴数が常に表示されます。既定値では 115×173mm・全高75mm で、一辺180mmの造形ベッドに収まる設計です。
-
警告が出たら調整、問題なければSTLを保存
造形サイズ上限を超えたり、支柱が試験管の挿入経路を塞ぐ寸法になると、赤い警告が出て「STLをダウンロード」ボタンが自動で無効になります。警告が消えたらSTLを保存し、スライサへ。天板の下が空間になる構造のため、スライサでは必ずサポート材を有効にしてください。
設定項目
- 試験管外径 / 穴クリアランス
- 試験管の太さと、穴の逃げ量。穴径=外径+クリアランス(既定 20+1=Ø21mm)で、抜き挿ししやすい緩さを調整できる。
- 列数 / 行数
- 試験管の本数を決めるグリッド。既定は4列×7行=28本。
- 穴ピッチ
- 隣り合う穴の中心間距離。詰めるほど小さくなるが、穴間の壁厚(ピッチ−穴径)が薄くなると割れやすくなるため、壁厚もサイズ情報に表示される。
- 端マージンX(支柱側)/ 端マージンY
- 端の穴から板の縁までの余白。支柱が立つX側は、試験管と支柱がぶつからないよう広め(既定11mm)になっている。
- 天板厚 / 底板厚 / 支柱高さ / 支柱の太さ
- 板と支柱の寸法。支柱高さが「段の空き」=試験管が見える高さになる。長辺中央の支柱はチェックボックスでON/OFF。
- 外形の角丸半径
- 板の四隅のフィレット(角の丸め)。支柱の断面も同じ半径で丸められ、板の輪郭とツライチに揃う。
- 底板の水抜き穴径
- 底板に開ける小穴。洗浄後の水が抜け、丸底試験管はこの縁に座って安定する。
- 造形サイズ上限(ベッド一辺)
- お使いの3Dプリンタの造形範囲。フットプリントか全高が超えると赤字警告+STL出力ブロック。
仕組みと使った技術
全体の流れ
- 試験管外径・列数・行数・ピッチ・マージンから、穴の中心座標グリッドと外形サイズ(幅・奥行・全高)を計算する。
- 天板は「角丸長方形に28個の貫通穴を開けた2D形状」を厚み分押し出して作る。底板も同じ外形に水抜き小穴で作り、支柱6本(4隅+長辺中央)を立てて組み合わせる。
- 支柱と試験管の干渉チェックを常時実行し、穴の直下に支柱がかかる寸法(試験管が底まで入らない配置)を検出したらSTL出力をブロックする。
- モデルは最初から印刷向き(底面が下)の座標系で組み立てられており、STLはそのままスライサに読み込める。
使った技術
- HTML / JavaScript
- 単一ファイルのUI・寸法計算・警告ロジック
- Three.js
- 3Dプレビュー表示とSTL書き出し(STLExporter)
実装の工夫
- 単一の index.html に Three.js を CDN で読み込んだ、ビルド不要・依存インストール不要の構成。生成したSTLはブラウザ内で作られ、この端末にのみ保存される(サーバーへの送信なし)。
- 立体ブーリアン(CSG)ライブラリは使わず、「穴あき2D形状の押し出し」と板・支柱の組み合わせだけで水密なメッシュを構成。部材同士はわずかに重ねてスライサでの合成を安定させている。
- 初期設計では支柱が4隅+長辺中央の6穴の挿入経路を塞いでいたことがレビューで判明し、支柱側マージンの拡大と汎用の干渉チェック(点と矩形の距離判定)を組み込んだ。同種の設計ミスはどのパラメータの組み合わせでも自動検出される。
用語
- STL
- 3Dプリントで標準的に使われる三角形メッシュのファイル形式。スライサ(印刷用データに変換するソフト)がそのまま読み込める。
- フットプリント
- モデルを造形ベッドに置いたときの設置面の縦×横サイズ。プリンタの造形範囲に収まるかの判断に使う。
- ピッチ
- 隣り合う穴の中心から中心までの距離。
- サポート材
- 宙に浮いた形状を支えるためにスライサが追加する仮の支え。印刷後に取り除く。このラックは天板の下が空間なので必須。
- フィレット(角丸)
- 角を丸めた形状。ぶつけたときの欠け防止と手触り・見た目の向上になる。
- クリアランス
- 部品同士のはめ合いに設ける隙間。プリンタの誤差や試験管の寸法ばらつきを吸収する。