WISS 2018

PrintMotion: 3D プリンタに搭載されたアクチュエータを使用してプリントしたオブジェクトを動かす手法の提案
片倉 翔平 ∗ 渡邊 恵太 ∗概要. 本稿では，3D プリンタに搭載されたアクチュエータを利用して，3D プリントされたオブジェクトを動かす手法を提案する．熱溶解積層方式 (FDM)3D プリンタには，水平や垂直に移動するエクストルー
ダ，ビルドプレートを制御するアクチュエータが搭載されている．本研究では，これらを制御することによって 3D プリントされたオブジェクトを動かすことを可能にする．また，3D プリンタにインターフェイスデバイスを接続することで，ビルドプレート上でそれらとのインタラクションを可能にする．本稿では，FDM 3D プリンタに装備されたアクチュエータのみを使用して動かすことが可能な機構と，3D プリントするオブジェクトの動きをデザインすることができるソフトウェアを紹介する．

はじめに1

一般的な 3D プリンタは，静的なオブジェクトの出力はできるが，センシングや動作するようなオブジェクトの出力は困難である．機能を持ったオブジェクトを 3D プリントのプロセスで実現するために， 直接電子部品を印刷する方法 [1, 2] やプリントするオブジェクトの形状や内部構造を設計し，それにハードウェアを付与，または埋め込む方法 [3, 4] があるが，これらは特別な装置と素材の準備が必要になる．
本研究では，一般的な FDM 3D プリンタに搭載されたアクチュエータを用いてプリントしたオブジェクトを動かす手法 PrintMotion を提案する．
PrintMotion では，3D プリンタを三次元の物体を印刷する機械としてだけでなく，プリントされたオブジェクトに動きとインタラクティビティを追加するデバイスとして 3D プリンタを利用する．具体的には図 1 のように，プリントしたオブジェクトが動く．また，インターフェイスデバイス (例えば，スマートフォンやカメラ) を接続することによって，プリントされたオブジェクトとのインタラクションを可能にする．本稿では，これら制御手法および，動きを設計するためのソフトウェアついて紹介する．
またその作例を通じて本手法の有効性を議論する．

関連研究

22.1アクチュエーションシステム

物体に動きを追加，または物体を制御するためのアクチュエーションシステムの研究がある．Sugiura [5] らは リング型のアクチュエーターを開発し，既製品のぬいぐるみをユーザーがデザインしたように動かすことを可能にした．Sticky Actuator は，∗Copyright is held by the author(s).
明治大学

図 1. (A)3D プリンタに装備されたエクストルーダおよびビルドプレートを使用してプリントしたオブジェ
クトを動かす．(B,C) オブジェクトに接続されたエクストルーダを制御することで顔が右を向く．

取り付け可能な柔らかい材料のアクチュエータを用いて折り紙や人形を動かすことができる [6]．また，超音波を用いて，特定の場所で物体を浮動させて動かす手法も提案されている [7]．Animastage では，多数のピンを備えたディスプレイを利用して手作りのもの (3D プリントペンや紙を使用して製作したもの) を動かし，それらとインタラクションすることが可能である [8]. 提案手法もこれらのようなアクチュエーションシステムであるが，物体の生成と制御に同じ機械を用いる．

WISS 2018

2.2

ファブリケーション機械とのインタラクション

デジタル工作機械が，私たちの生活に普及した際のインタラクションも重要なトピックである．Roumen
らは，モバイルコンピュータのように 3D プリンタが持ち運び可能な場合どのように人は使うかという点を検証するために Mobile Fabrication という研究を行った [9]．彼らはそのためのハードウェアとソフトウェアシステムを実装し，人々が外出先で持ち運び型の 3D プリンタをどのように使用するかを調査した．Linespace では，目に障害のあるユーザーのために触覚提示可能なディスプレイを工作機械の延長として開発した [10]．さらに，工作機械をゲーム機とみなす研究も行われている [11].
本提案もこれら関連研究と同様に，オブジェクトを製作する以上の目的で 3D プリンタを利用する．

3PrintMotion

PrintMotion は，エクストルーダとビルドプレー
トを，G コードを用いて制御することによって，プリンタ上のオブジェクトを動かす手法である．本提案では，3D プリンタを三次元の物体を印刷する機械としてだけでなく，プリントされたオブジェクトを動かしインタラクションを可能にするデバイスとして扱う．
3.1

プリントしたオブジェクトを動かす手法

