Electronics

2013.07.12

Microsoftの3Dプリントがすごいワケ

Text by kanai

やあみんな。これはMAKEへの初めての寄稿だ。ボクはGeorgia Tech College of Computingの4年生。Georgia Tech Invention Studioでも働いている。これはボクのサイト、Geeks Have Feelingsに掲載した記事だ。

Windows-3DP

Microsoftは、Windows 8.1に3Dプリントのサポートを埋め込むと発表して、3Dプリントの分野に足がかりをつけた。普段は最新記事をお届けしようという立場なので、あまりこの手の記事は書かないんだけど、技術系のメディアでは、この話に関して空虚な焼き直し(実際の見出しは「Microsoftが3Dプリントの簡易化へ動く」)や、漠然とした3Dプリント関連の埋め草(LOL GUNZ)しか見えてこない。

Screen Shot 2013-07-03 at 11.56.23 AM
New York Timesには悪いけど。

Microsoftのゼネラルマネージャーによるブログ記事ですら、彼らが何をもたらしたのか、100パーセント書いていない。新しいWindowsコンポーネントは、数ある大きな技術的問題を修正しつつ3Dプリントの分野を大幅に進歩させるものなのに、じつに残念だ。

ホットフィックス

Microsoftの発表の内容と、なぜボクがそれをすごいと思ったかを説明する前に、事実として述べられている話に関するお決まりの意見について話したい。

  • Microsoftが3Dプリントを「簡易化」する…ある意味、ごく普通の人が店でプリンターを買ってきてWindowsアプリケーションの「印刷」ボタンをクリックするとパーツがプリントされるようになる。しかし、彼らが行ったのは、3Dプリントの手順を増やしたことだ。それはいいことだ。その理由はあとで述べる。Microsoft-pipeline
  • Windows 8.1の3Dプリントサポートは、前処理プログラムとプリンターホストをデベロッパーに取って代わらせるものだ。いや、そうではなく、既存のスライサーやプリンターホスト(たとえば、Georgia Tech Invention StudioでRepRapベースのプリンターに使用しているSlic3rとRepetier-Hostという2つのソフトパッケージ)の周囲にフレームワークを作るのだ。そして、操作上の細部を抽象化する。つまり、どのプリンターもMicrosoftがデザインした共通のインターフェイスでプリントできるようになるということだ。これはデベロッパーにとってはよいことだ。ただし、このフレームワークの中にドライバーを書くかどうかは、製造メーカーの判断で決まる。
  • Microsoftが3Dプリントの分野に進出。理論的にはそうだ。しかし、彼らが3Dプリンターを作るわけではないし、3Dプリンターのメーカーと提携しようとしているわけでもない。オープンソースを断念しようともしていない。どちらかと言えば、オープンソースプリンターの取り込みが、最初のリリースだけでも優先事項になっているようだ。彼らはサンフランシスコのイベントでType A プリンターデモを行っていた

先にも書いたとおり、彼らは今市場にあるものに取って代わろうとしているのではない。既存の構造体の中にではなく、周囲に作っているのだ。思うに彼らの「手」は、3Dプリントに対応する重要な規格を含む最初のプラットフォームをして領土を奪取することだ。これがうまくいけば、それが3Dプリントの「プラットフォーム」となる(それはいいこととは言えない)。

ボクはMicrosoftの弁明者でもないし(プレゼンテーションはKeynoteで作っている)、3Dプリントのマニアでもない)「デスクトップ製造革命」なんて言葉を皮肉ではなく使う人を本能的に攻撃してしまう)。インターネット上の人々は間違っている。ボクはそれを正そうとしているのだ。

The Invention Studio does a lot of 3D printing

また、ボクの3Dプリントの経験は、Georgia Tech Invention Studioの手伝いをしているときのものだ。学生として、ボクたちは14台の3Dプリンターのメンテナンスをしている。その中には、オープンソースのRepRap派生品、ジャンクなMakerBot、Afinia、UP!、それに、ObjetやStratasysといった業務用のプリンターもある。これらが、すごい数の学生や職員によって、週7日、1日24時間使われ(いじめられ)ている(ホビー用プリンターは無料)。しかも、そのためのカスタムハードウェアやソフトウェアの開発も行っている。だからボクは、3Dプリントに対して、セクシーさやオープンソースの理念よりも、効率性と信頼性のレンズを通して、特別にシニカルな視点を持っている。

