【番頭リレーブログ#16】ソフトとハードづくり

2016.09.26

はじめまして、番頭の八登と申します。普段は流体シミュレーションのソフトウェア開発という仕事をしています。

 

近頃は、ArduinoやRaspberry Piといったマイコンが広く使われるようになり、ものづくりにおいてもソフトウェア開発、つまりプログラミングを行う機会は増えていると思います。私は今までソフトウェア開発を専門にやってきましたので、その立場から見たソフトづくりとハードづくりのそれぞれの難しさ、易しさを考えてみて、デジタル工作機械による制作がどのあたりに位置づけられるのかを考えてみたいと思います。

 

ソフトウェア開発の難しい点、易しい点はだいたい以下のような感じかと思います。

●難しい点

  ・概念が抽象的で、処理の流れが可視化しづらい

  ・コンピュータ全般やプログラミング言語への理解が必要

●易しい点

  ・パソコンさえあれば誰でもできる。スペースも不要。
  ・何度でもくり返し失敗でき、手戻りも少ない

 

一方、ハードウェア開発(アナログなものづくり全般)については、ざっくり以下のように考えました。

 

●難しい点
  ・作業の種類だけ工具を揃えないといけない。スペースも必要。
  ・器用さが求められる場合がある
  ・失敗するとやり直しになることが多い

●易しい点
  ・実際の仕上がりや動きをイメージしやすい

 

こう考えると、両者は一種の鏡写しのようになっているのかなという気もします。

 

一方、デジタル工作機械を用いた開発については、以下のようにその中間的なものとして考えることができるかもしれません。
  ・器用さが求められる部分を一部肩代わりしてくれる
  ・素材やツールへの理解は依然として必要。スペースも必要。

 

ソフトウェア開発を専門にしている人で、工具を使った造形に長けた人というのはあまり多くないでしょう。その意味では、造形の部分を工作機械が自動で行なってくれるというのは助かります。しかし、あくまで機械が行うわけですから、機械が不調でメンテナンスが必要なこともあります。また、素材によって求められる設定も変わりますので、素材も理解する必要があります。

 

結局のところ、すべての制作スタイルに共通することは、扱う対象とツールの正しい使い方を覚えることです。また、工夫できるところがないか探すのもよいでしょう。たとえば、ソフトウェア開発ではデバッガをうまく使うことで、処理の流れを逐一確認することができます。電子工作ならテスターやオシロスコープを使うことになるでしょう。アナログな制作でも、治具を作って作業やくり返し工程を簡単化することはできます。

 

ものづくりに携わりたい人は、それぞれバックグラウンドが違うわけですから、得意不得意はあって当たり前です。デジタル工作機械は、その垣根を低くしてくれるものと思いますので、時間をかけて試行錯誤して理解を深めていくことで、ソフトとハードを自由に横断する制作が可能になるのではと思います。

 

【天気予報時計】
ソフトウェア開発とデジタル工作機械を組み合わせた例として、最近制作した天気予報時計についてご紹介します。

 

そもそもこの制作は、FabLab北加賀屋で行ったPython講習会の題材として天気予報でLEDを光らせるというものを選んだのが元になっています。
お天気予報ガジェットを作りながらPythonを勉強しよう

14456853_962525720525492_585057669_o

 

 

 

Raspberry Piをインターネットに接続し、Pythonを用いてネットから天気予報情報を取得し、晴れ・くもり・雨に応じて、LEDを光らせるというガジェットです。

 

講習会の題材としてはこれでも十分だったのですが、せっかくなのでもうひと工夫して、FabLabのデジタル工作機械を使って作品として仕上げられないか考えました。(メイカーズバザールの出展ネタを探していたというのもあり。)そして作ったのが、刺繍ミシンで文字盤を作った天気予報時計です。

14459036_962525710525493_733091073_n

 

Raspberry Piで天気予報情報を取得するところと、LEDを光らせるところは同じなのですが、時計ですので、いつもRaspberry Piと有線でつなぐというわけにもいきません。そこで、Raspberry Piから直接繋いでいた配線を無線モジュールにつなぎ、無線で時計側にON/OFF情報を渡すことで、LEDを光らせるようにしました。詳しい製作工程はFabbleにアップしています。
Fabble: embroidery clock

 

プログラムコードは以下のGitHubにアップしていますが、一見複雑なことをしているように見えて、行数は繰り返し的な処理も入れてせいぜい50行程度です。マイコン上でのプログラミングがとてもやりやすくなっていることが、こんなところにも見て取れます。
GitHub: embroidery clock

 

文字盤の刺繍は、刺繍ミシンを用いて行います。刺繍ミシンは、画像を刺繍用のデータに変換して読み込ませることで、自動で画像と同じような刺繍が行える工作機械です。こう書くと、やったことは元の画像を作っただけのように思えますが、先ほどの話とも関連しますが、そう簡単ではありません。上の写真はうまくいった例ですが、その前に何回も糸が絡まったりして失敗しています。微妙な上糸・下糸の調整や、糸の質(すべりやすさ)等に影響されたのだと思います。布の張り方も弱かったかもしれません。そこは、プログラミングのように、こう書いたら必ずこういう結果が返ってくるというような単純なものではありません。

 

とはいえ、これだけ短い工程(実質数日)でこういうものが作れるようになったのは、デジタル工作機械とマイコンの進歩によるところが大きいです。FabLabをはじめ、メイカースペースの数も徐々にですが増えてきています。ものづくりに興味がある方が始めやすい環境が整っているのが今の時代ですので、少しでも興味があればぜひ始めてみてもらえればと思います。