Electronics

2018.09.11

建物サイズのドローボットを作った

Text by Edwin Dertien
Translated by kanai

家の塗装を素早くやる方法とか、好きなアート作品を高解像度でプリントしたいとか、そういう方はこの記事は読み飛ばして欲しい。我々が製作したマシンは、大きくて、低解像度で、ひじょーーーに遅い。それに、とても大きくて、最高にいかしていて、安くて、言うことを聞かなくて、午後だけの作業で数日間で作れて、動いているところを見ると、うっとり見とれて瞑想的な平静状態に浸ることができて、素晴らしい(というか「独創的」な)アート作品が描かれる(複製される)。

drawbot
ドローボットとMakerたち

1年ほど前、地元のMakerフェスティバルを運営する団体から、5.4メートルの高さの塔を使って何か面白いことをして欲しいとアーティストたちに招集がかかった。フェスティバルの屋外コーナーには、運営団体が用意した3つの「キャンバス」が建てられ、そこにMakerアーティストたちが作品を提供することになっていた。うんと少ない材料費で。

私は、ずっと作りたいと願っていた、Kritzler式の(最近ではKickstarterプロジェクトのScribitや、とにかくArduinoでコントロールされる)巨大なV字型プロッター(これには文字通りひねりが加えてある)を提案できる(そして作ってみる)機会を逃すまいと、私の教え子のひとり(理学科のプロジェクトとして創造的技術を勉強しているJanwillem te Voortwis)とチームを組んだ。鉛筆やフエルトマーカーではなく、我々はスプレー塗料を使った。それも1本だけではない。ちょっとrobot-rainbow風の、野菊のようなホイール型の多色ペイントヘッドだ。

このフェスティバルでは、レオナルド・ダ・ヴィンチがテーマになっていて、ダ・ヴィンチにインスパイヤーされた展示が求められていたので、大量の木材と大きな車輪を使い、プリントヘッドは、ダ・ヴィンチの有名な戦車を模したデザインにした。そして、ひたすらモナリザだけを描くようにした。

私たちのV字型プロッターのメカニズムでは、2基の大きくてがっしりしたステッピングモーター(もともと、ずっと完成しないCNCミル・プロジェクトのために用意してあったもの)が主役になっている。スプロケットと自転車用のチェーンでプリントヘッドを動かす。プリントヘッドはレーザーカットで作った歯車を土台として、ステッピングモーターで、各ドットで指定された色のスプレー塗料を選択する仕組みになっている。色の選択は、プリントヘッドが回転することでスプレー缶を所定の位置に移動させて行う(このとき、すべてのスプレー缶がシェイクされ、コロコロと可愛い音がする)。塗料の吹き付けは、RCサーボと3Dプリントしたレバー付きクランプの機構を使って行う。Thingiverseで公開されているこれと同じような仕組みだ。

printhead
8本のスプレー缶を備えたプリンターヘッド。写真:ERIC BRINKHORST

メインのステッピングモーターとプリントヘッドは、ATmega328を使った2つの自作ボードをRS485で接続したもので制御されている(プログラムはすべてArduinoを使った)。画像をV字型プロッターの座標(そして色ドット情報)に変換するのは、古い(けど屋外に強い)PanasonicのCF-19 Toughbook(OSはUbuntu 16.04LTS)で走らせているProcessing.orgのスケッチだ。

controlprogram
頑丈で長持ちなノートパソコン上で走るProcessingのスケッチ

フェスティバルの間、我々はなんとか5枚の絵を描くことができた。風によってスプレーの塗料が流されて(まったくキャンバスに色が着かないこともあったが)、味わいのあるランダムな効果が加わった。実質的な解像度は、1インチあたり1ドット。90×120センチの絵を描くには2時間以上かかる。塗装中のスプレー缶が空になると、即座に別の色の缶で代用しなければならず、そのために、さらに面白いポップアートになる。

プリントヘッドのレーザーカットした木製の歯車は、驚くほど長持ちしてくれたが、スプレーを噴射するための3Dプリントしたメカニズムは、塗料が付着して、よく固まってしまった。全体を動かす電源は、150ワットと大容量だったが、気温が高かったせいもあり、かなり酷使されることになった(ときどき止まった)。しかし本当の頭痛の種は、キャリブレーションのときに発生した。キャンバスの縁のあたりでは、なぜか位置がズレるのだ。それがどうしても解決できなかった(アート的には面白い結果をもたらしたが)。やがてその原因が判明した。不具合を辿ってゆくと、中古のスプロケットに行き当たった。それには、歯数が18のものと19のものの2種類が混ざっていた。

misprint
大失敗だが、いい絵だ。なぜ最初に歯数を確認しなかったのだろう……

このプロジェクトは、創造的業界で使われ始めている人工知能アルゴリズムは帰属権(著作権など)を持つかどうかについて、(全国的な)論議を呼ぶことになった。我々が、この機械で描いた絵を、ある人工知能の専門家に販売したとき、このプロジェクトから得られた利益の一部を社会的ロボット(今回は引退したファービーのための家を作るプロジェクトreFURBYshment)に寄付をすることで、その問題を回避した。これは、「サルの自撮り」で生じた訴訟問題が、写真家の売り上げの一部を野生動物保護団体に寄付することで和解に至ったことを参考にしている。

プロジェクトメンバー:Janwillem te VoortwisとEdwin Dertien

コード
これは、プリントヘッドで使用するArduinoのスケッチだ。DynamixelReader.cppと*.hファイルはコマンドプロトコルで必要になる(これは偶然にも、Dynamixelのサーボに標準で使われているRS485のプロセスと一致している)。
Arduinoプリントヘッド
DynamixelReader.cpp
DynamixelReader.h

V字型プロッターのためのArduino用コード
Vplotterスケッチ

Processingのスケッチを含むアーカイブ: image_pixaliser.zip

原文