← Tech Research 一覧へTech Research

III章:3Dプリンタの構成(メカ・電装・ソフト・安全)

2026.09.26

FDM装置を例に、メカ・電装・ソフトの構成と、安全・セキュリティ上の注意点を整理する。

本章では、II-i-1で示したプロセスを担う装置の中身を、FDM装置を例にメカ・電装・ソフトの順に見ていき、最後に安全とセキュリティを整理する。具体例には、構成要素が一次資料で確認できるオープンソース機を使う。

i メカ

1 運動機構

FDM装置の運動機構は、モーターと軸の関係で大きく3つに分かれる。ここでは装置を正面から見て、Xを左右、Yを前後、Zを上下(積層する方向)とする。

方式名モーターと
軸の関係
動作方向ごとの移動部品特徴
X:左右Y:前後Z:上下
直交方式(ベッドスリンガー)各軸に1つずつプリンタヘッドベッドプリンタヘッド構造が単純。ベッドと造形物の質量が動くため、高速化に限界。低価格機に多い
CoreXYXとYを2つのモーターの組み合わせで動かすプリンタヘッドプリンタヘッドベッド、またはガントリー可動部が軽く高速化しやすい。密閉型の筐体にしやすい。近年の高速機に多い
デルタ3つのモーターの組み合わせで3軸を動かすプリンタヘッドプリンタヘッドプリンタヘッド3本の柱に沿ってキャリッジが上下し、アームでプリンタヘッドを動かす。造形範囲が円筒形になる
直交方式(ベッドスリンガー)の模式図CoreXYの模式図(上から見た図)デルタの模式図(正面から見た図)

CoreXYでは、本体に固定した2つのモーターでプリンタヘッドを引く。2つを同じ向きに回すと左右に、逆向きに回すと前後に動く。モーターが動く部分に載らないため、可動部が軽くなる。同じ仕組みを左右と上下に使ったCoreXZもある(Voron Switchwireなど)。

CoreXY機はさらに、Z方向に何を動かすかで分かれる。オープンソース機のVoronを例にとると、Tridentはベッドが上下し、Voron 2.4はベッドを固定して門形のガントリーが上下する1。

装置に改造等を加える場合、この違いは大きい。ベッドが上下する構成では、パレットのクランプ機構やセンサーとその配線もZ方向に動くため、可動部の質量と配線の取り回しが増える。ベッドが固定されている構成では、パレット交換や取り出しの機構を静止した構造に対して設計でき、自動化しやすい。一方で、ガントリーの水平出し(Voron 2.4では4点で調整する)が必要になる1。

2 筐体構造

筐体は、装置の骨格となるフレームと、成形エリアを囲う扉や壁で構成される。

FDM装置のフレームには、溝付きのアルミ押出材(Tスロットフレーム)が広く使われる。 断面形状(外形と溝の寸法)に公的な規格はないが2、欧州由来の2系統が事実上の標準になっている34。 2系統は、item社(ドイツ)由来のI型と、Bosch Rexroth社(ドイツ)由来のB型で、同じ外形ならB型のほうが溝幅が一回り広い34。日本国内では、ミスミのHFSシリーズが事実上の標準になっており、溝幅はB型に近い(20mm角で溝幅6mm、30mm角で溝幅8mmなど)56。 溝寸法等が同じになっているため、共通な部材が使えるが、厳密には板厚等が異なる。 改造により重量物などを固定する場合などには、確認が必要である。

またオープンソース機では、アルミフレームを含め一般に入手可能な市販の部材を使用する前提となっているのに加え、 専用部品は3Dプリンタで製作することを想定した設計となっている。

成形エリアを囲う扉や壁を設けた装置もある。目的は主に次の3つである。成形エリアへの異物の侵入を防ぐこと、可動部や高温部に手が触れないようにすること、庫内の温度を保って成形品質を安定させることである。温度管理の点は、III-i-4-Bで扱う材料ごとの密閉筐体の要否に関わる。

3 駆動系と押出系

