今必要とされるプログラミング力。
Raspberry Piではない
世界でプログラミングの教育を推進する目的で発売されたマイコンボード「Raspberry Pi」シリーズ。
目的が目的であるため、当初は3,500円くらいで何とか発売できれば…という状況だったが、初代はともかく、その後発売された高機能モデルなどの価格は、総じて5,000円を超えるような価格で提供されているワケだが、個人的に言えばそれでも安い部類。
ただ、世界では当然だがコレでも高い、とする国もあるのも事実で、そこで作られたのがさらに小さなマイコンボードである「Raspberry Pi zero」シリーズだったりする。
基本的にARMコアで動作するRaspberry Piシリーズは、基本となるOSなどの入手性などから、確かに教育という分野では価格も相まって絶対的な普及力をもった製品だとは思う。
だが、提供されるものが基本的なプロセッサ部分だけであり、そこからいろんな機能を派生させようとすれば当然だがいろんな専用半導体を搭載した拡張ボードが必要になったりする。
こればっかりはプログラム処理だけでどうにか出来るものではないので、やむを得ないのだろうが、そんな目的に一石を投じるような製品が今年5月にSonyから提案されていた。それが「SPRESENSE」(スプレッセンス)と呼ばれるIoT向けのセンシングプロセッサ搭載ボードである。
SPRESENSEは、Sonyが開発した6コアプロセッサである「CXD5602」を搭載したGPSとGLONASSの同時受信が可能なマルチGNSS、192kHz/24bit対応のハイレゾオーディオコーデックなどを搭載したボードで、基本的にはARMのCortex-M4Fと専用処理アーキテクチャを組み合わせたものになっている。
GNSSは今秋リリースされるファームウェアによって「みちびき」(準天頂衛星システム、QZSS)に対応するという事なので、こうしたGPS機能を使用した新しい使い方が何か生み出されるかも知れない。
Raspberry Piもそうだが、こうしたマイコンボードは、基本的な機能をメーカーが提供し、ユーザーが開発キットを使用して利用方法を考え、プログラミングして実装、使用するというスタイルをとる。
なので、その利用方法はまさにメーカーも想像も付かないようなものが生まれたりする。Sonyとしては、搭載したセンサー類からある程度方向性は想定しているかもしれないし、そこがRaspberry Piとは異なる部分ではあるのだが、ひょっとしたらココからとんでもない製品が生まれるかも知れない。
日本は遅れているらしい
SPRESENSEは、前述したように基本的にはARMのCortex-M4Fをベースとしたシステムで、その開発キットとしてArduinoに準拠したボードとなっている。なのでWindowsでもMacでもLinuxでも、Arduino IDEでそのプログラムを開発する事ができる。
ま、このような記載すると簡単そうに思うかも知れないが、当然ながらプログラミング技術がなければそれらも出来ようはずがない。
日本は、このプログラミング技術への教育が相当に遅れているようで、今後AI開発が重要になってくる曲面でも、有効な人材の確保がとにかく難しくなっている。
逆にインドなどはカースト制度に縛られない職業としてプログラマーになりたいという人が多く、非常に多くの技術者が輩出されている。もっとも、その輩出されたプログラマーがどこまで優秀か? という事に関しては、世間で言われているほどではない、とするデータが出たりするなど、質を問題視する話が浮上する事もあるが、絶対的な人数という意味において日本は大きく後れを取っているのが実情である。
何故このような事態になっているのか、というと、そこには言語的な壁があったりと、英語圏ではない事の問題があったりするのだが、そもそもの根本的な部分で、教育が足りないとする話もある。
私の時代などは学校でプログラムの授業は全く存在していなかったが、今の時代はそういう授業も必要な時代ではないかと思うし、その為のRaspberry Piではないかと思ったりする。
SonyからSPRESENSEが発売されているのだから、日本の学校はSPRESENSEを使ったIoTの授業を進めていくというのも手ではないかと思うが…。どちらにしても、今の時代はプログラムが組めるかどうかで、一つの差が生まれたりするのではないかと、自分なりに興味を持ちつつ、自分の不利さ加減を実感したりする。
私など、拙い日本語の記述しかできないのだから…。
拡張ボードでさらなる汎用性を
SPRESENSEは、メインボードの他に拡張ボードがいくつか存在する。
基本はメインボードの「SPRESENSE(CXD5602PWBMAIN1)」で、それにヘッドフォン端子、マイク端子、SDカードスロット等のインターフェースを持つ「拡張ボード(CXD5602PWBEXT1)」が存在する。
また、アドオンボードでBluetooth機能を持つ「SPRESENSE-BLE-EVK-701」や加速度・気圧・地磁気センサーを入れる持つ「SPRESENSE-SENSOR-EVK-701』が存在する。
メーカーがここまでの拡張ボードやアドオンボードを用意しているというあたりがまずRaspberry Piとは異なるところで、Raspberry Piはあくまでもサードパーティによる拡張ボードが用意され、それをRaspberry Pi財団が公式に認めているという形になっているのみである。
もちろん、これらはスタンスの違いという意味もあるのだろうが、SPRESENSEの方が目的や用途の方向性がメーカーよりある程度示されているからこその対応なのだと思うが、それだけにより開発しやすいのも事実。
プログラム技術を持っている人は、こういうマイコンで新しい使い方を提唱してみるのも面白いのではないだろうか?
また、Sonyは今後センシングカメラ等に使用可能なカメラボードを発売する予定らしい。そうしたセンシングカメラを利用した別の使い方も、面白いかも知れない。
私がもしプログラムできたなら…SPRESENSEに拡張ボードと加速度センサーを使って、振ったりして操作するハイレゾ音楽プレーヤーを作ってみたいように思うが…。もちろんそれだけでは使い勝手が良くないので、そこを基点に他の機能を追加していくとかするとは思うが。
こうした小型マイコンボードが最近話題になるのは、あらゆるものにコンピュータが繋がる時代になったからと言える。
スマートスピーカーが話題になったりして、生活の様式が徐々に変わっていく過渡期に今はあると思うが、それらの動きも結局は提案するメーカーとそれらを構築するプログラマーがいて可能になる話である。
しかも今の時代はメーカーが挑戦的なデバイスを発売できる環境が失われつつある。ベンチャーのような小さな組織が野心的なアイディアで製品を開発する時代である。資金に関しても、クラウドファンディング等で集める事の出来る時代でもあるので、やりようによっては小さな組織が世界を変えていく事のできる時代である。
未来に不安しかない、なんていう話も聞こえる時代でもあるが、逆を言えばその未来を切り開く事のできるチャンスも多い時代という事である。
プログラム技術を持ち、アイディアを持つ人はぜひとも世界に一石を投じてみてはどうだろう?