2014年7月17日木曜日

アクア用コンピュータシステム構想 その3

データの記録や表示

はい、前回でデジタル温度センサーについて記載しました。
デジタル温度センサーを使うことで、たくさんの温度を一元的に表示できます。

しかし、問題があります。先日の温度は、コンピュータ画面に表示されるだけです。
つまり、やっぱり、こうなる!ってことです。


となり、どこかの就職面接で



となりかねません。

ですので、コンピュータで記録していく必要があります。
どこに記録するか?っていうと、一つ思い浮かぶのは、SDカードです。


なんと、Arudio にはこんなシールドと呼ばれる拡張基板があります。これには、SD-CARDが挿せ、さらにプログラムから簡単にSDカードへの記録ができます。

もし、見たくなったら、このカードをのぞきこめばいいのです。

っていう感じになりそうですが、いちいちSDカードの抜き差しをしたくありません。

やっぱりネットワーク経由で見たいです。ということで、WIFIシールドもあります。


これを使えば、ネットワーク経由で見れます。スマフォからも。

しかし、ちょっと待ってください。スマフォに専用にアプリケーションも書くのでしょうか?
なんか大規模になりすぎていませんか?
はたまた、このマイコンに、WEBサーバまで立てますか?そのプログラムまで書きますか?


となります。

そう、最初から、 Arudino 使っていたら大変なのです。

真打登場

ということで、BeagleBone Black の登場です。見た目はこんな感じ。


なんか、小さいですね。


これです。お値段はちょっとしますが、真打なのは、これで一昔前のパソコン並みのパワーがあります。あるいは、ちょっと昔のガラケー並みのパワーって言っても良いかもしれません。Linuxと呼ばれるサーバ用のOS、あるいは、アンドロイドの基本基盤となっているLinuxというOSが動きます。

ですので、いろんなことができます。
しかも、温度センサーを付けるためのコネクタとかも沢山あります。昨日と同じ方法で接続できます。

できること


  • WEBサーバがたてれます
    • このボードへスマフォやPCでアクセスすると、ホームページが見れます。
      もちろん、温度グラフなどを表示する機能をつけれます
  • Windowsのファイル共有ができます
    • このボードへ Windowsのファイル共有でアクセスできます。
      もちろん、温度データをCSV形式で保存できます。
  • 色々できすぎて書ききれません(笑)

さらにビックリ

このLinuxというOSは、ソースファイルだけで 500Mほどあります。なんと、前回の温度センサーを扱うドライバも含まれています。

なので、ちゃんと設定して温度センサーつなげれば、ファイルを開くとそこに温度データが記録されています。再度開きなおすと、開いた時点の温度が取得できます。

ということは、難しい言語を使わず扱えます。

なんと今なら

なんと、USBカメラとかもつなげて写真が撮影できたりとかもします。(今じゃなくてもできるみたいですが)
ということで、これをベースに考えます。
実は、このボード、自前で持っています。

その他の、お安めボード

これによく似たボードで、こんなボードもあります。
こちらも、Linuxが動作します。

そういえば、最近 Raspbery Pi のマイナーチェンジ版が出たとニュースになっていたような…


早めに、温度センサー購入してつなげてみたいと思います。