では、Microsoftが導入した革新的技術と、彼らが解決した問題について見ていこう。

ニュースの解読

ここで紹介する情報は、ほとんどが16分21秒のビデオの中の30秒の具体的な情報と、C++ SDKのサンプルによるものだ。

Microsoft sample code

だがこれは、彼らの3Dプリントにおける最大のイノベーションだと思う。

  • 新しいアプリケーションから3Dモデルをプリントするためのソフトウェアインターフェイス3Dプリンタードライバーのためのフレームワーク。これが意味するのは、今や3Dモデルをジョブとして3Dプリンターに渡すソフトウェアの標準の方法と、3Dプリントソフトウェアのチェーンが準拠すべき統一規格ができたということだ。これは、アプリケーションがプログラム的にプリントジョブを開始するときの問題を解決してくれる。Invention Studioではこの問題が非常に多い。我々が使用している、Lulzbot AO-101s、Makerbot Replicators 2、Afinia H-Seriesといったプリンターは、それぞれプリント用に異なるAPIを持っている。そのため、ソフトウェアオートメーションがじつに大変なことになるのだ。
  • 標準の3Dモデル交換形式(3Dプリント専用)。現在の標準形式であるSTLがひどいということを考えただけでも、これはすごいことだ(なぜかSTLが標準になっていて、業務用のStratasysやObjetのプリンターでも使われている)。Microsoftの新しい形式3MF(3D Manufacturing Format)はよくできている。これも(事実上は)メッシュベースの形式なのだが、 ボリュームごとに異なる素材や、色つきのテクスチャ(表面の着色用)も指定できる。それに対してSTLは、メッシュ内の隣り合う2つの面の区別もできない。
  • 3Dプリンタージョブのためのプリントスプーラー。新しいプリントスプーラーはWindowsの一部であり、3Dプリントジョブを吐き出すアプリケーションとプリンター固有のドライバーとの間に位置する。これは、まだ未処理で、まだスライスされず、マシンに送られる前のプリントジョブを溜めておく中間的なバッファとして機能する。2Dのプリントでは、すでに2Dプリンターで2Dドキュメントを印刷するためのスプーラーが備わっていて、特別なプリンターを接続しなくても使えるようになっている。
  • USBプリンターインターフェイスで3Dプリンターに対応。ボクはUSBやドライバーに詳しいわけではないので「クラス7、タイプ3」インターフェイス(1284.4互換双方向インターフェイス)が正しい選択かどうかを解説することはできない。しかし、USB上のシリアル(コミュニケーションデバイスクラス)を「レガシー」インターフェイスとする彼らの考え方は大いに支持する。3Dプリンターデザインのレガシーは、あらゆる部分が非力なArduinoを頭脳として依存しすぎている。ArduinoがCOMポートを使っているのは、さっと作り上げるプロトタイピングにはいいだろうが、そのまま製品化してしまう神経がわからない。Microsoftの誰かさんが同じ考えを持ち、この惨状からの脱出を試みてくれたことはうれしい。Microsoft-hardware-support

通常、ボクは、ブログ記事をシリコンバレー式の楽天的な感想で締めくくるようなことはしないのだけど(なんだそれ、Quoraの回答か?)、これは3Dプリントの世界での大きな一歩だと信じている。パートタイムのホビイストたちが完全な製品を作ろうともがいているコミュニティに、必要とされるプロのエンジニアリングを緊急に注入することになる。信頼性の高い、よくデザインされた3Dプリント用ソフトウエアプラットフォームに成功してほしい。そうすれば、プリント技術に本当の進歩をもたらすことができる。Microsoftのようなビッグプレイヤーがその方向に動いてくれたことは、本当にうれしい。

– Xo Wang

原文