要素役割代表的な部品
モーター各軸と押出機の駆動NEMA17/NEMA14のステッピングモーター
伝達機構モーターの回転を直線運動に変えるGT2タイミングベルト(XY)、リードスクリューまたはベルト(Z)
ガイド可動部を支え、真直に動かすリニアレール(MGN9/MGN12など)、丸棒とリニアブッシュ
押出機フィラメントを一定量ずつ送るギアでフィラメントを挟んで送る。プリンタヘッドに載せるダイレクト式と、本体側に置くボーデン式がある
ホットエンドフィラメントを溶かしてノズルから押し出すヒートシンク、ヒートブレイク、ヒーターブロック(ヒーター、温度センサー)、ノズル。高流量型は高速造形向き
ツールヘッドホットエンド、押出機、冷却ファンなどをまとめて載せ、運動機構で動かされる筐体、冷却ファン、ツールヘッド基板、ノズル位置を測るプローブ

A ホットエンド

ホットエンドはFDM装置に特有の部品で、ヒートシンク(冷却部)、ヒートブレイク(熱を上に伝えにくくする断熱部)、ヒーターブロック、ノズルで構成される7。造形の品質と速度に直結するため、専門のメーカーが多数ある。

メーカー国代表的な製品と特徴
E3D英国V6:ヒーターと温度センサーをカートリッジ式で交換できる。標準の温度センサーで300℃まで8。Revo:工具なしでノズルを交換できる9
Phaetus中国Dragon、Rapido:Dragonは、E3D V6互換の取り付け部すべてに対応するとしている10
Slice Engineering米国Mosquito:500℃対応。片手でノズルを交換できる構造11

E3D V6は広く普及した製品で、その取り付け方式(グルーブマウント)は業界の標準になったとされ、V6の取り付け方式に合わせた他社製品や交換部品も多い7。ただし、ノズルのねじが同じM6でも、ねじの長さなどが製品ごとに違う場合があり、ノズルまで互換とは限らない11。

オープンソース機でも、ホットエンド本体は市販品を組み合わせて使うのが一般的である12。

また、ホットエンドは消耗部品を含む。特にノズルは、フィラメントのこびりつきや詰まり、造形ミスによる損傷、繊維入り材料による摩耗が起こるため、定期的な交換が必要になる13。ヒーターや温度センサーも、E3D V6のようにカートリッジ式で交換しやすく設計された製品がある8。ホットエンドの周辺は高温にさらされるうえ、冷却ファンなどの可動部や細い配線が集まり、造形くずも付きやすいため、ほかの部分に比べて故障が起きやすいと考えられる。生産設備として使う場合は、予備部品を用意しておくとよい。

B ツールヘッド

ツールヘッドは、ホットエンド、押出機、冷却ファン、ツールヘッド基板などをまとめて載せる部分で、本レポートでいうプリンタヘッドの実体にあたる12。

オープンソース機では、ツールヘッドの筐体や押出機の印刷部品が設計データとして公開されていることが多い。Voronの場合、ツールヘッド「Stealthburner」の設計データはGPL-3.0で公開されており14、そこにE3DのRevoやV6、PhaetusのDragonやRapidoといった市販のホットエンドを組み合わせる12。構成要素ごとのライセンスはIV-ii-3-Cで扱う。

4 フィラメント

FDM装置の材料は、樹脂を一定の直径の糸状に成形し、リールに巻いたもの(フィラメント)である。直径は1.75mmが主流で、一部の機種では2.85mmが使われる15。装置ごとに使える直径が決まっているため、材料を選ぶ前に確認が必要である。

A 主な種類と造形条件

材料ノズル温度ベッド温度密閉筐体特徴・主な用途
PLA185〜235℃50〜60℃不要反りが少なく扱いやすい。試作、形状確認
PETG215〜270℃70〜90℃不要強度と扱いやすさのバランスがよい。機能部品、治具
ABS230〜255℃95〜110℃推奨耐衝撃性・耐薬品性がある。反りやすい
ASA220〜275℃90〜110℃推奨ABSに近い性質で、紫外線に強く屋外向き
PC270〜275℃100〜115℃推奨耐熱性と強度が高い
PA(ナイロン)240〜285℃70〜115℃推奨粘り強く、機械部品向き
TPU(軟質)220〜260℃40〜85℃不要ゴムのように曲がる
複合材(炭素繊維・ガラス繊維入り)225〜290℃40〜120℃母材による剛性が高い。硬化ノズルが必要

温度はPrusa Researchの材料ガイドにもとづく目安である16。同じ材料でも製品ごとに推奨条件が異なるため、実際にはフィラメントメーカーの指示に従う。また射出成形など樹脂を扱う生産技術でよく言われるように、厳密には同じ樹脂材料でもわずかな組成差によって品質が左右されることがある。例えば色やメーカーの違い、保管状態による吸湿や変質によって、成形結果が変わることがあると考えられる。