本手法では，プリントしたオブジェクトはエクストルーダと接続するため，それらの接続部を設計しなければならない．また，提案手法は，プリントしたオブジェクトを動かすためにカスタマイズされた
G コードを使用して，プリンタのエクストルーダおよびビルドプレートを制御する．

3.1.1 ジョイントと機構
図 2 は，オブジェクトとエクストルーダを接続するためのアタッチメントデザインの例である．このアタッチメントには棒状のジョイントが設置されており，そのジョイントが印刷されたオブジェクトに接続される．これはキャリブレーションのためにZ 方向に調整することが可能である．このジョイン
トは，オブジェクトに応じて変更する必要がある．
図 2 のアタッチメントは，Genkei Lepton 2 用に設計されている．このアタッチメントは，3D プリンタごとに設計する必要がある．
以下では，動かすことを可能にするための機構とジョイントのデザインの例を示す．

Rack and Pinion - 提案手法では，アクチュエータとしてエクストルーダとビルドプレートを使用するため，モーターのように，ある 1 点で回転することはできない．しかし，X-Y 直線運動は滑らか

図 2. エクストルーダに設置するアタッチメント．

図 3. Rack and Pinion: (A) 直線運動を回転運動に変換する．(B) 正確に直線運動するのためのレール．に行うことができる．Rack and Pinion は，X 軸とY 軸の直線運動を回転運動に変換する (図 3A)．一般に，Rack and Pinion は回転運動を直線運動に変換するが，本手法では，これを逆の変換に利用する．
エクストルーダは Rack の先端 (平らな棒状のギア)と接続され，X または Y 方向に直線的に移動することで回転運動に変換される．図 3B は，Rack と正確な直線運動を行うためのレールである．ステッピ
ングモーターのような連続回転はこの機構では不可能である．

Rotary - Rotary 機構は，Rack and Pinion 機構のような単一点での回転を可能にする (図 4)．Rackand Pinion 機構とは異なり，回転は連続回転に変換することができる．しかし，この機構は，オブジェクトの上部に設計する必要がある．

Ball Joint - Ball Joint 機構には，Z 軸の動きを使用することができる (図 5)．したがって，上記の 2 つの機構とは異なり，3 次元的に自由に動かすことができる．
3.1.2

3D プリンタの制御プリンタのアクチュエータを制御するために，Gコードを用いて外部から制御することができるオープンソースの 3D プリンタを使用した．本研究では，ビルドプレートが Z 軸方向に移動，エクストルーダがX 軸方向および Y 軸方向に移動する Genkei Lepton2(印刷可能領域は 200mm x 200mm x 200mm) を使用した (図 6).
G コードは，3D プリンタを含む CNC マシンを制御する一連のコマンドのプレーンテキストである．
スライサーソフトウェアは，3D モデル (例えば，OBJおよび STL ファイル) を G コードに変換する．こPrintMotion: 3D プリンタに搭載されたアクチュエータを使用してプリントしたオブジェクトを動かす手法

図 4. Rotary: (A) 連続的な回転の運動．(B)Rotary用のジョイント．

図 6. 本研究で使うプリンタは，ビルドプレートは Z 方向に，エクストルーダは X-Y 方向に移動する．

図 5. Ball Joint: (A)Z 軸を含めた三次元の動きが可能．(B)Ball Joint 用のジョイント．
図 7. 本提案手法では，ビルドプレートからオブジェクトを剥がさない．のコマンド群は，3D モデルを印刷するようプリンタに命令する．以下にサンプルコードを示す．
G1 F1500
G1 X10 Y10 Z0 .5
G1 X20 Y20 E10

G1 は 3D プリンタのエクストルーダ，ビルドプレートとフィラメントの押し出しのためにアクチュエータを制御するコマンドである．最初の行は，移動の送り速度を設定を意味する．2，3 行目は，押出機が 3D プリンタの X20 から Y20 の位置に移動し，10mm のフィラメントを押し出すことを意味する．
3D プリンタは，Z 方向に積み重ねてオブジェクトを出力し，このようなフローを繰り返し，オブジェクトを印刷する．
本提案では，この G1 コードをプリントしたオブジェクトを動かすために利用する．例えば，以下のG コードは，エクストルーダの時計回りの回転運動を表す．
G1 X50 Y50 Z50
G1 X52 Y48
G1 X54 Y46.
.
G1 X50 Y50

これらの G コードは，1 行から読み取られ，アクチュエータを制御する．これらのコマンドを分解して使用することはできない．たとえば，上の例の最初の行と最後の行を送信すると，エクストルーダは移動しない．したがって，インタラクティブな制御に G コードを使用する場合は，G コードを順番に送信する必要がある．例えば，スライダーのインターフェースは可能である．留意点として，ほとんどの
3D プリンタの Z 移動は X-Y 移動よりも遅く，同じ速度が設定されていても Z 方向は XY 方向と同じ速度では制御することはできない．

