hiroの長い冒険日記

主にコンピュータ周辺の興味を持った内容を綴ります

Raspberry pi 検討

小さな linux 端末に興味を持ち始めたのはいつ頃からだろうか。

PC での linuxの使い始めは、linux が未だ Ver.1.0 になる前、Slackware に JE (日本語化キット) を入れて使ったのが最初だったと記憶している。kernel に module が導入される前、デバイスに合わせて kernel 作り直すのが当たり前の時代だった。

小さな linux の最初は OpenBlockS初代 (PowerPC MPC860 80MHz)。NAPT 用に購入して、syslog 見ながらネットワークの知識を増やしていった。CFカードを外して2.5in. HDD を取り付け、サーバを動かして遊んでいた。セルフコンパイル環境を作り、今流行りの LED チカなんかもやっていた。7SEG LEDだけでモニターはなし、USB もなし、ethernetが2つと電源という割り切った仕様だった。24h365d動かしたのは、この機種が最初だった。

2台目は Kuro-box (PowerPC 603e 200MHz)。流石に OpenBlockS でセルフコンパイルするのは辛かったので、iMac買おうかとも考えたが linux 入るか当時は分からず、同系統のkuro-boxでバイナリを作成していた。それでも時間がかかったので、最終的に x86PowerPC 用の closs toolchain 環境を作り、出来たバイナリを移して実行していた。

現在はデスクトップマシンとしての linux は使用しなくなったが、未だ小さな linux 環境への興味は続いている。Synology DS218+ は快適だが、x86 環境であり技術的には物足りなさもある。

今後、家の中の様々な情報を収集するにあたり、Synology DS218+ で実現不可能な部分を代用する為に、安価で省電力な、小さな linux としての Raspberry Piに興味を持ったので情報収集を始めた。将来、子供と一緒に遊べれば良いな〜と漠然と考えている。

Raspberry Pi とは

www.raspberrypi.org
Raspberry Pi - Wikipedia
Raspberry Pi は ARM ベースのシングルボードコンピュータである。2013年にイギリスのラズベリーパイ財団で開発され、元々は教育用として使用される事を想定していたが、現在では IoT デバイスとしての使用が主流となっている。

Raspberry Pi の種類と機能

新品として一般的に入手できる機種は以下の通り。

性能・機能の比較は Wikipediaが分かりやすい。(まだ発表間もない Model A+は記載なし)

最も機能が豊富で性能の高い(といっても PC 程ではないが)のが Pi 3 Model B+、若干性能と価格を落とし基板を小さくしたのが Pi 3 Model A+、更に小さく安価にしたのが Zero WH、GPIO コネクタを無くし(パターンはあるので後付け出来る)最も安価としたのが Zero W である。

CPU が ARM なのは共通だが Quad ~ Single まで、Memory 容量もそれぞれ異なり、USB もコネクタ数が異なる。

wifi あり、Bluetooth あり。HDMI もあるので直接モニターに接続できる。 USB あるので有線 LAN など色々な物が使える。電源付きUSB HUB使えば増設もできる。

基本は SD カードから起動させるが、USB 接続の SSD からも起動できる。ここまでしちゃうと小さい PC との違いが薄れてくるけど、プログラム開発用としてはありかも。package 作る事までやろうとすると cross toolchain は結構面倒なので。USB2.0 なので速度は期待できない。

debian base の raspbian の使用例が多い。という事は dpkg で packaging しておけば、後始末は簡単になるはず。Wikipedia によれば linux-rt も使えるらしい。Zero だとUSB 接続時に負荷が高くリアルタイム性は担保できないようだが、Zero W で wifi だと大丈夫かな? 160 us 位は出るようだ。

QEMU で Windows上で ARM を emurate することもできるらしく、開発環境はこちらの方が快適かも。

Raspberry Pi で何が出来る?

OpenBlockS、Synology、QNAP 等の他の小さな linux との一番の違いは GPIO (General Purpose Input/Output)の存在である。これがある為に、wifibluetooth で各種機器と接続する以外に、各種センサーを繋げて情報収集が可能となり、測定データを外部に保存する事が出来るようになる。

また、GPIO を使って別の基板をスタックすることが出来るので、リレーを大量に積んだり、サーボモーターを制御したり、ハードウェアの知識があればやりたい放題。(電気工事士の資格取ろうかな…)

CPU能力をそこまで必要としない単機能な仕事をやらせるのに PC を使用するのは無駄が多い。Raspberry pi ならハードウェアもほぼ一緒で必要な能力と機能で選択でき、デバイスも変化するのはUSB位。外部との通信機能は Onboard で載っているので、IoT (様々な機器をインターネットに接続する事) を安価に試すことができる。

私が興味を持った具体例

  1. 普通に linux 端末 … SDカードではなく SSD を接続、各種サーバを動かす普通の使い方、でも省電力
  2. クランプ式電流計とA/D変換チップを使用した家庭の電力測定 … HEMS代用、融通の利くやり方、分析のやりやすさ
  3. Raspberry pi Audio … Raspberry Pi【通称 ラズパイ】でハイレゾ再生環境を作ってみた! – じゃんぱら 店員に聞け+ お役立ちコラム
  4. それ、ラズパイでつくれるよ | fabcross

今後

購入しようと考えているが、どれを購入するかは悩んでいる。

最初は Pi 3 Model B+にして速い環境で使い方に慣れ開発環境として使用するか、それとも GPIO を使うのが主なので最終的な事まで考えて Zero WH にするか。

VESA Mount に固定できるようにして、PC のモニタ裏に付けておこうか。

arduino も面白そう。より単機能にするなら arduino。Analog Input を標準で持ってるし、ブレッドボードにそのまま取り付けできる機種もある。こちらの方がやりたい事に合っているかも。

I-O DATA でRaspberry Pi 用のケースも出している。GPIOコネクタが見えないが VESA マウント対応なのでサーバ用途ならこちらが良いかも。

Pi3B+ スターター キット V2 RS透明 16GB

Pi3B+ スターター キット V2 RS透明 16GB

Raspberry Pi 3 B+ のスターターキット。個人向け正規代理店の KSY 品。これと USB Keyboard、USB Mouse、HDMI Monitor があれば使用できる。X Window を飛ばす事までやってしまえば、何も接続しなくてもいけるはず。Amazonより直販の方が1000円程安価。