B 装置に求められる条件

使う材料によって、装置側に必要な条件が変わる。

  • (1) ホットエンドの耐熱温度:PCやPAは270℃を超える温度で造形する。ホットエンドの上限温度は構造によって決まるため、使う材料に対応しているかを確認する。
  • (2) 密閉筐体:ABS、ASA、PC、PAは、冷えるときの収縮で反りや割れが出やすく、密閉筐体での造形が推奨されている16。
  • (3) 硬化ノズル:炭素繊維やガラス繊維を含む複合材はノズルを摩耗させるため、焼入れ鋼などの硬化ノズルが必要になる1613。
  • (4) 乾燥と保管:フィラメントは空気中の水分を吸う。吸湿したまま造形すると、ノズル内で水分が気化し、糸引き、材料不足、気泡、表面の荒れ、強度低下の原因になる17。フィラメントは密封された状態で販売されており、開封後は速やかに使うことが望ましい。開封後は乾燥剤を入れて保管し、長期間保管したものや吸湿したおそれのあるものは、造形前に乾燥させる。

フィラメントを乾燥させるためには、3Dプリンタとは別の乾燥機を使用する方法がある。プリンタの機種によっては、ヒートベッドで乾燥させる方法もある。 送風式乾燥機の場合、乾燥条件の目安は次のとおりである17。

材料乾燥温度乾燥時間
PLA50〜60℃8時間
PETG60〜70℃8時間
ABS、ASA75〜85℃8時間
PC75〜85℃8時間
PA(ナイロン)75〜85℃8〜12時間
TPU65〜75℃8時間

I-iii-2-Aで述べたとおり、材料のロットと乾燥条件・造形条件を記録し管理することで、品質をより安定化させることができる。

ii 電装(ハード)

1 構成要素

要素役割
ホストPC(Raspberry Piなど)G-codeを読んで時刻付きステップ指令列を作成 Web UI、API、カメラを動かす
制御基板(MCU)ステップパルスの生成、ヒーター・ファンの駆動、温度センサーとリミットスイッチの読み取り
ステッピングモータードライバモータを動作させるためパルスをコイル電流に変える(TMC2209やTMC5160などが使われる)
ツールヘッド基板プリンタヘッド周りのヒーター、ファン、センサーを近くで制御する。本体とはCANなどでつなぐ
電源、ヒーター24V系の電源、ベッド用のシリコンヒーターなど

制御基板は、装置メーカーから見ると最も交換しにくい部品の一つである。配線、ファームウェアの設定、筐体の取り付け穴がすべて基板に依存するためである。基板の設計データがどこまで公開されているかは製品によって大きく違う。この点はIV-iiiで扱う。

2 ブートローダとファームウェア

ホストPC(Raspberry Piなど)は一般的なPCと同じ構成で、多くはOS上でソフトが動作する。 ファームウェアは、MCU(マイコン)に保存され、MCU上で動作するプログラムである。3Dプリンタの構成に合わせた専用のソフトで、後述するKlipper(III-iii-2)などがある。 また、ブートローダは、MCUの電源を入れたときに本体のファームウェアより先に動く小さなプログラムである。主に、そのまま本体を起動するか、新しいファームウェアを受け取って書き込むかを判断する。

例えばKlipperでは、ホストPCとMCUのソフトのバージョンをそろえる必要があるため、ホストPCを更新するたびにMCUのファームウェアも書き換えることになる。

Katapult(旧CanBoot)は、Klipper向けに作られたブートローダで、CAN、USB、UART経由でファームウェアを書き込める18。CANでつながったツールヘッド基板のように、USBケーブルが届かない基板でも、通常の通信線を使って書き換えられる。

ブートローダが使えない場合、書き換えのたびに基板に実装されているBOOTボタンを押して電源を入れ直すなど、基板に物理的に触る必要がある。この違いは保守の手間に直結する。

3 基板とファームウェアの選定

基板とファームウェアの選び方は、目的からファームウェアを決めてそれに対応する基板を選ぶか、基板の制約からファームウェアが決まるかのどちらかになる。産業用途では、外部システムとの連携と保守の観点が重くなるため、前者の順で考えるのが妥当と考えられる。

A ファームウェアの選択肢

オープンソース機や自作機では、基板が対応していればファームウェアを選べる。代表的なものは次の3つである。

