obnizとarduinoの違いって何?マイコンなの?という質問をよくされるので、
技術的観点からしくみの違いを書いてみたいと思います。
一言でいうと
arduinoはコンピューターですがobnizはシステムです。
しくみが全く違うので、使い所が変わってきます。
arduino/ラズパイのしくみ
arduinoにはプログラムを書き込むことができ、その書き込んだプログラムに応じて様々な動きをさせることができます。
あくまでプログラムを書き込んで使うボードです
obnizのしくみ
obnizはarduinoのように、プログラムをボードに書き込むわけではありません。
obnizとは別の、クラウド越し(インターネット越し)にあるPCやスマートフォンにプログラムを入れます。
これは、クラウドを通じてマイコンにプログラムを書き込むというわけでもありません。
あくまで、プログラムはボード上ではなくPC上で実行されます。
プログラムを実行すると、そのPCはobniz boardを遠隔で操作することができます。ここがarduinoやラズパイと違うところになります。
PCが遠隔にあるボードを操作するというのがobnizです。
obnizのメリットとデメリット
このボードを遠隔操作するというところがarduinoとの違いになってきます。
これにより色々なメリットがあります。
全体的なメリットとしてはwebサービスを作るときの常識をハードウエアを作る際にも持ち込めるというものになるかなと思います。
obnizのメリット
- インターネット越しに操作ができる
- プログラムの実行がPC上なのでPCソフト/webサービスのように開発ができる
- 好きな言語が選べる(SDKがあるのでJavaScript推奨)
- 好きなエディタで書ける
- メモリ容量とか気にしなくて良い
- コンパイルが必要がない
- 色々なクラウドサービスと連携が簡単にできる
- ライブラリ等、共有資産が使いやすい
- GUI付きのハードウェアプログラムが書ける
- 手元にないボードの挙動を変更できる
- 違うハードウェアでも同じプログラムで操作できる
もちろんデメリットもあります。
obnizのデメリット
- インターネットがないと動かない
- ネットワークのディレイが発生する
- 遠隔操作するPC(もしくはスマートフォンなど)が必要になる
インターネットがないと動かないというのは、スマートスピーカーのデメリットと同じですね
obnizの特徴がより活きるところ
上記のメリットをより具体的な例にしてみると、たとえば一つのプログラムでいくつものボードを動かすことができます。
3つでも4つでも100個でも、ボードを1つのプログラムから同時に動かすことができます。
ボードAのセンサの値に応じてボードBの表示を変える 等も1つのプログラムでできるので簡単です。
また、インターネット越しで有ることを活用すると、家においたボードを会社から動かす ということもできます。
帰宅前にクーラーをONにしたり、ペット監視したりがはかどりますね。
つまり
arduinoはコンピューターで、obnizはシステムです。
それぞれ使いみちが異なるので、やりたいことに合わせて選択したら良いと思います。
obnizについてのより詳細の情報は公式ドキュメントに行くのが手っ取り早いです。
・obnizドキュメント(公式)
性能的な比較はこちらの記事にまとめています
IoTデバイス開発向け製品を徹底比較。Arduino、Raspberry Pi、M5Stackからobnizまで