5
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

GrovePi Zero を Raspberry Pi Zero (W) で使う

Last updated at Posted at 2018-04-08

GrovePi

Raspberry Pi で Grove センサーを使う際に便利に使える拡張ボードです。 Dexter Industries 社が販売しています

Raspberry Pi の GPIO ピンに被せるようにして使います

Raspberry Pi 2 や 3 には GrovePi+ を、Raspberry Pi Zero (W も含む) には GrovePi Zero という組み合わせになります

これを使う利点

  • Grove センサーが利用可能
    • Grove コネクタという規格があり、その規格に沿っているセンサーであれば、取り付けに半田付けが不要となる仕組み。ピンを間違うことが無いためセンサーやボードを壊す恐れが無くなります
    • 出回っているセンサーの種類は 180 を超えるらしい
  • Raspberry Pi 単体では読み取り事の出来ない「アナログ電圧信号」を読み取り可能
    • A/Dコンバータが GrovePi 上に実装されています

購入

Amazon.co.jp でも買えますが、ちょっと高くありませんか。。。?

そこで Amazon.com で買ってみましょう。商品 26.99 USD + 送料 約 15 USD = 4663円 (110.56円/USD) と1週間で届きました

使い方

ハードウェア面

Raspberry Pi Zero W に GrovePi Zero を取り付けて、 D3 ポートに Grove ブザーを接続した様子
※ GPIO ピンにはシリアルコンソールを接続しています

a.PNG

ソフトウェア面

GitHub DexterInd/GrovePi に掲載されている通り実行すれば OK です

ただし git が必要になりますがすっぴんの Raspbian には入っていませんので、それは手動で入れておきます
インストールには全体で 30 分ほどかかりますので時間のある時に行いましょう(ディスクI/Oが...つらい)

再起動すればモジュールが読み込まれ、使えるようになります

$ sudo apt install -y git
$ curl -kL dexterindustries.com/update_grovepi | sudo bash
$ sudo systemctl reboot

使ってみる

python で使うのが手軽です

import grovepi をすると grovepi インスタンスが使えるようになるので、あとは pinMode()digitalWrite() を使う形です

$ python
Python 2.7.13 (default, Nov 24 2017, 17:33:09)
[GCC 6.3.0 20170516] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import grovepi
>>> grovepi.pinMode(3, "OUTPUT")
1
>>> grovepi.digitalWrite(3, 1)
1
>>> grovepi.digitalWrite(3, 0)
1

ブザーやリレー、LED が接続されていれば、これだけで制御できます
Raspberry Pi Zero W + USB セルラーモデムで SORACOM に接続する と組み合わせれば、簡単に IoT なプロダクトのプロトタイプができます

資料について

ポート番号はドキュメントに対応表があります
analog は digital として使うこともできます
この辺は analog のサンプルdigital のサンプル が参考になります

リファレンスを見ると digitalWrite()analogRead() といった基本的なメソッドだけでなく、Grove センサーに対応したメソッドも準備されているため、より簡単にプログラミングできそうです

python の REPL 環境について

ちょっと話が外れますが python で Ruby の pry のような REPL (対話型評価環境) をやりたいのであれば ptpython が良いようです

Pythonメモ : 補完等ができるREPLのptpythonを使ってみる

$ sudo pip install ptpython

Raspberry Pi Zero だと、ちょっと動作が重たいかも

あとがき

1日に2本書いてしまった。まだ資料は 0 byte だ。

EoT

5
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?