ファームウェア運動計算設定の変更方法主な対応基板ライセンス
MarlinMCUソース中の設定ファイルを書き換えてビルドし、MCUに書き込む198ビットのAVRから32ビットのARM(STM32、LPC176xなど)まで幅広い20GPL-3.020
KlipperホストPCテキストの設定ファイルを書き換える。MCUへの再書き込みは不要21AVR、ARM(STM32、LPC176x、SAMなど)、RP2040などを積んだ基板21GPL-3.022
RepRapFirmwareMCUG-codeで書いた設定ファイル(config.g)を書き換える23主にDuet3D社の基板。STM32、LPC176x向けの派生版もある24GPL-3.024

選ぶときの観点は次のとおりである。

  • (1) 基板が対応しているか:最初の制約になる。
  • (2) ホストPCを置けるか:Klipperはホストが必須なので、部品点数と管理対象が増える(III-ii-2)。
  • (3) 設定の変えやすさ:調整を頻繁に行う場合は、再ビルドが不要なKlipperが有利である。
  • (4) 外部連携:生産管理システムなどとつなぐ場合は、APIがそろっているかが重要になる。KlipperではMoonrakerがこの役割を担う(III-iii-3)。RepRapFirmwareにも、HTTP経由で操作するWeb画面(Duet Web Control)がある25。
  • (5) 継続性:更新が続いているか、利用者と情報が多いか。
  • (6) ライセンス:3つともGPL-3.0である。改造して製品に組み込む場合の扱いはIV章で扱う。

一方、市販機の多くはメーカー独自のファームウェアを搭載しており、利用者が入れ替えることは想定されていない。入れ替えると、メーカーの保証やクラウド連携などの機能を失うことになると考えられる。PrusaのようにファームウェアのソースをGPL-3.0で公開しているメーカーもあるが26、その場合も中身を確認・修正できるという意味であり、別のファームウェアへの入れ替えを想定したものではない。

B 基板の選定観点

基板は、ファームウェアへの対応に加えて、装置の構成に合わせて選ぶ。ここでいう基板は制御基板だけではなく、III-ii-1の表の構成要素にまたがる。各観点の後の括弧内に、主に関わる構成要素を示す。

  • (1) 電源電圧と電力容量(主に電源、ステッピングモータードライバ):24Vが主流である27。高速化のためにモーター電源を高電圧にする場合は、対応するドライバが必要になる(TMC2209は29Vまで、TMC5160は60Vまで2829)。電源の容量は、ヒーター、モーター、ファンの合計で決まる。
  • (2) ベッドヒーターの方式(主に電源・ヒーター。制御基板はSSRへの信号を出す):大型のベッドでは、商用電源で動くAC駆動のヒーターをSSR(半導体リレー)で制御する構成がある。その場合は、接地と温度ヒューズの追加が求められる27。
  • (3) モータードライバの数と種類(ステッピングモータードライバと、それを載せる制御基板):必要な数は機構で決まる。Z軸を4本のモーターで独立に動かす構成もあり30、多色機やツールチェンジャー機ではさらに増える。ドライバも、汎用的なTMC2209(最大2A RMS)と、外付けのMOSFETで大電流を流せるTMC5160などがあり2829、モーターの大きさと目標速度で選ぶ。
  • (4) 入出力の数と種類(制御基板、ツールヘッド基板):ファン、ヒーター、温度センサー、プローブの接続数で基板が決まる。高温で使う場合は、サーミスタの代わりにPT1000や熱電対(専用の変換ICを介する)を使うことがあり、ファームウェア側の対応も確認する30。
  • (5) ツールヘッド基板の有無(ツールヘッド基板):ツールヘッド基板をCANなどでつなぐと、可動部を通る配線を電源と通信の数本に減らせる。断線しやすいケーブルの束が減るため保守性が上がる一方、通信の設定やファームウェアの管理対象が増える(III-ii-2)。
  • (6) ホストPCとの一体化(ホストPC、制御基板):ホストPC用の小型コンピュータを載せられる一体型の基板もあり、配線と設置スペースを減らせる。ホストPCを別にしておけば、性能を上げたり交換したりしやすい。