3.2

印刷と着脱可能なプレート

通常，3D プリントされたオブジェクトは，ビルドプレートから剥がされる．本提案では，印刷されたオブジェクトはビルドプレートから剥がさず， プレートはオブジェクトの一部とみなす．ユーザーは，
3D モデルを，図 7 のような取り外し可能なプレート(例えばガラスプレート) に印刷する．さらに，ユー
ザーは，他のオブジェクトを動かすときにオブジェクトをプレートと共に交換する．3D モデルによっては，ビルドプレートに接着する部品と，その他の部品を別々に印刷する必要がある．そのような場合印刷後，ユーザーはサポート材を取り出し，手動でパーツを組み立てる必要がある．

4

デザインソフトウェア

本章では，実装した動きのデザインとその動きの G コード生成を可能にするソフトウェアを紹介する．このソフトウェアの設計目標は，CAD ユーザーがオブジェクトと動きを同じ CAD 上で設計することができるようにすることである．ユーザーは，まずオブジェクトをモデリングし，そしてその動かし方をデザインする．その動きの経路が G-code とし

WISS 2018

図 9. デザインソフトウェアのユーザーインターフェ
イス．
図 8. 提案手法のファブリケーションプロセス．て生成され，それを利用してプリントしたオブジェ
クトを動かす (図 8)．本ソフトウェアの実装には，Rhinoceros 3D [12] の中で動作する Grasshopperを用いた．キャリブレーションのためには，ユーザーは，モデリングされたオブジェクトを CAD 上の中央に配置し，モデルをビルドプレートの中心に印刷する必要がある．

4.1

動きのデザイン

動きの経路をデザインする前に，motion-part とbase-part を CAD 上で組み立て，プリンタのビルドプレート上でのオブジェクトの位置を決定する必要がある．motion-part は，エクストルーダに接続されるモデルを指し，base-part は，ビルドプレートに接地されるモデルを指す．図 10 では，赤色のモデ
ルは motion-part，青色は base-part である．ユー
ザーは，部品を接続するためのアンカーポイントまたはラインを選択する．例えば，Ball Joint 機構では，ユーザーは，アンカーポイントをボールの中心として選択する．次に，ユーザーは，motion-partの動きの経路を得るためにエクストルーダとの接続点を指定する．この後，ユーザーは動きのデザインを開始する．ここでは，材料の耐久性と厳密な衝突検出のシミュレーションは考慮されていない．ユー
ザーは，Drawing モード，および Mouse Dragging
モードの二つの方法からエクストルーダの移動座標を記録する．

Drawing - Rhinoceros のコマンド (Circle，Arc，Line) 使用して，軌跡を書き込む (図 10A)．書き込
まれた曲線は長さ/2 の点群の配列に変換される．この点群の座標データを G コードに変換する．ユー
ザーは動きを確認するためにスライドユーザーイン
タフェースを使用してアニメーションさせることができる (図 10B)．

Mouse Dragging - このモードでは，マウス

図 10. (A) Drawing モード (B) Drawing モードの軌跡はアニメーションさせることができる．(C)MouseDragging モード

または他のポインティングデバイスを使用してモーションパーツを直接ドラッグしてオブジェクトを動かす．動かすことによって，エクストルーダの接続点が軌跡を描く．その軌跡の座標を記録して G コードの動きを生成する (図 10C)．

4.2

G-code 生成

記録された座標が G コードに変換される前に，ユーザーは，キャリブレーションのためにビルドプレートのサイズと，エクストルーダとジョイントとの間の距離を入力しなければならない．また，ユー
ザーは XYZ のフィードレートを入力する．すべての座標データを G1 コードに変換し，アクチュエータを制御する．作成された G コードは，Grasshopper上から使用できる．また，外部ユーザーインターフェイスから制御できるように，生成された G コードは.txt ファイルとして出力される．

PrintMotion: 3D プリンタに搭載されたアクチュエータを使用してプリントしたオブジェクトを動かす手法

図 11. Example Objects: (A) カメラを使ったインタラクティブなカタツムリ．(B) オートマタ．(C) オルゴール．
(D) コーヒーミル (E) スマートフォンから操作可能なファン．

5

応用と考察

5.1

製作例

