書籍紹介:アイデアをカタチにする方法が分かる! ~「Prototyping Lab 第2版」
私がIoTの開発を始めた頃、大変感銘を受けた書籍が『Prototyping Lab 第2版——「作りながら考える」ためのArduino実践レシピ』です。本書では実際にArduinoを使ったプロトタイプが製品化に至ったストーリーや、Arduinoでのプロトタイピングの手法が紹介されています。そこからは自分のアイデアがカタチになるのを想像して、ワクワクしながら試行錯誤を重ねる様子が伝わってきます。「もしかしたら、自分にもできるかも!」とその気にさせる名著です。
Prototyping Labを手に取ったときの衝撃
Prototyping Labは、これまで紹介してきたMaker系の書籍ではロングセラーと言える存在です。初版は2010年に、今回紹介する第2版が2017年に発売されました。私は2019年ごろに、近所の図書館で本書に出会いました。
それまで私は電子工作やMakerの活動にはあまり関わっていませんでしたが、当時ちょうどIoTデバイスの開発を始めた頃で、情報収集のためによく図書館に通っていました。どのプラットフォームが自分のプロジェクトに適しているか調べていたとき、本書の表紙が目に付いたのです。その出会いで受けた衝撃は忘れられません。
電子工作の書籍を集めた棚で、本書は異彩を放つ存在でした。表紙の女性は、はんだごてを使わずに電子工作的な何かを作っています。私のイメージしていた電子工作では、はんだごては必須アイテムで、多くのツールがあふれる机の上での作業。でも、この表紙は全く違う。ノートパソコンと少ない装備。見れば見るほど、いままでとは違うやり方 で何かを作る世界が伝わってきました。
表紙の女性が使っているのはArduino。現在もプロトタイピングで大活躍しているマイコンボードです。Arduinoのおかげで、専門家でなくても電子工作の要素を含むプロトタイピングが可能になりました。この表紙こそが、アイデアを製品の一歩手前までカタチにしていく「プロトタイピング」のイメージなのだと、いま改めて感じています。
後述しますが、私にも「ソーラーIoTをArduinoで作る」をテーマにしたプロトタイピングの経験があります。その際は本書を教科書にしながら開発作業を進めました。
アイデアをカタチにするためのレシピが満載
プロトタイピングにおいては、私の経験を踏まえて言えば、「アイデアをできるだけ早く、短い期間で試す」ことが非常に大切です。本書では手早くアイデアをカタチにするための手段として、「クックブック」という実践的なレシピ紹介に大半のページが割かれています。
いまなお、多くの方に本書を薦めたい理由がここにあります。多くの書籍が作例から電子工作の技術を学ぶのに対し、本書は読者が実現したいと考えている機能からレシピを探せる構成になっています。
例えば、自分のプロトタイプに距離の測定を取り入れたいときには、「入力(第5章)」→「距離を測りたい」の項目を見ます。そこには「超音波方式の距離センサを用いると距離を測ることができる」と説明があり、具体的なパーツや配線図、コードなどが詳しく説明されています。また、1つの目的に複数の方法が書かれていることもあり、状況によって使い分けることができます。
本書を開いてレシピを発見すると、まさに「したい」が「できる」に変わる瞬間に近づくわけです。
私のプロトタイピング例~電源不要の屋外環境センサーを作る
ここからは、私が本書を参照しながら行ったプロトタイピングの実例をもとに、Prototyping Labの実際の活用方法をお伝えします。
私は2年前(2022年)に、遠隔地の畑の状況を知るために電源不要の環境センサーを製作しました。開発の経緯については、fabcrossの別記事に掲載されています。
当時、遠隔地にある畑の整備を手伝っていて、畑の状態を知るためのIoTデバイスを必要としていました。ただ、その畑に電源がなく、ソーラーIoTデバイスであることが必須となりました。
私の願望を整理すると、下記のようになります。
自分のしたいこと=コンセント電源不要の環境センサーを作る
→温湿度測定、明るさの測定などが必要。
→バッテリー電圧の測定が必要。
→さらに応用として、明るさによるデータ送信間隔の変更などもしたい。
アナログ入力を含む3つ以上のセンサーを接続し、単純だけれども確実に動作するIoTの仕組みを作るのに、最も向いていそうなコントローラーとして「Arduino UNO」を選定しました。
作りたいものに合わせて、「逆引き」していく
何がしたいのかが明確になった段階から、Prototyping Labが大変役に立ちました。本書には、「〇〇がしたい」という願望に解決のヒント(または答え)を与えてくれるレシピが多数用意されています。以下が、自分のしたいことと、解決に役に立ったレシピです。
- 温湿度測定→「温度を測りたい」(温度センサーの利用)
- 明るさの測定→「自然光の明るさを測りたい」(CdSセルの使い方)
- バッテリー電圧の測定→(アナログ入力の考え方)
- さらに応用として、明るさによるデータ送信間隔の変更→「データ処理」(ある状態になって、一定時間が経過した後に処理を実行する)
もちろん、レシピの内容を100%そのまま使用しているわけではありません。例えば、「温度を測りたい」というレシピでは温度センサーのみを使用していますが、私のプロトタイピングでは「DHT11」という温湿度センサーを使用しています。
部品は、手に入りやすいもの、テストしやすいものを自分のしたいことに合わせて選定していますが、あくまで考え方はレシピに書いてあることをベースに、プロトタイプを実装していきました。
また、レシピに載っていること以外にも、考えなければならないことがたくさんありました。ソーラーパネルの取り付け方やケースの防水、さらには全体のパッケージングなどやることは多く、まさに「作りながら考える」状態でした。それでも、本書の存在は、やるべきことの多いプロトタイピングの工程を簡略化することに大いに役立ちました。
レシピに載っていなくても、本書を参考に乗り越えられる
私のプロトタイピングでは、環境センサーから得たデータをクラウドに送信して可視化することがゴールでした。そのため、3つのセンサー入力とLTE-M通信という、合計4つのモジュールをArduinoに接続しなければならず、ここが一番時間を要した点でした。
これらをそれぞれArduinoのどこに接続するのが良いか、いろいろと考えていたところ、本書の中で紹介されていた、Arduino UNO用のGroveシールドの使用を思いつきました。
こうして私のプロトタイプが完成しました。機能の実装の考え方からプログラミング、そしてモジュールの接続方法に至るまで、その全てに本書のエッセンスが生かされています。
Arduino+レシピでアイデアをカタチに
プロトタイピングとは、一言で言えばアイデアをカタチにしていく作業です。Prototyping Labの冒頭には作品紹介のページがあり、開発者のアイデアがArduinoを使用してプロトタイプとして実装されていく過程が多数紹介されています。私が驚いたのは、プロトタイプとして紹介されていたいくつかの作品が、その後製品として多くのユーザーの手に渡るものであったことです。ソニーの「MESH」や、上海問屋で商品化された「べゼリー」(小型ロボット)など、一般消費者に向けて発売された製品もArduinoを使用してプロトタイピングしたものと紹介されています。
専門メーカーの技術者でなくても、Arduinoを使えばより簡単に、自分で製作した作品を通じて社会に何かを問いかけることができる。これまで電子工作はどちらかといえば専門性の高い、プロの世界であると考えていた私にとって、この事実は驚きでした。
本書の出版後、プロトタイピングに使えそうなデバイスの種類は豊富になりました。Arduino以外のデバイス(Raspberry Pi、M5Stackなど)も多数販売されています。しかし、現在でもプロトタイピングの過程でArduinoを使いこなすメリットは多大です。
以下に私が考える、Arduinoをプロトタイピング用のデバイスとして使用するメリットを挙げます。
安価で始めやすい
Arduinoは比較的安価であり、入手も容易です。見落としがちですが、コスト面、スピード面でプロトタイピングの効率を高める大切なポイントです。
最短距離で動かせる
Arduinoは機器構成、プログラミングとも他のデバイスに比べてシンプルです。そのため、「プロトタイプのアイデアはあっても電子工作は初めて」という方が最短距離でゴールに向かうことができます。
本書の第Ⅰ部では、「イントロダクション」としてArduinoを使った電子工作の基本知識や開発環境の準備などが解説されていて、初めてArduinoを使う人たちのための入門書としても有用です。
本書の内容に沿ってプロトタイピングを進めれば、簡単なレシピ(LEDを点滅させる)から始めて、自分のしたいことに適したレシピを選ぶことができます。
蓄積されたノウハウや多彩な周辺機器
Arduinoは拡張性にも富んでいます。現在でもArduino対応の周辺機器が多数、開発/販売されています。前述した私の作例では複数のセンサーを組み合わせて、さらにLTE-M通信ユニットとの接続も必要でした。この例ではArduinoにGroveモジュールという拡張ユニットを接続して対応できたので、IoT周りの開発時間を節約でき、本当にしたいことにより多くの時間を割くことができました。
まとめ~本当に自分の作りたいものを作るために
私の作例を通じて、Prototyping Labを実際に活用しながら、自分の作りたいものを作る方法についてまとめました。
まず「やりたいこと」を明確にすることからプロトタイピングは始まりますが、その後に必要な「やりたいことを実現するための手段」が本書に書かれています。ここにはやりたいことをカタチにできた人たちの作例が掲載されているのです。もし、いまご自分の中にやりたいことがあり、それをArduinoで実現できそうだと感じているなら、きっと本書は役に立つことでしょう。