産業用途では、これに加えて次の観点が重くなる。

  • (7) 供給の継続性(全体。特に制御基板):同じ基板を何年調達できるか、ファームウェアの対応が続くか。基板は交換しにくい部品であるため(III-ii-1)、調達できなくなった場合の代替基板も想定しておくとよい。
  • (8) 安全(主に電源・ヒーターと制御基板):ヒーターの異常加熱を検知して停止する機能、ヒューズや温度ヒューズ、電源の安全規格への適合など。装置としての安全はIII-ivで扱う。

電装の構成要素のうち制御基板とツールヘッド基板を除く要素は3Dプリンタに限らない一般的な電装部品である。 これらは複数のメーカーが同等品を販売しており、メーカー開示のスペックなどを参考に選択する。 制御基板、ツールヘッド基板については以下のようなものがある。

制御基板の例

製品(メーカー)MCUモータードライバ電源・通信特徴
Octopus Pro(BIGTREETECH)STM32H723またはSTM32F446差し替え式8個(TMC2209、TMC5160など)基板15〜28V、モーター12〜60VMarlin、Klipper、RepRapFirmwareに対応。モーター電源を分けて高電圧にできる31
Manta M8P(BIGTREETECH)STM32H723(V2.0)差し替え式8個—Raspberry Pi CM4などの小型コンピュータを載せられ、ホストPCと一体化できる32
Duet 3 Mini 5+(Duet3D)ARM Cortex-M4(120MHz)搭載5個(TMC2209)11〜25V、EthernetまたはWi-FiRepRapFirmware用。CAN-FDで拡張基板をつなげる33

ツールヘッド基板の例

製品(メーカー)MCUモータードライバ電源・通信特徴
EBB36/EBB42 CAN(BIGTREETECH)STM32G0B1(V1.1以降)搭載1個(TMC2209、押出機用)12〜24V、CANまたはUSBPT100/PT1000用の変換IC(MAX31865)を載せた版がある34
Nitehawk-SB(LDO Motors)RP2040搭載1個(TMC2209、押出機用)USBStealthburner用。加速度センサーとファンの回転検出を備える35

いずれも特定製品の推奨ではなく、構成の違いを示す例である。仕様は版によって変わるため、採用時はメーカーの最新資料を確認する。

iii ソフト

1 事前処理系

A CAD

設計には、SOLIDWORKSやFusionなどの3D CADが使われる。 CADには機械系やデザイン系などがあり、近年はAIにより写真やスケッチから3Dモデルを作る取り組みなどもある。 多くの場合、どのCADを使ったかによらず、STLや3MFなどのファイル形式で3Dモデルを出力し、後の処理を行っていく。

B スライサー

スライサーは、3Dモデルを層に切り、経路・速度・温度・サポートを決めてG-codeを出力するソフトである。

現在広く使われているスライサーの多くは、同じ系譜にある。PrusaSlicerはSlic3rをもとに開発され36、Bambu StudioはPrusaSlicerをもとにしている37。OrcaSlicerはBambu StudioとPrusaSlicerを土台に、SuperSlicerなどの考え方も取り入れて開発されている38。3つともAGPL-3.0で公開されている363738。

2 3Dプリンタ制御系

G-codeをもとに各機器へ動作指示を出すソフトである。制御基板上のファームウェアだけで動く方式と、ホストPCと制御基板のソフトが連携する方式がある。前者の例であるMarlinやRepRapFirmwareについてはIII-ii-3-Aで触れた。ここでは後者の例としてKlipperを取り上げる。

Klipperは、II-i-1で述べた、運動計算をホストPCで行う方式を採るファームウェアであり、GPL-3.0で公開されている22。装置固有の設定(軸の長さ、モーターの向き、ヒーターの制御パラメータなど)は printer.cfg という設定ファイルに書き、造形開始・終了時の動作などは設定ファイル内のマクロで定義する。

Klipperの特徴は、重い計算をホストPC(Raspberry PiなどのLinux機)に任せ、MCUは指定された時刻にパルスを出すことに専念させる分業にある39。ホストPCは先読みと加減速を計算してステップの時刻を求め、それを圧縮した指令としてMCUに送る。MCUは受け取った指令をモーターごとのキューに積み、ハードウェアタイマーの割り込みでパルスを出す39。

この分業には、制御の性能とは別の利点がある。ホストPC上で動くソフトは普通のLinuxプログラムなので、稼働状態の取得、外部システムとの連携、ネットワーク管理を、制御の本体に手を入れずに追加できる(III-iii-3)。

3 UI他(履歴管理、装置監視など)