8 件のコメント:

  1. 私は、こういう完成品の事はさっぱり分かりませんが
    便利な物があるんですね!!

    どんな風になるのか、楽しみにしておりますので
    私が使いたくなった時には使い方を教えてくださいね!

    返信削除
  2. 狩人さん、こんにちわ。コメントありがとうございます。

    便利なのありますよ。昔だったら数万円とかからだったのに、数千円程度で手が届くのでびっくりです。ユーザインタフェース部分はこの手に任せてしまうというのも1つだと思います。しかも、自前で作る部分の雑多な部分をモジュール化されるとおもうので。
    ただ、この手のは高機能になると同時に反応時間の保障がとりにくくなります。AVRとかのマイコンでしたら、自分でプログラム組んだループとか割り込み禁止区間で応答時間の保障が取れるかと思います。(例えばインバータの波形生成とかはどれくらいで制御できるか重要かと)
    しかし、この手のボードで OS までブラックボックス化されると、ネットワーク通信中とかの応答時間の保障(必ず1ミリ秒で制御するとか)ができません。なので、適材適所だとおもいます。

    今回は、温度測定したり、他の測定をして記録する! とか、それに合わせて何かを ON/OFFする程度だと思うので、十分かと思います。

    例えば、温度センサーに合わせて、何かを止めるとか、動かすとか。
    あるいは、比重センサーに合わせて、1分間足し水ポンプをONにするとか。そんなんだと、多少応答速度にズレが生じてもOKなので。

    いま、ボードは手元にあるので、センサーを注文しました。
    時間があるときにボード側の設定やプログラムはしていこうかと思います。

    返信削除
  3. なるほど

    自分で触れない部分があるとか、自分で見えないブラックボックス部分が有るのは
    私の性格では嫌になってしまうかな?(笑)

    返信削除
    返信
    1. こんにちわ。コメントありがとうございます。

      ブラックボックスは、素人にはブラックボックスですが、実は違います。
      ほとんどのプログラムソースは公開され、再構築可能です。 500M byte相当のソースの海を調べることができると考えれば、楽しさ倍増だとおもいますよ(笑)

      例えば AVR のチャタリング用のライブラリもブラックボックスですよね。
      目的にあわないので自作して回避もありますが、チャタリング用のライブラリの中身を改変できればそれは楽しさですよ。やるかどうかは別ですけど(^^;

      削除
  4. はしさんは、プログラムも得意分野なんですか?

    私はVisualBasic と Basic 以外はさっぱり分からないので
    プログラムを公開されていても、おそらく解読できないです(笑)
    特に人が作ったプログラムは意味が分からない場合が多いですね。

    返信削除
    返信
    1. 狩人さん、こんにちわ。

      プログラムもそこそこやります。下側はマイコン関係も触ったことありますし、Unix関係やWindows関係、あるいはWEB関係なんかも。
      ただ、逆にBasicは読まず嫌いな分野だったりします(^^;

      そういえば、このブログにも「プログラム」というラベルで記事を書いていたのがありました。

      先日のArduino の記事にも「プログラム」ラベルはっておきます。
      あ、水槽配置シミュレータもほっておいたんだった。

      削除
  5. はしさん こんにちは。

    冒頭のアスキーアートには吹きましたw
    温度の管理、いいものができるといいですね。楽しみにしています。

    BeagleBone Blackは初めて聞きました。ちょっとこの製品、気になりますね・・・
    ラズベリーパイは、以前ネットで探していたら、これで超小さなアーケードゲームを再現していたので驚きしました。

    返信削除
    返信
    1. tomさん、コメントありがとうございます。

      なんていうか、温度管理だけのためのコンピュータとなると勿体ないので、もう少し考えます。PHセンサーや、比重センサーなんてのもありますし、サンプ槽の水位計ってのも重要な気もします。この辺をどんな風にして、またそれに合わせてどんな制御するかっていうのもワクワクです。
      本気でやると、キリがなくなるので、DIYで自己満足程度にしますが。

      BeagleBone Black は、Arduino より高機能で、ソフトウェア的にも良いものが使えます。狩人さんへのコメントにも書きましたが、欠点もありますので微調整必要です。
      ラズベリーパイは、CPUだけでみても  700MHz から 1GHz のクロックで、メモリも512Mbyte、さらに GPU部分がそこそこあるので、かなり高性能です。アーケードゲームもありですが、メディアプレイヤーのハードとしても使えたりします。
      でいて、5千円切っていますので、そこそこ用には十分です。嫌なことは、SDカードが飛びててるとか、安定した電源供給用の足回りがぐちゃぐちゃしそうとかです。
      機能だけで見ると、本当に一昔のガラケーの機能なみです。

      LANが使えて、電源供給がそこそこだったら、すごく有りがたい基板になるので1つくらいもっておいてもいいかもしれません。あ、LinuxとかUnixに関する知見は必要ですが。

      削除