この章では，提案手法を用いて製作したプリンタ上で動くオブジェクトの例を紹介する．
インタラクティブなカタツムリ - Ball Joint 機構を用いて，首が回転するインタラクティブなカタツムリを製作した (図 11A)．このカタツムリは，カメラを 3D プリンタに接続し，コンピュータビジョン技術を使用して人が向いている方向を検出することによって，人の正面に向く．制御は，OSC 通信により openFrameworks で作成したアプリケーションで行なった．この例のように生成された G コードとカメラを利用することでオブジェクトとインタラクションすることが可能である．
オートマタ - Rack and Pinion 機構を使用して，単純なオートマトンを製作した (図 11B)．コンピュータグラフィックスの先行研究を応用することでさらに表現力のあるオートマトンの製作が可能になると考えている [13 ,14].
オルゴール - Rotary 機構の例としてオルゴールを作った (図 11C)．Rotary 機構は，オブジェクトの上部に設計しなければならないので，オルゴールを縦にして利用する．
コーヒーミル - コーヒーミルは，PrintMotionの手法における実用的なアプリケーションである(図 11D). 現在のところ，これは Proof-of-Conceptであり，既製のコーヒーミルのような強力で高速な効果を得ることはできないため，豆を削ることはできない．しかしながら，より強力なトルクのモーターを利用することにより，将来可能であると考える．
ファン - この例は，ギアを設計することによって，単純な動きだけでなく，複雑な動きも可能であることを示す．また，これはスマートフォンから制御することができる．G コードのフィードレイトを変更することにより，風量を調整できるインターフェースを製作した (図 11E)．これもまた Proof-of-Conceptである．

5.2

考察

製作例で紹介したものは，印刷後に手動で組み立てる必要がある．理想は，出力後にユーザーが手を加えずに動くことである．そのためには，オブジェク
トを一体成型する必要がある．しかしながら，FDM3D プリンタは，一層ずつフィラメントを積層していく必要があるため，モデルに中空が存在する場合はサポート材が必要となるため困難である．
コーヒーミルやファンを実際に使用することができるようにするには，現在の商用の 3D プリンタよりも大きなトルクが必要である．また，強い力が加わると，プレートからオブジェクトが剥がされてしまう可能性があるためプレートとの密着性も重要である．従って，プリントしたオブジェクトを剥がすことが難しいようなプレートを検証する必要がある．
また，オブジェクトの複数の部位を個別に制御することはできない．例えば二つの手のあるキャラクタの手をそれぞれ自由に動かすことはできない．

66.1

議論
出力直後にオブジェクトを動かす

中空のあるオブジェクトは出力後にサポート材を手で取り除く必要がある．出力直後にプリントしたオブジェクトを動かすためには，一体成型で印刷しサポート材をユーザーが手を加えずに取り除く必要がある．これは，サポート造形用フィラメントと少量のサポート材で印刷するためのアルゴリズム [15]を用いて，アクチュエータの力によって，サポート材を崩すことで，手でサポート材を取り除かずに，動かすことができるのではないかと考えている．また，サポート材を印刷せずにオブジェクトを印刷するためのロボットアームを用いた 3D プリンタとアルゴリズム [16] が開発されており，このような既存の FDM プリンタとは違うハードウェアを用いることでも解決できると考えている．

6.2

カスタム 3D プリンタ

本稿では，既存の低価格 3D プリンタを用いた．
しかし，今後の研究として PrintMotion 用にカスタWISS 2018マイズされた 3D プリンタを作成する予定である．
技術的制約で述べたように，一般的な 3D プリンタの場合，搭載されたモーターは大きな力を出すことができない．これはモーターを強いトルクのものに変えることで実現できると考えている．また，強い力が加わると，プリントしたオブジェクトがプレートから外れてしまうため，プレートとの密着性も重要である．従って，プリントしたオブジェクトを剥がすことが難しいようなプレートを検証，開発する必要がある．例えば，Zortrax 社 [17] の 3D プリン
タは，印刷の制度を上げるために多孔のプレートを使っており，非常に剥がれにくい．このようなプレートを参考に剥がれにくいプレートを開発する．
現在は，エクストルーダとプリントしたオブジェクトを手動で接続する必要がある．カスタマイズされた 3D プリンタでは，これらを自動に接続することができる機能を搭載することを考えている．例えば，ジョイントを自動的に変更するためのサーボモータと自動キャリブレーションのためのカメラをエクストルーダに設置するなどで自動接続を実現する．

7

おわりに