実用上は、装置を運用できるようにするソフトが必要になる。 ホストPC上で動作し3Dプリンタ制御系と同時(または事前事後)に動作する。

具体例としてMoonrakerがある。 またMainsailやFluiddといったWeb UI、タッチパネル用のKlipperScreenもあるが、いずれもMoonrakerのAPIを使うクライアントである。

Klipper本体の外部との接点はUnixドメインソケット1本で、Web APIや認証、ファイル管理、履歴の機能は持たない。これらを提供するのがMoonrakerである40。MoonrakerはKlipperの隣で動く常駐プロセスで、HTTPとWebSocketのAPIを外部に公開する。

機能内容
APIHTTP、WebSocket上のJSON-RPC、MQTT41
状態の購読温度、座標、造形状態などを指定すると、変化があったときに通知される
ファイル管理G-codeや設定ファイルのアップロード・ダウンロード
履歴ジョブごとの開始・終了時刻、造形時間、フィラメント使用量、終了状態。任意の補助データ(例: 消費電力量)をジョブ記録に付けられる42
電源制御GPIO、リレー、スマートプラグなどを使ったプリンタの電源の入り切り41

履歴に任意のデータを紐づけられる機能は、I-iii-2-Aで述べた工程記録に使える。Moonraker本体を改造しなくても、センサーの値をジョブ単位の記録として残せる42。

4 ソフトの選定観点とカスタマイズ

ソフトに手を加える場合、どの層に手を入れるかで工数と保守の負担が大きく変わる。原則として、目的を達成できる最も浅い層で済ませる。

A 事前処理系

CADについては、最終的にSTLなどの形式での出力が必要であるが、ほとんどのCADで出力が可能である。 一方で、各CADはそれぞれ専用のデータ形式で保存・運用されるのが一般的であり、企業であればその他の業務との関係も踏まえて選択することが望ましい。 また、ハイエンドCADはライセンス費用が高額になるため、費用面も重要な要素である。

スライサーについては、次の観点がある。

  • (1) G-codeの書式:G-codeは、ファームウェアごとに対応する命令が一部異なる。スライサー側で出力の書式(G-code flavor)を装置のファームウェアに合わせて設定する4344。
  • (2) スライサーとファームウェアの役割分担:押出圧の補正のように、スライサーとファームウェアの両方に似た機能がある場合がある。Klipperの資料は、スライサー側の一部の押出補正機能を無効にし、Klipper側の機能を使うよう勧めている44。
  • (3) 装置プロファイルの有無:スライサーには、装置ごとの設定一式(プロファイル)が用意されていることが多い。例えばPrusaSlicerは他社の装置のプロファイルも同梱している45。プロファイルがない装置では、自ら設定を作る必要がある。
  • (4) 装置への送信:スライサーから装置へG-codeを直接送れるかどうか。例えばPrusaSlicerは、Moonraker経由でKlipper機にG-codeを送信できる43。メーカー純正のスライサーは、メーカーのクラウドとの連携を前提にしている場合がある(I-ii)。
  • (5) 設定の管理:生産で使う場合は、材料ごとのプロファイルを社内でそろえて管理し、造形条件の記録と結びつけられるかが重要になる(I-iii-2-A)。

B 3Dプリンタ制御系

電装とセットで議論が必要である。III-ii-3の内容を参照のこと。

また、Klipperにはパラメーターを調整する機能があらかじめ用意されており、大きく手を加えずにカスタマイズが可能である。

層内容例
(1) スライサーのプロファイル材料ごとの速度、温度、流量、冷却特殊な材料に合わせて造形速度を変える
(2) printer.cfg とマクロ装置固有の動作、出力ピン、造形前後の処理造形中は赤、待機中は青の表示灯を点ける

C UI他(履歴管理、装置監視など)

層内容例
(1) Moonrakerの設定電源制御、MQTT、センサー造形終了後にプリンタの電源を切る
(2) APIを使う別プログラム周辺設備との調停、工程記録の加工ロボットによる取り出しと次のジョブの投入を制御する
(3) Klipper/Moonraker本体の改造—ほとんど必要にならない

生産設備として周辺機器を組み合わせる場合、実際の開発の中心は(2)になる。(2)のプログラムは、造形の完了を検知し、周辺設備に指示を出し、その完了を待って次のジョブを投入し、異常時には全体を止める調停役である。

iv 安全とセキュリティ

1 安全装置

3Dプリンタは可動部を有し、高温部も存在するため安全対策が必要である。 ただし、家庭用3Dプリンタで可動部や高温部が開放され容易に触れることが可能なものも存在している。扉や壁による隔離(III-i-2)も対策の一つである。

安全対策としては、まず一般論での対応が必要である。例えば非常停止回路やインターロックは、プリンタの制御系とは独立した配線で構成する。表示灯をつけ「ヒーターが入っている場合」「可動部が動く可能性がある場合」など物理的な状態と紐づけ点灯させるというような対策がある。

また、ソフトで装置を止める場合は、どの経路で停止指令を送るかに注意が必要である。 MoonrakerのAPIで、G-codeの M112(非常停止)を通常のG-code送信の経路で送ると、すぐには止まらない。M112 はG-codeのキューに入り、それより前のコマンドが終わってから実行される。即時に停止させるには専用のエンドポイント(/printer/emergency_stop)を使う必要がある46。 これはソフトの仕様の話だが、設計上の教訓は一般的である。ネットワーク越しのソフトウェアによる停止は安全機能として扱えず、前述の独立した非常停止回路と組み合わせる必要がある。

2 作業環境への影響

FDM装置は造形中に、超微粒子(100nm未満の粒子)や揮発性有機化合物(VOC)を放出する。米国国立労働安全衛生研究所(NIOSH)の2017年の調査では、造形中の室内で1cm³あたり5万〜20万個の超微粒子が測定され、ABSの造形ではスチレンなども検出された47。この調査では、メーカー純正のカバーや扉では粒子と有機蒸気の漏れを防げなかった一方、排気付きの囲いを設けたところ、粒子濃度が99%以上、VOCが約70%低減した47。測定された作業者の暴露量は米国の許容濃度を大きく下回っていたが、作業者の近くで多数の装置を動かす場合は、換気や排気付きの囲いを検討するとよい。

また装置による温度上昇や、臭い・騒音についても配慮が必要である。

3 ネットワークセキュリティ

Moonrakerは既定ですべてのIPv4インターフェースで待ち受ける41。認証の仕組み(APIキー、ユーザーアカウント、信頼するクライアントのIP範囲)は用意されているが、公式ドキュメントはリバースプロキシの背後で運用する構成を推奨している41。MoonrakerはホストPCの再起動や電源断、サービスの再起動も実行できるため、APIへのアクセスを奪われると装置のOSごと操作されうる。

工場のネットワークに接続する場合は、前段に認証付きのリバースプロキシを置き、VLANなどでネットワークを分離する構成が基本になる。