3D プリンタに搭載されたアクチュエータを利用して，3D プリントされたオブジェクトを動かす手法を提案した．本稿では，FDM 3D プリンタに装備されたアクチュエータのみを使用して動かすことが可能な機構と，3D プリントするオブジェクトの動きをデザインできるソフトウェアを紹介した．本
研究は，3D プリンタを三次元の物体を印刷する機械としてだけでなく，3D プリントするオブジェクトに動きやインタラクティビティを加える機械として拡張できることを示した．

参考文献[1] Huaishu Peng, Francois Guimbretiere, James
McCann, and Scott Hudson．2016．A 3D
Printer for Interactive Electromagnetic Devices．
UIST 16, 553–562．
[2] Nobuyuki Umetani and Ryan Schmidt．2016．
SurfCuit: Surface Mounted Circuits on 3D
Prints．CoRR abs/1606.09540 (2016).
[3] Jifei Ou, Gershon Dublon, Chin-Yi Cheng, Felix Heibeck, Karl Willis, and Hiroshi Ishii．
2016．Cilllia: 3D Printed Micro-Pillar Structures for Surface Texture, Actuation and Sensing.In Proc．of CHI 16, 5753–5764.
[4] Marynel Vazquez, Eric Brockmeyer, Ruta Desai, Chris Harrison, and Scott E．Hudson．
2015．3D Printing Pneumatic Device Controls
with Variable Activation Force Capabilities．InProc．of CHI 15, 1295–1304.

[5] Yuta Sugiura, Calista Lee, Masayasu Ogata,Anusha Withana, Yasutoshi Makino, Daisuke
Sakamoto, Masahiko Inami, and Takeo
Igarashi．2012．PINOKY: A Ring That Animates Your Plush Toys．In Proc．of CHI 12,725–734.
[6] Ryuma Niiyama, Xu Sun, Lining Yao, HiroshiIshii, Daniela Rus, and Sangbae Kim．2015．
Sticky Actuator: Free-Form Planar Actuators
for Animated Objects．In Proc．of TEI 15,77–84.
[7] Yoichi Ochiai, Takayuki Hoshi, and Jun Rekimoto．2014．Pixie Dust: Graphics Generated
by Levitated and Animated Objects in Computational Acoustic-potential Field．ACM Trans．
Graph．33, 4, Article 85 (July 2014), 13 pages.
[8] Ken Nakagaki, Udayan Umapathi, Daniel Leithinger, and Hiroshi Ishii．2017．AnimaStage:Hands-on Animated Craft on Pin-based Shape
Displays．In Proc．of DIS 17, 1093–1097．
[9] Thijs Roumen, Bastian Kruck, Tobias
Durschmid, Tobias Nack, and Patrick Baudisch．2016．Mobile Fabrication．In Proc．of
UIST 16, 3–14.
[10] Saiganesh Swaminathan, Thijs Roumen, RobertKovacs, David Stangl, Stefanie Mueller, andPatrick Baudisch．2016．Linespace: A Sensemaking Platform for the Blind．In Proc．ofCHI 16, 2175–2185.
[11] David Eickhoﬀ, Stefanie Mueller, and Patrick
Baudisch．2016．Destructive Games: Creating
Value by Destroying Valuable Physical Objects．
In Proc．of CHI 16, 3970–3974.
[12] Rhinoceros3D. https://www.rhino3d.com/.
[13] Stelian Coros,
Bernhard Thomaszewski,
Gioacchino Noris, Shinjiro Sueda, Moira Forberg, Robert W．Sumner, Wojciech Matusik,and Bernd Bickel．2013．Computational Design of Mechanical Characters．ACM Trans．
Graph．32, 4, Article 83 (July 2013), 12 pages.
[14] Lifeng Zhu, Weiwei Xu, John Snyder, YangLiu, Guoping Wang, and Baining Guo．
2012．Motion-guided Mechanical Toy Modeling．ACM Trans．Graph．31, 6, Article 127(Nov．2012).
[15] Weiming Wang, Tuanfeng Y. Wang, Zhouwang
Yang, Ligang Liu, Xin Tong, Weihua Tong,Jiansong Deng, Falai Chen, and Xiuping Liu.
2013. Cost-eﬀective Printing of 3D Objects with
Skin-frame Structures. ACM Trans. Graph. 32,6, Article 177 (Nov. 2013), 10 pages.
[16] Chengkai Dai, Charlie C. L. Wang, Chenming
Wu, Sylvain Lefebvre, Guoxin Fang, YoungJin Liu. 2018. Support-Free Volume Printing by
Multi-Axis Motion. ACM Trans. Graph. 37, 4,Article 1 (Aug. 2018), 13 pages.
[17] Zortrax. https://zortrax.com/