出典

  1. Voron Documentation, "Hardware". https://docs.vorondesign.com/hardware.html ↩ ↩2

  2. ミスミ, アルミフレーム よくある質問. https://jp.misumi-ec.com/special/alumiframe/faq/ ↩

  3. motedis, "B-Type vs I-Type aluminium profiles". https://www.motedis.com/en/blog/aluminium-profiles-guide ↩ ↩2

  4. maunsystem, "Slot width explained". https://www.maunsystem.de/en/blog/slot-width-explained ↩ ↩2

  5. ミスミ, アルミフレーム 6シリーズ(溝幅8mm). https://jp.misumi-ec.com/special/alumiframe/selection/lineup/size/6series/ ↩

  6. MISUMI USA, HFS5 Series カタログ(PDF). https://us.misumi-ec.com/pdf/fa/2019/2019_US_2690.pdf ↩

  7. Voron3D Wiki, "E3D V6 Hotend". https://voron3d.wiki/printhead/hotends/e3d-v6/ ↩ ↩2

  8. E3D, "V6 1.75mm All-Metal HotEnd". https://e3d-online.com/products/v6-all-metal-hotend ↩ ↩2

  9. E3D, "Revo". https://e3d-online.com/products/revo-six ↩

  10. onetwo3D, "Phaetus Dragon Hotend (Voron Edition)". https://www.onetwo3d.co.uk/product/phaetus-dragon-hotend-voron-edition/ ↩

  11. Slice Engineering, "The Mosquito Hotend". https://www.sliceengineering.com/products/the-mosquito-hotend ↩ ↩2

  12. Voron3D Wiki, "Printhead". https://voron3d.wiki/printhead/ ↩ ↩2 ↩3

  13. Bambu Lab, "PLA-CF". https://bambulab.com/en-us/filament/pla-cf ↩ ↩2

  14. VoronDesign/Voron-Stealthburner(GitHub). https://github.com/VoronDesign/Voron-Stealthburner ↩

  15. SIRAYA TECH, "How Thick Is 3D Printer Filament?". https://siraya.tech/blogs/news/how-thick-is-3d-printer-filament ↩

  16. Prusa Research, "Filament Material Guide". https://help.prusa3d.com/filament-material-guide ↩ ↩2 ↩3

  17. Bambu Lab Wiki, "Dry Filament". https://wiki.bambulab.com/en/filament-acc/filament/dry-filament ↩ ↩2

  18. Arksine/katapult(GitHub). https://github.com/Arksine/katapult ↩

  19. Marlin Firmware, "Configuring Marlin". https://marlinfw.org/docs/configuration/configuration.html ↩

  20. MarlinFirmware/Marlin(GitHub). https://github.com/MarlinFirmware/Marlin ↩ ↩2

  21. Klipper documentation, "Features". https://www.klipper3d.org/Features.html ↩ ↩2

  22. Klipper3d/klipper(GitHub). https://github.com/Klipper3d/klipper ↩ ↩2

  23. Duet3D/RepRapFirmware Wiki(GitHub). https://github.com/Duet3D/RepRapFirmware/wiki ↩

  24. Duet3D/RepRapFirmware(GitHub). https://github.com/Duet3D/RepRapFirmware ↩ ↩2

  25. Duet3D/DuetWebControl(GitHub). https://github.com/Duet3D/DuetWebControl ↩

  26. prusa3d/Prusa-Firmware-Buddy(GitHub). https://github.com/prusa3d/Prusa-Firmware-Buddy ↩

  27. Voron Documentation, "Electrical". https://docs.vorondesign.com/build/electrical/ ↩ ↩2

  28. Analog Devices, TMC2209. https://www.analog.com/en/products/tmc2209.html ↩ ↩2

  29. Analog Devices, TMC5160. https://www.analog.com/en/products/tmc5160.html ↩ ↩2

  30. Klipper documentation, "Configuration reference". https://www.klipper3d.org/Config_Reference.html ↩ ↩2

  31. BIGTREETECH, "Octopus Pro". https://biqu.equipment/products/bigtreetech-octopus-pro-v1-0-chip-f446 ↩

  32. BIGTREETECH, "Manta M4P/M8P". https://biqu.equipment/products/manta-m4p-m8p ↩

  33. Duet3D, "Duet 3 Mini 5+". https://www.duet3d.com/duet3mini5plus ↩

  34. bigtreetech/EBB(GitHub). https://github.com/bigtreetech/EBB ↩

  35. MotorDynamicsLab/Nitehawk-SB(GitHub). https://github.com/MotorDynamicsLab/Nitehawk-SB ↩

  36. prusa3d/PrusaSlicer(GitHub). https://github.com/prusa3d/PrusaSlicer ↩ ↩2

  37. bambulab/BambuStudio(GitHub). https://github.com/bambulab/BambuStudio ↩ ↩2

  38. OrcaSlicer/OrcaSlicer(GitHub)README. https://github.com/OrcaSlicer/OrcaSlicer ↩ ↩2

  39. Klipper documentation, "Code overview". https://www.klipper3d.org/Code_Overview.html ↩ ↩2

  40. Arksine/moonraker(GitHub). https://github.com/Arksine/moonraker ↩

  41. Moonraker documentation, "Configuration". https://moonraker.readthedocs.io/en/latest/configuration/ ↩ ↩2 ↩3 ↩4

  42. Moonraker documentation, "History" API. https://moonraker.readthedocs.io/en/latest/external_api/history/ ↩ ↩2

  43. Mainsail documentation, "PrusaSlicer". https://docs.mainsail.xyz/slicers/prusaslicer/ ↩ ↩2

  44. Klipper documentation, "Slicers". https://www.klipper3d.org/Slicers.html ↩ ↩2

  45. Prusa Research, "Configuration Wizard". https://help.prusa3d.com/article/configuration-wizard_1754 ↩

  46. Moonraker documentation, "Printer Administration". https://moonraker.readthedocs.io/en/latest/external_api/printer/ ↩

  47. NIOSH, Health Hazard Evaluation Report 2017-0059-3291(3Dプリンタの排出物と作業者の暴露の評価), 2017-08. https://www.cdc.gov/niosh/hhe/reports/pdfs/2017-0059-3291.pdf ↩ ↩2